omniroute 3.4.7 → 3.4.8
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/app/.next/BUILD_ID +1 -1
- package/app/.next/build-manifest.json +3 -3
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cache/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/memory/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +1 -1
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/system/version/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js +15 -15
- package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js +11 -11
- package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js +5 -5
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js +14 -14
- package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/completions/route.js +14 -14
- package/app/.next/server/app/api/v1/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js +10 -10
- package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/messages/route.js +16 -16
- package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/route.js +5 -5
- package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/moderations/route.js +9 -9
- package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js +10 -10
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +16 -16
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +7 -7
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +10 -10
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/rerank/route.js +9 -9
- package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/[...path]/route.js +16 -16
- package/app/.next/server/app/api/v1/responses/[...path]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/route.js +16 -16
- package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/route.js +5 -5
- package/app/.next/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/search/analytics/route.js +7 -7
- package/app/.next/server/app/api/v1/search/analytics/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js +10 -10
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js +14 -14
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0nxyldc._.js → [root-of-the-server]__0-zca2p._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0urvs3.._.js → [root-of-the-server]__01hbf~_._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__01ojood._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__030_-af._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0j~-yu1._.js → [root-of-the-server]__03l6k3k._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__01b8762._.js → [root-of-the-server]__05~jdzu._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__07eee_s._.js → [root-of-the-server]__08~6j3q._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0a8ozdb._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0bd4ccn._.js +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__0_a98vk._.js → [root-of-the-server]__0d6bqbw._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0_c_.ye._.js → [root-of-the-server]__0f2rz58._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0jp3yj4._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__06stuoz._.js → [root-of-the-server]__0jvnjwl._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0mj7x5~._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0n-~kvf._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0-y3k-t._.js → [root-of-the-server]__0nzi7ym._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0ofxxzh._.js +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__0uu3t5x._.js → [root-of-the-server]__0pd~24c._.js} +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__0s1dq3.._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0tsl88m._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0u5-mph._.js +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0vi3.0k._.js → [root-of-the-server]__0uryxsh._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0lwc40h._.js → [root-of-the-server]__0v1kwmx._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__04y3b4q._.js → [root-of-the-server]__0vt49c9._.js} +1 -1
- package/app/.next/server/chunks/{[root-of-the-server]__0pylsu2._.js → [root-of-the-server]__0vy97gy._.js} +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__0~s45~f._.js → [root-of-the-server]__0wd~o5b._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0x5yxjy._.js +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__0vmajf6._.js → [root-of-the-server]__0x_hqjb._.js} +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__0~0hd.s._.js +2 -2
- package/app/.next/server/chunks/{[root-of-the-server]__10~-ypp._.js → [root-of-the-server]__11ptf~3._.js} +1 -1
- package/app/.next/server/chunks/_00.pgsp._.js +1 -1
- package/app/.next/server/chunks/_013gowh._.js +1 -1
- package/app/.next/server/chunks/{_0ucpa5q._.js → _02._8wx._.js} +1 -1
- package/app/.next/server/chunks/_036lxbr._.js +1 -1
- package/app/.next/server/chunks/_05reh6o._.js +1 -1
- package/app/.next/server/chunks/{_0-~thzo._.js → _083_x9z._.js} +2 -2
- package/app/.next/server/chunks/_083a5zg._.js +1 -1
- package/app/.next/server/chunks/{_004r3br._.js → _08cwbl2._.js} +2 -2
- package/app/.next/server/chunks/_0a3.3sc._.js +1 -1
- package/app/.next/server/chunks/_0c.abwr._.js +1 -1
- package/app/.next/server/chunks/_0dfpto1._.js +1 -1
- package/app/.next/server/chunks/_0due8oe._.js +1 -1
- package/app/.next/server/chunks/_0h-j8c2._.js +1 -1
- package/app/.next/server/chunks/_0vx-r0i._.js +2 -2
- package/app/.next/server/chunks/_0w4f3bm._.js +1 -1
- package/app/.next/server/chunks/_10.rw9f._.js +1 -1
- package/app/.next/server/chunks/open-sse_0dawtxk._.js +2 -2
- package/app/.next/server/chunks/open-sse_0p~.88y._.js +1 -1
- package/app/.next/server/chunks/open-sse_0sthby3._.js +1 -1
- package/app/.next/server/chunks/src_0cbm0~g._.js +1 -1
- package/app/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js +1 -1
- package/app/.next/server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js +1 -1
- package/app/.next/server/chunks/ssr/_008ht2n._.js +1 -1
- package/app/.next/server/chunks/ssr/_0oo1f90._.js +1 -1
- package/app/.next/server/chunks/ssr/src_04s-8a5._.js +1 -1
- package/app/.next/server/chunks/ssr/src_0vjsxxr._.js +1 -1
- package/app/.next/server/chunks/ssr/src_shared_utils_apiKey_ts_0l8g1z8._.js +1 -1
- package/app/.next/server/middleware-build-manifest.js +3 -3
- package/app/.next/server/pages/500.html +1 -1
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/0ipwpwjb2g0uv.js +1 -0
- package/app/.next/static/chunks/0~c--kcvaumm~.js +1 -0
- package/app/.next/static/chunks/{02q7h~xz7j6i3.js → 0~v1trn07bitv.js} +1 -1
- package/app/CHANGELOG.md +12 -0
- package/app/bin/reset-password.mjs +3 -1
- package/app/docs/openapi.yaml +1 -1
- package/app/open-sse/config/registryUtils.ts +1 -0
- package/app/open-sse/config/videoRegistry.ts +1 -3
- package/app/open-sse/executors/antigravity.ts +22 -12
- package/app/open-sse/executors/gemini-cli.ts +3 -1
- package/app/open-sse/executors/qoder.ts +1 -8
- package/app/open-sse/handlers/audioSpeech.ts +1 -0
- package/app/open-sse/handlers/chatCore.ts +2 -1
- package/app/open-sse/handlers/embeddings.ts +1 -0
- package/app/open-sse/handlers/imageGeneration.ts +6 -2
- package/app/open-sse/handlers/musicGeneration.ts +9 -2
- package/app/open-sse/handlers/search.ts +1 -0
- package/app/open-sse/handlers/videoGeneration.ts +11 -3
- package/app/open-sse/mcp-server/index.ts +0 -1
- package/app/open-sse/package.json +1 -1
- package/app/open-sse/services/claudeCodeCompatible.ts +2 -2
- package/app/open-sse/services/modelCapabilities.ts +3 -4
- package/app/open-sse/services/qoderCli.ts +5 -2
- package/app/open-sse/services/tokenRefresh.ts +3 -1
- package/app/open-sse/services/usage.ts +13 -9
- package/app/open-sse/services/workflowFSM.ts +298 -61
- package/app/open-sse/translator/index.ts +5 -1
- package/app/open-sse/translator/response/gemini-to-openai.ts +5 -1
- package/app/open-sse/utils/progressTracker.ts +4 -1
- package/app/open-sse/utils/stream.ts +7 -1
- package/app/open-sse/utils/streamPayloadCollector.ts +5 -1
- package/app/package-lock.json +3 -3
- package/app/package.json +1 -1
- package/app/scripts/check-route-validation.mjs +3 -1
- package/app/scripts/i18n/apply-priority-overrides.mjs +7 -1
- package/app/scripts/prepublish.mjs +2 -2
- package/app/scripts/run-protocol-clients-tests.mjs +7 -1
- package/app/src/app/(dashboard)/dashboard/analytics/components/DiversityScoreCard.tsx +1 -1
- package/app/src/app/(dashboard)/dashboard/auto-combo/page.tsx +0 -1
- package/app/src/app/(dashboard)/dashboard/media/MediaPageClient.tsx +9 -3
- package/app/src/app/(dashboard)/dashboard/providers/[id]/page.tsx +25 -23
- package/app/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx +3 -1
- package/app/src/app/api/auth/status/route.ts +1 -3
- package/app/src/app/api/mcp/sse/route.ts +2 -2
- package/app/src/app/api/mcp/status/route.ts +1 -2
- package/app/src/app/api/mcp/stream/route.ts +5 -3
- package/app/src/app/api/openapi/spec/route.ts +4 -1
- package/app/src/app/api/openapi/try/route.ts +4 -1
- package/app/src/app/api/providers/[id]/models/route.ts +4 -4
- package/app/src/app/api/providers/[id]/sync-models/route.ts +9 -3
- package/app/src/app/api/settings/auto-disable-accounts/route.ts +6 -1
- package/app/src/app/api/skills/[id]/route.ts +4 -1
- package/app/src/app/api/v1/issues/report/route.ts +9 -1
- package/app/src/app/api/v1beta/models/route.ts +8 -6
- package/app/src/app/api/webhooks/[id]/route.ts +9 -7
- package/app/src/domain/fallbackPolicy.ts +0 -1
- package/app/src/domain/modelAvailability.ts +0 -1
- package/app/src/domain/providerExpiration.ts +2 -6
- package/app/src/lib/db/models.ts +23 -13
- package/app/src/lib/evals/evalRunner.ts +0 -1
- package/app/src/lib/evals/scheduler.ts +2 -6
- package/app/src/lib/oauth/services/antigravity.ts +6 -1
- package/app/src/lib/oauth/services/kiro.ts +12 -2
- package/app/src/lib/oauth/services/oauth.ts +10 -2
- package/app/src/lib/oauth/utils/server.ts +4 -1
- package/app/src/lib/plugins/index.ts +2 -8
- package/app/src/lib/usageAnalytics.ts +5 -1
- package/app/src/mitm/manager.js +1 -1
- package/app/src/mitm/manager.ts +1 -1
- package/app/src/shared/components/Button.tsx +0 -1
- package/app/src/shared/components/Card.tsx +0 -2
- package/app/src/shared/components/FilterBar.tsx +4 -12
- package/app/src/shared/components/Input.tsx +1 -1
- package/app/src/shared/components/Modal.tsx +0 -1
- package/app/src/shared/components/NotificationToast.tsx +1 -3
- package/app/src/shared/components/Select.tsx +1 -1
- package/app/src/shared/components/Sidebar.tsx +3 -3
- package/app/src/shared/components/ThemeToggle.tsx +7 -1
- package/app/src/shared/constants/cliCompatProviders.ts +0 -1
- package/app/src/shared/constants/errorCodes.ts +114 -19
- package/app/src/shared/utils/apiKey.ts +2 -4
- package/app/src/shared/utils/fetchTimeout.ts +0 -1
- package/app/src/shared/utils/inputSanitizer.ts +8 -4
- package/app/src/shared/utils/requestTimeout.ts +5 -1
- package/app/src/sse/handlers/chat.ts +1 -0
- package/app/src/sse/services/auth.ts +8 -3
- package/app/src/sse/services/streamState.ts +5 -1
- package/app/src/store/notificationStore.ts +3 -7
- package/app/tests/unit/t20-t22-provider-headers.test.mjs +3 -1
- package/bin/reset-password.mjs +3 -1
- package/open-sse/mcp-server/__tests__/glmCodingProviderConfig.test.ts +5 -1
- package/open-sse/mcp-server/index.ts +0 -1
- package/package.json +1 -1
- package/app/.next/server/chunks/_0-jnvci._.js +0 -19
- package/app/.next/static/chunks/0l88mho31mflv.js +0 -1
- package/app/.next/static/chunks/0wt-4zl7_gil8.js +0 -1
- /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_buildManifest.js +0 -0
- /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_clientMiddlewareManifest.js +0 -0
- /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_ssgManifest.js +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={RequestCookies:()=>y,ResponseCookies:()=>m,parseCookie:()=>u,parseSetCookie:()=>p,stringifyCookie:()=>d};for(var c in l)a(s,c,{get:l[c],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function u(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...a]=u(e),{domain:n,expires:i,httponly:o,maxage:s,path:l,samesite:c,secure:d,partitioned:p,priority:y}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var m,g,w={name:t,value:decodeURIComponent(r),domain:n,...i&&{expires:new Date(i)},...o&&{httpOnly:!0},..."string"==typeof s&&{maxAge:Number(s)},path:l,...c&&{sameSite:f.includes(m=(m=c).toLowerCase())?m:void 0},...d&&{secure:!0},...y&&{priority:h.includes(g=(g=y).toLowerCase())?g:void 0},...p&&{partitioned:!0}};let e={};for(let t in w)w[t]&&(e[t]=w[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of i(t))o.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=n(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);var f=["strict","lax","none"],h=["low","medium","high"],y=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of u(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},m=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const n=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,a,n,i,o=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,i=!1;l();)if(","===(r=e.charAt(s))){for(a=s,s+=1,l(),n=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(i=!0,s=n,o.push(e.substring(t,a)),t=s):s=a+1}else s+=1;(!i||s>=e.length)&&o.push(e.substring(t,e.length))}return o}(n)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),n=t([a]);[a]=n.then?(await n)():n,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function a(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function n(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let a of e)t.set(a,r),r+=a.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let a=e.charCodeAt(r);if(a>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=a}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,n,"encodeBase64",0,a],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return n(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):a(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},709939,e=>{"use strict";var t=e.i(663370),r=e.i(293233),a=e.i(865466),n=e.i(632802),i=e.i(913658),o=e.i(177278),s=e.i(48215),l=e.i(252665),c=e.i(18083);async function d(e,d,u){if(!(0,o.isObject)(e))throw new a.JWSInvalid("Flattened JWS must be an object");if(void 0===e.protected&&void 0===e.header)throw new a.JWSInvalid('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==e.protected&&"string"!=typeof e.protected)throw new a.JWSInvalid("JWS Protected Header incorrect type");if(void 0===e.payload)throw new a.JWSInvalid("JWS Payload missing");if("string"!=typeof e.signature)throw new a.JWSInvalid("JWS Signature missing or incorrect type");if(void 0!==e.header&&!(0,o.isObject)(e.header))throw new a.JWSInvalid("JWS Unprotected Header incorrect type");let p={};if(e.protected)try{let r=(0,t.decode)(e.protected);p=JSON.parse(n.decoder.decode(r))}catch{throw new a.JWSInvalid("JWS Protected Header is invalid")}if(!(0,o.isDisjoint)(p,e.header))throw new a.JWSInvalid("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");let f={...p,...e.header},h=(0,l.validateCrit)(a.JWSInvalid,new Map([["b64",!0]]),u?.crit,p,f),y=!0;if(h.has("b64")&&"boolean"!=typeof(y=p.b64))throw new a.JWSInvalid('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:m}=f;if("string"!=typeof m||!m)throw new a.JWSInvalid('JWS "alg" (Algorithm) Header Parameter missing or invalid');let g=u&&function(e,t){if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw TypeError(`"${e}" option must be an array of strings`);if(t)return new Set(t)}("algorithms",u.algorithms);if(g&&!g.has(m))throw new a.JOSEAlgNotAllowed('"alg" (Algorithm) Header Parameter value not allowed');if(y){if("string"!=typeof e.payload)throw new a.JWSInvalid("JWS Payload must be a string")}else if("string"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new a.JWSInvalid("JWS Payload must be a string or an Uint8Array instance");let w=!1;"function"==typeof d&&(d=await d(p,e),w=!0),(0,s.checkKeyType)(m,d,"verify");let v=(0,n.concat)(void 0!==e.protected?(0,n.encode)(e.protected):new Uint8Array,(0,n.encode)("."),"string"==typeof e.payload?y?(0,n.encode)(e.payload):n.encoder.encode(e.payload):e.payload),_=(0,i.decodeBase64url)(e.signature,"signature",a.JWSInvalid),x=await (0,c.normalizeKey)(d,m);if(!await (0,r.verify)(m,x,_,v))throw new a.JWSSignatureVerificationFailed;let A={payload:y?(0,i.decodeBase64url)(e.payload,"payload",a.JWSInvalid):"string"==typeof e.payload?n.encoder.encode(e.payload):e.payload};return(void 0!==e.protected&&(A.protectedHeader=p),void 0!==e.header&&(A.unprotectedHeader=e.header),w)?{...A,key:x}:A}async function u(e,t,r){if(e instanceof Uint8Array&&(e=n.decoder.decode(e)),"string"!=typeof e)throw new a.JWSInvalid("Compact JWS must be a string or Uint8Array");let{0:i,1:o,2:s,length:l}=e.split(".");if(3!==l)throw new a.JWSInvalid("Invalid Compact JWS");let c=await d({payload:o,protected:i,signature:s},t,r),u={payload:c.payload,protectedHeader:c.protectedHeader};return"function"==typeof t?{...u,key:c.key}:u}var p=e.i(224472);async function f(e,t,r){let n=await u(e,t,r);if(n.protectedHeader.crit?.includes("b64")&&!1===n.protectedHeader.b64)throw new a.JWTInvalid("JWTs MUST NOT use unencoded payload");let i={payload:(0,p.validateClaimsSet)(n.protectedHeader,n.payload,r),protectedHeader:n.protectedHeader};return"function"==typeof t?{...i,key:n.key}:i}e.s(["jwtVerify",0,f],709939)},235328,e=>{"use strict";var t=e.i(709939),r=e.i(493458);e.i(245272);var a=e.i(548941);async function n(a){if(!await i())return!0;let n=a.headers.get("authorization");if(n?.startsWith("Bearer ")){let t=n.slice(7);try{let{validateApiKey:r}=await e.A(734680);if(await r(t))return!0}catch{}}if(process.env.JWT_SECRET)try{let e=await (0,r.cookies)(),a=e.get("auth_token")?.value;if(a){let e=new TextEncoder().encode(process.env.JWT_SECRET);return await (0,t.jwtVerify)(a,e),!0}}catch{}return!1}async function i(){try{let e=await (0,a.getSettings)();if(!1===e.requireLogin||!e.password&&!process.env.INITIAL_PASSWORD)return!1;return!0}catch(e){return console.error("[API_AUTH_GUARD] isAuthRequired failed, defaulting to true:",e?.message||e),!0}}e.s(["isAuthRequired",0,i,"isAuthenticated",0,n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return a.registerServerReference}});let a=e.r(997953)},195975,(e,t,r)=>{"use strict";function a(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function E(e,t,r){await c.default.mkdir(e,{recursive:!0});let a=u.default.join(e,"config.yaml"),n=`port: ${t}
|
|
3
3
|
host: 127.0.0.1
|
|
4
4
|
log_level: warn
|
|
5
|
-
`;return await c.default.writeFile(a,n),a}async function E(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await b(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),E(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await E(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},260493,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerToolSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e}=a.data,t=await (0,i.startTool)(e);return n.NextResponse.json({success:!0,...t})}catch(t){let e=t instanceof Error?t.message:"Failed to start";return console.error("[version-manager] start error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"4034547e41eeba423fa6f518abc6750b5cd416b605",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),105409,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(260493),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/start/route",pathname:"/api/version-manager/start",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/start/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:b,serverHooks:E}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/start/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:b,prerenderManifest:E,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(E.dynamicRoutes[k]||E.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!b){let e=!!E.routes[O],t=E.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||b||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,E,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:b})},"routeModule",0,R,"serverHooks",0,E,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,b]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
|
|
5
|
+
`;return await c.default.writeFile(a,n),a}async function b(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await E(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),b(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await b(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},260493,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerToolSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e}=a.data,t=await (0,i.startTool)(e);return n.NextResponse.json({success:!0,...t})}catch(t){let e=t instanceof Error?t.message:"Failed to start";return console.error("[version-manager] start error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"4022c13d741806ddc7cd1e5e34c8bd6877da8ebf7e",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),105409,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(260493),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/start/route",pathname:"/api/version-manager/start",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/start/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:E,serverHooks:b}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/start/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:E,prerenderManifest:b,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(b.dynamicRoutes[k]||b.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!E){let e=!!b.routes[O],t=b.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||E||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,b,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:E})},"routeModule",0,R,"serverHooks",0,b,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
|
|
6
6
|
|
|
7
7
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0x5yxjy._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),o=t([a]);[a]=o.then?(await o)():o,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224010,e=>{"use strict";let t=process.env.CORS_ORIGIN||"*";e.s(["CORS_HEADERS",0,{"Access-Control-Allow-Origin":t,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"},"CORS_ORIGIN",0,t])},485683,e=>{"use strict";let t={openai:{id:"openai",baseUrl:"https://api.openai.com/v1/moderations",authType:"apikey",authHeader:"bearer",models:[{id:"omni-moderation-latest",name:"Omni Moderation Latest"},{id:"text-moderation-latest",name:"Text Moderation Latest"}]}};e.s(["getAllModerationModels",0,function(){let e=[];for(let[r,a]of Object.entries(t))for(let t of a.models)e.push({id:`${r}/${t.id}`,name:t.name,provider:r});return e},"getModerationProvider",0,function(e){return t[e]||null},"parseModerationModel",0,function(e){if(!e)return{provider:null,model:null};for(let[r,a]of Object.entries(t))if(e.startsWith(r+"/"))return{provider:r,model:e.slice(r.length+1)};for(let[r,a]of Object.entries(t))if(a.models.some(t=>t.id===e))return{provider:r,model:e};return{provider:null,model:e}}])},123748,e=>{"use strict";var t=e.i(731664),r=e.i(485683),a=e.i(719201);async function o({body:e,credentials:n}){if(!e.input)return(0,a.errorResponse)(400,"input is required");let i=e.model||"omni-moderation-latest",{provider:s,model:l}=(0,r.parseModerationModel)(i),d=s?(0,r.getModerationProvider)(s):null;if(!d)return(0,a.errorResponse)(400,`No moderation provider found for model "${i}". Available: openai`);let u=n?.apiKey||n?.accessToken;if(!u)return(0,a.errorResponse)(401,`No credentials for moderation provider: ${s}`);try{let r=await fetch(d.baseUrl,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${u}`},body:JSON.stringify({model:l,input:e.input})});if(!r.ok){let e=await r.text();return new Response(e,{status:r.status,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":(0,t.getCorsOrigin)()}})}let a=await r.json();return Response.json(a,{headers:{"Access-Control-Allow-Origin":(0,t.getCorsOrigin)()}})}catch(e){return(0,a.errorResponse)(500,`Moderation request failed: ${e.message}`)}}e.s(["handleModeration",0,o])},271301,e=>e.a(async(t,r)=>{try{var a=e.i(224010),o=e.i(123748),n=e.i(287726),i=e.i(485683),s=e.i(719201),l=e.i(16023),d=e.i(478847),u=e.i(676088),c=e.i(200392),p=t([u,c]);async function h(){return new Response(null,{headers:{"Access-Control-Allow-Origin":a.CORS_ORIGIN,"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function m(e){let t;if("true"===process.env.REQUIRE_API_KEY){let t=(0,n.extractApiKey)(e);if(!t)return(0,s.errorResponse)(l.HTTP_STATUS.UNAUTHORIZED,"Missing API key");if(!await (0,n.isValidApiKey)(t))return(0,s.errorResponse)(l.HTTP_STATUS.UNAUTHORIZED,"Invalid API key")}try{t=await e.json()}catch{return(0,s.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,"Invalid JSON body")}let r=(0,c.validateBody)(u.v1ModerationSchema,t);if((0,c.isValidationFailure)(r))return(0,s.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,r.error.message);let a=r.data,p=a.model||"omni-moderation-latest",h=await (0,d.enforceApiKeyPolicy)(e,p);if(h.rejection)return h.rejection;let{provider:m}=(0,i.parseModerationModel)(p),v=m||"openai",R=await (0,n.getProviderCredentials)(v);if(!R)return(0,s.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,`No credentials for provider: ${v}`);let f=await (0,o.handleModeration)({body:{...a,model:p},credentials:R});return f?.ok&&await (0,n.clearRecoveredProviderState)(R),f}[u,c]=p.then?(await p)():p,e.s(["OPTIONS",0,h,"POST",0,m]),r()}catch(e){r(e)}},!1),241223,e=>e.a(async(t,r)=>{try{var a=e.i(747909),o=e.i(174017),n=e.i(996250),i=e.i(759756),s=e.i(561916),l=e.i(174677),d=e.i(869741),u=e.i(316795),c=e.i(487718),p=e.i(995169),h=e.i(47587),m=e.i(666012),v=e.i(570101),R=e.i(626937),f=e.i(10372),A=e.i(193695);e.i(820232);var g=e.i(600220),T=e.i(271301),y=t([T]);[T]=y.then?(await y)():y;let E=new a.AppRouteRouteModule({definition:{kind:o.RouteKind.APP_ROUTE,page:"/api/v1/moderations/route",pathname:"/api/v1/moderations",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1/moderations/route.ts",nextConfigOutput:"standalone",userland:T,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:S,serverHooks:O}=E;async function w(e,t,r){r.requestMeta&&(0,i.setRequestMeta)(e,r.requestMeta),E.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/v1/moderations/route";a=a.replace(/\/index$/,"")||"/";let n=await E.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!n)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:T,params:y,nextConfig:w,parsedUrl:C,isDraftMode:S,prerenderManifest:O,routerServerContext:P,isOnDemandRevalidate:_,revalidateOnlyGenerated:b,resolvedPathname:I,clientReferenceManifest:N,serverActionsManifest:x}=n,M=(0,d.normalizeAppPath)(a),U=!!(O.dynamicRoutes[M]||O.routes[I]),H=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,C,!1):t.end("This page could not be found"),null);if(U&&!S){let e=!!O.routes[I],t=O.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(w.adapterPath)return await H();throw new A.NoFallbackError}}let k=null;!U||E.isDev||S||(k=I,k="/index"===k?"/":k);let D=!0===E.isDev||!U,q=U&&!D;x&&N&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:N,serverActionsManifest:x});let j=e.method||"GET",$=(0,s.getTracer)(),B=$.getActiveScopeSpan(),K=!!(null==P?void 0:P.isWrappedByNextServer),F=!!(0,i.getRequestMeta)(e,"minimalMode"),L=(0,i.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,w,O,F);null==L||L.resetRequestCache(),globalThis.__incrementalCache=L;let z={params:y,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:D,incrementalCache:L,cacheLifeProfiles:w.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,o)=>E.onRequestError(e,t,a,o,P)},sharedContext:{buildId:T}},G=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),Q=c.NextRequestAdapter.fromNodeNextRequest(G,(0,c.signalFromNodeResponse)(t));try{let n,i=async e=>E.handle(Q,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=r.get("next.route");if(o){let t=`${j} ${o}`;e.setAttributes({"next.route":o,"http.route":o,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",o),n.updateName(t))}else e.updateName(`${j} ${a}`)}),l=async n=>{var s,l;let d=async({previousCacheEntry:o})=>{try{if(!F&&_&&b&&!o)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await i(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let s=z.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=z.renderOpts.collectedTags;if(!U)return await (0,m.sendResponse)(G,V,a,z.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,v.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,o=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:o}}}}catch(t){throw(null==o?void 0:o.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:_})},!1,P),t}},u=await E.handleResponse({req:e,nextConfig:w,cacheKey:k,routeKind:o.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:_,revalidateOnlyGenerated:b,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:F});if(!U)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",_?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,v.fromNodeOutgoingHttpHeaders)(u.value.headers);return F&&U||c.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,m.sendResponse)(G,V,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};K&&B?await l(B):(n=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(p.BaseServerSpan.handleRequest,{spanName:`${j} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":j,"http.target":e.url}},l),void 0,!K))}catch(t){if(t instanceof A.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:_})},!1,P),U)throw t;return await (0,m.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,w,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:S})},"routeModule",0,E,"serverHooks",0,O,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,S]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0x_hqjb._.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={RequestCookies:()=>y,ResponseCookies:()=>m,parseCookie:()=>u,parseSetCookie:()=>p,stringifyCookie:()=>d};for(var c in l)a(s,c,{get:l[c],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function u(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...a]=u(e),{domain:n,expires:i,httponly:o,maxage:s,path:l,samesite:c,secure:d,partitioned:p,priority:y}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var m,g,w={name:t,value:decodeURIComponent(r),domain:n,...i&&{expires:new Date(i)},...o&&{httpOnly:!0},..."string"==typeof s&&{maxAge:Number(s)},path:l,...c&&{sameSite:f.includes(m=(m=c).toLowerCase())?m:void 0},...d&&{secure:!0},...y&&{priority:h.includes(g=(g=y).toLowerCase())?g:void 0},...p&&{partitioned:!0}};let e={};for(let t in w)w[t]&&(e[t]=w[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of i(t))o.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=n(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);var f=["strict","lax","none"],h=["low","medium","high"],y=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of u(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},m=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const n=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,a,n,i,o=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,i=!1;l();)if(","===(r=e.charAt(s))){for(a=s,s+=1,l(),n=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(i=!0,s=n,o.push(e.substring(t,a)),t=s):s=a+1}else s+=1;(!i||s>=e.length)&&o.push(e.substring(t,e.length))}return o}(n)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),n=t([a]);[a]=n.then?(await n)():n,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function a(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function n(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let a of e)t.set(a,r),r+=a.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let a=e.charCodeAt(r);if(a>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=a}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,n,"encodeBase64",0,a],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return n(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):a(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},709939,e=>{"use strict";var t=e.i(663370),r=e.i(293233),a=e.i(865466),n=e.i(632802),i=e.i(913658),o=e.i(177278),s=e.i(48215),l=e.i(252665),c=e.i(18083);async function d(e,d,u){if(!(0,o.isObject)(e))throw new a.JWSInvalid("Flattened JWS must be an object");if(void 0===e.protected&&void 0===e.header)throw new a.JWSInvalid('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==e.protected&&"string"!=typeof e.protected)throw new a.JWSInvalid("JWS Protected Header incorrect type");if(void 0===e.payload)throw new a.JWSInvalid("JWS Payload missing");if("string"!=typeof e.signature)throw new a.JWSInvalid("JWS Signature missing or incorrect type");if(void 0!==e.header&&!(0,o.isObject)(e.header))throw new a.JWSInvalid("JWS Unprotected Header incorrect type");let p={};if(e.protected)try{let r=(0,t.decode)(e.protected);p=JSON.parse(n.decoder.decode(r))}catch{throw new a.JWSInvalid("JWS Protected Header is invalid")}if(!(0,o.isDisjoint)(p,e.header))throw new a.JWSInvalid("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");let f={...p,...e.header},h=(0,l.validateCrit)(a.JWSInvalid,new Map([["b64",!0]]),u?.crit,p,f),y=!0;if(h.has("b64")&&"boolean"!=typeof(y=p.b64))throw new a.JWSInvalid('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:m}=f;if("string"!=typeof m||!m)throw new a.JWSInvalid('JWS "alg" (Algorithm) Header Parameter missing or invalid');let g=u&&function(e,t){if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw TypeError(`"${e}" option must be an array of strings`);if(t)return new Set(t)}("algorithms",u.algorithms);if(g&&!g.has(m))throw new a.JOSEAlgNotAllowed('"alg" (Algorithm) Header Parameter value not allowed');if(y){if("string"!=typeof e.payload)throw new a.JWSInvalid("JWS Payload must be a string")}else if("string"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new a.JWSInvalid("JWS Payload must be a string or an Uint8Array instance");let w=!1;"function"==typeof d&&(d=await d(p,e),w=!0),(0,s.checkKeyType)(m,d,"verify");let v=(0,n.concat)(void 0!==e.protected?(0,n.encode)(e.protected):new Uint8Array,(0,n.encode)("."),"string"==typeof e.payload?y?(0,n.encode)(e.payload):n.encoder.encode(e.payload):e.payload),_=(0,i.decodeBase64url)(e.signature,"signature",a.JWSInvalid),x=await (0,c.normalizeKey)(d,m);if(!await (0,r.verify)(m,x,_,v))throw new a.JWSSignatureVerificationFailed;let A={payload:y?(0,i.decodeBase64url)(e.payload,"payload",a.JWSInvalid):"string"==typeof e.payload?n.encoder.encode(e.payload):e.payload};return(void 0!==e.protected&&(A.protectedHeader=p),void 0!==e.header&&(A.unprotectedHeader=e.header),w)?{...A,key:x}:A}async function u(e,t,r){if(e instanceof Uint8Array&&(e=n.decoder.decode(e)),"string"!=typeof e)throw new a.JWSInvalid("Compact JWS must be a string or Uint8Array");let{0:i,1:o,2:s,length:l}=e.split(".");if(3!==l)throw new a.JWSInvalid("Invalid Compact JWS");let c=await d({payload:o,protected:i,signature:s},t,r),u={payload:c.payload,protectedHeader:c.protectedHeader};return"function"==typeof t?{...u,key:c.key}:u}var p=e.i(224472);async function f(e,t,r){let n=await u(e,t,r);if(n.protectedHeader.crit?.includes("b64")&&!1===n.protectedHeader.b64)throw new a.JWTInvalid("JWTs MUST NOT use unencoded payload");let i={payload:(0,p.validateClaimsSet)(n.protectedHeader,n.payload,r),protectedHeader:n.protectedHeader};return"function"==typeof t?{...i,key:n.key}:i}e.s(["jwtVerify",0,f],709939)},235328,e=>{"use strict";var t=e.i(709939),r=e.i(493458);e.i(245272);var a=e.i(548941);async function n(a){if(!await i())return!0;let n=a.headers.get("authorization");if(n?.startsWith("Bearer ")){let t=n.slice(7);try{let{validateApiKey:r}=await e.A(734680);if(await r(t))return!0}catch{}}if(process.env.JWT_SECRET)try{let e=await (0,r.cookies)(),a=e.get("auth_token")?.value;if(a){let e=new TextEncoder().encode(process.env.JWT_SECRET);return await (0,t.jwtVerify)(a,e),!0}}catch{}return!1}async function i(){try{let e=await (0,a.getSettings)();if(!1===e.requireLogin||!e.password&&!process.env.INITIAL_PASSWORD)return!1;return!0}catch(e){return console.error("[API_AUTH_GUARD] isAuthRequired failed, defaulting to true:",e?.message||e),!0}}e.s(["isAuthRequired",0,i,"isAuthenticated",0,n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return a.registerServerReference}});let a=e.r(997953)},195975,(e,t,r)=>{"use strict";function a(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function b(e,t,r){await c.default.mkdir(e,{recursive:!0});let a=u.default.join(e,"config.yaml"),n=`port: ${t}
|
|
3
3
|
host: 127.0.0.1
|
|
4
4
|
log_level: warn
|
|
5
|
-
`;return await c.default.writeFile(a,n),a}async function b(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await E(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),b(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await b(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},451728,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerToolSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e}=a.data,t=await (0,i.restartTool)(e);return n.NextResponse.json({success:!0,...t})}catch(t){let e=t instanceof Error?t.message:"Failed to restart";return console.error("[version-manager] restart error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"40a9b61e3f31105a2dfd44a34cc87aee9805ae26a4",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),557809,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(451728),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/restart/route",pathname:"/api/version-manager/restart",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/restart/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:E,serverHooks:b}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/restart/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:E,prerenderManifest:b,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(b.dynamicRoutes[k]||b.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!E){let e=!!b.routes[O],t=b.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||E||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,b,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:E})},"routeModule",0,R,"serverHooks",0,b,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
|
|
5
|
+
`;return await c.default.writeFile(a,n),a}async function E(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await b(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),E(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await E(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},451728,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerToolSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e}=a.data,t=await (0,i.restartTool)(e);return n.NextResponse.json({success:!0,...t})}catch(t){let e=t instanceof Error?t.message:"Failed to restart";return console.error("[version-manager] restart error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"40de7d4fb22debacb347a36720a286ba89369d7cf3",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),557809,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(451728),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/restart/route",pathname:"/api/version-manager/restart",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/restart/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:b,serverHooks:E}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/restart/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:b,prerenderManifest:E,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(E.dynamicRoutes[k]||E.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!b){let e=!!E.routes[O],t=E.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||b||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,E,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:b})},"routeModule",0,R,"serverHooks",0,E,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,b]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
|
|
6
6
|
|
|
7
7
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0~0hd.s._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function n(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function a(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let n of e)t.set(n,r),r+=n.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if(n>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=n}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,a,"encodeBase64",0,n],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return a(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):n(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",n="unspecified"){super(e,{cause:{claim:r,reason:n,payload:t}}),this.claim=r,this.reason=n,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",n="unspecified"){super(e,{cause:{claim:r,reason:n,payload:t}}),this.claim=r,this.reason=n,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},111294,e=>{"use strict";var t=e.i(485641);e.s(["createInjectionGuard",0,function(e={}){let r=e.mode||process.env.INJECTION_GUARD_MODE||"warn",n=e.logger||console;return function(e){if(!e||"object"!=typeof e)return{blocked:!1,result:{flagged:!1,detections:[],piiDetections:[]}};let a=(0,t.sanitizeRequest)(e,n);if(0===a.detections.length&&0===a.piiDetections.length)return{blocked:!1,result:a};let o=a.detections.filter(e=>"high"===e.severity);return"block"===r&&o.length>0?(n.warn("[InjectionGuard] Blocked request with high-severity injection:",{detections:a.detections.map(e=>({pattern:e.pattern,severity:e.severity}))}),{blocked:!0,result:a}):(("warn"===r||"log"===r)&&n["warn"===r?"warn":"info"]("[InjectionGuard] Detected potential injection patterns:",{detections:a.detections.map(e=>({pattern:e.pattern,severity:e.severity})),pii:a.piiDetections.length}),{blocked:!1,result:a})}}])},900012,e=>e.a(async(t,r)=>{try{var n=e.i(224010),a=e.i(311250),o=e.i(352812),i=e.i(111294),s=t([a]);[a]=s.then?(await s)():s;let d=null,u=(0,i.createInjectionGuard)();async function l(){return new Response(null,{headers:{"Access-Control-Allow-Origin":n.CORS_ORIGIN,"Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function c(e){await (!d&&(d=Promise.resolve((0,o.initTranslators)()).then(()=>{console.log("[SSE] Translators initialized")})),d);try{let t=e.clone(),r=await t.json().catch(()=>null);if(r){let{blocked:e,result:t}=u(r);if(e)return new Response(JSON.stringify({error:{message:"Request blocked: potential prompt injection detected",type:"injection_detected",code:"SECURITY_001",detections:t.detections.length}}),{status:400,headers:{...n.CORS_HEADERS,"Content-Type":"application/json"}})}}catch(e){return console.error("[SECURITY] Prompt injection guard failed:",e),new Response(JSON.stringify({error:{message:"Security validation temporarily unavailable",type:"security_guard_unavailable",code:"SECURITY_002"}}),{status:503,headers:{...n.CORS_HEADERS,"Content-Type":"application/json"}})}return await (0,a.handleChat)(e)}e.s(["OPTIONS",0,l,"POST",0,c]),r()}catch(e){r(e)}},!1),404857,e=>e.a(async(t,r)=>{try{var n=e.i(747909),a=e.i(174017),o=e.i(996250),i=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),h=e.i(47587),_=e.i(666012),R=e.i(570101),f=e.i(626937),E=e.i(10372),y=e.i(193695);e.i(820232);var g=e.i(600220),v=e.i(900012),m=t([v]);[v]=m.then?(await m)():m;let S=new n.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/v1/chat/completions/route",pathname:"/api/v1/chat/completions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1/chat/completions/route.ts",nextConfigOutput:"standalone",userland:v,...{}}),{workAsyncStorage:O,workUnitAsyncStorage:T,serverHooks:I}=S;async function A(e,t,r){r.requestMeta&&(0,i.setRequestMeta)(e,r.requestMeta),S.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/v1/chat/completions/route";n=n.replace(/\/index$/,"")||"/";let o=await S.prepare(e,t,{srcPage:n,multiZoneDraftMode:!1});if(!o)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:v,params:m,nextConfig:A,parsedUrl:O,isDraftMode:T,prerenderManifest:I,routerServerContext:w,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,resolvedPathname:P,clientReferenceManifest:N,serverActionsManifest:x}=o,D=(0,c.normalizeAppPath)(n),j=!!(I.dynamicRoutes[D]||I.routes[P]),k=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,O,!1):t.end("This page could not be found"),null);if(j&&!T){let e=!!I.routes[P],t=I.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await k();throw new y.NoFallbackError}}let U=null;!j||S.isDev||T||(U=P,U="/index"===U?"/":U);let J=!0===S.isDev||!j,L=j&&!J;x&&N&&(0,l.setManifestsSingleton)({page:n,clientReferenceManifest:N,serverActionsManifest:x});let W=e.method||"GET",q=(0,s.getTracer)(),M=q.getActiveScopeSpan(),H=!!(null==w?void 0:w.isWrappedByNextServer),K=!!(0,i.getRequestMeta)(e,"minimalMode"),B=(0,i.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,A,I,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let G={params:m,previewProps:I.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:J,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>S.onRequestError(e,t,n,a,w)},sharedContext:{buildId:v}},F=new d.NodeNextRequest(e),V=new d.NodeNextResponse(t),$=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let o,i=async e=>S.handle($,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=q.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${W} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),o&&o!==e&&(o.setAttribute("http.route",a),o.updateName(t))}else e.updateName(`${W} ${n}`)}),l=async o=>{var s,l;let c=async({previousCacheEntry:a})=>{try{if(!K&&C&&b&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(o);e.fetchMetrics=G.renderOpts.fetchMetrics;let s=G.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=G.renderOpts.collectedTags;if(!j)return await (0,_.sendResponse)(F,V,n,G.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[E.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=E.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:n,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:C})},!1,w),t}},d=await S.handleResponse({req:e,nextConfig:A,cacheKey:U,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:K});if(!j)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",C?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,R.fromNodeOutgoingHttpHeaders)(d.value.headers);return K&&j||u.delete(E.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,_.sendResponse)(F,V,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};H&&M?await l(M):(o=q.getActiveScopeSpan(),await q.withPropagatedContext(e.headers,()=>q.trace(p.BaseServerSpan.handleRequest,{spanName:`${W} ${n}`,kind:s.SpanKind.SERVER,attributes:{"http.method":W,"http.target":e.url}},l),void 0,!H))}catch(t){if(t instanceof y.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:C})},!1,w),j)throw t;return await (0,_.sendResponse)(F,V,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,o.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:T})},"routeModule",0,S,"serverHooks",0,I,"workAsyncStorage",0,O,"workUnitAsyncStorage",0,T]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_0ml5l_h._.js"].map(t=>e.l(t))).then(()=>t(969738)))},901259,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_http2_0j-h654._.js"].map(t=>e.l(t))).then(()=>t(925328)))},828068,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_promptCache_index_ts_0jus6ym._.js"].map(t=>e.l(t))).then(()=>t(198426)))},537776,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_usageDb_ts_0oz3f~n._.js"].map(t=>e.l(t))).then(()=>t(36197)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__11ptf~3._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[467388,e=>e.a(async(t,a)=>{try{var r=e.i(745015),n=e.i(89171),i=e.i(924868),o=e.i(814747),l=e.i(446786),s=e.i(266240),d=e.i(841788),u=e.i(197892),c=e.i(676088),p=e.i(200392);e.i(245272);var h=e.i(125852),f=e.i(195975),g=t([c,p]);[c,p]=g.then?(await g)():g;let w=o.default.join(l.default.homedir(),".cline","data"),y=o.default.join(w,"globalState.json"),A=o.default.join(w,"secrets.json"),E=async()=>{try{let e=await i.default.readFile(y,"utf-8");return JSON.parse(e)}catch(e){if("ENOENT"===e.code)return null;throw e}},N=async()=>{try{let e=await i.default.readFile(A,"utf-8");return JSON.parse(e)}catch(e){if("ENOENT"===e.code)return{};throw e}};async function R(){try{let e=await (0,s.getCliRuntimeStatus)("cline");if(!e.installed||!e.runnable)return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Cline CLI is installed but not runnable":"Cline CLI is not installed"});let t=await E();return await N(),n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:{actModeApiProvider:t?.actModeApiProvider,planModeApiProvider:t?.planModeApiProvider,openAiBaseUrl:t?.openAiBaseUrl,openAiModelId:t?.openAiModelId,planModeOpenAiModelId:t?.planModeOpenAiModelId},hasOmniRoute:(e=>{if(!e)return!1;let t="openai"===e.actModeApiProvider||"openai"===e.planModeApiProvider,a=e.openAiBaseUrl||"";return t&&(a.includes("localhost")||a.includes("127.0.0.1")||a.includes("omniroute"))})(t),globalStatePath:y,secretsPath:A})}catch(e){return console.log("Error checking cline settings:",e),n.NextResponse.json({error:"Failed to check cline settings"},{status:500})}}async function v(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,s.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let a=(0,p.validateBody)(c.cliModelConfigSchema,t);if((0,p.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});let{baseUrl:r,apiKey:o,model:l}=a.data,f="string"==typeof t?.keyId?t.keyId.trim():null;if(f)try{let e=await (0,h.getApiKeyById)(f);e?.key&&(o=e.key)}catch{}await i.default.mkdir(w,{recursive:!0}),await (0,d.createBackup)("cline",y),await (0,d.createBackup)("cline",A);let g={};try{let e=await i.default.readFile(y,"utf-8");g=JSON.parse(e)}catch{}let R=r.endsWith("/v1")?r.slice(0,-3):r;g.actModeApiProvider="openai",g.planModeApiProvider="openai",g.openAiBaseUrl=R,g.openAiModelId=l,g.planModeOpenAiModelId=l,await i.default.writeFile(y,JSON.stringify(g,null,2));let v={};try{let e=await i.default.readFile(A,"utf-8");v=JSON.parse(e)}catch{}v.openAiApiKey=o||"sk_omniroute",await i.default.writeFile(A,JSON.stringify(v,null,2));try{(0,u.saveCliToolLastConfigured)("cline")}catch{}return n.NextResponse.json({success:!0,message:"Cline settings applied successfully!",globalStatePath:y})}catch(e){return console.log("Error updating cline settings:",e),n.NextResponse.json({error:"Failed to update cline settings"},{status:500})}}async function m(){try{let e=(0,s.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});await (0,d.createBackup)("cline",y),await (0,d.createBackup)("cline",A);let t={};try{let e=await i.default.readFile(y,"utf-8");t=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return n.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}"openai"===t.actModeApiProvider&&(delete t.openAiBaseUrl,delete t.openAiModelId,delete t.planModeOpenAiModelId,t.actModeApiProvider="cline",t.planModeApiProvider="cline"),await i.default.writeFile(y,JSON.stringify(t,null,2));let a={};try{let e=await i.default.readFile(A,"utf-8");a=JSON.parse(e)}catch{}delete a.openAiApiKey,await i.default.writeFile(A,JSON.stringify(a,null,2));try{(0,u.deleteCliToolLastConfigured)("cline")}catch{}return n.NextResponse.json({success:!0,message:"OmniRoute settings removed from Cline"})}catch(e){return console.log("Error resetting cline settings:",e),n.NextResponse.json({error:"Failed to reset cline settings"},{status:500})}}(0,f.ensureServerEntryExports)([R,v,m]),(0,r.registerServerReference)(R,"0032f174ca52e3fdd02e233bfdde26a74ab3b4bd70",null),(0,r.registerServerReference)(v,"405f5e117e535bfad87cc6a27fc7d904bcdd8dbcaa",null),(0,r.registerServerReference)(m,"005355ab0b024e29ec8a5e64c9cc466877178a0a55",null),e.s(["DELETE",0,m,"GET",0,R,"POST",0,v]),a()}catch(e){a(e)}},!1),169552,e=>e.a(async(t,a)=>{try{var r=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),l=e.i(561916),s=e.i(174677),d=e.i(869741),u=e.i(316795),c=e.i(487718),p=e.i(995169),h=e.i(47587),f=e.i(666012),g=e.i(570101),R=e.i(626937),v=e.i(10372),m=e.i(193695);e.i(820232);var w=e.i(600220),y=e.i(467388),A=t([y]);[y]=A.then?(await A)():A;let N=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/cli-tools/cline-settings/route",pathname:"/api/cli-tools/cline-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/cline-settings/route.ts",nextConfigOutput:"standalone",userland:y,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:b,serverHooks:x}=N;async function E(e,t,a){a.requestMeta&&(0,o.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/cli-tools/cline-settings/route";r=r.replace(/\/index$/,"")||"/";let i=await N.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:A,nextConfig:E,parsedUrl:C,isDraftMode:b,prerenderManifest:x,routerServerContext:M,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,resolvedPathname:O,clientReferenceManifest:T,serverActionsManifest:I}=i,j=(0,d.normalizeAppPath)(r),k=!!(x.dynamicRoutes[j]||x.routes[O]),_=async()=>((null==M?void 0:M.render404)?await M.render404(e,t,C,!1):t.end("This page could not be found"),null);if(k&&!b){let e=!!x.routes[O],t=x.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await _();throw new m.NoFallbackError}}let F=null;!k||N.isDev||b||(F=O,F="/index"===F?"/":F);let U=!0===N.isDev||!k,q=k&&!U;I&&T&&(0,s.setManifestsSingleton)({page:r,clientReferenceManifest:T,serverActionsManifest:I});let B=e.method||"GET",H=(0,l.getTracer)(),D=H.getActiveScopeSpan(),J=!!(null==M?void 0:M.isWrappedByNextServer),K=!!(0,o.getRequestMeta)(e,"minimalMode"),L=(0,o.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,E,x,K);null==L||L.resetRequestCache(),globalThis.__incrementalCache=L;let $={params:A,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:L,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>N.onRequestError(e,t,r,n,M)},sharedContext:{buildId:y}},W=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),V=c.NextRequestAdapter.fromNodeNextRequest(W,(0,c.signalFromNodeResponse)(t));try{let i,o=async e=>N.handle(V,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=H.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${B} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${B} ${r}`)}),s=async i=>{var l,s;let d=async({previousCacheEntry:n})=>{try{if(!K&&P&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await o(i);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let s=$.renderOpts.collectedTags;if(!k)return await (0,f.sendResponse)(W,G,r,$.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(r.headers);s&&(t[v.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:P})},!1,M),t}},u=await N.handleResponse({req:e,nextConfig:E,cacheKey:F,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:K});if(!k)return null;if((null==u||null==(l=u.value)?void 0:l.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(s=u.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",P?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,g.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&k||c.delete(v.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,f.sendResponse)(W,G,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};J&&D?await s(D):(i=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(p.BaseServerSpan.handleRequest,{spanName:`${B} ${r}`,kind:l.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},s),void 0,!J))}catch(t){if(t instanceof m.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:P})},!1,M),k)throw t;return await (0,f.sendResponse)(W,G,new Response(null,{status:500})),null}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:b})},"routeModule",0,N,"serverHooks",0,x,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,b]),a()}catch(e){a(e)}},!1)];
|
|
1
|
+
module.exports=[467388,e=>e.a(async(t,a)=>{try{var r=e.i(745015),n=e.i(89171),i=e.i(924868),o=e.i(814747),l=e.i(446786),s=e.i(266240),d=e.i(841788),c=e.i(197892),u=e.i(676088),p=e.i(200392);e.i(245272);var h=e.i(125852),f=e.i(195975),g=t([u,p]);[u,p]=g.then?(await g)():g;let w=o.default.join(l.default.homedir(),".cline","data"),y=o.default.join(w,"globalState.json"),A=o.default.join(w,"secrets.json"),E=async()=>{try{let e=await i.default.readFile(y,"utf-8");return JSON.parse(e)}catch(e){if("ENOENT"===e.code)return null;throw e}},N=async()=>{try{let e=await i.default.readFile(A,"utf-8");return JSON.parse(e)}catch(e){if("ENOENT"===e.code)return{};throw e}};async function R(){try{let e=await (0,s.getCliRuntimeStatus)("cline");if(!e.installed||!e.runnable)return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Cline CLI is installed but not runnable":"Cline CLI is not installed"});let t=await E();return await N(),n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:{actModeApiProvider:t?.actModeApiProvider,planModeApiProvider:t?.planModeApiProvider,openAiBaseUrl:t?.openAiBaseUrl,openAiModelId:t?.openAiModelId,planModeOpenAiModelId:t?.planModeOpenAiModelId},hasOmniRoute:(e=>{if(!e)return!1;let t="openai"===e.actModeApiProvider||"openai"===e.planModeApiProvider,a=e.openAiBaseUrl||"";return t&&(a.includes("localhost")||a.includes("127.0.0.1")||a.includes("omniroute"))})(t),globalStatePath:y,secretsPath:A})}catch(e){return console.log("Error checking cline settings:",e),n.NextResponse.json({error:"Failed to check cline settings"},{status:500})}}async function v(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,s.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let a=(0,p.validateBody)(u.cliModelConfigSchema,t);if((0,p.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});let{baseUrl:r,apiKey:o,model:l}=a.data,f="string"==typeof t?.keyId?t.keyId.trim():null;if(f)try{let e=await (0,h.getApiKeyById)(f);e?.key&&(o=e.key)}catch{}await i.default.mkdir(w,{recursive:!0}),await (0,d.createBackup)("cline",y),await (0,d.createBackup)("cline",A);let g={};try{let e=await i.default.readFile(y,"utf-8");g=JSON.parse(e)}catch{}let R=r.endsWith("/v1")?r.slice(0,-3):r;g.actModeApiProvider="openai",g.planModeApiProvider="openai",g.openAiBaseUrl=R,g.openAiModelId=l,g.planModeOpenAiModelId=l,await i.default.writeFile(y,JSON.stringify(g,null,2));let v={};try{let e=await i.default.readFile(A,"utf-8");v=JSON.parse(e)}catch{}v.openAiApiKey=o||"sk_omniroute",await i.default.writeFile(A,JSON.stringify(v,null,2));try{(0,c.saveCliToolLastConfigured)("cline")}catch{}return n.NextResponse.json({success:!0,message:"Cline settings applied successfully!",globalStatePath:y})}catch(e){return console.log("Error updating cline settings:",e),n.NextResponse.json({error:"Failed to update cline settings"},{status:500})}}async function m(){try{let e=(0,s.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});await (0,d.createBackup)("cline",y),await (0,d.createBackup)("cline",A);let t={};try{let e=await i.default.readFile(y,"utf-8");t=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return n.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}"openai"===t.actModeApiProvider&&(delete t.openAiBaseUrl,delete t.openAiModelId,delete t.planModeOpenAiModelId,t.actModeApiProvider="cline",t.planModeApiProvider="cline"),await i.default.writeFile(y,JSON.stringify(t,null,2));let a={};try{let e=await i.default.readFile(A,"utf-8");a=JSON.parse(e)}catch{}delete a.openAiApiKey,await i.default.writeFile(A,JSON.stringify(a,null,2));try{(0,c.deleteCliToolLastConfigured)("cline")}catch{}return n.NextResponse.json({success:!0,message:"OmniRoute settings removed from Cline"})}catch(e){return console.log("Error resetting cline settings:",e),n.NextResponse.json({error:"Failed to reset cline settings"},{status:500})}}(0,f.ensureServerEntryExports)([R,v,m]),(0,r.registerServerReference)(R,"00aa74c402c2bd1192d08cea4d98c4659490f321cb",null),(0,r.registerServerReference)(v,"409c3a22cc4466cb92f1cb2b51d60742a4218e4858",null),(0,r.registerServerReference)(m,"00881a903d6cb515bec87487124d3d9a09286f11fa",null),e.s(["DELETE",0,m,"GET",0,R,"POST",0,v]),a()}catch(e){a(e)}},!1),169552,e=>e.a(async(t,a)=>{try{var r=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),l=e.i(561916),s=e.i(174677),d=e.i(869741),c=e.i(316795),u=e.i(487718),p=e.i(995169),h=e.i(47587),f=e.i(666012),g=e.i(570101),R=e.i(626937),v=e.i(10372),m=e.i(193695);e.i(820232);var w=e.i(600220),y=e.i(467388),A=t([y]);[y]=A.then?(await A)():A;let N=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/cli-tools/cline-settings/route",pathname:"/api/cli-tools/cline-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/cline-settings/route.ts",nextConfigOutput:"standalone",userland:y,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:x,serverHooks:b}=N;async function E(e,t,a){a.requestMeta&&(0,o.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/cli-tools/cline-settings/route";r=r.replace(/\/index$/,"")||"/";let i=await N.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:A,nextConfig:E,parsedUrl:C,isDraftMode:x,prerenderManifest:b,routerServerContext:M,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,resolvedPathname:O,clientReferenceManifest:T,serverActionsManifest:I}=i,j=(0,d.normalizeAppPath)(r),k=!!(b.dynamicRoutes[j]||b.routes[O]),_=async()=>((null==M?void 0:M.render404)?await M.render404(e,t,C,!1):t.end("This page could not be found"),null);if(k&&!x){let e=!!b.routes[O],t=b.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await _();throw new m.NoFallbackError}}let F=null;!k||N.isDev||x||(F=O,F="/index"===F?"/":F);let U=!0===N.isDev||!k,q=k&&!U;I&&T&&(0,s.setManifestsSingleton)({page:r,clientReferenceManifest:T,serverActionsManifest:I});let B=e.method||"GET",H=(0,l.getTracer)(),D=H.getActiveScopeSpan(),J=!!(null==M?void 0:M.isWrappedByNextServer),K=!!(0,o.getRequestMeta)(e,"minimalMode"),L=(0,o.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,E,b,K);null==L||L.resetRequestCache(),globalThis.__incrementalCache=L;let $={params:A,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:L,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>N.onRequestError(e,t,r,n,M)},sharedContext:{buildId:y}},W=new c.NodeNextRequest(e),G=new c.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>N.handle(V,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=H.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${B} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${B} ${r}`)}),s=async i=>{var l,s;let d=async({previousCacheEntry:n})=>{try{if(!K&&P&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await o(i);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let s=$.renderOpts.collectedTags;if(!k)return await (0,f.sendResponse)(W,G,r,$.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(r.headers);s&&(t[v.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:P})},!1,M),t}},c=await N.handleResponse({req:e,nextConfig:E,cacheKey:F,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:K});if(!k)return null;if((null==c||null==(l=c.value)?void 0:l.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(s=c.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",P?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,g.fromNodeOutgoingHttpHeaders)(c.value.headers);return K&&k||u.delete(v.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,R.getCacheControlHeader)(c.cacheControl)),await (0,f.sendResponse)(W,G,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};J&&D?await s(D):(i=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(p.BaseServerSpan.handleRequest,{spanName:`${B} ${r}`,kind:l.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},s),void 0,!J))}catch(t){if(t instanceof m.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:P})},!1,M),k)throw t;return await (0,f.sendResponse)(W,G,new Response(null,{status:500})),null}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:x})},"routeModule",0,N,"serverHooks",0,b,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,x]),a()}catch(e){a(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_00.pgsp._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[522051,e=>e.a(async(t,a)=>{try{var r=e.i(745015),n=e.i(89171),s=e.i(924868),i=e.i(814747),o=e.i(266240),l=e.i(841788),u=e.i(197892),d=e.i(676088),c=e.i(200392);e.i(245272);var p=e.i(125852),h=e.i(195975),R=t([d,c]);[d,c]=R.then?(await R)():R;let v=()=>(0,o.getCliPrimaryConfigPath)("claude"),m=async()=>{try{let e=v(),t=await s.default.readFile(e,"utf-8");return JSON.parse(t)}catch(e){if("ENOENT"===e.code)return null;throw e}};async function f(){try{let e=await (0,o.getCliRuntimeStatus)("claude");if(!e.installed||!e.runnable)return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Claude CLI is installed but not runnable":"Claude CLI is not installed"});let t=await m(),a=!!t?.env?.ANTHROPIC_BASE_URL;return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:t,hasOmniRoute:a,settingsPath:v()})}catch(e){return console.log("Error checking claude settings:",e),n.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function g(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let a=(0,c.validateBody)(d.cliSettingsEnvSchema,t);if((0,c.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});let{env:r}=a.data,h="string"==typeof t?.keyId?t.keyId.trim():null;if(h)try{let e=await (0,p.getApiKeyById)(h);e?.key&&(r.ANTHROPIC_AUTH_TOKEN=e.key)}catch{}let R=v(),f=i.default.dirname(R);await s.default.mkdir(f,{recursive:!0}),await (0,l.createBackup)("claude",R);let g={};try{let e=await s.default.readFile(R,"utf-8");g=JSON.parse(e)}catch(e){if("ENOENT"!==e.code)throw e}r.ANTHROPIC_BASE_URL&&(r.ANTHROPIC_BASE_URL=r.ANTHROPIC_BASE_URL.endsWith("/v1")?r.ANTHROPIC_BASE_URL:`${r.ANTHROPIC_BASE_URL}/v1`);let E={...g,env:{...g.env||{},...r}};await s.default.writeFile(R,JSON.stringify(E,null,2));try{(0,u.saveCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(e){return console.log("Error updating claude settings:",e),n.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let N=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function E(){try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let t=v(),a={};try{let e=await s.default.readFile(t,"utf-8");a=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return n.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}await (0,l.createBackup)("claude",t),a.env&&(N.forEach(e=>{delete a.env[e]}),0===Object.keys(a.env).length&&delete a.env),await s.default.writeFile(t,JSON.stringify(a,null,2));try{(0,u.deleteCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(e){return console.log("Error resetting claude settings:",e),n.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,h.ensureServerEntryExports)([f,g,E]),(0,r.registerServerReference)(f,"00b2805daaef804f1059784173512ad00733ad553f",null),(0,r.registerServerReference)(g,"403396bc1c5488bcf066cc64481604631e5af982fe",null),(0,r.registerServerReference)(E,"00e2056f5f168e708f3243537081f322b8beeb3855",null),e.s(["DELETE",0,E,"GET",0,f,"POST",0,g]),a()}catch(e){a(e)}},!1),825593,e=>e.a(async(t,a)=>{try{var r=e.i(747909),n=e.i(174017),s=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),d=e.i(316795),c=e.i(487718),p=e.i(995169),h=e.i(47587),R=e.i(666012),f=e.i(570101),g=e.i(626937),E=e.i(10372),v=e.i(193695);e.i(820232);var m=e.i(600220),N=e.i(522051),C=t([N]);[N]=C.then?(await C)():C;let w=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/claude-settings/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:T,serverHooks:O}=w;async function y(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/cli-tools/claude-settings/route";r=r.replace(/\/index$/,"")||"/";let s=await w.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:C,nextConfig:y,parsedUrl:A,isDraftMode:T,prerenderManifest:O,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,resolvedPathname:x,clientReferenceManifest:b,serverActionsManifest:I}=s,H=(0,u.normalizeAppPath)(r),U=!!(O.dynamicRoutes[H]||O.routes[x]),M=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(U&&!T){let e=!!O.routes[x],t=O.dynamicRoutes[H];if(t&&!1===t.fallback&&!e){if(y.adapterPath)return await M();throw new v.NoFallbackError}}let k=null;!U||w.isDev||T||(k=x,k="/index"===k?"/":k);let L=!0===w.isDev||!U,j=U&&!L;I&&b&&(0,l.setManifestsSingleton)({page:r,clientReferenceManifest:b,serverActionsManifest:I});let D=e.method||"GET",F=(0,o.getTracer)(),q=F.getActiveScopeSpan(),B=!!(null==_?void 0:_.isWrappedByNextServer),K=!!(0,i.getRequestMeta)(e,"minimalMode"),$=(0,i.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,y,O,K);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let J={params:C,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:L,incrementalCache:$,cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>w.onRequestError(e,t,r,n,_)},sharedContext:{buildId:N}},W=new d.NodeNextRequest(e),G=new d.NodeNextResponse(t),V=c.NextRequestAdapter.fromNodeNextRequest(W,(0,c.signalFromNodeResponse)(t));try{let s,i=async e=>w.handle(V,J).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=F.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${D} ${r}`)}),l=async s=>{var o,l;let u=async({previousCacheEntry:n})=>{try{if(!K&&S&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await i(s);e.fetchMetrics=J.renderOpts.fetchMetrics;let o=J.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=J.renderOpts.collectedTags;if(!U)return await (0,R.sendResponse)(W,G,r,J.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(r.headers);l&&(t[E.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=E.INFINITE_CACHE?void 0:J.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:S})},!1,_),t}},d=await w.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:K});if(!U)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return K&&U||c.delete(E.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,R.sendResponse)(W,G,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};B&&q?await l(q):(s=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(p.BaseServerSpan.handleRequest,{spanName:`${D} ${r}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof v.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:S})},!1,_),U)throw t;return await (0,R.sendResponse)(W,G,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:T})},"routeModule",0,w,"serverHooks",0,O,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,T]),a()}catch(e){a(e)}},!1)];
|
|
1
|
+
module.exports=[522051,e=>e.a(async(t,a)=>{try{var r=e.i(745015),n=e.i(89171),s=e.i(924868),i=e.i(814747),o=e.i(266240),l=e.i(841788),u=e.i(197892),d=e.i(676088),c=e.i(200392);e.i(245272);var p=e.i(125852),h=e.i(195975),R=t([d,c]);[d,c]=R.then?(await R)():R;let v=()=>(0,o.getCliPrimaryConfigPath)("claude"),m=async()=>{try{let e=v(),t=await s.default.readFile(e,"utf-8");return JSON.parse(t)}catch(e){if("ENOENT"===e.code)return null;throw e}};async function f(){try{let e=await (0,o.getCliRuntimeStatus)("claude");if(!e.installed||!e.runnable)return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:null,message:e.installed&&!e.runnable?"Claude CLI is installed but not runnable":"Claude CLI is not installed"});let t=await m(),a=!!t?.env?.ANTHROPIC_BASE_URL;return n.NextResponse.json({installed:e.installed,runnable:e.runnable,command:e.command,commandPath:e.commandPath,runtimeMode:e.runtimeMode,reason:e.reason,settings:t,hasOmniRoute:a,settingsPath:v()})}catch(e){return console.log("Error checking claude settings:",e),n.NextResponse.json({error:"Failed to check claude settings"},{status:500})}}async function g(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let a=(0,c.validateBody)(d.cliSettingsEnvSchema,t);if((0,c.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});let{env:r}=a.data,h="string"==typeof t?.keyId?t.keyId.trim():null;if(h)try{let e=await (0,p.getApiKeyById)(h);e?.key&&(r.ANTHROPIC_AUTH_TOKEN=e.key)}catch{}let R=v(),f=i.default.dirname(R);await s.default.mkdir(f,{recursive:!0}),await (0,l.createBackup)("claude",R);let g={};try{let e=await s.default.readFile(R,"utf-8");g=JSON.parse(e)}catch(e){if("ENOENT"!==e.code)throw e}r.ANTHROPIC_BASE_URL&&(r.ANTHROPIC_BASE_URL=r.ANTHROPIC_BASE_URL.endsWith("/v1")?r.ANTHROPIC_BASE_URL:`${r.ANTHROPIC_BASE_URL}/v1`);let E={...g,env:{...g.env||{},...r}};await s.default.writeFile(R,JSON.stringify(E,null,2));try{(0,u.saveCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings updated successfully"})}catch(e){return console.log("Error updating claude settings:",e),n.NextResponse.json({error:"Failed to update claude settings"},{status:500})}}let N=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL","API_TIMEOUT_MS"];async function E(){try{let e=(0,o.ensureCliConfigWriteAllowed)();if(e)return n.NextResponse.json({error:e},{status:403});let t=v(),a={};try{let e=await s.default.readFile(t,"utf-8");a=JSON.parse(e)}catch(e){if("ENOENT"===e.code)return n.NextResponse.json({success:!0,message:"No settings file to reset"});throw e}await (0,l.createBackup)("claude",t),a.env&&(N.forEach(e=>{delete a.env[e]}),0===Object.keys(a.env).length&&delete a.env),await s.default.writeFile(t,JSON.stringify(a,null,2));try{(0,u.deleteCliToolLastConfigured)("claude")}catch{}return n.NextResponse.json({success:!0,message:"Settings reset successfully"})}catch(e){return console.log("Error resetting claude settings:",e),n.NextResponse.json({error:"Failed to reset claude settings"},{status:500})}}(0,h.ensureServerEntryExports)([f,g,E]),(0,r.registerServerReference)(f,"0071442d8c7a9ebfc1fc29ca4cce048d6f3971fe0c",null),(0,r.registerServerReference)(g,"4024d4b13b12d15786dbe2ef53b5814ca618984ef8",null),(0,r.registerServerReference)(E,"0063d3b3149b505d77af8b380aeab84ded0b4a5c25",null),e.s(["DELETE",0,E,"GET",0,f,"POST",0,g]),a()}catch(e){a(e)}},!1),825593,e=>e.a(async(t,a)=>{try{var r=e.i(747909),n=e.i(174017),s=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),d=e.i(316795),c=e.i(487718),p=e.i(995169),h=e.i(47587),R=e.i(666012),f=e.i(570101),g=e.i(626937),E=e.i(10372),v=e.i(193695);e.i(820232);var m=e.i(600220),N=e.i(522051),C=t([N]);[N]=C.then?(await C)():C;let w=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/cli-tools/claude-settings/route",pathname:"/api/cli-tools/claude-settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/claude-settings/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:T,serverHooks:O}=w;async function y(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/cli-tools/claude-settings/route";r=r.replace(/\/index$/,"")||"/";let s=await w.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:C,nextConfig:y,parsedUrl:A,isDraftMode:T,prerenderManifest:O,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,resolvedPathname:b,clientReferenceManifest:x,serverActionsManifest:I}=s,H=(0,u.normalizeAppPath)(r),U=!!(O.dynamicRoutes[H]||O.routes[b]),M=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(U&&!T){let e=!!O.routes[b],t=O.dynamicRoutes[H];if(t&&!1===t.fallback&&!e){if(y.adapterPath)return await M();throw new v.NoFallbackError}}let k=null;!U||w.isDev||T||(k=b,k="/index"===k?"/":k);let L=!0===w.isDev||!U,j=U&&!L;I&&x&&(0,l.setManifestsSingleton)({page:r,clientReferenceManifest:x,serverActionsManifest:I});let D=e.method||"GET",F=(0,o.getTracer)(),q=F.getActiveScopeSpan(),B=!!(null==_?void 0:_.isWrappedByNextServer),K=!!(0,i.getRequestMeta)(e,"minimalMode"),$=(0,i.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,y,O,K);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let J={params:C,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:L,incrementalCache:$,cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>w.onRequestError(e,t,r,n,_)},sharedContext:{buildId:N}},W=new d.NodeNextRequest(e),G=new d.NodeNextResponse(t),V=c.NextRequestAdapter.fromNodeNextRequest(W,(0,c.signalFromNodeResponse)(t));try{let s,i=async e=>w.handle(V,J).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=F.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${D} ${r}`)}),l=async s=>{var o,l;let u=async({previousCacheEntry:n})=>{try{if(!K&&S&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await i(s);e.fetchMetrics=J.renderOpts.fetchMetrics;let o=J.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=J.renderOpts.collectedTags;if(!U)return await (0,R.sendResponse)(W,G,r,J.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(r.headers);l&&(t[E.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=E.INFINITE_CACHE?void 0:J.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:S})},!1,_),t}},d=await w.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:K});if(!U)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return K&&U||c.delete(E.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,R.sendResponse)(W,G,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};B&&q?await l(q):(s=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(p.BaseServerSpan.handleRequest,{spanName:`${D} ${r}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof v.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:S})},!1,_),U)throw t;return await (0,R.sendResponse)(W,G,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:T})},"routeModule",0,w,"serverHooks",0,O,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,T]),a()}catch(e){a(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_013gowh._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[224010,e=>{"use strict";let a=process.env.CORS_ORIGIN||"*";e.s(["CORS_HEADERS",0,{"Access-Control-Allow-Origin":a,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"},"CORS_ORIGIN",0,a])},699064,e=>{"use strict";e.s(["buildAuthHeaders",0,function(e,a){if("none"===e.authType||"none"===e.authHeader||!a)return{};switch(e.authHeader){case"token":return{Authorization:`Token ${a}`};case"xi-api-key":return{"xi-api-key":a};case"x-api-key":return{"x-api-key":a};default:return{Authorization:`Bearer ${a}`}}},"getAllModelsFromRegistry",0,function(e,a){let i=[];for(let[r,t]of Object.entries(e)){let e=a?a(r,t):{};for(let a of t.models)i.push({id:`${r}/${a.id}`,name:a.name,provider:r,...e})}return i},"parseModelFromRegistry",0,function(e,a){if(!e)return{provider:null,model:null};for(let[i]of Object.entries(a))if(e.startsWith(i+"/"))return{provider:i,model:e.slice(i.length+1)};for(let[i,r]of Object.entries(a))if(r.models.some(a=>a.id===e))return{provider:i,model:e};return{provider:null,model:e}}])},501323,e=>{"use strict";let a={openai:{id:"openai",baseUrl:"https://api.openai.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",models:[{id:"whisper-1",name:"Whisper 1"},{id:"gpt-4o-transcription",name:"GPT-4o Transcription"}]},groq:{id:"groq",baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",models:[{id:"whisper-large-v3",name:"Whisper Large v3"},{id:"whisper-large-v3-turbo",name:"Whisper Large v3 Turbo"},{id:"distil-whisper-large-v3-en",name:"Distil Whisper Large v3 EN"}]},deepgram:{id:"deepgram",baseUrl:"https://api.deepgram.com/v1/listen",authType:"apikey",authHeader:"token",format:"deepgram",models:[{id:"nova-3",name:"Nova 3"},{id:"nova-2",name:"Nova 2"},{id:"whisper-large",name:"Whisper Large"}]},assemblyai:{id:"assemblyai",baseUrl:"https://api.assemblyai.com/v2/transcript",authType:"apikey",authHeader:"bearer",async:!0,format:"assemblyai",models:[{id:"universal-3-pro",name:"Universal 3 Pro"},{id:"universal-2",name:"Universal 2"}]},nvidia:{id:"nvidia",baseUrl:"https://integrate.api.nvidia.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"nvidia-asr",models:[{id:"nvidia/parakeet-ctc-1.1b-asr",name:"Parakeet CTC 1.1B"}]},huggingface:{id:"huggingface",baseUrl:"https://api-inference.huggingface.co/models",authType:"apikey",authHeader:"bearer",format:"huggingface-asr",models:[{id:"openai/whisper-large-v3",name:"Whisper Large v3 (HF)"},{id:"openai/whisper-small",name:"Whisper Small (HF)"}]},qwen:{id:"qwen",baseUrl:"http://localhost:8000/v1/audio/transcriptions",authType:"none",authHeader:"none",format:"openai",models:[{id:"qwen3-asr",name:"Qwen3 ASR"}]}},i={openai:{id:"openai",baseUrl:"https://api.openai.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",models:[{id:"tts-1",name:"TTS 1"},{id:"tts-1-hd",name:"TTS 1 HD"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS"}]},hyperbolic:{id:"hyperbolic",baseUrl:"https://api.hyperbolic.xyz/v1/audio/generation",authType:"apikey",authHeader:"bearer",format:"hyperbolic",models:[{id:"melo-tts",name:"Melo TTS"}]},deepgram:{id:"deepgram",baseUrl:"https://api.deepgram.com/v1/speak",authType:"apikey",authHeader:"token",format:"deepgram",models:[{id:"aura-asteria-en",name:"Aura Asteria (EN)"},{id:"aura-luna-en",name:"Aura Luna (EN)"},{id:"aura-stella-en",name:"Aura Stella (EN)"}]},nvidia:{id:"nvidia",baseUrl:"https://integrate.api.nvidia.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"nvidia-tts",models:[{id:"nvidia/fastpitch",name:"FastPitch"},{id:"nvidia/tacotron2",name:"Tacotron2"}]},elevenlabs:{id:"elevenlabs",baseUrl:"https://api.elevenlabs.io/v1/text-to-speech",authType:"apikey",authHeader:"xi-api-key",format:"elevenlabs",models:[{id:"eleven_multilingual_v2",name:"Eleven Multilingual v2"},{id:"eleven_turbo_v2_5",name:"Eleven Turbo v2.5"}]},huggingface:{id:"huggingface",baseUrl:"https://api-inference.huggingface.co/models",authType:"apikey",authHeader:"bearer",format:"huggingface-tts",models:[{id:"facebook/mms-tts-eng",name:"MMS TTS English"},{id:"microsoft/speecht5_tts",name:"SpeechT5 TTS"}]},coqui:{id:"coqui",baseUrl:"http://localhost:5002/api/tts",authType:"none",authHeader:"none",format:"coqui",models:[{id:"tts_models/en/ljspeech/tacotron2-DDC",name:"Tacotron2 DDC (LJSpeech)"}]},tortoise:{id:"tortoise",baseUrl:"http://localhost:5000/api/tts",authType:"none",authHeader:"none",format:"tortoise",models:[{id:"tortoise-v2",name:"Tortoise v2"}]},qwen:{id:"qwen",baseUrl:"http://localhost:8000/v1/audio/speech",authType:"none",authHeader:"none",format:"openai",models:[{id:"qwen3-tts",name:"Qwen3 TTS"}]},inworld:{id:"inworld",baseUrl:"https://api.inworld.ai/tts/v1/voice",authType:"apikey",authHeader:"basic",format:"inworld",models:[{id:"inworld-tts-1.5-max",name:"Inworld TTS 1.5 Max"},{id:"inworld-tts-1.5-mini",name:"Inworld TTS 1.5 Mini"}]},cartesia:{id:"cartesia",baseUrl:"https://api.cartesia.ai/tts/bytes",authType:"apikey",authHeader:"x-api-key",format:"cartesia",models:[{id:"sonic-2",name:"Sonic 2"},{id:"sonic-3",name:"Sonic 3"}]},playht:{id:"playht",baseUrl:"https://api.play.ht/api/v2/tts/stream",authType:"apikey",authHeader:"playht",format:"playht",models:[{id:"PlayDialog",name:"PlayDialog"},{id:"Play3.0-mini",name:"Play3.0 Mini"}]}};function r(e,a,i){if(!e)return{provider:null,model:null};for(let[i]of Object.entries(a))if(e.startsWith(i+"/"))return{provider:i,model:e.slice(i.length+1)};for(let[i,r]of Object.entries(a))if(r.models.some(a=>a.id===e))return{provider:i,model:e};if(i){for(let a of i)if(e.startsWith(a.id+"/"))return{provider:a.id,model:e.slice(a.id.length+1)}}return{provider:null,model:e}}e.s(["buildDynamicAudioProvider",0,function(e,a){if(!e.prefix||!e.baseUrl)throw Error("Invalid provider_node: missing prefix or baseUrl");let i=e.baseUrl.replace(/\/+$/,"");return{id:e.prefix,baseUrl:`${i}${a}`,authType:"none",authHeader:"none",models:[]}},"getAllAudioModels",0,function(){let e=[];for(let[i,r]of Object.entries(a))for(let a of r.models)e.push({id:a.id.startsWith(`${i}/`)?a.id:`${i}/${a.id}`,name:a.name,provider:i,subtype:"transcription"});for(let[a,r]of Object.entries(i))for(let i of r.models)e.push({id:i.id.startsWith(`${a}/`)?i.id:`${a}/${i.id}`,name:i.name,provider:a,subtype:"speech"});return e},"getSpeechProvider",0,function(e){return i[e]||null},"getTranscriptionProvider",0,function(e){return a[e]||null},"parseSpeechModel",0,function(e,a){return r(e,i,a)},"parseTranscriptionModel",0,function(e,i){return r(e,a,i)}])},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(a=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(a=>e.l(a))).then(()=>a(65448)))},49794,e=>{e.v(a=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(a=>e.l(a))).then(()=>a(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_02._8wx._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[524214,(e,t,s)=>{t.exports={name:"omniroute",version:"3.4.
|
|
1
|
+
module.exports=[524214,(e,t,s)=>{t.exports={name:"omniroute",version:"3.4.8",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"node scripts/build-next-isolated.mjs","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"c8 --exclude=tests/** --exclude=**/*.test.* --reporter=text-summary --reporter=html --reporter=json-summary --reporter=lcov --check-coverage --statements 55 --lines 55 --functions 55 --branches 60 node --import tsx/esm --test tests/unit/*.test.mjs","test:coverage:legacy":"c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","coverage:report":"c8 report --exclude=tests/** --exclude=**/*.test.* --reporter=text --reporter=text-summary --reporter=html --reporter=json-summary --reporter=lcov","coverage:report:legacy":"c8 report --exclude=open-sse --reporter=text --reporter=text-summary","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@lobehub/icons":"^5.0.1","@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0","@swc/helpers":"0.5.19",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3","js-yaml":"^4.1.0",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.0.10","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",yazl:"^3.3.1",zod:"^4.3.6",zustand:"^5.0.10"},optionalDependencies:{keytar:"^7.9.0"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/keytar":"^4.4.0","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1",c8:"^11.0.0",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"^16.0.10",husky:"^9.1.7",jsdom:"^29.0.1","lint-staged":"^16.2.7",prettier:"^3.8.1","prop-types":"^15.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]},overrides:{"lodash-es":"^4.18.1",dompurify:"^3.3.2","path-to-regexp":"^8.4.0",react:"$react","react-dom":"$react-dom"}}},526346,e=>{"use strict";var t=e.i(747909),s=e.i(174017),o=e.i(996250),r=e.i(759756),n=e.i(561916),a=e.i(174677),i=e.i(869741),c=e.i(316795),l=e.i(487718),u=e.i(995169),p=e.i(47587),d=e.i(666012),m=e.i(570101),h=e.i(626937),g=e.i(10372),y=e.i(193695);e.i(820232);var f=e.i(600220),v=e.i(89171),R=e.i(233405),b=e.i(224361),E=e.i(235328),w=e.i(874533),x=e.i(902157),A=e.i(912714),C=e.i(750227);let T=(0,e.i(812057).promisify)(w.execFile);async function k(e){try{return await (0,A.access)(e),!0}catch{return!1}}function _(e){return`'${e.replace(/'/g,"'\"'\"'")}'`}function O(e=process.env){let t=e.DATA_DIR||"/tmp/omniroute",s=e.AUTO_UPDATE_REPO_DIR||"/workspace/omniroute",o="docker-compose"===e.AUTO_UPDATE_MODE?"docker-compose":"npm";return"npm"===o&&((0,x.existsSync)(C.default.join(process.cwd(),".git"))||!"/ROOT/src/lib/system".includes("node_modules"))&&(o="source"),{mode:o,repoDir:s,composeFile:e.AUTO_UPDATE_COMPOSE_FILE||C.default.join(s,"docker-compose.yml"),composeProfile:e.AUTO_UPDATE_COMPOSE_PROFILE||"cli",composeService:e.AUTO_UPDATE_SERVICE||"omniroute-cli",gitRemote:e.AUTO_UPDATE_GIT_REMOTE||"origin",patchCommits:(e.AUTO_UPDATE_PATCH_COMMITS||"").split(/[\s,]+/).map(e=>e.trim()).filter(Boolean),logPath:e.AUTO_UPDATE_LOG_PATH||C.default.join(t,"logs","auto-update.log")}}async function P(e=T){try{return await e("docker",["compose","version"],{timeout:1e4}),"docker compose"}catch{}try{return await e("docker-compose",["version"],{timeout:1e4}),"docker-compose"}catch{return null}}async function j(e,t=T,s=k){if("source"===e.mode)return{supported:!1,reason:"Manual 'git pull && npm install && npm run build' is required for source installations.",composeCommand:null};if("docker-compose"!==e.mode)return{supported:!0,reason:null,composeCommand:null};if(!await s(e.repoDir))return{supported:!1,reason:`Repository directory not found: ${e.repoDir}`,composeCommand:null};if(!await s(e.composeFile))return{supported:!1,reason:`Compose file not found: ${e.composeFile}`,composeCommand:null};if(!await s("/var/run/docker.sock"))return{supported:!1,reason:"Docker socket is not mounted into the OmniRoute container.",composeCommand:null};try{await t("git",["--version"],{timeout:1e4})}catch{return{supported:!1,reason:"git is not available inside the OmniRoute container.",composeCommand:null}}let o=await P(t);return o?{supported:!0,reason:null,composeCommand:o}:{supported:!1,reason:"Neither docker compose nor docker-compose is available inside the OmniRoute container.",composeCommand:null}}async function S({latest:e,env:t=process.env,execFileImpl:s=T,spawnImpl:o=w.spawn}){let r=O(t),n=await j(r,s);if(!n.supported)return{started:!1,channel:r.mode,logPath:r.logPath,composeCommand:n.composeCommand,error:n.reason||"Auto-update runtime is not available."};let a="docker-compose"===r.mode?function({latest:e,config:t,composeCommand:s}){let o=e.startsWith("v")?e:`v${e}`,r=t.patchCommits.length?[`git cherry-pick --keep-redundant-commits ${t.patchCommits.map(_).join(" ")}`]:[];return["set -eu",'export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH"',`REPO_DIR=${_(t.repoDir)}`,`COMPOSE_FILE=${_(t.composeFile)}`,`PROFILE=${_(t.composeProfile)}`,`SERVICE=${_(t.composeService)}`,`REMOTE=${_(t.gitRemote)}`,`TARGET_TAG=${_(o)}`,'cd "$REPO_DIR"','git config --global --add safe.directory "$REPO_DIR" >/dev/null 2>&1 || true','if [ -n "$(git status --porcelain)" ]; then',' echo "[AutoUpdate] Refusing update: git worktree has local changes." >&2'," exit 1","fi",'git fetch --tags "$REMOTE"','if ! git rev-parse -q --verify "refs/tags/$TARGET_TAG" >/dev/null 2>&1; then',' echo "[AutoUpdate] Tag $TARGET_TAG not found on remote $REMOTE." >&2'," exit 1","fi",'backup_branch="autoupdate/pre-${TARGET_TAG#v}-$(date +%Y%m%d-%H%M%S)"','git branch "$backup_branch" >/dev/null 2>&1 || true','git checkout -B "autoupdate/${TARGET_TAG#v}" "$TARGET_TAG"',...r,'export COMPOSE_PROFILES="$PROFILE"',"docker compose"===s?'docker compose -f "$COMPOSE_FILE" up -d --build "$SERVICE"':'docker-compose -f "$COMPOSE_FILE" up -d --build "$SERVICE"',`echo "[AutoUpdate] Successfully switched to ${o} via ${s}."`].join("\n")}({latest:e,config:r,composeCommand:n.composeCommand||"docker-compose"}):`set -eu
|
|
2
2
|
npm install -g omniroute@${e} --ignore-scripts --legacy-peer-deps
|
|
3
3
|
if command -v pm2 >/dev/null 2>&1; then
|
|
4
4
|
pm2 restart omniroute || true
|