@seqyuan/annovibe 0.8.144 → 0.8.145
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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +11 -12
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.js +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +28 -7
- package/.next/server/app/_global-error/page.js +2 -2
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/prepare/route.js +1 -1
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/running/events/route.js +2 -2
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/runtime/route.js +1 -1
- package/.next/server/app/api/apps/[id]/[[...path]]/route.js +2 -2
- package/.next/server/app/api/apps/route.js +2 -2
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
- package/.next/server/app/api/auth/login/route.js +1 -1
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/auth/status/route.js +1 -1
- package/.next/server/app/api/auth/totp/route.js +1 -1
- package/.next/server/app/api/debug-models/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/file-tree/delete/route.js +1 -1
- package/.next/server/app/api/file-tree/mkdir/route.js +1 -1
- package/.next/server/app/api/file-tree/rename/route.js +1 -1
- package/.next/server/app/api/file-tree/reveal/route.js +1 -1
- package/.next/server/app/api/file-tree/write/route.js +1 -1
- package/.next/server/app/api/file-watch/route.js +2 -2
- package/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/server/app/api/harness/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/im/cancel/route.js +1 -1
- package/.next/server/app/api/im/gateway-status/route.js +1 -1
- package/.next/server/app/api/im/project/route.js +1 -1
- package/.next/server/app/api/im/projects/route.js +1 -1
- package/.next/server/app/api/im/session-ids/route.js +1 -1
- package/.next/server/app/api/im/turn/route.js +2 -2
- package/.next/server/app/api/images/upload/route.js +1 -1
- package/.next/server/app/api/internal/runtime/route.js +1 -1
- package/.next/server/app/api/memory/dismiss/route.js +2 -2
- package/.next/server/app/api/memory/promote/route.js +2 -2
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/discover/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +1 -1
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/plot-kernels/route.js +1 -1
- package/.next/server/app/api/plot-kernels/status/route.js +1 -1
- package/.next/server/app/api/plot-kernels/stop/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/project-trust/route.js +1 -1
- package/.next/server/app/api/projects/browse/route.js +1 -1
- package/.next/server/app/api/projects/route.js +1 -1
- package/.next/server/app/api/search/route.js +1 -1
- package/.next/server/app/api/session-index/events/route.js +2 -2
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/media/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/shadowed/route.js +1 -1
- package/.next/server/app/api/sessions/new/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/settings/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +2 -2
- package/.next/server/app/api/skills/route.js +1 -1
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +2 -2
- package/.next/server/app/api/smoke/prompt-admission/route.js +1 -1
- package/.next/server/app/api/soul/route.js +1 -1
- package/.next/server/app/api/subagents/status/route.js +1 -1
- package/.next/server/app/api/version/route.js +1 -1
- package/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/server/app/icon.svg/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +5 -5
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/index.segments/_full.segment.rsc +5 -5
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login/page.js +2 -2
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.rsc +1 -1
- package/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/page.js +14 -14
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/page.js +2 -2
- package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream/page.js +1 -1
- package/.next/server/app/smoke/session-stream/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream.html +1 -1
- package/.next/server/app/smoke/session-stream.rsc +3 -3
- package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +3 -3
- package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/smoke.html +2 -2
- package/.next/server/app/smoke.rsc +3 -3
- package/.next/server/app/smoke.segments/_full.segment.rsc +3 -3
- package/.next/server/app/smoke.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +3 -3
- package/.next/server/app-paths-manifest.json +11 -12
- package/.next/server/chunks/402.js +2 -2
- package/.next/server/chunks/42.js +1 -1
- package/.next/server/chunks/4801.js +1 -1
- package/.next/server/chunks/6429.js +9 -12
- package/.next/server/chunks/7831.js +1 -1
- package/.next/server/chunks/8305.js +5 -5
- package/.next/server/chunks/9557.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware.js +4 -4
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/preview-props.json +3 -3
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/Ag1v_S9DTKxBH3_0fOnfG/_buildManifest.js +1 -0
- package/.next/static/chunks/{6630-31647d3f2ff04a3d.js → 6630-afa0ca63437a28c6.js} +4 -4
- package/.next/static/chunks/9867-9e590871a9f2b1b9.js +260 -0
- package/.next/static/chunks/app/_global-error/{page-ebf7ae60150d40d4.js → page-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/events/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/prepare/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/new/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/runtime/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/apps/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/totp/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/debug-models/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/delete/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/mkdir/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/rename/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/reveal/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/write/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-watch/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/harness/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/home/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/cancel/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/gateway-status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/project/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/projects/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/session-ids/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/turn/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/images/upload/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/internal/runtime/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/memory/dismiss/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/memory/promote/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/stop/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/projects/browse/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/projects/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/search/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/session-index/events/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/media/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/new/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/settings/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/soul/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/subagents/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/version/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/favicon.ico/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/page-46021c793e1b09a3.js +22 -0
- package/.next/static/chunks/app/smoke/{page-82db33b4fdd2e0b4.js → page-7226fa31540df8a8.js} +1 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3bfe21af77950daa.js +1 -0
- package/README.md +29 -2
- package/next.config.ts +25 -0
- package/package.json +5 -1
- package/.next/server/app/api/plot-kernels/save/route.js +0 -1
- package/.next/server/app/api/plot-kernels/save/route_client-reference-manifest.js +0 -1
- package/.next/static/7W2hkrr4fbH0AG06se4th/_buildManifest.js +0 -1
- package/.next/static/chunks/9867-1b73c62e8b604095.js +0 -260
- package/.next/static/chunks/app/api/agent/new/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/runtime/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/apps/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/totp/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/debug-models/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/delete/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/mkdir/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/rename/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/reveal/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/write/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-watch/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/harness/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/home/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/cancel/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/project/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/projects/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/session-ids/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/turn/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/images/upload/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/internal/runtime/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/memory/dismiss/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/memory/promote/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/save/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/stop/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/project-trust/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/projects/browse/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/projects/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/search/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/session-index/events/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/media/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/new/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/settings/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/soul/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/subagents/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/version/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/favicon.ico/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/page-339e73a418b1be89.js +0 -22
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ebf7ae60150d40d4.js +0 -1
- /package/.next/static/{7W2hkrr4fbH0AG06se4th → Ag1v_S9DTKxBH3_0fOnfG}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{var a={};a.id=6442,a.ids=[6442],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},8977:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>q,GET:()=>l,HEAD:()=>m,OPTIONS:()=>r,PATCH:()=>p,POST:()=>n,PUT:()=>o,dynamic:()=>s});var e=c(37625),f=c(74177),g=a([e]);e=(g.then?(await g)():g)[0];let s="force-dynamic",t=new Set(["connection","content-encoding","content-length","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade"]),u=["text/html","application/javascript","text/javascript","application/json","text/css","application/manifest+json"];function h(a){return`/api/apps/${encodeURIComponent(a)}`}function i(a,b,c){let d=new URL(a.url),e=c?.length?`/${c.map(encodeURIComponent).join("/")}`:"/";return`http://127.0.0.1:${b}${e}${d.search}`}function j(a,b){return new Response(b,{status:503,headers:{"Content-Type":"text/plain; charset=utf-8","Cache-Control":"no-cache","Retry-After":"1",...a?.appType==="h5adexp"?{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}:{}}})}async function k(a,b,c){var d;let g,k,l=(0,e.N5)(b);if(!l||"starting"!==l.status&&"running"!==l.status)return new Response("App is not running",{status:404});if("h5adexp"===l.appType&&"starting"===l.status&&!await (0,e.Yq)(l,15e3))return j(l,l.error??`${l.title} is still starting.`);let m=new Headers(a.headers);for(let a of t)m.delete(a);m.delete("host");let n=a.method.toUpperCase(),o="GET"===n||"HEAD"===n?void 0:await a.arrayBuffer();try{g=await fetch(i(a,l.port,c),{method:n,headers:m,body:o,redirect:"manual"})}catch(b){if(!("h5adexp"===l.appType&&await (0,e.Yq)(l,2e3)))return j(l,(0,f.m)(b));g=await fetch(i(a,l.port,c),{method:n,headers:m,body:o,redirect:"manual"})}let p=new Headers;g.headers.forEach((a,b)=>{t.has(b.toLowerCase())||p.set(b,a)});let q=function(a,b){if(!a)return a;if(a.startsWith("/"))return`${h(b)}${a}`;try{let c=new URL(a);return`${h(b)}${c.pathname}${c.search}`}catch{return a}}(g.headers.get("location"),b);if(q&&p.set("location",q),p.set("Cache-Control","no-cache"),"h5adexp"===l.appType&&(p.delete("content-security-policy"),p.delete("x-frame-options"),p.set("Cross-Origin-Opener-Policy","same-origin"),p.set("Cross-Origin-Embedder-Policy","require-corp")),"h5adexp"===l.appType&&(k=(g.headers.get("content-type")??"").toLowerCase(),u.some(a=>k.includes(a)))){let a;return p.delete("content-length"),new Response((d=await g.text(),a=h(b),d.replace(/(["'(`])\/api\//g,`$1${a}/api/`).replace(/(["'`])\/api(["'`])/g,`$1${a}/api$2`).replace(/(["'(`])\/static\//g,`$1${a}/static/`).replace(/(["'(`])\/serviceworker\.js/g,`$1${a}/serviceworker.js`).replace(/(["'(`])\/service-worker\.js/g,`$1${a}/service-worker.js`).replace(/(["'(`])\/manifest\.json/g,`$1${a}/manifest.json`).replace(/(["'(`])\/favicon\.ico/g,`$1${a}/favicon.ico`).replace(/(["'(`])\/logo192\.png/g,`$1${a}/logo192.png`).replace(/url\((['"]?)\/static\//g,`url($1${a}/static/`).replace(/n\.p="\//g,`n.p="${a}/`)),{status:g.status,statusText:g.statusText,headers:p})}return new Response(g.body,{status:g.status,statusText:g.statusText,headers:p})}async function l(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function m(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function n(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function o(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function p(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function q(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function r(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}d()}catch(a){d(a)}})},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},37625:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$4:()=>C,N5:()=>D,PZ:()=>H,Yq:()=>v,el:()=>E,sg:()=>G,vN:()=>F});var e=c(79646),f=c(91645),g=c(29021),h=c(33873),i=c(55511),j=c(28354),k=c(75430),l=c(15193),m=a([k]);k=(m.then?(await m)():m)[0];let I=(0,j.promisify)(e.execFile);function n(){return globalThis.__annovibeExternalApps||(globalThis.__annovibeExternalApps=new Map),globalThis.__annovibeExternalApps}function o(a){return`${a.appType}:${a.cwd}:${a.sessionId??""}:${a.filePath}`}function p(a,b){let c=String(b).split(/\r?\n/).filter(Boolean);a.logs.push(...c.map(a=>`[${new Date().toISOString()}] ${a}`)),a.logs.length>160&&a.logs.splice(0,a.logs.length-160)}function q(a){if(!a)return!1;try{return process.kill(a,0),!0}catch{return!1}}function r(a){return"starting"!==a.status&&"running"!==a.status||q(a.pid)||(a.status="stopped",a.error??=`${a.title} process is no longer running.`),a}async function s(a){if(!a||!q(a))return null;try{let{stdout:b}=await I("ps",["-o","rss=","-p",String(a)],{timeout:2500}),c=Number(b.trim().split(/\s+/)[0]);return Number.isFinite(c)?1024*c:null}catch{return null}}function t(a){return new Promise(b=>setTimeout(b,a))}async function u(a,b){let c=new AbortController,d=setTimeout(()=>c.abort(),b);try{return await fetch(a,{signal:c.signal,cache:"no-store"})}finally{clearTimeout(d)}}async function v(a,b){if(r(a),"error"===a.status||"stopped"===a.status)return!1;if("h5adexp"!==a.appType)return await t(900),r(a),"starting"===a.status&&q(a.pid)&&(a.status="running"),"running"===a.status;let c=Date.now()+(b??45e3),d="";for(;Date.now()<c;){let b=r(a);if("error"===b.status||"stopped"===b.status)return!1;try{let b=await u(`http://127.0.0.1:${a.port}/api/health`,1500);if(b.ok)return a.status="running",a.error=void 0,a.lastActivity=new Date().toISOString(),!0;d=`health returned HTTP ${b.status}`}catch(a){d=a instanceof Error?a.message:String(a)}await t(250)}return"starting"===a.status&&(a.error=`${a.title} did not become ready within ${b??45e3}ms${d?`; last error: ${d}`:""}.`,p(a,a.error)),!1}async function w(){return new Promise((a,b)=>{let c=(0,f.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let b=c.address(),d="object"==typeof b&&b?b.port:0;c.close(()=>a(d))})})}function x(a){return"h5adexp"===a?[".h5ad"]:[".rds",".qs"]}function y(a){return x(a).join(" or ")}function z(a){return"h5adexp"===a?"H5AD Exp":"stexp"}async function A(a){return(0,l.EO)({language:"r",cwd:a,policy:l.sE})}async function B(a,b){if("stexp"===a.appType){let b,c=await A(a.cwd),d=(b=(0,h.resolve)(process.cwd(),"..","stexp"),(0,g.existsSync)((0,h.join)(b,"DESCRIPTION"))?b:null);return p(a,`Using R kernel: ${c.command} ${c.args.join(" ")} (${c.source}${c.kernelId?`:${c.kernelId}`:""})`),d&&p(a,`Using local stexp package source: ${d}`),(0,e.spawn)(c.command,[...c.args,"-e",[d?`if (!requireNamespace('stexp', quietly = TRUE)) {
|
|
1
|
+
(()=>{var a={};a.id=6442,a.ids=[6442],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},8977:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>q,GET:()=>l,HEAD:()=>m,OPTIONS:()=>r,PATCH:()=>p,POST:()=>n,PUT:()=>o,dynamic:()=>s});var e=c(37625),f=c(74177),g=a([e]);e=(g.then?(await g)():g)[0];let s="force-dynamic",t=new Set(["connection","content-encoding","content-length","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade"]),u=["text/html","application/javascript","text/javascript","application/json","text/css","application/manifest+json"];function h(a){return`/api/apps/${encodeURIComponent(a)}`}function i(a,b,c){let d=new URL(a.url),e=c?.length?`/${c.map(encodeURIComponent).join("/")}`:"/";return`http://127.0.0.1:${b}${e}${d.search}`}function j(a,b){return new Response(b,{status:503,headers:{"Content-Type":"text/plain; charset=utf-8","Cache-Control":"no-cache","Retry-After":"1",...a?.appType==="h5adexp"?{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}:{}}})}async function k(a,b,c){var d;let g,k,l=(0,e.N5)(b);if(!l||"starting"!==l.status&&"running"!==l.status)return new Response("App is not running",{status:404});if("h5adexp"===l.appType&&"starting"===l.status&&!await (0,e.Yq)(l,15e3))return j(l,l.error??`${l.title} is still starting.`);let m=new Headers(a.headers);for(let a of t)m.delete(a);m.delete("host");let n=a.method.toUpperCase(),o="GET"===n||"HEAD"===n?void 0:await a.arrayBuffer();try{g=await fetch(i(a,l.port,c),{method:n,headers:m,body:o,redirect:"manual"})}catch(b){if(!("h5adexp"===l.appType&&await (0,e.Yq)(l,2e3)))return j(l,(0,f.m)(b));g=await fetch(i(a,l.port,c),{method:n,headers:m,body:o,redirect:"manual"})}let p=new Headers;g.headers.forEach((a,b)=>{t.has(b.toLowerCase())||p.set(b,a)});let q=function(a,b){if(!a)return a;if(a.startsWith("/"))return`${h(b)}${a}`;try{let c=new URL(a);return`${h(b)}${c.pathname}${c.search}`}catch{return a}}(g.headers.get("location"),b);if(q&&p.set("location",q),p.set("Cache-Control","no-cache"),"h5adexp"===l.appType&&(p.delete("content-security-policy"),p.delete("x-frame-options"),p.set("Cross-Origin-Opener-Policy","same-origin"),p.set("Cross-Origin-Embedder-Policy","require-corp")),"h5adexp"===l.appType&&(k=(g.headers.get("content-type")??"").toLowerCase(),u.some(a=>k.includes(a)))){let a;return p.delete("content-length"),new Response((d=await g.text(),a=h(b),d.replace(/(["'(`])\/api\//g,`$1${a}/api/`).replace(/(["'`])\/api(["'`])/g,`$1${a}/api$2`).replace(/(["'(`])\/static\//g,`$1${a}/static/`).replace(/(["'(`])\/serviceworker\.js/g,`$1${a}/serviceworker.js`).replace(/(["'(`])\/service-worker\.js/g,`$1${a}/service-worker.js`).replace(/(["'(`])\/manifest\.json/g,`$1${a}/manifest.json`).replace(/(["'(`])\/favicon\.ico/g,`$1${a}/favicon.ico`).replace(/(["'(`])\/logo192\.png/g,`$1${a}/logo192.png`).replace(/url\((['"]?)\/static\//g,`url($1${a}/static/`).replace(/n\.p="\//g,`n.p="${a}/`)),{status:g.status,statusText:g.statusText,headers:p})}return new Response(g.body,{status:g.status,statusText:g.statusText,headers:p})}async function l(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function m(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function n(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function o(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function p(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function q(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}async function r(a,{params:b}){let{id:c,path:d}=await b;return k(a,c,d)}d()}catch(a){d(a)}})},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11686:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/apps/[id]/[[...path]]/route",pathname:"/api/apps/[id]/[[...path]]",filename:"route",bundlePath:"app/api/apps/[id]/[[...path]]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/apps/[id]/[[...path]]/route.ts",nextConfigOutput:"",userland:()=>c(8977),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/apps/[id]/[[...path]]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},37625:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$4:()=>C,N5:()=>D,PZ:()=>H,Yq:()=>v,el:()=>E,sg:()=>G,vN:()=>F});var e=c(79646),f=c(91645),g=c(29021),h=c(33873),i=c(55511),j=c(28354),k=c(75430),l=c(15193),m=a([k]);k=(m.then?(await m)():m)[0];let I=(0,j.promisify)(e.execFile);function n(){return globalThis.__annovibeExternalApps||(globalThis.__annovibeExternalApps=new Map),globalThis.__annovibeExternalApps}function o(a){return`${a.appType}:${a.cwd}:${a.sessionId??""}:${a.filePath}`}function p(a,b){let c=String(b).split(/\r?\n/).filter(Boolean);a.logs.push(...c.map(a=>`[${new Date().toISOString()}] ${a}`)),a.logs.length>160&&a.logs.splice(0,a.logs.length-160)}function q(a){if(!a)return!1;try{return process.kill(a,0),!0}catch{return!1}}function r(a){return"starting"!==a.status&&"running"!==a.status||q(a.pid)||(a.status="stopped",a.error??=`${a.title} process is no longer running.`),a}async function s(a){if(!a||!q(a))return null;try{let{stdout:b}=await I("ps",["-o","rss=","-p",String(a)],{timeout:2500}),c=Number(b.trim().split(/\s+/)[0]);return Number.isFinite(c)?1024*c:null}catch{return null}}function t(a){return new Promise(b=>setTimeout(b,a))}async function u(a,b){let c=new AbortController,d=setTimeout(()=>c.abort(),b);try{return await fetch(a,{signal:c.signal,cache:"no-store"})}finally{clearTimeout(d)}}async function v(a,b){if(r(a),"error"===a.status||"stopped"===a.status)return!1;if("h5adexp"!==a.appType)return await t(900),r(a),"starting"===a.status&&q(a.pid)&&(a.status="running"),"running"===a.status;let c=Date.now()+(b??45e3),d="";for(;Date.now()<c;){let b=r(a);if("error"===b.status||"stopped"===b.status)return!1;try{let b=await u(`http://127.0.0.1:${a.port}/api/health`,1500);if(b.ok)return a.status="running",a.error=void 0,a.lastActivity=new Date().toISOString(),!0;d=`health returned HTTP ${b.status}`}catch(a){d=a instanceof Error?a.message:String(a)}await t(250)}return"starting"===a.status&&(a.error=`${a.title} did not become ready within ${b??45e3}ms${d?`; last error: ${d}`:""}.`,p(a,a.error)),!1}async function w(){return new Promise((a,b)=>{let c=(0,f.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let b=c.address(),d="object"==typeof b&&b?b.port:0;c.close(()=>a(d))})})}function x(a){return"h5adexp"===a?[".h5ad"]:[".rds",".qs"]}function y(a){return x(a).join(" or ")}function z(a){return"h5adexp"===a?"H5AD Exp":"stexp"}async function A(a){return(0,l.EO)({language:"r",cwd:a,policy:l.sE})}async function B(a,b){if("stexp"===a.appType){let b,c=await A(a.cwd),d=(b=(0,h.resolve)(process.cwd(),"..","stexp"),(0,g.existsSync)((0,h.join)(b,"DESCRIPTION"))?b:null);return p(a,`Using R kernel: ${c.command} ${c.args.join(" ")} (${c.source}${c.kernelId?`:${c.kernelId}`:""})`),d&&p(a,`Using local stexp package source: ${d}`),(0,e.spawn)(c.command,[...c.args,"-e",[d?`if (!requireNamespace('stexp', quietly = TRUE)) {
|
|
2
2
|
install.packages(${JSON.stringify(d)}, repos = NULL, type = 'source')
|
|
3
|
-
}`:"if (!requireNamespace('stexp', quietly = TRUE)) stop('The stexp R package is required. Install it in the selected AnnoVibe R kernel environment.')","stexp::run_app(",` file = ${JSON.stringify(a.filePath)},`," host = '127.0.0.1',",` port = ${a.port},`," launch.browser = FALSE\n)"].join("\n")],{cwd:a.cwd,env:{...process.env,...c.env,ANNOVIBE_APP_ID:a.id,ANNOVIBE_STEXP_PATH:a.filePath,ANNOVIBE_RDS_PATH:a.filePath}})}let c=(0,h.join)((0,k.getAgentDir)(),"apps","h5adexp",a.id);(0,g.mkdirSync)(c,{recursive:!0});let d=function(){let a=(0,h.resolve)(process.cwd(),"..","h5adexp","bin","h5adexp.mjs");if((0,g.existsSync)(a))return{command:process.execPath,argsPrefix:[a]};let b=(process.env.PATH??"").split("win32"===process.platform?";":":").filter(Boolean),c="win32"===process.platform?["h5adexp.cmd","h5adexp.exe","h5adexp"]:["h5adexp"];if(!b.some(a=>c.some(b=>(0,g.existsSync)((0,h.join)(a,b)))))throw Error("h5adexp is not installed or not available on PATH. Install it with `npm install -g h5adexp`, or keep a local ../h5adexp checkout next to annovibe.");return{command:"h5adexp",argsPrefix:[]}}();return(0,e.spawn)(d.command,[...d.argsPrefix,"serve","--file",a.filePath,"--host","127.0.0.1","--port",String(a.port),"--embed","--origin",b,"--runtime-home",c],{cwd:a.cwd,env:{...process.env,H5ADEXP_HOME:c,ANNOVIBE_APP_ID:a.id}})}async function C(a){let b=a.appType,{cwd:c,filePath:d}=function(a,b,c){let d,e=(0,h.resolve)(b),f=(0,h.resolve)(c),i=(0,h.relative)(e,f);if(!i||i.startsWith("..")||i.startsWith("/")||i.startsWith("\\"))throw Error(`${y(a).toUpperCase()} file must be inside the active project.`);if(!(0,g.existsSync)(f)||!(0,g.statSync)(f).isFile())throw Error(`${y(a).toUpperCase()} file not found.`);if(d=f.toLowerCase(),!x(a).some(a=>d.endsWith(a)))throw Error(`Only ${y(a)} files can be opened with ${z(a)}.`);return{cwd:e,filePath:f}}(b,a.cwd,a.filePath),e=o({appType:b,cwd:c,filePath:d,sessionId:a.sessionId}),f=[...n().values()].find(a=>o({appType:a.appType,cwd:a.cwd,filePath:a.filePath,sessionId:a.sessionId})===e);if(f){if(r(f),"starting"===f.status||"running"===f.status)return f.lastActivity=new Date().toISOString(),"starting"===f.status&&await v(f),f;n().delete(f.id)}let j=(0,i.randomBytes)(9).toString("hex"),k=await w(),l=new Date().toISOString(),m=`/api/apps/${encodeURIComponent(j)}`,q=`http://127.0.0.1:${k}/`,s={id:j,appType:b,title:z(b),filePath:d,cwd:c,sessionId:a.sessionId??null,port:k,pid:null,status:"starting",url:m,directUrl:q,startedAt:l,lastActivity:l,logs:[]},t=await B(s,a.origin||"http://localhost:30141");return s.child=t,s.pid=t.pid??null,n().set(j,s),t.stdout.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running"),s.lastActivity=new Date().toISOString()}),t.stderr.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running")}),t.on("error",a=>{s.status="error",s.error=a.message,p(s,a.message)}),t.on("exit",(a,b)=>{s.status=0===a||"SIGTERM"===b?"stopped":"error",s.error="error"===s.status?`${s.title} exited with code ${a??"null"} signal ${b??"null"}`:s.error,p(s,`process exited: code=${a??"null"} signal=${b??"null"}`)}),await v(s),s}function D(a){let b=n().get(a);return b?r(b):null}function E(){return[...n().values()].map(a=>r(a))}async function F(a){let b=r(a),c=await s(b.pid),d=Date.now(),e=Date.parse(b.startedAt);return{id:b.id,appType:b.appType,title:b.title,filePath:b.filePath,cwd:b.cwd,sessionId:b.sessionId,port:b.port,pid:b.pid,status:b.status,url:b.url,directUrl:b.directUrl,startedAt:b.startedAt,lastActivity:b.lastActivity,uptimeMs:Number.isFinite(e)?Math.max(0,d-e):null,rssBytes:c,running:"starting"===b.status||"running"===b.status,logs:b.logs,error:b.error}}async function G(a){return Promise.all(a.map(a=>F(a)))}async function H(a){let b=n().get(a);return b?(b.lastActivity=new Date().toISOString(),b.child&&q(b.pid)&&(b.child.kill("SIGTERM"),await new Promise(a=>setTimeout(a,900)),q(b.pid)&&b.child.kill("SIGKILL")),b.status="stopped",b):null}d()}catch(a){d(a)}})},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},57975:a=>{"use strict";a.exports=require("node:util")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},95312:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/apps/[id]/[[...path]]/route",pathname:"/api/apps/[id]/[[...path]]",filename:"route",bundlePath:"app/api/apps/[id]/[[...path]]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/apps/[id]/[[...path]]/route.ts",nextConfigOutput:"",userland:()=>c(8977),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/apps/[id]/[[...path]]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,5193],()=>b(b.s=95312));module.exports=c})();
|
|
3
|
+
}`:"if (!requireNamespace('stexp', quietly = TRUE)) stop('The stexp R package is required. Install it in the selected AnnoVibe R kernel environment.')","stexp::run_app(",` file = ${JSON.stringify(a.filePath)},`," host = '127.0.0.1',",` port = ${a.port},`," launch.browser = FALSE\n)"].join("\n")],{cwd:a.cwd,env:{...process.env,...c.env,ANNOVIBE_APP_ID:a.id,ANNOVIBE_STEXP_PATH:a.filePath,ANNOVIBE_RDS_PATH:a.filePath}})}let c=(0,h.join)((0,k.getAgentDir)(),"apps","h5adexp",a.id);(0,g.mkdirSync)(c,{recursive:!0});let d=function(){let a=(0,h.resolve)(process.cwd(),"..","h5adexp","bin","h5adexp.mjs");if((0,g.existsSync)(a))return{command:process.execPath,argsPrefix:[a]};let b=(process.env.PATH??"").split("win32"===process.platform?";":":").filter(Boolean),c="win32"===process.platform?["h5adexp.cmd","h5adexp.exe","h5adexp"]:["h5adexp"];if(!b.some(a=>c.some(b=>(0,g.existsSync)((0,h.join)(a,b)))))throw Error("h5adexp is not installed or not available on PATH. Install it with `npm install -g h5adexp`, or keep a local ../h5adexp checkout next to annovibe.");return{command:"h5adexp",argsPrefix:[]}}();return(0,e.spawn)(d.command,[...d.argsPrefix,"serve","--file",a.filePath,"--host","127.0.0.1","--port",String(a.port),"--embed","--origin",b,"--runtime-home",c],{cwd:a.cwd,env:{...process.env,H5ADEXP_HOME:c,ANNOVIBE_APP_ID:a.id}})}async function C(a){let b=a.appType,{cwd:c,filePath:d}=function(a,b,c){let d,e=(0,h.resolve)(b),f=(0,h.resolve)(c),i=(0,h.relative)(e,f);if(!i||i.startsWith("..")||i.startsWith("/")||i.startsWith("\\"))throw Error(`${y(a).toUpperCase()} file must be inside the active project.`);if(!(0,g.existsSync)(f)||!(0,g.statSync)(f).isFile())throw Error(`${y(a).toUpperCase()} file not found.`);if(d=f.toLowerCase(),!x(a).some(a=>d.endsWith(a)))throw Error(`Only ${y(a)} files can be opened with ${z(a)}.`);return{cwd:e,filePath:f}}(b,a.cwd,a.filePath),e=o({appType:b,cwd:c,filePath:d,sessionId:a.sessionId}),f=[...n().values()].find(a=>o({appType:a.appType,cwd:a.cwd,filePath:a.filePath,sessionId:a.sessionId})===e);if(f){if(r(f),"starting"===f.status||"running"===f.status)return f.lastActivity=new Date().toISOString(),"starting"===f.status&&await v(f),f;n().delete(f.id)}let j=(0,i.randomBytes)(9).toString("hex"),k=await w(),l=new Date().toISOString(),m=`/api/apps/${encodeURIComponent(j)}`,q=`http://127.0.0.1:${k}/`,s={id:j,appType:b,title:z(b),filePath:d,cwd:c,sessionId:a.sessionId??null,port:k,pid:null,status:"starting",url:m,directUrl:q,startedAt:l,lastActivity:l,logs:[]},t=await B(s,a.origin||"http://localhost:30141");return s.child=t,s.pid=t.pid??null,n().set(j,s),t.stdout.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running"),s.lastActivity=new Date().toISOString()}),t.stderr.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running")}),t.on("error",a=>{s.status="error",s.error=a.message,p(s,a.message)}),t.on("exit",(a,b)=>{s.status=0===a||"SIGTERM"===b?"stopped":"error",s.error="error"===s.status?`${s.title} exited with code ${a??"null"} signal ${b??"null"}`:s.error,p(s,`process exited: code=${a??"null"} signal=${b??"null"}`)}),await v(s),s}function D(a){let b=n().get(a);return b?r(b):null}function E(){return[...n().values()].map(a=>r(a))}async function F(a){let b=r(a),c=await s(b.pid),d=Date.now(),e=Date.parse(b.startedAt);return{id:b.id,appType:b.appType,title:b.title,filePath:b.filePath,cwd:b.cwd,sessionId:b.sessionId,port:b.port,pid:b.pid,status:b.status,url:b.url,directUrl:b.directUrl,startedAt:b.startedAt,lastActivity:b.lastActivity,uptimeMs:Number.isFinite(e)?Math.max(0,d-e):null,rssBytes:c,running:"starting"===b.status||"running"===b.status,logs:b.logs,error:b.error}}async function G(a){return Promise.all(a.map(a=>F(a)))}async function H(a){let b=n().get(a);return b?(b.lastActivity=new Date().toISOString(),b.child&&q(b.pid)&&(b.child.kill("SIGTERM"),await new Promise(a=>setTimeout(a,900)),q(b.pid)&&b.child.kill("SIGKILL")),b.status="stopped",b):null}d()}catch(a){d(a)}})},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},57975:a=>{"use strict";a.exports=require("node:util")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,5193],()=>b(b.s=11686));module.exports=c})();
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{var a={};a.id=3374,a.ids=[3374],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},37625:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$4:()=>C,N5:()=>D,PZ:()=>H,Yq:()=>v,el:()=>E,sg:()=>G,vN:()=>F});var e=c(79646),f=c(91645),g=c(29021),h=c(33873),i=c(55511),j=c(28354),k=c(75430),l=c(15193),m=a([k]);k=(m.then?(await m)():m)[0];let I=(0,j.promisify)(e.execFile);function n(){return globalThis.__annovibeExternalApps||(globalThis.__annovibeExternalApps=new Map),globalThis.__annovibeExternalApps}function o(a){return`${a.appType}:${a.cwd}:${a.sessionId??""}:${a.filePath}`}function p(a,b){let c=String(b).split(/\r?\n/).filter(Boolean);a.logs.push(...c.map(a=>`[${new Date().toISOString()}] ${a}`)),a.logs.length>160&&a.logs.splice(0,a.logs.length-160)}function q(a){if(!a)return!1;try{return process.kill(a,0),!0}catch{return!1}}function r(a){return"starting"!==a.status&&"running"!==a.status||q(a.pid)||(a.status="stopped",a.error??=`${a.title} process is no longer running.`),a}async function s(a){if(!a||!q(a))return null;try{let{stdout:b}=await I("ps",["-o","rss=","-p",String(a)],{timeout:2500}),c=Number(b.trim().split(/\s+/)[0]);return Number.isFinite(c)?1024*c:null}catch{return null}}function t(a){return new Promise(b=>setTimeout(b,a))}async function u(a,b){let c=new AbortController,d=setTimeout(()=>c.abort(),b);try{return await fetch(a,{signal:c.signal,cache:"no-store"})}finally{clearTimeout(d)}}async function v(a,b){if(r(a),"error"===a.status||"stopped"===a.status)return!1;if("h5adexp"!==a.appType)return await t(900),r(a),"starting"===a.status&&q(a.pid)&&(a.status="running"),"running"===a.status;let c=Date.now()+(b??45e3),d="";for(;Date.now()<c;){let b=r(a);if("error"===b.status||"stopped"===b.status)return!1;try{let b=await u(`http://127.0.0.1:${a.port}/api/health`,1500);if(b.ok)return a.status="running",a.error=void 0,a.lastActivity=new Date().toISOString(),!0;d=`health returned HTTP ${b.status}`}catch(a){d=a instanceof Error?a.message:String(a)}await t(250)}return"starting"===a.status&&(a.error=`${a.title} did not become ready within ${b??45e3}ms${d?`; last error: ${d}`:""}.`,p(a,a.error)),!1}async function w(){return new Promise((a,b)=>{let c=(0,f.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let b=c.address(),d="object"==typeof b&&b?b.port:0;c.close(()=>a(d))})})}function x(a){return"h5adexp"===a?[".h5ad"]:[".rds",".qs"]}function y(a){return x(a).join(" or ")}function z(a){return"h5adexp"===a?"H5AD Exp":"stexp"}async function A(a){return(0,l.EO)({language:"r",cwd:a,policy:l.sE})}async function B(a,b){if("stexp"===a.appType){let b,c=await A(a.cwd),d=(b=(0,h.resolve)(process.cwd(),"..","stexp"),(0,g.existsSync)((0,h.join)(b,"DESCRIPTION"))?b:null);return p(a,`Using R kernel: ${c.command} ${c.args.join(" ")} (${c.source}${c.kernelId?`:${c.kernelId}`:""})`),d&&p(a,`Using local stexp package source: ${d}`),(0,e.spawn)(c.command,[...c.args,"-e",[d?`if (!requireNamespace('stexp', quietly = TRUE)) {
|
|
1
|
+
(()=>{var a={};a.id=3374,a.ids=[3374],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8038:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/apps/route",pathname:"/api/apps",filename:"route",bundlePath:"app/api/apps/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/apps/route.ts",nextConfigOutput:"",userland:()=>c(66425),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/apps/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},37625:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$4:()=>C,N5:()=>D,PZ:()=>H,Yq:()=>v,el:()=>E,sg:()=>G,vN:()=>F});var e=c(79646),f=c(91645),g=c(29021),h=c(33873),i=c(55511),j=c(28354),k=c(75430),l=c(15193),m=a([k]);k=(m.then?(await m)():m)[0];let I=(0,j.promisify)(e.execFile);function n(){return globalThis.__annovibeExternalApps||(globalThis.__annovibeExternalApps=new Map),globalThis.__annovibeExternalApps}function o(a){return`${a.appType}:${a.cwd}:${a.sessionId??""}:${a.filePath}`}function p(a,b){let c=String(b).split(/\r?\n/).filter(Boolean);a.logs.push(...c.map(a=>`[${new Date().toISOString()}] ${a}`)),a.logs.length>160&&a.logs.splice(0,a.logs.length-160)}function q(a){if(!a)return!1;try{return process.kill(a,0),!0}catch{return!1}}function r(a){return"starting"!==a.status&&"running"!==a.status||q(a.pid)||(a.status="stopped",a.error??=`${a.title} process is no longer running.`),a}async function s(a){if(!a||!q(a))return null;try{let{stdout:b}=await I("ps",["-o","rss=","-p",String(a)],{timeout:2500}),c=Number(b.trim().split(/\s+/)[0]);return Number.isFinite(c)?1024*c:null}catch{return null}}function t(a){return new Promise(b=>setTimeout(b,a))}async function u(a,b){let c=new AbortController,d=setTimeout(()=>c.abort(),b);try{return await fetch(a,{signal:c.signal,cache:"no-store"})}finally{clearTimeout(d)}}async function v(a,b){if(r(a),"error"===a.status||"stopped"===a.status)return!1;if("h5adexp"!==a.appType)return await t(900),r(a),"starting"===a.status&&q(a.pid)&&(a.status="running"),"running"===a.status;let c=Date.now()+(b??45e3),d="";for(;Date.now()<c;){let b=r(a);if("error"===b.status||"stopped"===b.status)return!1;try{let b=await u(`http://127.0.0.1:${a.port}/api/health`,1500);if(b.ok)return a.status="running",a.error=void 0,a.lastActivity=new Date().toISOString(),!0;d=`health returned HTTP ${b.status}`}catch(a){d=a instanceof Error?a.message:String(a)}await t(250)}return"starting"===a.status&&(a.error=`${a.title} did not become ready within ${b??45e3}ms${d?`; last error: ${d}`:""}.`,p(a,a.error)),!1}async function w(){return new Promise((a,b)=>{let c=(0,f.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let b=c.address(),d="object"==typeof b&&b?b.port:0;c.close(()=>a(d))})})}function x(a){return"h5adexp"===a?[".h5ad"]:[".rds",".qs"]}function y(a){return x(a).join(" or ")}function z(a){return"h5adexp"===a?"H5AD Exp":"stexp"}async function A(a){return(0,l.EO)({language:"r",cwd:a,policy:l.sE})}async function B(a,b){if("stexp"===a.appType){let b,c=await A(a.cwd),d=(b=(0,h.resolve)(process.cwd(),"..","stexp"),(0,g.existsSync)((0,h.join)(b,"DESCRIPTION"))?b:null);return p(a,`Using R kernel: ${c.command} ${c.args.join(" ")} (${c.source}${c.kernelId?`:${c.kernelId}`:""})`),d&&p(a,`Using local stexp package source: ${d}`),(0,e.spawn)(c.command,[...c.args,"-e",[d?`if (!requireNamespace('stexp', quietly = TRUE)) {
|
|
2
2
|
install.packages(${JSON.stringify(d)}, repos = NULL, type = 'source')
|
|
3
|
-
}`:"if (!requireNamespace('stexp', quietly = TRUE)) stop('The stexp R package is required. Install it in the selected AnnoVibe R kernel environment.')","stexp::run_app(",` file = ${JSON.stringify(a.filePath)},`," host = '127.0.0.1',",` port = ${a.port},`," launch.browser = FALSE\n)"].join("\n")],{cwd:a.cwd,env:{...process.env,...c.env,ANNOVIBE_APP_ID:a.id,ANNOVIBE_STEXP_PATH:a.filePath,ANNOVIBE_RDS_PATH:a.filePath}})}let c=(0,h.join)((0,k.getAgentDir)(),"apps","h5adexp",a.id);(0,g.mkdirSync)(c,{recursive:!0});let d=function(){let a=(0,h.resolve)(process.cwd(),"..","h5adexp","bin","h5adexp.mjs");if((0,g.existsSync)(a))return{command:process.execPath,argsPrefix:[a]};let b=(process.env.PATH??"").split("win32"===process.platform?";":":").filter(Boolean),c="win32"===process.platform?["h5adexp.cmd","h5adexp.exe","h5adexp"]:["h5adexp"];if(!b.some(a=>c.some(b=>(0,g.existsSync)((0,h.join)(a,b)))))throw Error("h5adexp is not installed or not available on PATH. Install it with `npm install -g h5adexp`, or keep a local ../h5adexp checkout next to annovibe.");return{command:"h5adexp",argsPrefix:[]}}();return(0,e.spawn)(d.command,[...d.argsPrefix,"serve","--file",a.filePath,"--host","127.0.0.1","--port",String(a.port),"--embed","--origin",b,"--runtime-home",c],{cwd:a.cwd,env:{...process.env,H5ADEXP_HOME:c,ANNOVIBE_APP_ID:a.id}})}async function C(a){let b=a.appType,{cwd:c,filePath:d}=function(a,b,c){let d,e=(0,h.resolve)(b),f=(0,h.resolve)(c),i=(0,h.relative)(e,f);if(!i||i.startsWith("..")||i.startsWith("/")||i.startsWith("\\"))throw Error(`${y(a).toUpperCase()} file must be inside the active project.`);if(!(0,g.existsSync)(f)||!(0,g.statSync)(f).isFile())throw Error(`${y(a).toUpperCase()} file not found.`);if(d=f.toLowerCase(),!x(a).some(a=>d.endsWith(a)))throw Error(`Only ${y(a)} files can be opened with ${z(a)}.`);return{cwd:e,filePath:f}}(b,a.cwd,a.filePath),e=o({appType:b,cwd:c,filePath:d,sessionId:a.sessionId}),f=[...n().values()].find(a=>o({appType:a.appType,cwd:a.cwd,filePath:a.filePath,sessionId:a.sessionId})===e);if(f){if(r(f),"starting"===f.status||"running"===f.status)return f.lastActivity=new Date().toISOString(),"starting"===f.status&&await v(f),f;n().delete(f.id)}let j=(0,i.randomBytes)(9).toString("hex"),k=await w(),l=new Date().toISOString(),m=`/api/apps/${encodeURIComponent(j)}`,q=`http://127.0.0.1:${k}/`,s={id:j,appType:b,title:z(b),filePath:d,cwd:c,sessionId:a.sessionId??null,port:k,pid:null,status:"starting",url:m,directUrl:q,startedAt:l,lastActivity:l,logs:[]},t=await B(s,a.origin||"http://localhost:30141");return s.child=t,s.pid=t.pid??null,n().set(j,s),t.stdout.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running"),s.lastActivity=new Date().toISOString()}),t.stderr.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running")}),t.on("error",a=>{s.status="error",s.error=a.message,p(s,a.message)}),t.on("exit",(a,b)=>{s.status=0===a||"SIGTERM"===b?"stopped":"error",s.error="error"===s.status?`${s.title} exited with code ${a??"null"} signal ${b??"null"}`:s.error,p(s,`process exited: code=${a??"null"} signal=${b??"null"}`)}),await v(s),s}function D(a){let b=n().get(a);return b?r(b):null}function E(){return[...n().values()].map(a=>r(a))}async function F(a){let b=r(a),c=await s(b.pid),d=Date.now(),e=Date.parse(b.startedAt);return{id:b.id,appType:b.appType,title:b.title,filePath:b.filePath,cwd:b.cwd,sessionId:b.sessionId,port:b.port,pid:b.pid,status:b.status,url:b.url,directUrl:b.directUrl,startedAt:b.startedAt,lastActivity:b.lastActivity,uptimeMs:Number.isFinite(e)?Math.max(0,d-e):null,rssBytes:c,running:"starting"===b.status||"running"===b.status,logs:b.logs,error:b.error}}async function G(a){return Promise.all(a.map(a=>F(a)))}async function H(a){let b=n().get(a);return b?(b.lastActivity=new Date().toISOString(),b.child&&q(b.pid)&&(b.child.kill("SIGTERM"),await new Promise(a=>setTimeout(a,900)),q(b.pid)&&b.child.kill("SIGKILL")),b.status="stopped",b):null}d()}catch(a){d(a)}})},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},53571:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(23211),e=c(74177);function f(a,b){let c=b.status??500,f=`[api] ${b.context} failed (${c}): ${(0,e.m)(a)}`;c>=500?console.error(f,a instanceof Error?a.stack??"":""):console.warn(f);let{error:g,detail:h}=(0,e.c)(a,{status:c,expose:b.expose,verbose:"1"===process.env.ANNOVIBE_VERBOSE_ERRORS});return d.NextResponse.json({error:g,...b.code?{code:b.code}:{},...h?{detail:h}:{},...b.extra},{status:c,...b.headers?{headers:b.headers}:{}})}},55511:a=>{"use strict";a.exports=require("crypto")},57975:a=>{"use strict";a.exports=require("node:util")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66425:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>i,POST:()=>j,dynamic:()=>k});var e=c(23211),f=c(37625),g=c(53571),h=a([f]);f=(h.then?(await h)():h)[0];let k="force-dynamic";async function i(a){let{searchParams:b}=new URL(a.url),c=b.get("appId");if(!c)return e.NextResponse.json({apps:await (0,f.sg)((0,f.el)())});let d=(0,f.N5)(c);return d?e.NextResponse.json({app:await (0,f.vN)(d)}):e.NextResponse.json({error:"App not found"},{status:404})}async function j(a){try{let b=await a.json(),c=b.action??"start";if("start"===c){if("string"!=typeof b.filePath||"string"!=typeof b.cwd)return e.NextResponse.json({error:"filePath and cwd are required"},{status:400});let c="h5adexp"===b.appType?"h5adexp":"stexp",d=new URL(a.url).origin,g=await (0,f.$4)({appType:c,filePath:b.filePath,cwd:b.cwd,sessionId:"string"==typeof b.sessionId?b.sessionId:null,origin:d});return e.NextResponse.json({app:await (0,f.vN)(g)})}if("stop"===c){if("string"!=typeof b.appId)return e.NextResponse.json({error:"appId is required"},{status:400});let a=await (0,f.PZ)(b.appId);if(!a)return e.NextResponse.json({error:"App not found"},{status:404});return e.NextResponse.json({app:await (0,f.vN)(a)})}return e.NextResponse.json({error:"Unknown action"},{status:400})}catch(a){return(0,g.Q)(a,{context:"GET /api/apps",expose:!0})}}d()}catch(a){d(a)}})},67408:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/apps/route",pathname:"/api/apps",filename:"route",bundlePath:"app/api/apps/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/apps/route.ts",nextConfigOutput:"",userland:()=>c(66425),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/apps/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},73024:a=>{"use strict";a.exports=require("node:fs")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813,5193],()=>b(b.s=67408));module.exports=c})();
|
|
3
|
+
}`:"if (!requireNamespace('stexp', quietly = TRUE)) stop('The stexp R package is required. Install it in the selected AnnoVibe R kernel environment.')","stexp::run_app(",` file = ${JSON.stringify(a.filePath)},`," host = '127.0.0.1',",` port = ${a.port},`," launch.browser = FALSE\n)"].join("\n")],{cwd:a.cwd,env:{...process.env,...c.env,ANNOVIBE_APP_ID:a.id,ANNOVIBE_STEXP_PATH:a.filePath,ANNOVIBE_RDS_PATH:a.filePath}})}let c=(0,h.join)((0,k.getAgentDir)(),"apps","h5adexp",a.id);(0,g.mkdirSync)(c,{recursive:!0});let d=function(){let a=(0,h.resolve)(process.cwd(),"..","h5adexp","bin","h5adexp.mjs");if((0,g.existsSync)(a))return{command:process.execPath,argsPrefix:[a]};let b=(process.env.PATH??"").split("win32"===process.platform?";":":").filter(Boolean),c="win32"===process.platform?["h5adexp.cmd","h5adexp.exe","h5adexp"]:["h5adexp"];if(!b.some(a=>c.some(b=>(0,g.existsSync)((0,h.join)(a,b)))))throw Error("h5adexp is not installed or not available on PATH. Install it with `npm install -g h5adexp`, or keep a local ../h5adexp checkout next to annovibe.");return{command:"h5adexp",argsPrefix:[]}}();return(0,e.spawn)(d.command,[...d.argsPrefix,"serve","--file",a.filePath,"--host","127.0.0.1","--port",String(a.port),"--embed","--origin",b,"--runtime-home",c],{cwd:a.cwd,env:{...process.env,H5ADEXP_HOME:c,ANNOVIBE_APP_ID:a.id}})}async function C(a){let b=a.appType,{cwd:c,filePath:d}=function(a,b,c){let d,e=(0,h.resolve)(b),f=(0,h.resolve)(c),i=(0,h.relative)(e,f);if(!i||i.startsWith("..")||i.startsWith("/")||i.startsWith("\\"))throw Error(`${y(a).toUpperCase()} file must be inside the active project.`);if(!(0,g.existsSync)(f)||!(0,g.statSync)(f).isFile())throw Error(`${y(a).toUpperCase()} file not found.`);if(d=f.toLowerCase(),!x(a).some(a=>d.endsWith(a)))throw Error(`Only ${y(a)} files can be opened with ${z(a)}.`);return{cwd:e,filePath:f}}(b,a.cwd,a.filePath),e=o({appType:b,cwd:c,filePath:d,sessionId:a.sessionId}),f=[...n().values()].find(a=>o({appType:a.appType,cwd:a.cwd,filePath:a.filePath,sessionId:a.sessionId})===e);if(f){if(r(f),"starting"===f.status||"running"===f.status)return f.lastActivity=new Date().toISOString(),"starting"===f.status&&await v(f),f;n().delete(f.id)}let j=(0,i.randomBytes)(9).toString("hex"),k=await w(),l=new Date().toISOString(),m=`/api/apps/${encodeURIComponent(j)}`,q=`http://127.0.0.1:${k}/`,s={id:j,appType:b,title:z(b),filePath:d,cwd:c,sessionId:a.sessionId??null,port:k,pid:null,status:"starting",url:m,directUrl:q,startedAt:l,lastActivity:l,logs:[]},t=await B(s,a.origin||"http://localhost:30141");return s.child=t,s.pid=t.pid??null,n().set(j,s),t.stdout.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running"),s.lastActivity=new Date().toISOString()}),t.stderr.on("data",a=>{p(s,a);let b=String(a);"starting"===s.status&&("h5adexp"!==s.appType||b.includes("Listening on")||b.includes("[h5adexp] Ready"))&&(s.status="running")}),t.on("error",a=>{s.status="error",s.error=a.message,p(s,a.message)}),t.on("exit",(a,b)=>{s.status=0===a||"SIGTERM"===b?"stopped":"error",s.error="error"===s.status?`${s.title} exited with code ${a??"null"} signal ${b??"null"}`:s.error,p(s,`process exited: code=${a??"null"} signal=${b??"null"}`)}),await v(s),s}function D(a){let b=n().get(a);return b?r(b):null}function E(){return[...n().values()].map(a=>r(a))}async function F(a){let b=r(a),c=await s(b.pid),d=Date.now(),e=Date.parse(b.startedAt);return{id:b.id,appType:b.appType,title:b.title,filePath:b.filePath,cwd:b.cwd,sessionId:b.sessionId,port:b.port,pid:b.pid,status:b.status,url:b.url,directUrl:b.directUrl,startedAt:b.startedAt,lastActivity:b.lastActivity,uptimeMs:Number.isFinite(e)?Math.max(0,d-e):null,rssBytes:c,running:"starting"===b.status||"running"===b.status,logs:b.logs,error:b.error}}async function G(a){return Promise.all(a.map(a=>F(a)))}async function H(a){let b=n().get(a);return b?(b.lastActivity=new Date().toISOString(),b.child&&q(b.pid)&&(b.child.kill("SIGTERM"),await new Promise(a=>setTimeout(a,900)),q(b.pid)&&b.child.kill("SIGKILL")),b.status="stopped",b):null}d()}catch(a){d(a)}})},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},53571:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(23211),e=c(74177);function f(a,b){let c=b.status??500,f=`[api] ${b.context} failed (${c}): ${(0,e.m)(a)}`;c>=500?console.error(f,a instanceof Error?a.stack??"":""):console.warn(f);let{error:g,detail:h}=(0,e.c)(a,{status:c,expose:b.expose,verbose:"1"===process.env.ANNOVIBE_VERBOSE_ERRORS});return d.NextResponse.json({error:g,...b.code?{code:b.code}:{},...h?{detail:h}:{},...b.extra},{status:c,...b.headers?{headers:b.headers}:{}})}},55511:a=>{"use strict";a.exports=require("crypto")},57975:a=>{"use strict";a.exports=require("node:util")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66425:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>i,POST:()=>j,dynamic:()=>k});var e=c(23211),f=c(37625),g=c(53571),h=a([f]);f=(h.then?(await h)():h)[0];let k="force-dynamic";async function i(a){let{searchParams:b}=new URL(a.url),c=b.get("appId");if(!c)return e.NextResponse.json({apps:await (0,f.sg)((0,f.el)())});let d=(0,f.N5)(c);return d?e.NextResponse.json({app:await (0,f.vN)(d)}):e.NextResponse.json({error:"App not found"},{status:404})}async function j(a){try{let b=await a.json(),c=b.action??"start";if("start"===c){if("string"!=typeof b.filePath||"string"!=typeof b.cwd)return e.NextResponse.json({error:"filePath and cwd are required"},{status:400});let c="h5adexp"===b.appType?"h5adexp":"stexp",d=new URL(a.url).origin,g=await (0,f.$4)({appType:c,filePath:b.filePath,cwd:b.cwd,sessionId:"string"==typeof b.sessionId?b.sessionId:null,origin:d});return e.NextResponse.json({app:await (0,f.vN)(g)})}if("stop"===c){if("string"!=typeof b.appId)return e.NextResponse.json({error:"appId is required"},{status:400});let a=await (0,f.PZ)(b.appId);if(!a)return e.NextResponse.json({error:"App not found"},{status:404});return e.NextResponse.json({app:await (0,f.vN)(a)})}return e.NextResponse.json({error:"Unknown action"},{status:400})}catch(a){return(0,g.Q)(a,{context:"GET /api/apps",expose:!0})}}d()}catch(a){d(a)}})},73024:a=>{"use strict";a.exports=require("node:fs")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},79646:a=>{"use strict";a.exports=require("child_process")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813,5193],()=>b(b.s=8038));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=1541,a.ids=[1541],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},13760:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>i,dynamic:()=>j});var e=c(75430),f=c(89950),g=c(28247),h=a([e]);e=(h.then?(await h)():h)[0];let j="force-dynamic";async function i(){let a=await e.ModelRuntime.create(),b=(0,f.z)(await (0,g.z)(a));return Response.json({providers:b})}d()}catch(a){d(a)}})},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28247:(a,b,c)=>{"use strict";async function d(a){let b=a.getModels(),c=new Map;try{for(let b of(await a.listCredentials()))("api_key"===b.type||"oauth"===b.type)&&c.set(b.providerId,b.type)}catch{}let d=new Map;for(let a of b)d.set(a.provider,(d.get(a.provider)??0)+1);let e=[];for(let b of a.getProviders()){let f=d.get(b.id)??0;if(0===f)continue;let g=a.getProviderAuthStatus(b.id);e.push({id:b.id,name:b.name,hasApiKeyLogin:!!b.auth.apiKey?.login,hasOAuth:!!b.auth.oauth,...b.auth.oauth?.name?{oauthName:b.auth.oauth.name}:{},status:g,...c.has(b.id)?{credentialType:c.get(b.id)}:{},modelCount:f})}return e}c.d(b,{z:()=>d})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73882:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/all-providers/route",pathname:"/api/auth/all-providers",filename:"route",bundlePath:"app/api/auth/all-providers/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/all-providers/route.ts",nextConfigOutput:"",userland:()=>c(13760),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/all-providers/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},89950:(a,b,c)=>{"use strict";c.d(b,{l:()=>h,z:()=>g});let d=new Set(["models_json_key","models_json_command"]),e={"openai-codex":"ChatGPT Plus/Pro","github-copilot":"GitHub Copilot"};function f(a){let b=new Set,c=[];for(let d of a)b.has(d.id)||(b.add(d.id),c.push(d));return c}function g(a){let b=[];for(let c of f(a)){if(!c.hasApiKeyLogin||c.status.source&&d.has(c.status.source))continue;let a=c.status.configured&&"oauth"!==c.credentialType;b.push({id:c.id,displayName:c.name,configured:a,...a&&c.status.source?{source:c.status.source}:{},modelCount:c.modelCount,supportsOAuth:c.hasOAuth})}return b}function h(a){let b=[];for(let c of f(a))c.hasOAuth&&b.push({id:c.id,name:e[c.id]??c.oauthName??c.name,usesCallbackServer:!1,loggedIn:"oauth"===c.credentialType,supportsApiKey:c.hasApiKeyLogin});return b}},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=73882));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=1541,a.ids=[1541],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},13760:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>i,dynamic:()=>j});var e=c(75430),f=c(89950),g=c(28247),h=a([e]);e=(h.then?(await h)():h)[0];let j="force-dynamic";async function i(){let a=await e.ModelRuntime.create(),b=(0,f.z)(await (0,g.z)(a));return Response.json({providers:b})}d()}catch(a){d(a)}})},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28247:(a,b,c)=>{"use strict";async function d(a){let b=a.getModels(),c=new Map;try{for(let b of(await a.listCredentials()))("api_key"===b.type||"oauth"===b.type)&&c.set(b.providerId,b.type)}catch{}let d=new Map;for(let a of b)d.set(a.provider,(d.get(a.provider)??0)+1);let e=[];for(let b of a.getProviders()){let f=d.get(b.id)??0;if(0===f)continue;let g=a.getProviderAuthStatus(b.id);e.push({id:b.id,name:b.name,hasApiKeyLogin:!!b.auth.apiKey?.login,hasOAuth:!!b.auth.oauth,...b.auth.oauth?.name?{oauthName:b.auth.oauth.name}:{},status:g,...c.has(b.id)?{credentialType:c.get(b.id)}:{},modelCount:f})}return e}c.d(b,{z:()=>d})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},89043:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/all-providers/route",pathname:"/api/auth/all-providers",filename:"route",bundlePath:"app/api/auth/all-providers/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/all-providers/route.ts",nextConfigOutput:"",userland:()=>c(13760),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/all-providers/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},89950:(a,b,c)=>{"use strict";c.d(b,{l:()=>h,z:()=>g});let d=new Set(["models_json_key","models_json_command"]),e={"openai-codex":"ChatGPT Plus/Pro","github-copilot":"GitHub Copilot"};function f(a){let b=new Set,c=[];for(let d of a)b.has(d.id)||(b.add(d.id),c.push(d));return c}function g(a){let b=[];for(let c of f(a)){if(!c.hasApiKeyLogin||c.status.source&&d.has(c.status.source))continue;let a=c.status.configured&&"oauth"!==c.credentialType;b.push({id:c.id,displayName:c.name,configured:a,...a&&c.status.source?{source:c.status.source}:{},modelCount:c.modelCount,supportsOAuth:c.hasOAuth})}return b}function h(a){let b=[];for(let c of f(a))c.hasOAuth&&b.push({id:c.id,name:e[c.id]??c.oauthName??c.name,usesCallbackServer:!1,loggedIn:"oauth"===c.credentialType,supportsApiKey:c.hasApiKeyLogin});return b}},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=89043));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=8743,a.ids=[8743],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},18470:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>l,GET:()=>j,POST:()=>k,dynamic:()=>m});var e=c(75430),f=c(23211),g=c(28967),h=c(53571),i=a([e]);e=(i.then?(await i)():i)[0];let m="force-dynamic";async function j(a,{params:b}){let{provider:c}=await b,d=await e.ModelRuntime.create(),g=d.getProviderAuthStatus(c),h=d.getProvider(c)?.name??c,i=d.getModels(c).length;return f.NextResponse.json({provider:c,displayName:h,configured:g.configured,source:g.source,models:i})}async function k(a,{params:b}){let{provider:c}=await b;try{let{apiKey:b}=await a.json();if(!b||"string"!=typeof b||!b.trim())return f.NextResponse.json({error:"apiKey is required"},{status:400});let d=await e.ModelRuntime.create(),h=d.getProvider(c);if(!h?.auth.apiKey?.login)return f.NextResponse.json({error:`${c} does not support API key login`},{status:400});let i=!1;try{await d.login(c,"api_key",{signal:a.signal,notify:()=>{},prompt:async a=>{if("select"===a.type){let b=a.options.find(a=>"api-key"===a.id||"bearer-token"===a.id);if(b)return b.id;throw Error(`${c} requires interactive authentication setup`)}if(!i&&"secret"===a.type)return i=!0,b.trim();throw Error(`${c} requires additional authentication settings`)}})}catch(a){if(!(a instanceof e.CredentialSynchronizationError))throw a}return(0,g.k)(),f.NextResponse.json({success:!0})}catch(a){return(0,h.Q)(a,{context:"POST /api/auth/api-key/[provider]"})}}async function l(a,{params:b}){let{provider:c}=await b;try{let a=await e.ModelRuntime.create(),b=(await a.listCredentials()).find(a=>a.providerId===c);if(b&&"api_key"!==b.type)return f.NextResponse.json({error:`${c} is authenticated with OAuth, not an API key`},{status:409});return b&&await a.logout(c),(0,g.k)(),f.NextResponse.json({success:!0})}catch(a){return(0,h.Q)(a,{context:"DELETE /api/auth/api-key/[provider]"})}}d()}catch(a){d(a)}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__annovibeModelsCacheState||(globalThis.__annovibeModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__annovibeModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=8;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{k:()=>e,r:()=>f})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},52626:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/api-key/[provider]/route",pathname:"/api/auth/api-key/[provider]",filename:"route",bundlePath:"app/api/auth/api-key/[provider]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/api-key/[provider]/route.ts",nextConfigOutput:"",userland:()=>c(18470),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/api-key/[provider]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},53571:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(23211),e=c(74177);function f(a,b){let c=b.status??500,f=`[api] ${b.context} failed (${c}): ${(0,e.m)(a)}`;c>=500?console.error(f,a instanceof Error?a.stack??"":""):console.warn(f);let{error:g,detail:h}=(0,e.c)(a,{status:c,expose:b.expose,verbose:"1"===process.env.ANNOVIBE_VERBOSE_ERRORS});return d.NextResponse.json({error:g,...b.code?{code:b.code}:{},...h?{detail:h}:{},...b.extra},{status:c,...b.headers?{headers:b.headers}:{}})}},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813],()=>b(b.s=52626));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=8743,a.ids=[8743],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},18470:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>l,GET:()=>j,POST:()=>k,dynamic:()=>m});var e=c(75430),f=c(23211),g=c(28967),h=c(53571),i=a([e]);e=(i.then?(await i)():i)[0];let m="force-dynamic";async function j(a,{params:b}){let{provider:c}=await b,d=await e.ModelRuntime.create(),g=d.getProviderAuthStatus(c),h=d.getProvider(c)?.name??c,i=d.getModels(c).length;return f.NextResponse.json({provider:c,displayName:h,configured:g.configured,source:g.source,models:i})}async function k(a,{params:b}){let{provider:c}=await b;try{let{apiKey:b}=await a.json();if(!b||"string"!=typeof b||!b.trim())return f.NextResponse.json({error:"apiKey is required"},{status:400});let d=await e.ModelRuntime.create(),h=d.getProvider(c);if(!h?.auth.apiKey?.login)return f.NextResponse.json({error:`${c} does not support API key login`},{status:400});let i=!1;try{await d.login(c,"api_key",{signal:a.signal,notify:()=>{},prompt:async a=>{if("select"===a.type){let b=a.options.find(a=>"api-key"===a.id||"bearer-token"===a.id);if(b)return b.id;throw Error(`${c} requires interactive authentication setup`)}if(!i&&"secret"===a.type)return i=!0,b.trim();throw Error(`${c} requires additional authentication settings`)}})}catch(a){if(!(a instanceof e.CredentialSynchronizationError))throw a}return(0,g.k)(),f.NextResponse.json({success:!0})}catch(a){return(0,h.Q)(a,{context:"POST /api/auth/api-key/[provider]"})}}async function l(a,{params:b}){let{provider:c}=await b;try{let a=await e.ModelRuntime.create(),b=(await a.listCredentials()).find(a=>a.providerId===c);if(b&&"api_key"!==b.type)return f.NextResponse.json({error:`${c} is authenticated with OAuth, not an API key`},{status:409});return b&&await a.logout(c),(0,g.k)(),f.NextResponse.json({success:!0})}catch(a){return(0,h.Q)(a,{context:"DELETE /api/auth/api-key/[provider]"})}}d()}catch(a){d(a)}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__annovibeModelsCacheState||(globalThis.__annovibeModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__annovibeModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=8;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{k:()=>e,r:()=>f})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},53571:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(23211),e=c(74177);function f(a,b){let c=b.status??500,f=`[api] ${b.context} failed (${c}): ${(0,e.m)(a)}`;c>=500?console.error(f,a instanceof Error?a.stack??"":""):console.warn(f);let{error:g,detail:h}=(0,e.c)(a,{status:c,expose:b.expose,verbose:"1"===process.env.ANNOVIBE_VERBOSE_ERRORS});return d.NextResponse.json({error:g,...b.code?{code:b.code}:{},...h?{detail:h}:{},...b.extra},{status:c,...b.headers?{headers:b.headers}:{}})}},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88024:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/api-key/[provider]/route",pathname:"/api/auth/api-key/[provider]",filename:"route",bundlePath:"app/api/auth/api-key/[provider]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/api-key/[provider]/route.ts",nextConfigOutput:"",userland:()=>c(18470),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/api-key/[provider]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813],()=>b(b.s=88024));module.exports=c})();
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{var a={};a.id=1004,a.ids=[1004],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},
|
|
1
|
+
(()=>{var a={};a.id=1004,a.ids=[1004],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1570:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/login/[provider]/route",pathname:"/api/auth/login/[provider]",filename:"route",bundlePath:"app/api/auth/login/[provider]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/login/[provider]/route.ts",nextConfigOutput:"",userland:()=>c(46879),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/login/[provider]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__annovibeModelsCacheState||(globalThis.__annovibeModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__annovibeModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=8;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{k:()=>e,r:()=>f})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46879:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>j,POST:()=>i,dynamic:()=>k});var e=c(75430),f=c(28967),g=a([e]);e=(g.then?(await g)():g)[0];let k="force-dynamic";function h(){return globalThis.__piLoginCallbacks||(globalThis.__piLoginCallbacks=new Map),globalThis.__piLoginCallbacks}async function i(a,{params:b}){let{provider:c}=await b,{token:d,code:e}=await a.json();if(!d||!e)return Response.json({error:"token and code required"},{status:400});let f=h(),g=f.get(d);return g?d.startsWith(`${c}-`)?(g.resolve(e),f.delete(d),Response.json({ok:!0,provider:c})):Response.json({error:"Token does not match provider"},{status:400}):Response.json({error:"No pending login for token"},{status:404})}async function j(a,{params:b}){let{provider:c}=await b,d=new TextEncoder,g=(a,b)=>{a.enqueue(d.encode(`data: ${JSON.stringify(b)}
|
|
2
2
|
|
|
3
|
-
`))},i=new AbortController;return a.signal.addEventListener("abort",()=>i.abort()),new Response(new ReadableStream({async start(a){let b,d=await e.ModelRuntime.create();if(!d.getProvider(c)?.auth.oauth){g(a,{type:"error",message:`Unknown provider: ${c}`}),a.close();return}let j=h(),k=new Set,l=()=>{let a=`${c}-${Date.now()}-${Math.random().toString(36).slice(2)}`;k.add(a);let b=new Promise((b,c)=>{j.set(a,{resolve:c=>{k.delete(a),j.delete(a),b(c)},reject:b=>{k.delete(a),j.delete(a),c(b)}})});return{token:a,promise:b}},m=()=>(b||(b=l()).promise.finally(()=>{b=void 0}).catch(()=>{}),b),n=()=>{for(let a of k)j.get(a)?.reject(Error("Login cancelled")),j.delete(a);k.clear()};i.signal.addEventListener("abort",n);try{await d.login(c,"oauth",{prompt:async b=>{let c="manual_code"===b.type?m():l();return"select"===b.type?g(a,{type:"select_request",message:b.message,options:b.options,token:c.token}):g(a,{type:"prompt_request",message:b.message,placeholder:b.placeholder??null,token:c.token}),c.promise},notify:b=>{if("auth_url"===b.type){let c=m();g(a,{type:"auth",url:b.url,instructions:b.instructions??null,token:c.token})}else"device_code"===b.type?g(a,{type:"device_code",userCode:b.userCode,verificationUri:b.verificationUri,intervalSeconds:b.intervalSeconds??null,expiresInSeconds:b.expiresInSeconds??null}):g(a,{type:"progress",message:b.message})},signal:i.signal}),(0,f.k)(),g(a,{type:"success"})}catch(c){let b=c instanceof Error?c.message:String(c);i.signal.aborted||"Login cancelled"===b?g(a,{type:"cancelled"}):g(a,{type:"error",message:b})}finally{n(),a.close()}},cancel(){i.abort()}}),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}d()}catch(a){d(a)}})},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=
|
|
3
|
+
`))},i=new AbortController;return a.signal.addEventListener("abort",()=>i.abort()),new Response(new ReadableStream({async start(a){let b,d=await e.ModelRuntime.create();if(!d.getProvider(c)?.auth.oauth){g(a,{type:"error",message:`Unknown provider: ${c}`}),a.close();return}let j=h(),k=new Set,l=()=>{let a=`${c}-${Date.now()}-${Math.random().toString(36).slice(2)}`;k.add(a);let b=new Promise((b,c)=>{j.set(a,{resolve:c=>{k.delete(a),j.delete(a),b(c)},reject:b=>{k.delete(a),j.delete(a),c(b)}})});return{token:a,promise:b}},m=()=>(b||(b=l()).promise.finally(()=>{b=void 0}).catch(()=>{}),b),n=()=>{for(let a of k)j.get(a)?.reject(Error("Login cancelled")),j.delete(a);k.clear()};i.signal.addEventListener("abort",n);try{await d.login(c,"oauth",{prompt:async b=>{let c="manual_code"===b.type?m():l();return"select"===b.type?g(a,{type:"select_request",message:b.message,options:b.options,token:c.token}):g(a,{type:"prompt_request",message:b.message,placeholder:b.placeholder??null,token:c.token}),c.promise},notify:b=>{if("auth_url"===b.type){let c=m();g(a,{type:"auth",url:b.url,instructions:b.instructions??null,token:c.token})}else"device_code"===b.type?g(a,{type:"device_code",userCode:b.userCode,verificationUri:b.verificationUri,intervalSeconds:b.intervalSeconds??null,expiresInSeconds:b.expiresInSeconds??null}):g(a,{type:"progress",message:b.message})},signal:i.signal}),(0,f.k)(),g(a,{type:"success"})}catch(c){let b=c instanceof Error?c.message:String(c);i.signal.aborted||"Login cancelled"===b?g(a,{type:"cancelled"}):g(a,{type:"error",message:b})}finally{n(),a.close()}},cancel(){i.abort()}}),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}d()}catch(a){d(a)}})},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=1570));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=7758,a.ids=[7758],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},54475:(a,b,c)=>{c.r(b),c.d(b,{POST:()=>r});var d=c(23211),e=c(20424),f=c(2072);let g=new Map,h={failures:[],lockedUntil:0},i=/^(1|true|yes|on)$/i;function j(){return{failures:[],lockedUntil:0}}function k(a,b,c){for(;a.failures.length>0&&b-a.failures[0]>c;)a.failures.shift()}function l(a,b,c){return k(a,b,c),!(a.lockedUntil>b)&&(0!==a.lockedUntil&&(a.lockedUntil=0),!0)}function m(a,b,c,d,e){k(a,b,c),a.failures.push(b),a.failures.length>=d&&(a.lockedUntil=b+e,a.failures=[])}function n(a,b){0===b.failures.length&&0===b.lockedUntil?g.delete(a):g.set(a,b)}function o(a){var b,c;let d=(b=a.trim()).startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b;if(!d||"unknown"===d.toLowerCase())return null;if(d.startsWith("[")){let a=d.indexOf("]");a>0&&(d=d.slice(1,a))}else/^\d+\.\d+\.\d+\.\d+:\d+$/.test(d)&&(d=d.slice(0,d.lastIndexOf(":")));let e=d.indexOf("%");return e>=0&&(d=d.slice(0,e)),(c=d,/^\d+\.\d+\.\d+\.\d+$/.test(c)||c.includes(":"))?d:null}var p=c(62814),q=c(53571);async function r(a){try{let b=await a.json(),{rateLimitKey:c,auditIp:q}=function(a){if(!i.test(process.env.ANNOVIBE_TRUST_PROXY_HEADERS??""))return{rateLimitKey:"direct-client"};let b=function(a){let b=a.get("forwarded");if(b){let a=function(a){let b=a.split(",")[0]?.trim();if(!b)return null;for(let a of b.split(";")){let[b,c]=a.split("=",2);if(b?.trim().toLowerCase()==="for"&&c)return o(c)}return null}(b);if(a)return a}let c=a.get("x-forwarded-for");if(c){let a=o(c.split(",")[0]??"");if(a)return a}let d=a.get("x-real-ip");if(d){let a=o(d);if(a)return a}return null}(a.headers);return b?{rateLimitKey:`ip:${b}`,auditIp:b}:{rateLimitKey:"trusted-proxy:unknown"}}(a);if(!function(a){let b=Date.now();if(!l(h,b,36e5))return!1;let c=g.get(a)??j(),d=l(c,b,3e5);return n(a,c),d}(c))return(0,p.L)("login_rate_limited",q),d.NextResponse.json({error:"Too many login attempts. Try again later."},{status:429});if(b.password){let f;if(!(0,e.BE)(b.password)){let a,b;return a=Date.now(),b=g.get(c)??j(),m(b,a,3e5,5,9e5),n(c,b),m(h,a,36e5,10,18e5),(0,p.L)("login_fail",q),d.NextResponse.json({error:"Invalid password"},{status:401})}if(g.delete(c),f=Date.now(),k(h,f,36e5),0!==h.lockedUntil&&h.lockedUntil<=f&&(h.lockedUntil=0),(0,e.WG)(a)){let a=await (0,e.kR)();return d.NextResponse.json({step:"totp",tempToken:a})}(0,p.L)("login_success",q);let i=await (0,e.yL)(),l=d.NextResponse.json({success:!0});return l.headers.set("Set-Cookie",(0,e.US)(i)),l}if(b.tempToken){if(!await (0,e.JZ)(b.tempToken))return d.NextResponse.json({error:"Session expired. Please sign in again."},{status:401});let a=(0,e.I0)();if(!a)return d.NextResponse.json({error:"TOTP is not configured"},{status:400});if(b.totpCode&&/^\d{6}$/.test(b.totpCode)){if(!await (0,f.z3)(a,b.totpCode))return(0,p.L)("totp_verify_fail",q),d.NextResponse.json({error:"Invalid verification code"},{status:401});(0,p.L)("login_success",q);let c=await (0,e.yL)(),g=d.NextResponse.json({success:!0});return g.headers.set("Set-Cookie",(0,e.US)(c)),g}if(b.recoveryCode){let a=(0,e.oB)();if(!a?.recoveryCodes?.length)return d.NextResponse.json({error:"No recovery codes available"},{status:400});let c=(0,f.Ak)(b.recoveryCode,a.recoveryCodes);if(!c)return(0,p.L)("totp_verify_fail",q),d.NextResponse.json({error:"Invalid recovery code"},{status:401});(0,e.Vn)(c),(0,p.L)("login_success",q);let g=await (0,e.yL)(),h=d.NextResponse.json({success:!0,recoveryCodeUsed:!0});return h.headers.set("Set-Cookie",(0,e.US)(g)),h}return d.NextResponse.json({error:"Verification code or recovery code required"},{status:400})}return d.NextResponse.json({error:"Password required"},{status:400})}catch(a){return(0,q.Q)(a,{context:"POST /api/auth/login"})}}},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73680:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/login/route",pathname:"/api/auth/login",filename:"route",bundlePath:"app/api/auth/login/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/login/route.ts",nextConfigOutput:"",userland:()=>c(54475),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/login/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813,4013,716,9557],()=>b(b.s=73680));module.exports=c})();
|
|
1
|
+
"use strict";(()=>{var a={};a.id=7758,a.ids=[7758],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},54475:(a,b,c)=>{c.r(b),c.d(b,{POST:()=>s});var d=c(23211),e=c(20424),f=c(2072);let g=new Map,h={failures:[],lockedUntil:0},i=/^(1|true|yes|on)$/i;function j(){return{failures:[],lockedUntil:0}}function k(a,b,c){for(;a.failures.length>0&&b-a.failures[0]>c;)a.failures.shift()}function l(a,b,c){return k(a,b,c),!(a.lockedUntil>b)&&(0!==a.lockedUntil&&(a.lockedUntil=0),!0)}function m(a,b,c,d,e){k(a,b,c),a.failures.push(b),a.failures.length>=d&&(a.lockedUntil=b+e,a.failures=[])}function n(a,b){0===b.failures.length&&0===b.lockedUntil?g.delete(a):g.set(a,b)}function o(a){var b,c;let d=(b=a.trim()).startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b;if(!d||"unknown"===d.toLowerCase())return null;if(d.startsWith("[")){let a=d.indexOf("]");a>0&&(d=d.slice(1,a))}else/^\d+\.\d+\.\d+\.\d+:\d+$/.test(d)&&(d=d.slice(0,d.lastIndexOf(":")));let e=d.indexOf("%");return e>=0&&(d=d.slice(0,e)),(c=d,/^\d+\.\d+\.\d+\.\d+$/.test(c)||c.includes(":"))?d:null}var p=c(62814),q=c(53571);function r(a){return"1"===process.env.ANNOVIBE_HTTPS||"https"===a.headers.get("x-forwarded-proto")?.split(",",1)[0]?.trim().toLowerCase()}async function s(a){try{let b=await a.json(),{rateLimitKey:c,auditIp:q}=function(a){if(!i.test(process.env.ANNOVIBE_TRUST_PROXY_HEADERS??""))return{rateLimitKey:"direct-client"};let b=function(a){let b=a.get("forwarded");if(b){let a=function(a){let b=a.split(",")[0]?.trim();if(!b)return null;for(let a of b.split(";")){let[b,c]=a.split("=",2);if(b?.trim().toLowerCase()==="for"&&c)return o(c)}return null}(b);if(a)return a}let c=a.get("x-forwarded-for");if(c){let a=o(c.split(",")[0]??"");if(a)return a}let d=a.get("x-real-ip");if(d){let a=o(d);if(a)return a}return null}(a.headers);return b?{rateLimitKey:`ip:${b}`,auditIp:b}:{rateLimitKey:"trusted-proxy:unknown"}}(a);if(!function(a){let b=Date.now();if(!l(h,b,36e5))return!1;let c=g.get(a)??j(),d=l(c,b,3e5);return n(a,c),d}(c))return(0,p.L)("login_rate_limited",q),d.NextResponse.json({error:"Too many login attempts. Try again later."},{status:429});if(b.password){let f;if(!(0,e.BE)(b.password)){let a,b;return a=Date.now(),b=g.get(c)??j(),m(b,a,3e5,5,9e5),n(c,b),m(h,a,36e5,10,18e5),(0,p.L)("login_fail",q),d.NextResponse.json({error:"Invalid password"},{status:401})}if(g.delete(c),f=Date.now(),k(h,f,36e5),0!==h.lockedUntil&&h.lockedUntil<=f&&(h.lockedUntil=0),(0,e.WG)(a)){let a=await (0,e.kR)();return d.NextResponse.json({step:"totp",tempToken:a})}(0,p.L)("login_success",q);let i=await (0,e.yL)(),l=d.NextResponse.json({success:!0});return l.headers.set("Set-Cookie",(0,e.US)(i,{secure:r(a)})),l}if(b.tempToken){if(!await (0,e.JZ)(b.tempToken))return d.NextResponse.json({error:"Session expired. Please sign in again."},{status:401});let c=(0,e.I0)();if(!c)return d.NextResponse.json({error:"TOTP is not configured"},{status:400});if(b.totpCode&&/^\d{6}$/.test(b.totpCode)){if(!await (0,f.z3)(c,b.totpCode))return(0,p.L)("totp_verify_fail",q),d.NextResponse.json({error:"Invalid verification code"},{status:401});(0,p.L)("login_success",q);let g=await (0,e.yL)(),h=d.NextResponse.json({success:!0});return h.headers.set("Set-Cookie",(0,e.US)(g,{secure:r(a)})),h}if(b.recoveryCode){let c=(0,e.oB)();if(!c?.recoveryCodes?.length)return d.NextResponse.json({error:"No recovery codes available"},{status:400});let g=(0,f.Ak)(b.recoveryCode,c.recoveryCodes);if(!g)return(0,p.L)("totp_verify_fail",q),d.NextResponse.json({error:"Invalid recovery code"},{status:401});(0,e.Vn)(g),(0,p.L)("login_success",q);let h=await (0,e.yL)(),i=d.NextResponse.json({success:!0,recoveryCodeUsed:!0});return i.headers.set("Set-Cookie",(0,e.US)(h,{secure:r(a)})),i}return d.NextResponse.json({error:"Verification code or recovery code required"},{status:400})}return d.NextResponse.json({error:"Password required"},{status:400})}catch(a){return(0,q.Q)(a,{context:"POST /api/auth/login"})}}},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73734:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/login/route",pathname:"/api/auth/login",filename:"route",bundlePath:"app/api/auth/login/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/login/route.ts",nextConfigOutput:"",userland:()=>c(54475),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/login/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813,4013,716,9557],()=>b(b.s=73734));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=8933,a.ids=[8933],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__annovibeModelsCacheState||(globalThis.__annovibeModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__annovibeModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=8;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{k:()=>e,r:()=>f})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69622:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/logout/[provider]/route",pathname:"/api/auth/logout/[provider]",filename:"route",bundlePath:"app/api/auth/logout/[provider]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/logout/[provider]/route.ts",nextConfigOutput:"",userland:()=>c(86152),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/logout/[provider]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86152:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>h,dynamic:()=>i});var e=c(75430),f=c(28967),g=a([e]);e=(g.then?(await g)():g)[0];let i="force-dynamic";async function h(a,{params:b}){let{provider:c}=await b,d=await e.ModelRuntime.create();if(!d.getProvider(c)?.auth.oauth)return Response.json({error:`Unknown provider: ${c}`},{status:400});let g=(await d.listCredentials()).find(a=>a.providerId===c);return g&&"oauth"!==g.type?Response.json({error:`${c} is authenticated with an API key, not OAuth`},{status:409}):(g&&await d.logout(c),(0,f.k)(),Response.json({ok:!0}))}d()}catch(a){d(a)}})},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=69622));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=8933,a.ids=[8933],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28460:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/auth/logout/[provider]/route",pathname:"/api/auth/logout/[provider]",filename:"route",bundlePath:"app/api/auth/logout/[provider]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/auth/logout/[provider]/route.ts",nextConfigOutput:"",userland:()=>c(86152),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/auth/logout/[provider]/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__annovibeModelsCacheState||(globalThis.__annovibeModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__annovibeModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=8;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{k:()=>e,r:()=>f})},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{"use strict";a.exports=import("@earendil-works/pi-coding-agent")},78335:()=>{},86152:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>h,dynamic:()=>i});var e=c(75430),f=c(28967),g=a([e]);e=(g.then?(await g)():g)[0];let i="force-dynamic";async function h(a,{params:b}){let{provider:c}=await b,d=await e.ModelRuntime.create();if(!d.getProvider(c)?.auth.oauth)return Response.json({error:`Unknown provider: ${c}`},{status:400});let g=(await d.listCredentials()).find(a=>a.providerId===c);return g&&"oauth"!==g.type?Response.json({error:`${c} is authenticated with an API key, not OAuth`},{status:409}):(g&&await d.logout(c),(0,f.k)(),Response.json({ok:!0}))}d()}catch(a){d(a)}})},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970],()=>b(b.s=28460));module.exports=c})();
|