wrong-notebook 2026.10.22-4 → 2026.10.23
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 +0 -1
- package/.next/build-manifest.json +8 -8
- package/.next/prerender-manifest.json +4 -4
- package/.next/routes-manifest.json +0 -8
- package/.next/server/app/_global-error/page/build-manifest.json +5 -5
- package/.next/server/app/_global-error/page.js +2 -2
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- 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 +8 -8
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +7 -7
- package/.next/server/app/_global-error.segments/_full.segment.rsc +8 -8
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +5 -5
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/admin/page/build-manifest.json +5 -5
- package/.next/server/app/admin/page.js +2 -2
- package/.next/server/app/admin/page.js.nft.json +1 -1
- package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/server/app/admin/user/[id]/page/build-manifest.json +5 -5
- package/.next/server/app/admin/user/[id]/page.js +2 -2
- package/.next/server/app/admin/user/[id]/page.js.nft.json +1 -1
- package/.next/server/app/admin/user/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/admin/dashboard/route.js +10 -4
- package/.next/server/app/api/admin/dashboard/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/migrate-tags/route.js +3 -3
- package/.next/server/app/api/admin/migrate-tags/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/system-reset/route.js +4 -4
- package/.next/server/app/api/admin/system-reset/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/users/[id]/detail/route.js +11 -4
- package/.next/server/app/api/admin/users/[id]/detail/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/users/[id]/route.js +3 -3
- package/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/users/route.js +3 -3
- package/.next/server/app/api/admin/users/route.js.nft.json +1 -1
- package/.next/server/app/api/ai/models/route.js +7 -7
- package/.next/server/app/api/ai/models/route.js.nft.json +1 -1
- package/.next/server/app/api/ai/test/route.js +8 -8
- package/.next/server/app/api/ai/test/route.js.nft.json +1 -1
- package/.next/server/app/api/analytics/route.js +5 -5
- package/.next/server/app/api/analytics/route.js.nft.json +1 -1
- package/.next/server/app/api/analyze/route.js +9 -9
- package/.next/server/app/api/analyze/route.js.nft.json +1 -1
- package/.next/server/app/api/auth/[...nextauth]/route.js +3 -3
- package/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/delete/route.js +4 -4
- package/.next/server/app/api/error-items/[id]/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/figure/route.js +8 -8
- package/.next/server/app/api/error-items/[id]/figure/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/fix-latex/route.js +9 -9
- package/.next/server/app/api/error-items/[id]/fix-latex/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/geogebra/route.js +7 -7
- package/.next/server/app/api/error-items/[id]/geogebra/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/image/route.js +4 -4
- package/.next/server/app/api/error-items/[id]/image/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/notes/route.js +4 -4
- package/.next/server/app/api/error-items/[id]/notes/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/practice-records/route.js +4 -4
- package/.next/server/app/api/error-items/[id]/practice-records/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/reanswer/route.js +10 -10
- package/.next/server/app/api/error-items/[id]/reanswer/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/retag/route.js +8 -8
- package/.next/server/app/api/error-items/[id]/retag/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/route.js +1 -1
- package/.next/server/app/api/error-items/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/svg-animation/route.js +10 -10
- package/.next/server/app/api/error-items/[id]/svg-animation/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/batch-delete/route.js +4 -4
- package/.next/server/app/api/error-items/batch-delete/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/clear/route.js +4 -4
- package/.next/server/app/api/error-items/clear/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/list/route.js +6 -6
- package/.next/server/app/api/error-items/list/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/route.js +10 -10
- package/.next/server/app/api/error-items/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/short/[shortId]/route.js +3 -3
- package/.next/server/app/api/error-items/short/[shortId]/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/similarity/route.js +4 -4
- package/.next/server/app/api/error-items/similarity/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js +9 -9
- package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/results/route.js +7 -7
- package/.next/server/app/api/exams/[id]/results/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/retry/route.js +9 -9
- package/.next/server/app/api/exams/[id]/retry/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/route.js +7 -7
- package/.next/server/app/api/exams/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/route.js +9 -9
- package/.next/server/app/api/exams/route.js.nft.json +1 -1
- package/.next/server/app/api/export/route.js +4 -4
- package/.next/server/app/api/export/route.js.nft.json +1 -1
- package/.next/server/app/api/geogebra-analyze/route.js +7 -7
- package/.next/server/app/api/geogebra-analyze/route.js.nft.json +1 -1
- package/.next/server/app/api/health/route.js +2 -2
- package/.next/server/app/api/health/route.js.nft.json +1 -1
- package/.next/server/app/api/import/route.js +9 -9
- package/.next/server/app/api/import/route.js.nft.json +1 -1
- package/.next/server/app/api/logs/frontend/route.js +4 -4
- package/.next/server/app/api/logs/frontend/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/[id]/retag/route.js +5 -5
- package/.next/server/app/api/notebooks/[id]/retag/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/[id]/route.js +4 -4
- package/.next/server/app/api/notebooks/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/route.js +3 -3
- package/.next/server/app/api/notebooks/route.js.nft.json +1 -1
- package/.next/server/app/api/openclaw/batch-upload/route.js +9 -9
- package/.next/server/app/api/openclaw/batch-upload/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/generate/route.js +7 -7
- package/.next/server/app/api/practice/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/record/[id]/route.js +7 -7
- package/.next/server/app/api/practice/record/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/record/route.js +9 -9
- package/.next/server/app/api/practice/record/route.js.nft.json +1 -1
- package/.next/server/app/api/reanswer/route.js +9 -9
- package/.next/server/app/api/reanswer/route.js.nft.json +1 -1
- package/.next/server/app/api/register/route.js.nft.json +1 -1
- package/.next/server/app/api/register/status/route.js +2 -2
- package/.next/server/app/api/register/status/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js +5 -5
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/stats/practice/clear/route.js +4 -4
- package/.next/server/app/api/stats/practice/clear/route.js.nft.json +1 -1
- package/.next/server/app/api/stats/practice/route.js +3 -3
- package/.next/server/app/api/stats/practice/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/route.js +4 -4
- package/.next/server/app/api/tags/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/stats/route.js +4 -4
- package/.next/server/app/api/tags/stats/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/suggestions/route.js +3 -3
- package/.next/server/app/api/tags/suggestions/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js +4 -4
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/user/route.js +4 -4
- package/.next/server/app/api/user/route.js.nft.json +1 -1
- package/.next/server/app/api/version/route.js +2 -2
- package/.next/server/app/api/version/route.js.nft.json +1 -1
- package/.next/server/app/error-items/[id]/page/build-manifest.json +5 -5
- package/.next/server/app/error-items/[id]/page.js +2 -2
- package/.next/server/app/error-items/[id]/page.js.nft.json +1 -1
- package/.next/server/app/error-items/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/exams/[id]/page/build-manifest.json +5 -5
- package/.next/server/app/exams/[id]/page.js +2 -2
- package/.next/server/app/exams/[id]/page.js.nft.json +1 -1
- package/.next/server/app/exams/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/exams/[id]/print/page/build-manifest.json +5 -5
- package/.next/server/app/exams/[id]/print/page.js +2 -2
- package/.next/server/app/exams/[id]/print/page.js.nft.json +1 -1
- package/.next/server/app/exams/[id]/print/page_client-reference-manifest.js +1 -1
- package/.next/server/app/exams/page/build-manifest.json +5 -5
- package/.next/server/app/exams/page.js +2 -2
- package/.next/server/app/exams/page.js.nft.json +1 -1
- package/.next/server/app/exams/page_client-reference-manifest.js +1 -1
- package/.next/server/app/favicon.ico/route.js +2 -2
- package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/.next/server/app/latex-test/page/build-manifest.json +5 -5
- package/.next/server/app/latex-test/page.js +2 -2
- package/.next/server/app/latex-test/page.js.nft.json +1 -1
- package/.next/server/app/latex-test/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login/page/build-manifest.json +5 -5
- package/.next/server/app/login/page.js +2 -2
- package/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/manifest.webmanifest/route.js +2 -2
- package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/.next/server/app/notebooks/[id]/add/page/build-manifest.json +5 -5
- package/.next/server/app/notebooks/[id]/add/page.js +2 -2
- package/.next/server/app/notebooks/[id]/add/page.js.nft.json +1 -1
- package/.next/server/app/notebooks/[id]/add/page_client-reference-manifest.js +1 -1
- package/.next/server/app/notebooks/[id]/page/build-manifest.json +5 -5
- package/.next/server/app/notebooks/[id]/page.js +2 -2
- package/.next/server/app/notebooks/[id]/page.js.nft.json +1 -1
- package/.next/server/app/notebooks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/notebooks/page/build-manifest.json +5 -5
- package/.next/server/app/notebooks/page.js +2 -2
- package/.next/server/app/notebooks/page.js.nft.json +1 -1
- package/.next/server/app/notebooks/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page/build-manifest.json +5 -5
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/practice/page/build-manifest.json +5 -5
- package/.next/server/app/practice/page.js +2 -2
- package/.next/server/app/practice/page.js.nft.json +1 -1
- package/.next/server/app/practice/page_client-reference-manifest.js +1 -1
- package/.next/server/app/print-preview/page/build-manifest.json +5 -5
- package/.next/server/app/print-preview/page.js +2 -2
- package/.next/server/app/print-preview/page.js.nft.json +1 -1
- package/.next/server/app/print-preview/page_client-reference-manifest.js +1 -1
- package/.next/server/app/register/page/build-manifest.json +5 -5
- package/.next/server/app/register/page.js.nft.json +1 -1
- package/.next/server/app/register/page_client-reference-manifest.js +1 -1
- package/.next/server/app/stats/page/build-manifest.json +5 -5
- package/.next/server/app/stats/page.js +2 -2
- package/.next/server/app/stats/page.js.nft.json +1 -1
- package/.next/server/app/stats/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tags/page/build-manifest.json +5 -5
- package/.next/server/app/tags/page.js +2 -2
- package/.next/server/app/tags/page.js.nft.json +1 -1
- package/.next/server/app/tags/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +0 -1
- package/.next/server/chunks/1jng_app_api_exams_[id]_questions_[questionId]_regenerate_route_actions_1ggead3.js +1 -1
- package/.next/server/chunks/1oeh_server_app_api_error-items_[id]_practice-records_route_actions_0z2zuf1.js +1 -1
- package/.next/server/chunks/1oeh_server_app_api_error-items_[id]_svg-animation_route_actions_17gckf3.js +1 -1
- package/.next/server/chunks/[externals]__04n7qbr._.js +1 -1
- package/.next/server/chunks/[externals]__0jzwjtl._.js +3 -0
- package/.next/server/chunks/[externals]__0pot68n._.js +1 -1
- package/.next/server/chunks/[externals]_assert_1pwe1ri._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0-2l_pu._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__00_hq9v._.js +6 -6
- package/.next/server/chunks/[root-of-the-server]__00moo9h._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__012xcq-._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__01bzczj._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__02pqrw_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__033ri9p._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__04pjde6._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__064krqp._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__07iraov._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__07jl92a._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__07q7nsp._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0_t7bbz._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0_unb90._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0a1zwxf._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0aefi10._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0akadps._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0cfjgye._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0d-37yj._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0d2kpnm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0dqgi36._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0dz5c04._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0e_u82_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0f3jyg0._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0gwwa9b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0hars8c._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0iozebm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0k-5uu2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0k3mm05._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0l-xu_t._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0lggrcf._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0m0eall._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0m37xyb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0m8p-6f._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0pa47kn._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0r42_o7._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0rgjh3q._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0rk_yxy._.js +3 -3
- package/.next/server/chunks/[root-of-the-server]__0scij0p._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0sixhu9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0sj18kk._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0sp4_zo._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0t2o8v-._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0w58v6b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0wp40ty._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0wsj4a_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0wvvsah._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0xg5h56._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0zpazf3._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__10hs-qn._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__119xork._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__11_-ncy._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__11jhplo._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__122xu-0._.js +9 -9
- package/.next/server/chunks/[root-of-the-server]__15tkoe6._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__15y1l96._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__16hnc6-._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__17i9sje._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__19_wn9u._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1_gkx5x._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1_hp3ol._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1_ogacf._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1a4-26x._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1b6i9mu._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1b_y2wk._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1bl7t8i._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1c0vatt._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1c7a0rs._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1chx4lo._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1cngnud._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1d82zkk._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1ezju_2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1fc23i5._.js +122 -0
- package/.next/server/chunks/[root-of-the-server]__1flnfu4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1gya7jq._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1hng_h2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1i40psm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1ijkds_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1j4v2e3._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1jtd2ar._.js +2 -2
- package/.next/server/chunks/[root-of-the-server]__1kpo44g._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1lbcdia._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1m86czr._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1mnpqkx._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1n4b6nb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1nmrlew._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1nmtv65._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1o34kp3._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1q7yl7l._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1qv60vg._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1ry8uat._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1s2rww3._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1svvf40._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1tk0-4v._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1v-71me._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1vw740y._.js +9 -9
- package/.next/server/chunks/[root-of-the-server]__1x_ud_-._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1yt_xxr._.js +3 -0
- package/.next/server/chunks/_0-eguqv._.js +1 -1
- package/.next/server/chunks/_008zx49._.js +1 -1
- package/.next/server/chunks/_011-ll5._.js +1 -1
- package/.next/server/chunks/_0389uce._.js +1 -1
- package/.next/server/chunks/_0431fxn._.js +1 -1
- package/.next/server/chunks/_0ekrwj-._.js +6 -6
- package/.next/server/chunks/_0gwg6ba._.js +1 -1
- package/.next/server/chunks/_0gxi3zr._.js +1 -1
- package/.next/server/chunks/_0lz3t4l._.js +2 -2
- package/.next/server/chunks/_0n36ev0._.js +3 -0
- package/.next/server/chunks/_0oc8oe4._.js +3 -0
- package/.next/server/chunks/_0rjzgi0._.js +3 -0
- package/.next/server/chunks/_0uxp3uh._.js +1 -1
- package/.next/server/chunks/_0x3ltk0._.js +6 -6
- package/.next/server/chunks/_10y361h._.js +3 -0
- package/.next/server/chunks/_12w5k19._.js +1 -1
- package/.next/server/chunks/_13ffmxv._.js +1 -1
- package/.next/server/chunks/_14tz_k9._.js +1 -1
- package/.next/server/chunks/_15neond._.js +11 -0
- package/.next/server/chunks/_16jdov0._.js +1 -1
- package/.next/server/chunks/_18amra5._.js +1 -1
- package/.next/server/chunks/_1_ns7o3._.js +1 -1
- package/.next/server/chunks/_1a1aqmi._.js +1 -1
- package/.next/server/chunks/_1a1udq0._.js +1 -1
- package/.next/server/chunks/_1b0269x._.js +1 -1
- package/.next/server/chunks/_1b7qjlv._.js +1 -1
- package/.next/server/chunks/_1be-y66._.js +1 -1
- package/.next/server/chunks/_1ex6ovo._.js +1 -1
- package/.next/server/chunks/_1fgb9ve._.js +1 -1
- package/.next/server/chunks/_1m-yyz-._.js +1 -1
- package/.next/server/chunks/_1n1xsqj._.js +3 -0
- package/.next/server/chunks/_1oj6gy_._.js +1 -1
- package/.next/server/chunks/_1pvqo-q._.js +1 -1
- package/.next/server/chunks/_1z_ujac._.js +1 -1
- package/.next/server/chunks/_211va-d._.js +1 -1
- package/.next/server/chunks/_2194yr7._.js +11 -0
- package/.next/server/chunks/_next-internal_server_app_api_admin_dashboard_route_actions_1ispso-.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_admin_users_[id]_detail_route_actions_0oe_wkt.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_admin_users_route_actions_0q-rtz1.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_ai_models_route_actions_0w7iwv-.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_ai_test_route_actions_1p0n1q8.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_analytics_route_actions_1e0ou17.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_analyze_route_actions_0lx-23h.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_auth_[___nextauth]_route_actions_08nexdk.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_figure_route_actions_0adlts0.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_fix-latex_route_actions_0hc7dhx.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_geogebra_route_actions_1-ks4uv.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_image_route_actions_1k9n5yl.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_reanswer_route_actions_1-sw0j2.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_retag_route_actions_0ckki4n.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_route_actions_1kbs4ux.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_batch-delete_route_actions_0hiq_1k.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_clear_route_actions_14t_6i-.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_list_route_actions_032x4ue.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_route_actions_1zdvz0p.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_error-items_similarity_route_actions_1i26if9.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_exams_[id]_retry_route_actions_1fdi39f.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_exams_[id]_route_actions_1wuidrq.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_exams_route_actions_1c_zhtj.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_export_route_actions_0lpcnjc.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_geogebra-analyze_route_actions_1xng0_c.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_health_route_actions_1ryftkb.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_import_route_actions_20ko04x.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_logs_frontend_route_actions_0nxepty.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_notebooks_[id]_retag_route_actions_00su_t8.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_notebooks_[id]_route_actions_11j3vxg.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_notebooks_route_actions_02cy45r.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_openclaw_batch-upload_route_actions_1zz3oen.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_practice_generate_route_actions_1krr9n_.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_practice_record_[id]_route_actions_0zreiom.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_practice_record_route_actions_0py9z__.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_reanswer_route_actions_04xweh_.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_register_route_actions_0vlzh_c.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_register_status_route_actions_0b52_sj.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_1bpm9ac.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_stats_practice_clear_route_actions_1iz6iz0.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_stats_practice_route_actions_1tfoxx-.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_tags_route_actions_1nb9ma2.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_tags_stats_route_actions_0fmeadc.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_tags_suggestions_route_actions_1xpolyv.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_tasks_route_actions_123tq1_.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_0g2jjls.js +1 -1
- package/.next/server/chunks/_next-internal_server_app_manifest_webmanifest_route_actions_08hcpz0.js +1 -1
- package/.next/server/chunks/node_modules_next_1zdbrne._.js +1 -1
- package/.next/server/chunks/node_modules_zod_v4_classic_external_1-pw2v2.js +3 -3
- package/.next/server/chunks/src_0tzpy5j._.js +1 -1
- package/.next/server/chunks/src_lib_ai_prompts_ts_0z36zms._.js +1 -1
- package/.next/server/chunks/src_lib_date-time_ts_14chb27._.js +1 -1
- package/.next/server/chunks/src_lib_question-deduplication_ts_1p1bik-._.js +1 -1
- package/.next/server/chunks/ssr/[externals]_fs_0pplqgc._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__00gewu3._.js +3 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__03psbtz._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__05f8wbh._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0a0nty7._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0ax9dog._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0bvtza7._.js +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__0g_-bym._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0gwwr7e._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0hzktoi._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0koj8h0._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0s87xha._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0skyo1a._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0snpjfe._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0y_e9do._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0ybs_4c._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__14l7peq._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1507q8a._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__15ppb9j._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__191jn5n._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1f2jx51._.js +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__1gth76-._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1ko_dw5._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1l84pks._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1m7qw-2._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1ma2oml._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1o8jotz._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1o__w27._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1p7f0va._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1sg9eoj._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1u74hyi._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1xsovpr._.js +1 -1
- package/.next/server/chunks/ssr/_054yhx9._.js +1 -1
- package/.next/server/chunks/ssr/_07ls0n_._.js +1 -1
- package/.next/server/chunks/ssr/_0i9hwpv._.js +1 -1
- package/.next/server/chunks/ssr/_0iqp5hs._.js +1 -1
- package/.next/server/chunks/ssr/_0m1-rq-._.js +1 -1
- package/.next/server/chunks/ssr/_0mgbe2b._.js +1 -1
- package/.next/server/chunks/ssr/_0nv22wt._.js +1 -1
- package/.next/server/chunks/ssr/_0rz2_qb._.js +5 -5
- package/.next/server/chunks/ssr/_0sbbx9z._.js +2 -2
- package/.next/server/chunks/ssr/_0sf1gd9._.js +1 -1
- package/.next/server/chunks/ssr/_0uemk57._.js +1 -1
- package/.next/server/chunks/ssr/_0zj7dlu._.js +1 -1
- package/.next/server/chunks/ssr/_11ut-6_._.js +3 -0
- package/.next/server/chunks/ssr/_17igtpd._.js +1 -1
- package/.next/server/chunks/ssr/_1aot_70._.js +3 -0
- package/.next/server/chunks/ssr/_1filpif._.js +3 -0
- package/.next/server/chunks/ssr/_1jniqsj._.js +1 -1
- package/.next/server/chunks/ssr/_1kgnhmo._.js +2 -2
- package/.next/server/chunks/ssr/_1lt1lhz._.js +2 -2
- package/.next/server/chunks/ssr/_1yeu09q._.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yr.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_admin_page_actions_1mcickz.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_admin_user_[id]_page_actions_0baj8gs.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_error-items_[id]_page_actions_0qla9ak.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_exams_[id]_print_page_actions_0pxdgxq.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_exams_page_actions_0av69f-.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_latex-test_page_actions_19v7ka0.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_login_page_actions_04fnjo0.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_[id]_add_page_actions_0275ft2.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_[id]_page_actions_1qj0i-7.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_page_actions_06x1kdz.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1j.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_practice_page_actions_0cy-h5n.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_print-preview_page_actions_1jhaaln.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_register_page_actions_1op-s-x.js +1 -1
- package/.next/server/chunks/ssr/_next-internal_server_app_stats_page_actions_1olf1_a.js +1 -1
- package/.next/server/chunks/ssr/node_modules_0o2aki7._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_1y5ym6h._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_1lnqo1a._.js +3 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_077yo5w._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_0nkkbfv._.js +2 -2
- package/.next/server/chunks/ssr/node_modules_next_dist_1_c-t1n._.js +4 -4
- package/.next/server/chunks/ssr/node_modules_next_dist_1v8aef8._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0bew68i._.js +2 -2
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js +1 -1
- package/.next/server/chunks/ssr/src_1biegcg._.js +1 -1
- package/.next/server/chunks/ssr/src_1gayunq._.js +1 -1
- package/.next/server/chunks/ssr/src_1o363ao._.js +1 -1
- package/.next/server/chunks/ssr/src_app_admin_page_tsx_0ublbd0._.js +1 -1
- package/.next/server/chunks/ssr/src_app_error-items_[id]_page_tsx_04xwwdm._.js +1 -1
- package/.next/server/chunks/ssr/src_app_notebooks_[id]_page_tsx_08njm-5._.js +1 -1
- package/.next/server/chunks/ssr/src_app_notebooks_page_tsx_1p9src5._.js +1 -1
- package/.next/server/chunks/ssr/src_app_page_tsx_1chiuah._.js +1 -1
- package/.next/server/chunks/ssr/src_app_practice_page_tsx_10gnx53._.js +1 -1
- package/.next/server/chunks/ssr/src_app_tags_page_tsx_1h2vkk4._.js +1 -1
- package/.next/server/chunks/ssr/src_components_providers_tsx_09kw-mv._.js +2 -2
- package/.next/server/chunks/ssr/src_lib_date-time_ts_0oyqctn._.js +1 -1
- package/.next/server/edge/chunks/[root-of-the-server]__1osrt2u._.js +1 -1
- package/.next/server/edge/chunks/_1s0wgnu._.js +1 -1
- package/.next/server/edge/chunks/node_modules_0g4gi6f._.js +3 -3
- package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_1iafar9.js +1 -1
- package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_1x1n1fx.js +1 -1
- package/.next/server/instrumentation.js +2 -2
- package/.next/server/middleware-build-manifest.js +8 -8
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/03gmdewlo3s6u.js +1 -0
- package/.next/static/chunks/06q8lm6y95ac4.css +1 -0
- package/.next/static/chunks/0_w084ms_lq25.js +22 -0
- package/.next/static/chunks/0dzfsm6h13fyr.js +1 -0
- package/.next/static/chunks/0ehjiuuxbbhq9.js +1 -0
- package/.next/static/chunks/0ij2dqb0qj5ry.js +1 -0
- package/.next/static/chunks/0iq53qkw5hvrs.js +1 -0
- package/.next/static/chunks/0m81l71kojx8j.js +1 -0
- package/.next/static/chunks/0nckb2-62ooyq.js +1 -0
- package/.next/static/chunks/0pwdmc9gw8ben.js +33 -0
- package/.next/static/chunks/0snej-v5yglxr.js +1 -0
- package/.next/static/chunks/1-7k9gbbjkcml.js +1 -0
- package/.next/static/chunks/1c92up8k2x0z4.js +1 -0
- package/.next/static/chunks/1cd32rtomdngh.js +1 -0
- package/.next/static/chunks/1io3-cth_2-cd.js +1 -0
- package/.next/static/chunks/1oiuiyv1cv06v.js +31 -0
- package/.next/static/chunks/1t4-pobw0y5cf.js +1 -0
- package/.next/static/chunks/1xg811762s1p1.js +1 -0
- package/.next/static/chunks/1z_5sj1wqi06v.js +1 -0
- package/.next/static/chunks/24dymggis4suf.css +3 -0
- package/.next/static/chunks/24jbwfpgmio7x.js +1 -0
- package/.next/static/chunks/27fr34_1v7xyh.js +1 -0
- package/.next/static/chunks/2dlme2fdlkms6.js +1 -0
- package/.next/static/chunks/2eu_bls12m1wj.js +1 -0
- package/.next/static/chunks/2pmzqbg-qabof.js +1 -0
- package/.next/static/chunks/2w2uo9jjxt-re.js +1 -0
- package/.next/static/chunks/2x8e_fbze06sd.js +1 -0
- package/.next/static/chunks/2z1_5umv36es6.js +191 -0
- package/.next/static/chunks/32bl-oqw9oso0.js +1 -0
- package/.next/static/chunks/3b-g5_r9nto3s.js +6 -0
- package/.next/static/chunks/3g1rm2suowncy.js +3 -0
- package/.next/static/chunks/3helovsg02qr4.js +1 -0
- package/.next/static/chunks/3jta6jrk-jubq.js +1 -0
- package/.next/static/chunks/3m4c1r8_2ga_1.js +1 -0
- package/.next/static/chunks/3whzkc6d8oefw.js +1 -0
- package/.next/static/chunks/3yhf6xyypekz6.js +1 -0
- package/.next/static/chunks/3z9gc_02gl8n9.js +1 -0
- package/.next/static/chunks/427wg73nuzpiz.js +5 -0
- package/.next/static/chunks/turbopack-1-0r7_puvz3eq.js +1 -0
- package/launcher.js +22 -6
- package/package.json +1 -1
- package/prisma/seed.db +0 -0
- package/.next/server/app/api/error-items/[id]/mastery/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/error-items/[id]/mastery/route/build-manifest.json +0 -12
- package/.next/server/app/api/error-items/[id]/mastery/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/error-items/[id]/mastery/route.js +0 -8
- package/.next/server/app/api/error-items/[id]/mastery/route.js.map +0 -5
- package/.next/server/app/api/error-items/[id]/mastery/route.js.nft.json +0 -1
- package/.next/server/app/api/error-items/[id]/mastery/route_client-reference-manifest.js +0 -3
- package/.next/server/chunks/[externals]__1735khz._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02j1w81._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__03nfvnm._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__04tyyvs._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__05s4wut._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__06_nln5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__06h5afw._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0be5c5r._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0bqawi0._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0bsw5c9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0c59gc3._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0cmxmwt._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0d5dpu4._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0d9ijed._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0e22a4y._.js +0 -122
- package/.next/server/chunks/[root-of-the-server]__0fnyu4s._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0gp88gz._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0inxsnu._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0j5231l._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0jaawra._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0k-nf6a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0k-p1pj._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0lrdm1u._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0lro5a7._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0mfjf2y._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0mqorxb._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0no6umu._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0nqbham._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0o9gtvd._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0obb4y-._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0p3u6_q._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0rmrkd_._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0tdibjz._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0u58zap._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0vhjihq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0vz88er._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0wf9znr._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0yc8r2x._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0zv7jom._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11_1z7m._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11n87go._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11p4ahb._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__131taws._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__13ebiit._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1413v0e._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__14dnbrn._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__14jqm9_._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__152lbaw._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__16begv4._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__17duis5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__17q3k-v._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__184u6de._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__18atlj8._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__18c7l6u._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__18zrkky._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__19vj8qy._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1aaux7e._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1cceu4b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1cn6rlb._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1csfdxc._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1ezwxao._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1g1wi9i._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1gmc_uw._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1h09r50._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1hpwwxw._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1j6mx-v._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1jdi-1f._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1ju8z29._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1kqv61m._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1lct0vi._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1loecue._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1m4-ab6._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1mkpya8._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1nwf3ua._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1oup682._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1p8hw44._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1pplzr1._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1rsn804._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1sdtn83._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1u-1vx4._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1v6nwhq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__20465pr._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__207mxv8._.js +0 -3
- package/.next/server/chunks/_0_o8yhv._.js +0 -3
- package/.next/server/chunks/_0c5hvv3._.js +0 -11
- package/.next/server/chunks/_0frix22._.js +0 -11
- package/.next/server/chunks/_0rdo0a4._.js +0 -3
- package/.next/server/chunks/_167vv93._.js +0 -3
- package/.next/server/chunks/_1e1h1f1._.js +0 -3
- package/.next/server/chunks/_1flar98._.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_mastery_route_actions_1l5uan6.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0b8kewv._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0icjezr._.js +0 -3
- package/.next/server/chunks/ssr/_062gk85._.js +0 -3
- package/.next/server/chunks/ssr/_0idg05p._.js +0 -3
- package/.next/server/chunks/ssr/_1gu1rou._.js +0 -3
- package/.next/static/chunks/02d-8f2qj7j3j.js +0 -1
- package/.next/static/chunks/02t7qqptint2p.js +0 -1
- package/.next/static/chunks/090a6irxe0c6j.js +0 -1
- package/.next/static/chunks/0bhxyq7e2eqjc.js +0 -5
- package/.next/static/chunks/0if-vqkhyn-zc.js +0 -1
- package/.next/static/chunks/0jf31atbtr1mv.js +0 -1
- package/.next/static/chunks/0te6mr86gdyyi.js +0 -191
- package/.next/static/chunks/0vgthy7v615hq.js +0 -1
- package/.next/static/chunks/1e5n4cprhwujv.js +0 -1
- package/.next/static/chunks/1edfvwc5_eck-.js +0 -31
- package/.next/static/chunks/1f0u19gh5_49z.js +0 -1
- package/.next/static/chunks/1fdj59ys-pend.js +0 -1
- package/.next/static/chunks/1kerqdluzq2l0.js +0 -1
- package/.next/static/chunks/1r4lwlvm7m53v.js +0 -1
- package/.next/static/chunks/1rz1bokv9edzr.js +0 -1
- package/.next/static/chunks/1s-d67d-yroyw.js +0 -1
- package/.next/static/chunks/1tw5_upsy-qj_.js +0 -22
- package/.next/static/chunks/1w1xvldfmcs67.js +0 -6
- package/.next/static/chunks/1zdof8ylzqm8w.js +0 -1
- package/.next/static/chunks/2-k1hjh6ff6y4.js +0 -1
- package/.next/static/chunks/21qpve5q3mjly.js +0 -1
- package/.next/static/chunks/21v32ctwcoxqt.js +0 -1
- package/.next/static/chunks/27-t289uq6_ju.js +0 -3
- package/.next/static/chunks/293-te2b34thz.js +0 -1
- package/.next/static/chunks/2dgleoh5fbs83.js +0 -1
- package/.next/static/chunks/2di_nd6djcxwu.js +0 -1
- package/.next/static/chunks/2mk03owifu2m1.js +0 -33
- package/.next/static/chunks/2qza4p5d9fz_2.js +0 -1
- package/.next/static/chunks/2s4c8fcrdnew4.js +0 -1
- package/.next/static/chunks/2zdqnkem9n6a9.js +0 -1
- package/.next/static/chunks/3-wm04s--suy5.js +0 -1
- package/.next/static/chunks/33t46atd3n2zd.js +0 -1
- package/.next/static/chunks/37yx4gh09tzwc.js +0 -1
- package/.next/static/chunks/3c4-ozf1dxam2.css +0 -1
- package/.next/static/chunks/3gwb465dhjxo9.js +0 -1
- package/.next/static/chunks/3hkgw-uib19xl.js +0 -1
- package/.next/static/chunks/3n-yabfsiog4i.css +0 -3
- package/.next/static/chunks/3umldi5zknsyi.js +0 -1
- package/.next/static/chunks/turbopack-1yjxh4vceobdr.js +0 -1
- /package/.next/static/{678uJSzOSzePaLyv5hUv0 → Y0pwgmRdVAifh_zukihNt}/_buildManifest.js +0 -0
- /package/.next/static/{678uJSzOSzePaLyv5hUv0 → Y0pwgmRdVAifh_zukihNt}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{678uJSzOSzePaLyv5hUv0 → Y0pwgmRdVAifh_zukihNt}/_ssgManifest.js +0 -0
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var r=e.i(463021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},449719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(r,t)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),t()}catch(e){t(e)}},!0),500874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},427699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},522734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},921517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},524836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},145706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},792509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},224361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},406461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},298876,e=>{"use strict";let r={minimax:{name:"MiniMax",baseUrl:"https://api.minimax.cn/v1",model:"MiniMax-M3.1-Flash",envPrefix:"MINIMAX",consoleUrl:"https://platform.minimax.cn"},glm:{name:"智谱 GLM",baseUrl:"https://open.bigmodel.cn/api/paas/v4",model:"glm-5.3-flash",envPrefix:"GLM",consoleUrl:"https://open.bigmodel.cn"},deepseek:{name:"DeepSeek",baseUrl:"https://api.deepseek.com",model:"deepseek-flash",envPrefix:"DEEPSEEK",consoleUrl:"https://platform.deepseek.com"},kimi:{name:"Kimi",baseUrl:"https://api.moonshot.cn/v1",model:"kimi-k3",envPrefix:"KIMI",consoleUrl:"https://platform.kimi.com"}},t=Object.keys(r);e.s(["VENDOR_PRESETS",0,r,"VENDOR_PROVIDER_IDS",0,t,"isVendorProvider",0,function(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(r,e)},"resolveVendorConfig",0,function(e,t){let n=r[e];return{apiKey:t?.apiKey||"",baseUrl:t?.baseUrl||n.baseUrl,model:t?.model||n.model}}])},181912,e=>{"use strict";var r=e.i(89171);let t={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,t,n,i){let a={message:e};return n&&(a.code=n),i&&(a.details=i),r.NextResponse.json(a,{status:t})}e.s(["ErrorCode",0,t,"badRequest",0,function(e,r){return n(e,400,t.BAD_REQUEST,r)},"conflict",0,function(e){return n(e,409,t.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,t.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,t.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,t.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,t.UNAUTHORIZED)},"validationError",0,function(e,r){return n(e,400,t.VALIDATION_ERROR,r)}])},798003,e=>{"use strict";var r=e.i(522734),t=e.i(814747),n=e.i(50377),i=e.i(376025),a=e.i(298876);let s=(0,n.createLogger)("config"),o=t.default.join(process.env.CONFIG_DIR||t.default.join(process.cwd(),"config"),"app-config.json"),c={aiProvider:process.env.AI_PROVIDER||"minimax",allowRegistration:!0,timeZone:i.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-6.1-sol"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},...Object.fromEntries(a.VENDOR_PROVIDER_IDS.map(e=>{let r=a.VENDOR_PRESETS[e].envPrefix;return[e,{apiKey:process.env[`${r}_API_KEY`],baseUrl:process.env[`${r}_BASE_URL`],model:process.env[`${r}_MODEL`]}]})),prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function l(e,r){return Object.fromEntries(a.VENDOR_PROVIDER_IDS.map(t=>[t,{...e[t],...r[t]}]))}function p(){if(r.default.existsSync(o))try{var e;let t=r.default.readFileSync(o,"utf-8"),n=JSON.parse(t),a=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){s.info("Detected legacy OpenAI config, migrating to multi-instance format..."),a=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let r={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let r=16*Math.random()|0;return("x"===e?r:3&r|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-6.1-sol"};return{instances:[r],activeInstanceId:r.id}}(n.openai);let e={...n,openai:a};r.default.writeFileSync(o,JSON.stringify(e,null,2)),s.info("Legacy OpenAI config migrated successfully")}return{...c,...n,timeZone:(0,i.isValidTimeZone)(n.timeZone)?n.timeZone.trim():i.DEFAULT_TIME_ZONE,openai:{instances:a?.instances||c.openai?.instances||[],activeInstanceId:a?.activeInstanceId||c.openai?.activeInstanceId},gemini:{...c.gemini,...n.gemini},azure:{...c.azure,...n.azure},anthropic:{...c.anthropic,...n.anthropic},...l(c,n),prompts:{...c.prompts,...n.prompts},timeouts:{...c.timeouts,...n.timeouts}}}catch(e){s.error({error:e},"Failed to read config file")}return c}e.s(["getActiveOpenAIConfig",0,function(){let e=p(),r=e.openai?.instances||[],t=e.openai?.activeInstanceId;if(t&&0!==r.length)return r.find(e=>e.id===t)},"getAppConfig",0,p,"getAppTimeZone",0,function(){return p().timeZone||i.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,i.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let t=p(),n={...t,...e,timeZone:e.timeZone?.trim()??t.timeZone??i.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??t.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??t.openai?.activeInstanceId},gemini:{...t.gemini,...e.gemini},azure:{...t.azure,...e.azure},anthropic:{...t.anthropic,...e.anthropic},...l(t,e),prompts:{...t.prompts,...e.prompts},timeouts:{...t.timeouts,...e.timeouts}};try{return r.default.writeFileSync(o,JSON.stringify(n,null,2)),n}catch(e){throw s.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,n={}){let i,a=r[e],s=(i=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[i]?r[i]:r.info;return(r,t)=>{let i,o;if(a<s)return;let c=new Date;"string"==typeof r?(i={},o=r):(i=r,o=t||"");{let r=JSON.stringify({level:e,time:c.toISOString(),...n,...i,msg:o});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let n=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])},404752,e=>{"use strict";var r=e.i(698043),t=e.i(843911);let n=(0,e.i(50377).createLogger)("mastery"),i=["correct","wrong","not_attempted"];function a(e){return"string"==typeof e&&i.includes(e)}let s={easy:.85,medium:.95,hard:1,harder:1},o={wrong:.1,not_attempted:0};async function c(e){let i=await r.prisma.errorItem.findUnique({where:{id:e},select:{id:!0,questionText:!0,mistakeStatus:!0,tags:{select:{name:!0}},practiceRecords:{where:{result:{not:null}},orderBy:[{createdAt:"asc"},{id:"asc"}],select:{result:!0,difficulty:!0,source:!0,createdAt:!0}}}});if(!i)return;let c=i.practiceRecords.filter(e=>a(e.result)).map(e=>({date:e.createdAt.toISOString(),difficulty:e.difficulty,result:e.result,source:e.source})),l=function(e){if(0===e.length)return null;let r=.15,t=.5;return e.forEach((n,i)=>{let a=Math.pow(.7,e.length-1-i),c="correct"===n.result?s[n.difficulty||"medium"]??s.medium:o[n.result];r+=a*c,t+=a}),Math.round(r/t*100)/100}(c);if(null===l)return void await r.prisma.errorItem.update({where:{id:i.id},data:{masteryProbability:null,masteryReason:null,masterySource:null,masteryEvaluatedAt:null}});let p=l,u="",d="rule";try{let e=await (0,t.getAIService)().evaluateMastery({questionText:i.questionText||"",knowledgePoints:i.tags.map(e=>e.name),mistakeStatus:i.mistakeStatus,history:c,ruleProbability:l});p=e.probability,u=e.reason,d="ai"}catch(t){n.warn({errorItemId:e,error:t instanceof Error?t.message:String(t)},"AI mastery evaluation failed, using rule estimate");let r=c.filter(e=>"correct"===e.result).length;u=`共练习 ${c.length} 次,做对 ${r} 次(规则估算)`}await r.prisma.errorItem.update({where:{id:i.id},data:{masteryProbability:p,masteryReason:u,masterySource:d,masteryEvaluatedAt:new Date,masteryLevel:+(p>=.8)}}),n.info({errorItemId:e,probability:p,source:d},"Mastery evaluated")}let l=new Set,p=!1;async function u(){if(!p){p=!0;try{for(;l.size>0;){let[e]=l;l.delete(e);try{await c(e)}catch(r){n.error({errorItemId:e,error:r},"Mastery evaluation failed")}}}finally{p=!1}}}e.s(["PRACTICE_RESULTS",0,i,"isPracticeResult",0,a,"scheduleMasteryEvaluation",0,function(e){e.forEach(e=>l.add(e)),u()}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__131taws._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},90900,e=>e.a(async(t,r)=>{try{var a=e.i(89171),n=e.i(698043),i=e.i(63856),s=e.i(181912),o=e.i(50377),l=t([i]);[i]=l.then?(await l)():l;let c=(0,o.createLogger)("api:error-items:practice-records");async function u(e,{params:t}){let{id:r}=await t;try{let e=await (0,i.getCurrentUser)();if(!e)return(0,s.unauthorized)("Authentication required");let t=await n.prisma.errorItem.findUnique({where:{id:r},select:{userId:!0,masteryLevel:!0,masteryProbability:!0,masteryReason:!0,masterySource:!0,masteryEvaluatedAt:!0,practiceRecords:{where:{result:{not:null}},orderBy:[{createdAt:"desc"},{id:"desc"}],select:{id:!0,result:!0,difficulty:!0,source:!0,questionText:!0,answerText:!0,analysis:!0,wrongAnswerText:!0,mistakeAnalysis:!0,originalImageUrl:!0,figureSvg:!0,createdAt:!0,examQuestion:{select:{paperId:!0,order:!0,paper:{select:{title:!0}}}}}}}});if(!t)return(0,s.notFound)("Item not found");if(t.userId!==e.id)return(0,s.forbidden)("Not authorized to access this item");let{userId:o,practiceRecords:l,...u}=t;return a.NextResponse.json({...u,records:l.map(({examQuestion:e,...t})=>({...t,exam:e?{paperId:e.paperId,order:e.order,title:e.paper.title}:null}))})}catch(e){return c.error({error:e},"Error fetching practice records"),(0,s.internalError)("Failed to fetch practice records")}}e.s(["GET",0,u]),r()}catch(e){r(e)}},!1),242249,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),R=e.i(570101),x=e.i(626937),E=e.i(10372),h=e.i(193695),f=e.i(509580);e.i(52474);var m=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/error-items/[id]/practice-records/route",pathname:"/api/error-items/[id]/practice-records",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/error-items/[id]/practice-records/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(90900),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:N,serverHooks:O}=v;async function I(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/error-items/[id]/practice-records/route";g=g.replace(/\/index$/,"")||"/";let N=await v.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!N)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:O,deploymentId:I,params:A,nextConfig:T,parsedUrl:w,isDraftMode:y,prerenderManifest:_,routerServerContext:D,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:U}=N,P=(0,o.normalizeAppPath)(g),L=!!_.routes[b]&&(v.isDev||(0,f.isRouteCacheOwner)(b,v.cacheOwner,_.routes[b])),F=!!(_.dynamicRoutes[P]||L),j=async()=>((null==D?void 0:D.render404)?await D.render404(e,t,w,!1):t.end("This page could not be found"),null);if(F&&!y){let e=_.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(T.adapterPath)return await j();throw new h.NoFallbackError}}let k=null;!F||v.isDev||y||(k="/index"===(k=b)?"/":k);let H=!0===v.isDev||!F,M=F&&!H;U&&q&&(0,s.setManifestsSingleton)({page:g,clientReferenceManifest:q,serverActionsManifest:U});let B=e.method||"GET",G=(0,i.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==D?void 0:D.isWrappedByNextServer),Q=!!(0,n.getRequestMeta)(e,"minimalMode"),z=(0,n.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,T,_,Q);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let X={params:A,previewProps:_.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:y,supportsDynamicResponse:H,incrementalCache:z,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>v.onRequestError(e,t,a,n,D)},sharedContext:{buildId:O,deploymentId:I}},$=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest($,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&S&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await v.handle(Z,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let i=X.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let s=X.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)($,W,n,i),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[E.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:S})},!1,D),t}},Y=async(n,s)=>{try{var o,l;let n=await v.handleResponse({req:e,nextConfig:T,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:a.waitUntil,isMinimalMode:Q});if(!F)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",S?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),y&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,R.fromNodeOutgoingHttpHeaders)(n.value.headers);Q&&F||i.delete(E.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,x.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)($,W,new Response(n.value.body,{headers:i,status:n.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:S})},!1,D),F)throw t;await (0,p.sendResponse)($,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:i.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${B} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),s&&s!==n&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(c.BaseServerSpan.handleRequest,{spanName:`${B} ${g}`,kind:i.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,I,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:N})},"routeModule",0,v,"serverHooks",0,O,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,N])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function a(e,r,a,n){let i={message:e};return a&&(i.code=a),n&&(i.details=n),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return a(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return a(e,409,r.CONFLICT)},"createErrorResponse",0,a,"forbidden",0,function(e="Forbidden"){return a(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return a(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return a(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return a(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return a(e,400,r.VALIDATION_ERROR,t)}])},63856,e=>e.a(async(t,r)=>{try{var a=e.i(757660),n=e.i(79832),i=e.i(698043),s=t([n]);async function o(){let e=await (0,a.getServerSession)(n.authOptions);return e?.user?.email?i.prisma.user.findUnique({where:{email:e.user.email}}):null}[n]=s.then?(await s)():s,e.s(["getCurrentUser",0,o]),r()}catch(e){r(e)}},!1),50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,i=t[e],s=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(i<s)return;let l=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__13ebiit._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var r=e.i(463021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},449719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(r,t)=>{try{var s=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(s),t()}catch(e){t(e)}},!0),500874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},427699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},921517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},524836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},145706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},792509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},224361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},406461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,s={}){let n,a=r[e],i=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[n]?r[n]:r.info;return(r,t)=>{let n,o;if(a<i)return;let x=new Date;"string"==typeof r?(n={},o=r):(n=r,o=t||"");{let r=JSON.stringify({level:e,time:x.toISOString(),...s,...n,msg:o});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let s=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,s="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return s.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1413v0e._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__11p4ahb._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(520442)))},730249,e=>{e.v(e=>Promise.resolve().then(()=>e(405898)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__14dnbrn._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[951615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},902157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},347299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},761095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},750227,(e,r,o)=>{r.exports=e.x("node:path",()=>require("node:path"))},59639,(e,r,o)=>{r.exports=e.x("node:process",()=>require("node:process"))},857764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},812057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},727028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},325897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__14jqm9_._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1loecue._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(520442)))},730249,e=>{e.v(e=>Promise.resolve().then(()=>e(405898)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__152lbaw._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0vz88er._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(520442)))},730249,e=>{e.v(e=>Promise.resolve().then(()=>e(405898)))},258078,e=>{"use strict";e.s(["requireAdmin",0,function(e){var r;return!!e&&(r=e.user,r?.role==="admin")}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__16begv4._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[951615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},902157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},347299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},761095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},750227,(e,r,o)=>{r.exports=e.x("node:path",()=>require("node:path"))},59639,(e,r,o)=>{r.exports=e.x("node:process",()=>require("node:process"))},857764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},812057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},727028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},325897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__17duis5._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[951615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},902157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},347299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},761095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},750227,(e,r,o)=>{r.exports=e.x("node:path",()=>require("node:path"))},59639,(e,r,o)=>{r.exports=e.x("node:process",()=>require("node:process"))},857764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},812057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},727028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},325897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__17q3k-v._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[951615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},902157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},347299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},761095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},750227,(e,r,o)=>{r.exports=e.x("node:path",()=>require("node:path"))},59639,(e,r,o)=>{r.exports=e.x("node:process",()=>require("node:process"))},857764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},812057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},727028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},325897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__184u6de._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},747381,e=>e.a(async(t,r)=>{try{var n=e.i(89171),a=e.i(698043),i=e.i(79832),o=e.i(757660),s=e.i(798003),l=e.i(376025),c=e.i(181912),p=e.i(50377),u=t([i]);[i]=u.then?(await u)():u;let E=(0,p.createLogger)("api:analytics");async function d(e){let t=await (0,o.getServerSession)(i.authOptions);if(!t||!t.user)return(0,c.unauthorized)();let r=t.user.id;try{let e=await a.prisma.errorItem.count({where:{userId:r}}),t=await a.prisma.errorItem.count({where:{userId:r,masteryLevel:{gt:0}}}),i=e>0?(t/e*100).toFixed(1):0,o=await a.prisma.errorItem.findMany({where:{userId:r},include:{subject:!0}}),c=new Map;o.forEach(e=>{let t=e.subject?.name||"Unknown";c.set(t,(c.get(t)||0)+1)});let p=Array.from(c.entries()).map(([e,t])=>({name:e,value:t})),u=[],d=(0,s.getAppTimeZone)(),E=new Date;for(let e=6;e>=0;e--){let{start:t,end:n}=(0,l.getDayRange)(E,d,-e),i=(0,l.formatDateTime)(t,"MM-dd",d),o=await a.prisma.errorItem.count({where:{userId:r,createdAt:{gte:t,lt:n}}});u.push({date:i,count:o})}return n.NextResponse.json({totalErrors:e,masteredCount:t,masteryRate:i,subjectStats:p,activityData:u})}catch(e){return E.error({error:e},"Error fetching analytics"),(0,c.internalError)("Failed to fetch analytics")}}e.s(["GET",0,d]),r()}catch(e){r(e)}},!1),632424,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),i=e.i(561916),o=e.i(174677),s=e.i(869741),l=e.i(316795),c=e.i(487718),p=e.i(995169),u=e.i(47587),d=e.i(666012),E=e.i(570101),m=e.i(626937),R=e.i(10372),x=e.i(193695),f=e.i(509580);e.i(52474);var I=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/analytics/route",pathname:"/api/analytics",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/analytics/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(747381),...{}}),{workAsyncStorage:h,workUnitAsyncStorage:O,serverHooks:g}=v;async function _(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),v.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let h="/api/analytics/route";h=h.replace(/\/index$/,"")||"/";let O=await v.prepare(e,t,{srcPage:h,multiZoneDraftMode:!1});if(!O)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:g,deploymentId:_,params:N,nextConfig:A,parsedUrl:y,isDraftMode:D,prerenderManifest:T,routerServerContext:w,isOnDemandRevalidate:S,revalidateOnlyGenerated:U,resolvedPathname:P,clientReferenceManifest:b,serverActionsManifest:C}=O,L=(0,s.normalizeAppPath)(h),M=!!T.routes[P]&&(v.isDev||(0,f.isRouteCacheOwner)(P,v.cacheOwner,T.routes[P])),q=!!(T.dynamicRoutes[L]||M),F=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,y,!1):t.end("This page could not be found"),null);if(q&&!D){let e=T.dynamicRoutes[L];if(e&&!1===e.fallback&&!M){if(A.adapterPath)return await F();throw new x.NoFallbackError}}let j=null;!q||v.isDev||D||(j="/index"===(j=P)?"/":j);let k=!0===v.isDev||!q,K=q&&!k;C&&b&&(0,o.setManifestsSingleton)({page:h,clientReferenceManifest:b,serverActionsManifest:C});let Z=e.method||"GET",V=(0,i.getTracer)(),H=V.getActiveScopeSpan(),B=!!(null==w?void 0:w.isWrappedByNextServer),G=!!(0,a.getRequestMeta)(e,"minimalMode"),z=(0,a.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,A,T,G);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let Y={params:N,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:D,supportsDynamicResponse:k,incrementalCache:z,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>v.onRequestError(e,t,n,a,w)},sharedContext:{buildId:g,deploymentId:_}},$=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),Q=c.NextRequestAdapter.fromNodeNextRequest($,(0,c.signalFromNodeResponse)(t)),W=async({previousCacheEntry:r})=>{try{if(!G&&S&&U&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await v.handle(Q,Y);e.fetchMetrics=Y.renderOpts.fetchMetrics;let i=Y.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let o=Y.renderOpts.collectedTags;if(!q)return await (0,d.sendResponse)($,X,a,i),null;{let e=await a.blob(),t=(0,E.toNodeOutgoingHttpHeaders)(a.headers);o&&(t[R.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,n=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=R.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:Y.renderOpts.collectedExpire;return{value:{kind:I.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:h,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:S})},!1,w),t}},J=async(a,o)=>{try{var s,l;let a=await v.handleResponse({req:e,nextConfig:A,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:U,responseGenerator:W,waitUntil:n.waitUntil,isMinimalMode:G});if(!q)return;if((null==a||null==(s=a.value)?void 0:s.kind)!==I.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",S?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),D&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,E.fromNodeOutgoingHttpHeaders)(a.value.headers);G&&q||i.delete(R.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,m.getCacheControlHeader)(a.cacheControl)),await (0,d.sendResponse)($,X,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof x.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:L,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:S})},!1,w),q)throw t;await (0,d.sendResponse)($,X,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=V.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||L,s=`${Z} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":s}),a.updateName(s),o&&o!==a&&(o.setAttribute("http.route",n),o.updateName(s))})()}};if(B&&H)await J(H,void 0);else{let t=V.getActiveScopeSpan();await V.withPropagatedContext(e.headers,()=>V.trace(p.BaseServerSpan.handleRequest,{spanName:`${Z} ${h}`,kind:i.SpanKind.SERVER,attributes:{"http.method":Z,"http.target":e.url}},e=>J(e,t)),void 0,!B)}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:h,workUnitAsyncStorage:O})},"routeModule",0,v,"serverHooks",0,g,"workAsyncStorage",0,h,"workUnitAsyncStorage",0,O])},298876,e=>{"use strict";let t={minimax:{name:"MiniMax",baseUrl:"https://api.minimax.cn/v1",model:"MiniMax-M3.1-Flash",envPrefix:"MINIMAX",consoleUrl:"https://platform.minimax.cn"},glm:{name:"智谱 GLM",baseUrl:"https://open.bigmodel.cn/api/paas/v4",model:"glm-5.3-flash",envPrefix:"GLM",consoleUrl:"https://open.bigmodel.cn"},deepseek:{name:"DeepSeek",baseUrl:"https://api.deepseek.com",model:"deepseek-flash",envPrefix:"DEEPSEEK",consoleUrl:"https://platform.deepseek.com"},kimi:{name:"Kimi",baseUrl:"https://api.moonshot.cn/v1",model:"kimi-k3",envPrefix:"KIMI",consoleUrl:"https://platform.kimi.com"}},r=Object.keys(t);e.s(["VENDOR_PRESETS",0,t,"VENDOR_PROVIDER_IDS",0,r,"isVendorProvider",0,function(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(t,e)},"resolveVendorConfig",0,function(e,r){let n=t[e];return{apiKey:r?.apiKey||"",baseUrl:r?.baseUrl||n.baseUrl,model:r?.model||n.model}}])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let i={message:e};return n&&(i.code=n),a&&(i.details=a),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},798003,e=>{"use strict";var t=e.i(522734),r=e.i(814747),n=e.i(50377),a=e.i(376025),i=e.i(298876);let o=(0,n.createLogger)("config"),s=r.default.join(process.env.CONFIG_DIR||r.default.join(process.cwd(),"config"),"app-config.json"),l={aiProvider:process.env.AI_PROVIDER||"minimax",allowRegistration:!0,timeZone:a.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-6.1-sol"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},...Object.fromEntries(i.VENDOR_PROVIDER_IDS.map(e=>{let t=i.VENDOR_PRESETS[e].envPrefix;return[e,{apiKey:process.env[`${t}_API_KEY`],baseUrl:process.env[`${t}_BASE_URL`],model:process.env[`${t}_MODEL`]}]})),prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function c(e,t){return Object.fromEntries(i.VENDOR_PROVIDER_IDS.map(r=>[r,{...e[r],...t[r]}]))}function p(){if(t.default.existsSync(s))try{var e;let r=t.default.readFileSync(s,"utf-8"),n=JSON.parse(r),i=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){o.info("Detected legacy OpenAI config, migrating to multi-instance format..."),i=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let t={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-6.1-sol"};return{instances:[t],activeInstanceId:t.id}}(n.openai);let e={...n,openai:i};t.default.writeFileSync(s,JSON.stringify(e,null,2)),o.info("Legacy OpenAI config migrated successfully")}return{...l,...n,timeZone:(0,a.isValidTimeZone)(n.timeZone)?n.timeZone.trim():a.DEFAULT_TIME_ZONE,openai:{instances:i?.instances||l.openai?.instances||[],activeInstanceId:i?.activeInstanceId||l.openai?.activeInstanceId},gemini:{...l.gemini,...n.gemini},azure:{...l.azure,...n.azure},anthropic:{...l.anthropic,...n.anthropic},...c(l,n),prompts:{...l.prompts,...n.prompts},timeouts:{...l.timeouts,...n.timeouts}}}catch(e){o.error({error:e},"Failed to read config file")}return l}e.s(["getActiveOpenAIConfig",0,function(){let e=p(),t=e.openai?.instances||[],r=e.openai?.activeInstanceId;if(r&&0!==t.length)return t.find(e=>e.id===r)},"getAppConfig",0,p,"getAppTimeZone",0,function(){return p().timeZone||a.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,a.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let r=p(),n={...r,...e,timeZone:e.timeZone?.trim()??r.timeZone??a.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??r.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??r.openai?.activeInstanceId},gemini:{...r.gemini,...e.gemini},azure:{...r.azure,...e.azure},anthropic:{...r.anthropic,...e.anthropic},...c(r,e),prompts:{...r.prompts,...e.prompts},timeouts:{...r.timeouts,...e.timeouts}};try{return t.default.writeFileSync(s,JSON.stringify(n,null,2)),n}catch(e){throw o.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,i=t[e],o=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,s;if(i<o)return;let l=new Date;"string"==typeof t?(a={},s=t):(a=t,s=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...n,...a,msg:s});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__18atlj8._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[951615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},902157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},347299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},761095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},750227,(e,r,o)=>{r.exports=e.x("node:path",()=>require("node:path"))},59639,(e,r,o)=>{r.exports=e.x("node:process",()=>require("node:process"))},857764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},812057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},727028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},325897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__18c7l6u._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0cmxmwt._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(520442)))},730249,e=>{e.v(e=>Promise.resolve().then(()=>e(405898)))},539811,e=>{"use strict";var r=e.i(376025);e.s(["calculateGrade",0,function(e,t,n=new Date,l="en",i=r.DEFAULT_TIME_ZONE){let a=(0,r.getCalendarDate)(n,i),s=a.getFullYear(),o=a.getMonth()+1,u=s-t,h="2nd";o>=9?(u+=1,h="1st"):h=o<2?"1st":"2nd";let d="zh"===l,f=d?"1st"===h?"上期":"下期":"1st"===h?"1st Semester":"2nd Semester",g=(d?{primary:["一年级","二年级","三年级","四年级","五年级","六年级"],junior_high:["初一","初二","初三"],senior_high:["高一","高二","高三"],university:["大一","大二","大三","大四"]}:{primary:["Grade 1","Grade 2","Grade 3","Grade 4","Grade 5","Grade 6"],junior_high:["Junior High Grade 1","Junior High Grade 2","Junior High Grade 3"],senior_high:["Senior High Grade 1","Senior High Grade 2","Senior High Grade 3"],university:["Freshman","Sophomore","Junior","Senior"]})[e]||[],c=`${u}`;if(c=u>0&&u<=g.length?g[u-1]:u>g.length?d?"已毕业":"Graduated":d?"学前":"Pre-school",!d)return`${c}, ${f}`;{let e="1st"===h?"上":"下";return`${c}${e}`}}])},655920,e=>{"use strict";e.s(["getDefaultPaperLevel",0,function(e){return"number"!=typeof e||!Number.isInteger(e)||e<1||e>5?null:e<=3?"a":"b"}])},288993,e=>{"use strict";let r=/^[【[((]?图示/u;function t(e){return(function(e){let t=[],n=!1,l=!1;for(let i of e.split(/\r?\n/)){let e=i.trim();e?n&&r.test(e)&&(l=!0):l=!1,l||t.push(i),e&&(n=!0)}return t.join("\n")})(e.normalize("NFC")).replace(/[\uFF01-\uFF5E]/g,e=>String.fromCharCode(e.charCodeAt(0)-65248)).replace(/\\underline\{[^}]*\}|_{2,}/g,"__").replace(/\s+/gu," ").replace(/\( ?\)/g,"()").trim()}e.s(["DEFAULT_QUESTION_DUPLICATE_THRESHOLD",0,90,"calculateQuestionSimilarity",0,function(e,r){let n=t(e),l=t(r);if(!n||!l)return null;if(n===l)return 1;let i=Array.from(n),a=Array.from(l),s=Math.max(i.length,a.length),o=0;for(;o<Math.min(i.length,a.length)&&i[o]===a[o];)o++;let u=i.length,h=a.length;for(;u>o&&h>o&&i[u-1]===a[h-1];)u--,h--;i=i.slice(o,u),a=a.slice(o,h),i.length>a.length&&([i,a]=[a,i]);let d=Int32Array.from({length:i.length+1},(e,r)=>r);for(let e=1;e<=a.length;e++){let r=d[0];d[0]=e;for(let t=1;t<=i.length;t++){let n=d[t];d[t]=Math.min(n+1,d[t-1]+1,r+ +(i[t-1]!==a[e-1])),r=n}}return 1-d[i.length]/s},"duplicateQuestionSimilarity",0,function(e,r,n=90){let l=t(e),i=t(r);if(!l||!i||n>=100)return null;if(l===i)return 1;let a=Array.from(l),s=Array.from(i);a.length>s.length&&([a,s]=[s,a]);let o=s.length,u=Math.ceil(o*(1e4-Math.round(100*n))/1e4)-1;if(s.length-a.length>u||0===u)return null;let h=u+1,d=new Int32Array(a.length+1).fill(h),f=new Int32Array(a.length+1).fill(h);for(let e=0;e<=Math.min(a.length,u);e++)d[e]=e;for(let e=1;e<=s.length;e++){let r=Math.max(1,e-u),t=Math.min(a.length,e+u);f[0]=e<=u?e:h,r>1&&(f[r-1]=h);let n=f[0];for(let l=r;l<=t;l++)f[l]=Math.min(d[l]+1,f[l-1]+1,d[l-1]+ +(a[l-1]!==s[e-1])),n=Math.min(n,f[l]);if(n>u)return null;t<a.length&&(f[t+1]=h),[d,f]=[f,d]}let g=d[a.length];return g<=u?1-g/o:null}])},141070,e=>{"use strict";let r="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",t=RegExp(`^[${r}]{6}$`);e.s(["BASE58_ALPHABET",0,r,"SHORT_ID_LENGTH",0,6,"isShortId",0,function(e){return"string"==typeof e&&t.test(e)}])},92366,e=>{"use strict";var r=e.i(254799),t=e.i(141070);async function n(e){for(let n=0;n<10;n++){let n=function(){let e="";for(;e.length<t.SHORT_ID_LENGTH;)for(let n of(0,r.randomBytes)(2*t.SHORT_ID_LENGTH))n<232&&e.length<t.SHORT_ID_LENGTH&&(e+=t.BASE58_ALPHABET[n%58]);return e}();if(!await e.errorItem.findUnique({where:{shortId:n},select:{id:!0}}))return n}throw Error("Failed to generate a unique short ID")}e.s(["generateUniqueShortId",0,n])},204083,e=>{"use strict";var r=e.i(698043);async function t(e,n,l=r.prisma){if(!e||!n)return null;let i=await l.knowledgeTag.findMany({where:{subject:n,isSystem:!0,parentId:null},select:{id:!0,name:!0}});if(0===i.length)return null;let a=e.trim(),s=i.find(e=>e.name===a);if(s)return s.id;let o="";for(let[e,r]of Object.entries({一年级:"一年级","Grade 1":"一年级",二年级:"二年级","Grade 2":"二年级",三年级:"三年级","Grade 3":"三年级",四年级:"四年级","Grade 4":"四年级",五年级:"五年级","Grade 5":"五年级",六年级:"六年级","Grade 6":"六年级",初一:"七年级","Grade 7":"七年级",七年级:"七年级",初二:"八年级","Grade 8":"八年级",八年级:"八年级",初三:"九年级","Grade 9":"九年级",九年级:"九年级",高一:"高一","Grade 10":"高一","Senior 1":"高一",高二:"高二","Grade 11":"高二","Senior 2":"高二",高三:"高三","Grade 12":"高三","Senior 3":"高三"}))if(a.includes(e)){o=r;break}if(!o)return null;let u="";a.includes("上")||a.includes("1st")||a.includes("First")?u="上":(a.includes("下")||a.includes("2nd")||a.includes("Second"))&&(u="下");let h=[];for(let e of(u&&h.push(`${o}${u}`),h.push(o),h)){let r=i.find(r=>r.name===e);if(r)return r.id}return null}e.s(["findParentTagIdForGrade",0,t])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__18zrkky._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},28191,e=>e.a(async(t,r)=>{try{var n=e.i(89171),a=e.i(757660),s=e.i(79832),o=e.i(181912),i=e.i(50377),l=t([s]);[s]=l.then?(await l)():l;let d=(0,i.createLogger)("frontend-logs");async function u(e){let t=await (0,a.getServerSession)(s.authOptions);if(!t?.user)return(0,o.unauthorized)("Authentication required");try{let r=await e.json(),a=(Array.isArray(r.logs)?r.logs:[r]).slice(0,50);for(let r of a){let{level:n,prefix:a,context:s={},timestamp:o,url:i,userAgent:l}=r,u=String(r.message??"").slice(0,2e3),c={source:"frontend",prefix:a,url:i||e.headers.get("referer"),userAgent:l||e.headers.get("user-agent"),clientTime:o,...s,userId:t.user.id};switch(n){case"error":d.error(c,u);break;case"warn":d.warn(c,u);break;default:d.info(c,u)}}return n.NextResponse.json({success:!0,count:a.length})}catch(e){return d.error({error:e},"Failed to process frontend log"),n.NextResponse.json({success:!1},{status:500})}}e.s(["POST",0,u,"runtime",0,"nodejs"]),r()}catch(e){r(e)}},!1),163927,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),R=e.i(570101),x=e.i(626937),E=e.i(10372),h=e.i(193695),f=e.i(509580);e.i(52474);var g=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/logs/frontend/route",pathname:"/api/logs/frontend",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/logs/frontend/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(28191),...{}}),{workAsyncStorage:N,workUnitAsyncStorage:O,serverHooks:A}=v;async function I(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),v.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let N="/api/logs/frontend/route";N=N.replace(/\/index$/,"")||"/";let O=await v.prepare(e,t,{srcPage:N,multiZoneDraftMode:!1});if(!O)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:A,deploymentId:I,params:m,nextConfig:T,parsedUrl:_,isDraftMode:w,prerenderManifest:D,routerServerContext:S,isOnDemandRevalidate:y,revalidateOnlyGenerated:C,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:U}=O,P=(0,i.normalizeAppPath)(N),L=!!D.routes[b]&&(v.isDev||(0,f.isRouteCacheOwner)(b,v.cacheOwner,D.routes[b])),j=!!(D.dynamicRoutes[P]||L),F=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,_,!1):t.end("This page could not be found"),null);if(j&&!w){let e=D.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(T.adapterPath)return await F();throw new h.NoFallbackError}}let k=null;!j||v.isDev||w||(k="/index"===(k=b)?"/":k);let H=!0===v.isDev||!j,M=j&&!H;U&&q&&(0,o.setManifestsSingleton)({page:N,clientReferenceManifest:q,serverActionsManifest:U});let B=e.method||"GET",G=(0,s.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==S?void 0:S.isWrappedByNextServer),Q=!!(0,a.getRequestMeta)(e,"minimalMode"),X=(0,a.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,T,D,Q);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let $={params:m,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:w,supportsDynamicResponse:H,incrementalCache:X,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>v.onRequestError(e,t,n,a,S)},sharedContext:{buildId:A,deploymentId:I}},z=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&y&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await v.handle(Z,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let s=$.renderOpts.pendingWaitUntil;s&&n.waitUntil&&(n.waitUntil(s),s=void 0);let o=$.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(z,W,a,s),null;{let e=await a.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(a.headers);o&&(t[E.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:y})},!1,S),t}},Y=async(a,o)=>{try{var i,l;let a=await v.handleResponse({req:e,nextConfig:T,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:y,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:n.waitUntil,isMinimalMode:Q});if(!j)return;if((null==a||null==(i=a.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",y?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,R.fromNodeOutgoingHttpHeaders)(a.value.headers);Q&&j||s.delete(E.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,x.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)(z,W,new Response(a.value.body,{headers:s,status:a.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:y})},!1,S),j)throw t;await (0,p.sendResponse)(z,W,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:s.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||P,i=`${B} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":i}),a.updateName(i),o&&o!==a&&(o.setAttribute("http.route",n),o.updateName(i))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${N}`,kind:s.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,I,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:O})},"routeModule",0,v,"serverHooks",0,A,"workAsyncStorage",0,N,"workUnitAsyncStorage",0,O])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let s={message:e};return n&&(s.code=n),a&&(s.details=a),t.NextResponse.json(s,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,s=t[e],o=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,i;if(s<o)return;let l=new Date;"string"==typeof t?(a={},i=t):(a=t,i=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...n,...a,msg:i});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__19vj8qy._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},794770,e=>e.a(async(t,r)=>{try{var n=e.i(89171),a=e.i(698043),i=e.i(79832),o=e.i(757660),s=e.i(798003),c=e.i(376025),l=e.i(181912),p=e.i(50377),u=t([i]);[i]=u.then?(await u)():u;let E=(0,p.createLogger)("api:stats:practice");async function d(e){let t=await (0,o.getServerSession)(i.authOptions);if(!t||!t.user)return(0,l.unauthorized)();let r=t.user.id;try{let e=await a.prisma.practiceRecord.groupBy({by:["subject"],where:{userId:r},_count:{id:!0}}),t=new Date,i=(0,s.getAppTimeZone)(),o=await a.prisma.practiceRecord.findMany({where:{userId:r,createdAt:{gte:(0,c.getMonthStart)(t,i,-5)}},select:{createdAt:!0,isCorrect:!0,difficulty:!0}}),l={};for(let e=5;e>=0;e--)l[(0,c.formatDateTime)((0,c.getMonthStart)(t,i,-e),"yyyy-MM",i)]={total:0,correct:0};o.forEach(e=>{let t=(0,c.formatDateTime)(e.createdAt,"yyyy-MM",i);if(l[t]){l[t].total++,e.isCorrect&&l[t].correct++;let r=e.difficulty||"Unknown";l[t][r]=(l[t][r]||0)+1}});let p=Object.entries(l).map(([e,t])=>({date:e,...t})).sort((e,t)=>e.date.localeCompare(t.date)),u=await a.prisma.practiceRecord.groupBy({by:["difficulty"],where:{userId:r},_count:{id:!0}}),d=await a.prisma.practiceRecord.count({where:{userId:r}}),E=await a.prisma.practiceRecord.count({where:{userId:r,isCorrect:!0}});return n.NextResponse.json({subjectStats:e.map(e=>({name:e.subject||"Unknown",value:e._count.id})),activityStats:p,difficultyStats:u.map(e=>({name:e.difficulty||"Unknown",value:e._count.id})),overallStats:{total:d,correct:E,rate:d>0?(E/d*100).toFixed(1):0}})}catch(e){return E.error({error:e},"Error fetching practice stats"),(0,l.internalError)("Failed to fetch stats")}}e.s(["GET",0,d]),r()}catch(e){r(e)}},!1),284225,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),i=e.i(561916),o=e.i(174677),s=e.i(869741),c=e.i(316795),l=e.i(487718),p=e.i(995169),u=e.i(47587),d=e.i(666012),E=e.i(570101),m=e.i(626937),f=e.i(10372),R=e.i(193695),x=e.i(509580);e.i(52474);var v=e.i(600220);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/stats/practice/route",pathname:"/api/stats/practice",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/stats/practice/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(794770),...{}}),{workAsyncStorage:h,workUnitAsyncStorage:O,serverHooks:g}=I;async function _(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),I.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let h="/api/stats/practice/route";h=h.replace(/\/index$/,"")||"/";let O=await I.prepare(e,t,{srcPage:h,multiZoneDraftMode:!1});if(!O)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:g,deploymentId:_,params:N,nextConfig:A,parsedUrl:y,isDraftMode:D,prerenderManifest:T,routerServerContext:S,isOnDemandRevalidate:w,revalidateOnlyGenerated:U,resolvedPathname:b,clientReferenceManifest:P,serverActionsManifest:C}=O,M=(0,s.normalizeAppPath)(h),L=!!T.routes[b]&&(I.isDev||(0,x.isRouteCacheOwner)(b,I.cacheOwner,T.routes[b])),q=!!(T.dynamicRoutes[M]||L),F=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,y,!1):t.end("This page could not be found"),null);if(q&&!D){let e=T.dynamicRoutes[M];if(e&&!1===e.fallback&&!L){if(A.adapterPath)return await F();throw new R.NoFallbackError}}let j=null;!q||I.isDev||D||(j="/index"===(j=b)?"/":j);let k=!0===I.isDev||!q,K=q&&!k;C&&P&&(0,o.setManifestsSingleton)({page:h,clientReferenceManifest:P,serverActionsManifest:C});let Z=e.method||"GET",V=(0,i.getTracer)(),H=V.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),G=!!(0,a.getRequestMeta)(e,"minimalMode"),z=(0,a.getRequestMeta)(e,"incrementalCache")||await I.getIncrementalCache(e,A,T,G);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let Y={params:N,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:D,supportsDynamicResponse:k,incrementalCache:z,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>I.onRequestError(e,t,n,a,S)},sharedContext:{buildId:g,deploymentId:_}},$=new c.NodeNextRequest(e),X=new c.NodeNextResponse(t),Q=l.NextRequestAdapter.fromNodeNextRequest($,(0,l.signalFromNodeResponse)(t)),W=async({previousCacheEntry:r})=>{try{if(!G&&w&&U&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await I.handle(Q,Y);e.fetchMetrics=Y.renderOpts.fetchMetrics;let i=Y.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let o=Y.renderOpts.collectedTags;if(!q)return await (0,d.sendResponse)($,X,a,i),null;{let e=await a.blob(),t=(0,E.toNodeOutgoingHttpHeaders)(a.headers);o&&(t[f.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,n=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:Y.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:h,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:w})},!1,S),t}},J=async(a,o)=>{try{var s,c;let a=await I.handleResponse({req:e,nextConfig:A,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:U,responseGenerator:W,waitUntil:n.waitUntil,isMinimalMode:G});if(!q)return;if((null==a||null==(s=a.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",w?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),D&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,E.fromNodeOutgoingHttpHeaders)(a.value.headers);G&&q||i.delete(f.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,m.getCacheControlHeader)(a.cacheControl)),await (0,d.sendResponse)($,X,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof R.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:w})},!1,S),q)throw t;await (0,d.sendResponse)($,X,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=V.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||M,s=`${Z} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":s}),a.updateName(s),o&&o!==a&&(o.setAttribute("http.route",n),o.updateName(s))})()}};if(B&&H)await J(H,void 0);else{let t=V.getActiveScopeSpan();await V.withPropagatedContext(e.headers,()=>V.trace(p.BaseServerSpan.handleRequest,{spanName:`${Z} ${h}`,kind:i.SpanKind.SERVER,attributes:{"http.method":Z,"http.target":e.url}},e=>J(e,t)),void 0,!B)}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:h,workUnitAsyncStorage:O})},"routeModule",0,I,"serverHooks",0,g,"workAsyncStorage",0,h,"workUnitAsyncStorage",0,O])},298876,e=>{"use strict";let t={minimax:{name:"MiniMax",baseUrl:"https://api.minimax.cn/v1",model:"MiniMax-M3.1-Flash",envPrefix:"MINIMAX",consoleUrl:"https://platform.minimax.cn"},glm:{name:"智谱 GLM",baseUrl:"https://open.bigmodel.cn/api/paas/v4",model:"glm-5.3-flash",envPrefix:"GLM",consoleUrl:"https://open.bigmodel.cn"},deepseek:{name:"DeepSeek",baseUrl:"https://api.deepseek.com",model:"deepseek-flash",envPrefix:"DEEPSEEK",consoleUrl:"https://platform.deepseek.com"},kimi:{name:"Kimi",baseUrl:"https://api.moonshot.cn/v1",model:"kimi-k3",envPrefix:"KIMI",consoleUrl:"https://platform.kimi.com"}},r=Object.keys(t);e.s(["VENDOR_PRESETS",0,t,"VENDOR_PROVIDER_IDS",0,r,"isVendorProvider",0,function(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(t,e)},"resolveVendorConfig",0,function(e,r){let n=t[e];return{apiKey:r?.apiKey||"",baseUrl:r?.baseUrl||n.baseUrl,model:r?.model||n.model}}])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let i={message:e};return n&&(i.code=n),a&&(i.details=a),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},798003,e=>{"use strict";var t=e.i(522734),r=e.i(814747),n=e.i(50377),a=e.i(376025),i=e.i(298876);let o=(0,n.createLogger)("config"),s=r.default.join(process.env.CONFIG_DIR||r.default.join(process.cwd(),"config"),"app-config.json"),c={aiProvider:process.env.AI_PROVIDER||"minimax",allowRegistration:!0,timeZone:a.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-6.1-sol"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},...Object.fromEntries(i.VENDOR_PROVIDER_IDS.map(e=>{let t=i.VENDOR_PRESETS[e].envPrefix;return[e,{apiKey:process.env[`${t}_API_KEY`],baseUrl:process.env[`${t}_BASE_URL`],model:process.env[`${t}_MODEL`]}]})),prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function l(e,t){return Object.fromEntries(i.VENDOR_PROVIDER_IDS.map(r=>[r,{...e[r],...t[r]}]))}function p(){if(t.default.existsSync(s))try{var e;let r=t.default.readFileSync(s,"utf-8"),n=JSON.parse(r),i=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){o.info("Detected legacy OpenAI config, migrating to multi-instance format..."),i=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let t={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-6.1-sol"};return{instances:[t],activeInstanceId:t.id}}(n.openai);let e={...n,openai:i};t.default.writeFileSync(s,JSON.stringify(e,null,2)),o.info("Legacy OpenAI config migrated successfully")}return{...c,...n,timeZone:(0,a.isValidTimeZone)(n.timeZone)?n.timeZone.trim():a.DEFAULT_TIME_ZONE,openai:{instances:i?.instances||c.openai?.instances||[],activeInstanceId:i?.activeInstanceId||c.openai?.activeInstanceId},gemini:{...c.gemini,...n.gemini},azure:{...c.azure,...n.azure},anthropic:{...c.anthropic,...n.anthropic},...l(c,n),prompts:{...c.prompts,...n.prompts},timeouts:{...c.timeouts,...n.timeouts}}}catch(e){o.error({error:e},"Failed to read config file")}return c}e.s(["getActiveOpenAIConfig",0,function(){let e=p(),t=e.openai?.instances||[],r=e.openai?.activeInstanceId;if(r&&0!==t.length)return t.find(e=>e.id===r)},"getAppConfig",0,p,"getAppTimeZone",0,function(){return p().timeZone||a.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,a.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let r=p(),n={...r,...e,timeZone:e.timeZone?.trim()??r.timeZone??a.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??r.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??r.openai?.activeInstanceId},gemini:{...r.gemini,...e.gemini},azure:{...r.azure,...e.azure},anthropic:{...r.anthropic,...e.anthropic},...l(r,e),prompts:{...r.prompts,...e.prompts},timeouts:{...r.timeouts,...e.timeouts}};try{return t.default.writeFileSync(s,JSON.stringify(n,null,2)),n}catch(e){throw o.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,i=t[e],o=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,s;if(i<o)return;let c=new Date;"string"==typeof t?(a={},s=t):(a=t,s=r||"");{let t=JSON.stringify({level:e,time:c.toISOString(),...n,...a,msg:s});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1aaux7e._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var r=e.i(463021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},449719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(r,t)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),t()}catch(e){t(e)}},!0),500874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},427699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},522734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},921517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},524836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},145706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},792509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},224361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},406461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},298876,e=>{"use strict";let r={minimax:{name:"MiniMax",baseUrl:"https://api.minimax.cn/v1",model:"MiniMax-M3.1-Flash",envPrefix:"MINIMAX",consoleUrl:"https://platform.minimax.cn"},glm:{name:"智谱 GLM",baseUrl:"https://open.bigmodel.cn/api/paas/v4",model:"glm-5.3-flash",envPrefix:"GLM",consoleUrl:"https://open.bigmodel.cn"},deepseek:{name:"DeepSeek",baseUrl:"https://api.deepseek.com",model:"deepseek-flash",envPrefix:"DEEPSEEK",consoleUrl:"https://platform.deepseek.com"},kimi:{name:"Kimi",baseUrl:"https://api.moonshot.cn/v1",model:"kimi-k3",envPrefix:"KIMI",consoleUrl:"https://platform.kimi.com"}},t=Object.keys(r);e.s(["VENDOR_PRESETS",0,r,"VENDOR_PROVIDER_IDS",0,t,"isVendorProvider",0,function(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(r,e)},"resolveVendorConfig",0,function(e,t){let n=r[e];return{apiKey:t?.apiKey||"",baseUrl:t?.baseUrl||n.baseUrl,model:t?.model||n.model}}])},181912,e=>{"use strict";var r=e.i(89171);let t={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,t,n,i){let s={message:e};return n&&(s.code=n),i&&(s.details=i),r.NextResponse.json(s,{status:t})}e.s(["ErrorCode",0,t,"badRequest",0,function(e,r){return n(e,400,t.BAD_REQUEST,r)},"conflict",0,function(e){return n(e,409,t.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,t.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,t.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,t.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,t.UNAUTHORIZED)},"validationError",0,function(e,r){return n(e,400,t.VALIDATION_ERROR,r)}])},926828,e=>{"use strict";let r=(0,e.i(50377).createLogger)("background-tasks"),t=globalThis,n=t.__backgroundTasks??=new Map,i=0;function s(e){for(let[r,t]of n)t.finishedAt&&e-Date.parse(t.finishedAt)>18e5&&n.delete(r)}function o(e){let t=Date.now();s(t);let o=`${t.toString(36)}-${(i++).toString(36)}`,a={id:o,userId:e.userId,kind:e.kind,subject:e.subject??null,status:"running",progress:void 0!==e.total?{done:0,total:e.total,failed:0}:null,error:null,link:e.link??null,startedAt:new Date(t).toISOString(),finishedAt:null};n.set(o,a);let l=(e,r)=>{"running"===a.status&&(a.status=e,a.error=r,a.finishedAt=new Date().toISOString())};return{id:o,setProgress:(e,r,t)=>{a.progress={done:e,total:r??a.progress?.total??e,failed:t??a.progress?.failed??0}},succeed:()=>l("succeeded",null),fail:e=>{let t;l("failed",((t=e instanceof Error?e.message:String(e)).startsWith("AI_")?t.split(":")[0]:t).slice(0,200)),r.debug({taskId:o,kind:a.kind,error:a.error},"Background task failed")}}}async function a(e,r){let t=o(e);try{let e=await r(t);return t.succeed(),e}catch(e){throw t.fail(e),e}}e.s(["clearFinishedBackgroundTasks",0,function(e){for(let[r,t]of n)t.userId===e&&"running"!==t.status&&n.delete(r)},"describeQuestion",0,function(e){let r=(e.questionText??"").replace(/\$+/g,"").replace(/\\[a-zA-Z]+|[{}\\]/g," ").replace(/[#*>`|_-]+/g," ").replace(/\s+/g," ").replace(/\s*([,。;:?!、])\s*/g,"$1").trim(),t=r.length>24?`${r.slice(0,24)}…`:r;return[e.shortId,t].filter(Boolean).join(" ")||"—"},"listBackgroundTasks",0,function(e){s(Date.now());let r=[...n.values()].filter(r=>r.userId===e);return[...r.filter(e=>"running"===e.status).sort((e,r)=>e.startedAt.localeCompare(r.startedAt)),...r.filter(e=>"running"!==e.status).sort((e,r)=>(r.finishedAt??"").localeCompare(e.finishedAt??"")).slice(0,30)].map(e=>({id:e.id,kind:e.kind,subject:e.subject,status:e.status,progress:e.progress&&{...e.progress},error:e.error,link:e.link,startedAt:e.startedAt,finishedAt:e.finishedAt}))},"startBackgroundTask",0,o,"trackBackgroundTask",0,a])},798003,e=>{"use strict";var r=e.i(522734),t=e.i(814747),n=e.i(50377),i=e.i(376025),s=e.i(298876);let o=(0,n.createLogger)("config"),a=t.default.join(process.env.CONFIG_DIR||t.default.join(process.cwd(),"config"),"app-config.json"),l={aiProvider:process.env.AI_PROVIDER||"minimax",allowRegistration:!0,timeZone:i.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-6.1-sol"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},...Object.fromEntries(s.VENDOR_PROVIDER_IDS.map(e=>{let r=s.VENDOR_PRESETS[e].envPrefix;return[e,{apiKey:process.env[`${r}_API_KEY`],baseUrl:process.env[`${r}_BASE_URL`],model:process.env[`${r}_MODEL`]}]})),prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function c(e,r){return Object.fromEntries(s.VENDOR_PROVIDER_IDS.map(t=>[t,{...e[t],...r[t]}]))}function p(){if(r.default.existsSync(a))try{var e;let t=r.default.readFileSync(a,"utf-8"),n=JSON.parse(t),s=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){o.info("Detected legacy OpenAI config, migrating to multi-instance format..."),s=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let r={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let r=16*Math.random()|0;return("x"===e?r:3&r|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-6.1-sol"};return{instances:[r],activeInstanceId:r.id}}(n.openai);let e={...n,openai:s};r.default.writeFileSync(a,JSON.stringify(e,null,2)),o.info("Legacy OpenAI config migrated successfully")}return{...l,...n,timeZone:(0,i.isValidTimeZone)(n.timeZone)?n.timeZone.trim():i.DEFAULT_TIME_ZONE,openai:{instances:s?.instances||l.openai?.instances||[],activeInstanceId:s?.activeInstanceId||l.openai?.activeInstanceId},gemini:{...l.gemini,...n.gemini},azure:{...l.azure,...n.azure},anthropic:{...l.anthropic,...n.anthropic},...c(l,n),prompts:{...l.prompts,...n.prompts},timeouts:{...l.timeouts,...n.timeouts}}}catch(e){o.error({error:e},"Failed to read config file")}return l}e.s(["getActiveOpenAIConfig",0,function(){let e=p(),r=e.openai?.instances||[],t=e.openai?.activeInstanceId;if(t&&0!==r.length)return r.find(e=>e.id===t)},"getAppConfig",0,p,"getAppTimeZone",0,function(){return p().timeZone||i.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,i.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let t=p(),n={...t,...e,timeZone:e.timeZone?.trim()??t.timeZone??i.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??t.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??t.openai?.activeInstanceId},gemini:{...t.gemini,...e.gemini},azure:{...t.azure,...e.azure},anthropic:{...t.anthropic,...e.anthropic},...c(t,e),prompts:{...t.prompts,...e.prompts},timeouts:{...t.timeouts,...e.timeouts}};try{return r.default.writeFileSync(a,JSON.stringify(n,null,2)),n}catch(e){throw o.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,n={}){let i,s=r[e],o=(i=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[i]?r[i]:r.info;return(r,t)=>{let i,a;if(s<o)return;let l=new Date;"string"==typeof r?(i={},a=r):(i=r,a=t||"");{let r=JSON.stringify({level:e,time:l.toISOString(),...n,...i,msg:a});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let n=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1cceu4b._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},183526,e=>e.a(async(t,r)=>{try{var a=e.i(89171),n=e.i(698043),s=e.i(79832),i=e.i(757660),o=e.i(181912),l=e.i(50377),u=t([s]);[s]=u.then?(await u)():u;let d=(0,l.createLogger)("api:stats:practice:clear");async function c(e){let t=await (0,i.getServerSession)(s.authOptions);if(!t||!t.user)return(0,o.unauthorized)();let r=t.user.id;try{let e=await n.prisma.practiceRecord.deleteMany({where:{userId:r}});return a.NextResponse.json({message:"Practice history cleared successfully",count:e.count})}catch(e){return d.error({error:e},"Error clearing practice stats"),(0,o.internalError)("Failed to clear stats")}}e.s(["DELETE",0,c]),r()}catch(e){r(e)}},!1),144307,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),R=e.i(570101),E=e.i(626937),x=e.i(10372),h=e.i(193695),f=e.i(509580);e.i(52474);var v=e.i(600220);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/stats/practice/clear/route",pathname:"/api/stats/practice/clear",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/stats/practice/clear/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(183526),...{}}),{workAsyncStorage:O,workUnitAsyncStorage:g,serverHooks:I}=N;async function m(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let O="/api/stats/practice/clear/route";O=O.replace(/\/index$/,"")||"/";let g=await N.prepare(e,t,{srcPage:O,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:I,deploymentId:m,params:A,nextConfig:T,parsedUrl:_,isDraftMode:w,prerenderManifest:D,routerServerContext:y,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:U}=g,P=(0,o.normalizeAppPath)(O),L=!!D.routes[b]&&(N.isDev||(0,f.isRouteCacheOwner)(b,N.cacheOwner,D.routes[b])),F=!!(D.dynamicRoutes[P]||L),j=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,_,!1):t.end("This page could not be found"),null);if(F&&!w){let e=D.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(T.adapterPath)return await j();throw new h.NoFallbackError}}let k=null;!F||N.isDev||w||(k="/index"===(k=b)?"/":k);let M=!0===N.isDev||!F,H=F&&!M;U&&q&&(0,i.setManifestsSingleton)({page:O,clientReferenceManifest:q,serverActionsManifest:U});let B=e.method||"GET",G=(0,s.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==y?void 0:y.isWrappedByNextServer),Q=!!(0,n.getRequestMeta)(e,"minimalMode"),X=(0,n.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,T,D,Q);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let $={params:A,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:w,supportsDynamicResponse:M,incrementalCache:X,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>N.onRequestError(e,t,a,n,y)},sharedContext:{buildId:I,deploymentId:m}},z=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&S&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await N.handle(Z,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let s=$.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let i=$.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)(z,W,n,s),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[x.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=x.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),t}},Y=async(n,i)=>{try{var o,l;let n=await N.handleResponse({req:e,nextConfig:T,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:a.waitUntil,isMinimalMode:Q});if(!F)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",S?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,R.fromNodeOutgoingHttpHeaders)(n.value.headers);Q&&F||s.delete(x.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,E.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(z,W,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),F)throw t;await (0,p.sendResponse)(z,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${B} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(c.BaseServerSpan.handleRequest,{spanName:`${B} ${O}`,kind:s.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,m,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:g})},"routeModule",0,N,"serverHooks",0,I,"workAsyncStorage",0,O,"workUnitAsyncStorage",0,g])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function a(e,r,a,n){let s={message:e};return a&&(s.code=a),n&&(s.details=n),t.NextResponse.json(s,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return a(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return a(e,409,r.CONFLICT)},"createErrorResponse",0,a,"forbidden",0,function(e="Forbidden"){return a(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return a(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return a(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return a(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return a(e,400,r.VALIDATION_ERROR,t)}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,s=t[e],i=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(s<i)return;let l=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1cn6rlb._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},224240,e=>e.a(async(t,r)=>{try{var a=e.i(89171),s=e.i(698043),n=e.i(79832),i=e.i(757660),o=e.i(50377),l=t([n]);[n]=l.then?(await l)():l;let d=(0,o.createLogger)("api:tags:suggestions");async function u(e){try{let t,r=await (0,i.getServerSession)(n.authOptions),{searchParams:o}=new URL(e.url),l=o.get("q")?.toLowerCase()||"",u=o.get("subject")||void 0,d=o.get("stage")||void 0;r?.user?.email&&(t=await s.prisma.user.findUnique({where:{email:r.user.email},select:{id:!0}}));let p={...u?{subject:u}:{},OR:[{isSystem:!0},...t?[{userId:t.id}]:[]]},c=await s.prisma.knowledgeTag.findMany({where:p,select:{id:!0,name:!0,parentId:!0,userId:!0,isSystem:!0,children:{select:{id:!0}}}}),g=new Map;c.forEach(e=>g.set(e.id,e));let x=c.filter(e=>0===e.children.length);if(d){let e={primary:["一年级","二年级","三年级","四年级","五年级","六年级"],junior_high:["七年级","八年级","九年级"],senior_high:["高一","高二","高三"]}[d];e&&(x=x.filter(t=>{if(!t.isSystem)return!0;let r=t;for(;r.parentId&&g.get(r.parentId);)r=g.get(r.parentId);return e.some(e=>r.name.includes(e))}))}l&&(x=x.filter(e=>e.name.toLowerCase().includes(l)));let h=x.slice(0,30).map(e=>e.name);return a.NextResponse.json({suggestions:h,total:x.length})}catch(e){return d.error({error:e},"Error getting tag suggestions"),a.NextResponse.json({message:"Failed to get tag suggestions"},{status:500})}}e.s(["GET",0,u]),r()}catch(e){r(e)}},!1),778962,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),s=e.i(759756),n=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),p=e.i(47587),c=e.i(666012),g=e.i(570101),x=e.i(626937),h=e.i(10372),f=e.i(193695),m=e.i(509580);e.i(52474);var v=e.i(600220);let R=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/tags/suggestions/route",pathname:"/api/tags/suggestions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/tags/suggestions/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(224240),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:y,serverHooks:E}=R;async function b(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),R.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/tags/suggestions/route";w=w.replace(/\/index$/,"")||"/";let y=await R.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,deploymentId:b,params:q,nextConfig:C,parsedUrl:S,isDraftMode:A,prerenderManifest:T,routerServerContext:O,isOnDemandRevalidate:N,revalidateOnlyGenerated:P,resolvedPathname:j,clientReferenceManifest:_,serverActionsManifest:I}=y,k=(0,o.normalizeAppPath)(w),H=!!T.routes[j]&&(R.isDev||(0,m.isRouteCacheOwner)(j,R.cacheOwner,T.routes[j])),D=!!(T.dynamicRoutes[k]||H),M=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!A){let e=T.dynamicRoutes[k];if(e&&!1===e.fallback&&!H){if(C.adapterPath)return await M();throw new f.NoFallbackError}}let U=null;!D||R.isDev||A||(U="/index"===(U=j)?"/":U);let L=!0===R.isDev||!D,F=D&&!L;I&&_&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:_,serverActionsManifest:I});let B=e.method||"GET",G=(0,n.getTracer)(),K=G.getActiveScopeSpan(),$=!!(null==O?void 0:O.isWrappedByNextServer),V=!!(0,s.getRequestMeta)(e,"minimalMode"),z=(0,s.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,C,T,V);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let X={params:q,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:A,supportsDynamicResponse:L,incrementalCache:z,hmrRefreshHash:(0,s.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>R.onRequestError(e,t,a,s,O)},sharedContext:{buildId:E,deploymentId:b}},J=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(J,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!V&&N&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await R.handle(Z,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let n=X.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let i=X.renderOpts.collectedTags;if(!D)return await (0,c.sendResponse)(J,W,s,n),null;{let e=await s.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(s.headers);i&&(t[h.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=h.INFINITE_CACHE?!1!==r&&r>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:N})},!1,O),t}},Y=async(s,i)=>{try{var o,l;let s=await R.handleResponse({req:e,nextConfig:C,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:P,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:V});if(!D)return;if((null==s||null==(o=s.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==s||null==(l=s.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",N?"REVALIDATED":s.isMiss?"MISS":s.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,g.fromNodeOutgoingHttpHeaders)(s.value.headers);V&&D||n.delete(h.NEXT_CACHE_TAGS_HEADER),!s.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,x.getCacheControlHeader)(s.cacheControl)),await (0,c.sendResponse)(J,W,new Response(s.value.body,{headers:n,status:s.value.status||200}));return}catch(t){if(t instanceof f.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:N})},!1,O),D)throw t;await (0,c.sendResponse)(J,W,new Response(null,{status:500}));return}finally{(()=>{if(!s)return;let e=t.statusCode;s.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(s.setStatus({code:n.SpanStatusCode.ERROR}),s.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||k,o=`${B} ${a}`;s.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),s.updateName(o),i&&i!==s&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if($&&K)await Y(K,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${w}`,kind:n.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!$)}}e.s(["handler",0,b,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:y})},"routeModule",0,R,"serverHooks",0,E,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,y])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let s,n=t[e],i=(s=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[s]?t[s]:t.info;return(t,r)=>{let s,o;if(n<i)return;let l=new Date;"string"==typeof t?(s={},o=t):(s=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...s,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1csfdxc._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},709814,e=>e.a(async(t,r)=>{try{var n=e.i(89171),a=e.i(757660),s=e.i(79832),i=e.i(698043),o=e.i(258078),u=e.i(181912),l=e.i(50377),d=t([s]);[s]=d.then?(await d)():d;let p=(0,l.createLogger)("api:admin:users");async function c(){let e=await (0,a.getServerSession)(s.authOptions);if(!(0,o.requireAdmin)(e))return(0,u.forbidden)("Admin access required");try{let e=await i.prisma.user.findMany({orderBy:{createdAt:"desc"},select:{id:!0,name:!0,email:!0,role:!0,isActive:!0,createdAt:!0,_count:{select:{errorItems:!0,practiceRecords:!0}}}});return n.NextResponse.json(e)}catch(e){return p.error({error:e},"Error fetching users"),(0,u.internalError)("Failed to fetch users")}}e.s(["GET",0,c]),r()}catch(e){r(e)}},!1),866129,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),u=e.i(316795),l=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),R=e.i(570101),x=e.i(626937),E=e.i(10372),h=e.i(193695),f=e.i(509580);e.i(52474);var v=e.i(600220);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/admin/users/route",pathname:"/api/admin/users",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/admin/users/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(709814),...{}}),{workAsyncStorage:O,workUnitAsyncStorage:m,serverHooks:g}=N;async function A(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),N.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let O="/api/admin/users/route";O=O.replace(/\/index$/,"")||"/";let m=await N.prepare(e,t,{srcPage:O,multiZoneDraftMode:!1});if(!m)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:g,deploymentId:A,params:I,nextConfig:T,parsedUrl:_,isDraftMode:w,prerenderManifest:D,routerServerContext:y,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:U}=m,P=(0,o.normalizeAppPath)(O),L=!!D.routes[b]&&(N.isDev||(0,f.isRouteCacheOwner)(b,N.cacheOwner,D.routes[b])),F=!!(D.dynamicRoutes[P]||L),j=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,_,!1):t.end("This page could not be found"),null);if(F&&!w){let e=D.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(T.adapterPath)return await j();throw new h.NoFallbackError}}let k=null;!F||N.isDev||w||(k="/index"===(k=b)?"/":k);let M=!0===N.isDev||!F,H=F&&!M;U&&q&&(0,i.setManifestsSingleton)({page:O,clientReferenceManifest:q,serverActionsManifest:U});let B=e.method||"GET",G=(0,s.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==y?void 0:y.isWrappedByNextServer),Q=!!(0,a.getRequestMeta)(e,"minimalMode"),X=(0,a.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,T,D,Q);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let $={params:I,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:w,supportsDynamicResponse:M,incrementalCache:X,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>N.onRequestError(e,t,n,a,y)},sharedContext:{buildId:g,deploymentId:A}},W=new u.NodeNextRequest(e),z=new u.NodeNextResponse(t),Z=l.NextRequestAdapter.fromNodeNextRequest(W,(0,l.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&S&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await N.handle(Z,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let s=$.renderOpts.pendingWaitUntil;s&&n.waitUntil&&(n.waitUntil(s),s=void 0);let i=$.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)(W,z,a,s),null;{let e=await a.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(a.headers);i&&(t[E.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),t}},Y=async(a,i)=>{try{var o,u;let a=await N.handleResponse({req:e,nextConfig:T,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:n.waitUntil,isMinimalMode:Q});if(!F)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(u=a.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",S?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,R.fromNodeOutgoingHttpHeaders)(a.value.headers);Q&&F||s.delete(E.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,x.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)(W,z,new Response(a.value.body,{headers:s,status:a.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),F)throw t;await (0,p.sendResponse)(W,z,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:s.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||P,o=`${B} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":o}),a.updateName(o),i&&i!==a&&(i.setAttribute("http.route",n),i.updateName(o))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${O}`,kind:s.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:m})},"routeModule",0,N,"serverHooks",0,g,"workAsyncStorage",0,O,"workUnitAsyncStorage",0,m])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let s={message:e};return n&&(s.code=n),a&&(s.details=a),t.NextResponse.json(s,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},258078,e=>{"use strict";e.s(["requireAdmin",0,function(e){var t;return!!e&&(t=e.user,t?.role==="admin")}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,s=t[e],i=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,o;if(s<i)return;let u=new Date;"string"==typeof t?(a={},o=t):(a=t,o=r||"");{let t=JSON.stringify({level:e,time:u.toISOString(),...n,...a,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1ezwxao._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},627157,e=>e.a(async(t,r)=>{try{var a=e.i(79832),n=e.i(757660),s=t([a]);[a]=s.then?(await s)():s;let i=(0,n.default)(a.authOptions);e.s(["GET",0,i,"POST",0,i]),r()}catch(e){r(e)}},!1),703413,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),p=e.i(47587),c=e.i(666012),x=e.i(570101),h=e.i(626937),v=e.i(10372),f=e.i(193695),g=e.i(509580);e.i(52474);var R=e.i(600220);let m=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/auth/[...nextauth]/route",pathname:"/api/auth/[...nextauth]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/auth/[...nextauth]/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(627157),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:y,serverHooks:E}=m;async function b(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),m.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/auth/[...nextauth]/route";w=w.replace(/\/index$/,"")||"/";let y=await m.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,deploymentId:b,params:q,nextConfig:C,parsedUrl:S,isDraftMode:A,prerenderManifest:T,routerServerContext:O,isOnDemandRevalidate:P,revalidateOnlyGenerated:N,resolvedPathname:_,clientReferenceManifest:k,serverActionsManifest:j}=y,H=(0,o.normalizeAppPath)(w),I=!!T.routes[_]&&(m.isDev||(0,g.isRouteCacheOwner)(_,m.cacheOwner,T.routes[_])),D=!!(T.dynamicRoutes[H]||I),M=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!A){let e=T.dynamicRoutes[H];if(e&&!1===e.fallback&&!I){if(C.adapterPath)return await M();throw new f.NoFallbackError}}let U=null;!D||m.isDev||A||(U="/index"===(U=_)?"/":U);let L=!0===m.isDev||!D,B=D&&!L;j&&k&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:k,serverActionsManifest:j});let F=e.method||"GET",G=(0,s.getTracer)(),K=G.getActiveScopeSpan(),$=!!(null==O?void 0:O.isWrappedByNextServer),V=!!(0,n.getRequestMeta)(e,"minimalMode"),z=(0,n.getRequestMeta)(e,"incrementalCache")||await m.getIncrementalCache(e,C,T,V);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let X={params:q,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:A,supportsDynamicResponse:L,incrementalCache:z,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>m.onRequestError(e,t,a,n,O)},sharedContext:{buildId:E,deploymentId:b}},J=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(J,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!V&&P&&N&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await m.handle(Z,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let s=X.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let i=X.renderOpts.collectedTags;if(!D)return await (0,c.sendResponse)(J,W,n,s),null;{let e=await n.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[v.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?C.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await m.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:P})},!1,O),t}},Y=async(n,i)=>{try{var o,l;let n=await m.handleResponse({req:e,nextConfig:C,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:N,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:V});if(!D)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",P?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,x.fromNodeOutgoingHttpHeaders)(n.value.headers);V&&D||s.delete(v.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,h.getCacheControlHeader)(n.cacheControl)),await (0,c.sendResponse)(J,W,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof f.NoFallbackError||await m.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:P})},!1,O),D)throw t;await (0,c.sendResponse)(J,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||H,o=`${F} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if($&&K)await Y(K,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>Y(e,t)),void 0,!$)}}e.s(["handler",0,b,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:y})},"routeModule",0,m,"serverHooks",0,E,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,y])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,s=t[e],i=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(s<i)return;let l=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1g1wi9i._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[463021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},698043,e=>{"use strict";var t=e.i(463021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},644950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},145706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},293586,e=>e.a(async(t,r)=>{try{var n=e.i(89171),a=e.i(469719),i=e.i(181912),s=e.i(63856),o=e.i(50377),l=e.i(698043),u=e.i(288993),c=t([s]);[s]=c.then?(await c)():c;let p=(0,o.createLogger)("api:error-items:similarity"),h=a.z.object({ids:a.z.tuple([a.z.string().min(1).max(200),a.z.string().min(1).max(200)])}).refine(({ids:e})=>e[0]!==e[1],{message:"Select two different questions"});async function d(e){try{let t=await (0,s.getCurrentUser)();if(!t)return(0,i.unauthorized)();let r=h.safeParse(await e.json());if(!r.success)return(0,i.validationError)("Invalid question selection",r.error.issues);let a=await l.prisma.errorItem.findMany({where:{userId:t.id,id:{in:r.data.ids}},select:{id:!0,shortId:!0,questionText:!0,ocrText:!0,subject:{select:{name:!0}}}});if(2!==a.length)return(0,i.notFound)("Item not found");let o=r.data.ids.map(e=>a.find(t=>t.id===e)),c=o.map(e=>e.questionText?.trim()||e.ocrText?.trim()||""),d=(0,u.calculateQuestionSimilarity)(c[0],c[1]);if(null===d)return(0,i.badRequest)("Question text is required for similarity comparison");let p=t.questionDuplicateThreshold??u.DEFAULT_QUESTION_DUPLICATE_THRESHOLD;return n.NextResponse.json({similarity:d,threshold:p,duplicate:null!==(0,u.duplicateQuestionSimilarity)(c[0],c[1],p),items:o.map((e,t)=>({id:e.id,shortId:e.shortId,questionText:c[t],notebookName:e.subject?.name??null}))})}catch(e){return p.error({error:e},"相似度比较失败"),(0,i.internalError)("Failed to compare questions")}}e.s(["POST",0,d]),r()}catch(e){r(e)}},!1),835460,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),i=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),f=e.i(10372),m=e.i(193695),x=e.i(509580);e.i(52474);var E=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/error-items/similarity/route",pathname:"/api/error-items/similarity",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/error-items/similarity/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(293586),...{}}),{workAsyncStorage:v,workUnitAsyncStorage:O,serverHooks:N}=g;async function I(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),g.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/error-items/similarity/route";v=v.replace(/\/index$/,"")||"/";let O=await g.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!O)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:N,deploymentId:I,params:T,nextConfig:A,parsedUrl:y,isDraftMode:_,prerenderManifest:w,routerServerContext:S,isOnDemandRevalidate:D,revalidateOnlyGenerated:C,resolvedPathname:q,clientReferenceManifest:b,serverActionsManifest:U}=O,L=(0,o.normalizeAppPath)(v),P=!!w.routes[q]&&(g.isDev||(0,x.isRouteCacheOwner)(q,g.cacheOwner,w.routes[q])),F=!!(w.dynamicRoutes[L]||P),M=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,y,!1):t.end("This page could not be found"),null);if(F&&!_){let e=w.dynamicRoutes[L];if(e&&!1===e.fallback&&!P){if(A.adapterPath)return await M();throw new m.NoFallbackError}}let j=null;!F||g.isDev||_||(j="/index"===(j=q)?"/":j);let H=!0===g.isDev||!F,k=F&&!H;U&&b&&(0,s.setManifestsSingleton)({page:v,clientReferenceManifest:b,serverActionsManifest:U});let B=e.method||"GET",Q=(0,i.getTracer)(),z=Q.getActiveScopeSpan(),G=!!(null==S?void 0:S.isWrappedByNextServer),V=!!(0,a.getRequestMeta)(e,"minimalMode"),K=(0,a.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,A,w,V);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let X={params:T,previewProps:w.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:_,supportsDynamicResponse:H,incrementalCache:K,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>g.onRequestError(e,t,n,a,S)},sharedContext:{buildId:N,deploymentId:I}},$=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest($,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!V&&D&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await g.handle(Z,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let i=X.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let s=X.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)($,W,a,i),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,n=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:D})},!1,S),t}},Y=async(a,s)=>{try{var o,l;let a=await g.handleResponse({req:e,nextConfig:A,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:w,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:n.waitUntil,isMinimalMode:V});if(!F)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",D?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),_&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,h.fromNodeOutgoingHttpHeaders)(a.value.headers);V&&F||i.delete(f.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,R.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)($,W,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof m.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:L,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:D})},!1,S),F)throw t;await (0,p.sendResponse)($,W,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=Q.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||L,o=`${B} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":o}),a.updateName(o),s&&s!==a&&(s.setAttribute("http.route",n),s.updateName(o))})()}};if(G&&z)await Y(z,void 0);else{let t=Q.getActiveScopeSpan();await Q.withPropagatedContext(e.headers,()=>Q.trace(c.BaseServerSpan.handleRequest,{spanName:`${B} ${v}`,kind:i.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!G)}}e.s(["handler",0,I,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:O})},"routeModule",0,g,"serverHooks",0,N,"workAsyncStorage",0,v,"workUnitAsyncStorage",0,O])},181912,e=>{"use strict";var t=e.i(89171);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let i={message:e};return n&&(i.code=n),a&&(i.details=a),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},63856,e=>e.a(async(t,r)=>{try{var n=e.i(757660),a=e.i(79832),i=e.i(698043),s=t([a]);async function o(){let e=await (0,n.getServerSession)(a.authOptions);return e?.user?.email?i.prisma.user.findUnique({where:{email:e.user.email}}):null}[a]=s.then?(await s)():s,e.s(["getCurrentUser",0,o]),r()}catch(e){r(e)}},!1),50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,i=t[e],s=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,o;if(i<s)return;let l=new Date;"string"==typeof t?(a={},o=t):(a=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...n,...a,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])},288993,e=>{"use strict";let t=/^[【[((]?图示/u;function r(e){return(function(e){let r=[],n=!1,a=!1;for(let i of e.split(/\r?\n/)){let e=i.trim();e?n&&t.test(e)&&(a=!0):a=!1,a||r.push(i),e&&(n=!0)}return r.join("\n")})(e.normalize("NFC")).replace(/[\uFF01-\uFF5E]/g,e=>String.fromCharCode(e.charCodeAt(0)-65248)).replace(/\\underline\{[^}]*\}|_{2,}/g,"__").replace(/\s+/gu," ").replace(/\( ?\)/g,"()").trim()}e.s(["DEFAULT_QUESTION_DUPLICATE_THRESHOLD",0,90,"calculateQuestionSimilarity",0,function(e,t){let n=r(e),a=r(t);if(!n||!a)return null;if(n===a)return 1;let i=Array.from(n),s=Array.from(a),o=Math.max(i.length,s.length),l=0;for(;l<Math.min(i.length,s.length)&&i[l]===s[l];)l++;let u=i.length,c=s.length;for(;u>l&&c>l&&i[u-1]===s[c-1];)u--,c--;i=i.slice(l,u),s=s.slice(l,c),i.length>s.length&&([i,s]=[s,i]);let d=Int32Array.from({length:i.length+1},(e,t)=>t);for(let e=1;e<=s.length;e++){let t=d[0];d[0]=e;for(let r=1;r<=i.length;r++){let n=d[r];d[r]=Math.min(n+1,d[r-1]+1,t+ +(i[r-1]!==s[e-1])),t=n}}return 1-d[i.length]/o},"duplicateQuestionSimilarity",0,function(e,t,n=90){let a=r(e),i=r(t);if(!a||!i||n>=100)return null;if(a===i)return 1;let s=Array.from(a),o=Array.from(i);s.length>o.length&&([s,o]=[o,s]);let l=o.length,u=Math.ceil(l*(1e4-Math.round(100*n))/1e4)-1;if(o.length-s.length>u||0===u)return null;let c=u+1,d=new Int32Array(s.length+1).fill(c),p=new Int32Array(s.length+1).fill(c);for(let e=0;e<=Math.min(s.length,u);e++)d[e]=e;for(let e=1;e<=o.length;e++){let t=Math.max(1,e-u),r=Math.min(s.length,e+u);p[0]=e<=u?e:c,t>1&&(p[t-1]=c);let n=p[0];for(let a=t;a<=r;a++)p[a]=Math.min(d[a]+1,p[a-1]+1,d[a-1]+ +(s[a-1]!==o[e-1])),n=Math.min(n,p[a]);if(n>u)return null;r<s.length&&(p[r+1]=c),[d,p]=[p,d]}let h=d[s.length];return h<=u?1-h/l:null}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1gmc_uw._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[485685,e=>{e.v(e=>Promise.resolve().then(()=>e(254799)))},79955,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(t=>e.l(t))).then(()=>t(835611)))},146735,e=>{e.v(t=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(t=>e.l(t))).then(()=>t(583085)))},791961,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(t=>e.l(t))).then(()=>t(312111)))},672331,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0tdibjz._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(t=>e.l(t))).then(()=>t(520442)))},297072,e=>e.a(async(t,r)=>{try{var a=e.i(89171),n=e.i(698043),i=e.i(79832),s=e.i(757660),o=e.i(843911),l=e.i(181912),u=e.i(50377),c=e.i(926828),d=t([i]);[i]=d.then?(await d)():d;let h=(0,u.createLogger)("api:practice:generate");async function p(e){let t=await (0,s.getServerSession)(i.authOptions);if(!t?.user)return(0,l.unauthorized)("Authentication required");try{let{errorItemId:r,language:i,difficulty:s}=await e.json(),u=await n.prisma.errorItem.findUnique({where:{id:r},include:{subject:!0}});if(!u||u.userId!==t.user.id)return(0,l.notFound)("Item not found");let d=[];try{d=JSON.parse(u.knowledgePoints||"[]")}catch(e){d=[]}let p=(0,o.getAIService)(),h=await (0,c.trackBackgroundTask)({userId:t.user.id,kind:"practice",subject:(0,c.describeQuestion)(u),link:`/error-items/${r}`},()=>p.generateSimilarQuestion(u.questionText||"",d,i,s||"medium",u.gradeSemester,u.figureSvg)),v=u.subject?.name||"其他";return h.subject=["数学","物理","化学","生物","英语","语文","历史","地理","政治","其他"].includes(v)?v:"其他",a.NextResponse.json(h)}catch(t){h.error({error:t},"Error generating practice");let e=t instanceof Error?t.message:"Failed to generate practice question";return(0,l.internalError)(e)}}e.s(["POST",0,p]),r()}catch(e){r(e)}},!1),989034,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),v=e.i(626937),R=e.i(10372),g=e.i(193695),m=e.i(509580);e.i(52474);var f=e.i(600220);let w=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/practice/generate/route",pathname:"/api/practice/generate",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/practice/generate/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(297072),...{}}),{workAsyncStorage:_,workUnitAsyncStorage:E,serverHooks:C}=w;async function x(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/practice/generate/route";_=_.replace(/\/index$/,"")||"/";let E=await w.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:C,deploymentId:x,params:y,nextConfig:A,parsedUrl:P,isDraftMode:S,prerenderManifest:b,routerServerContext:T,isOnDemandRevalidate:k,revalidateOnlyGenerated:N,resolvedPathname:O,clientReferenceManifest:q,serverActionsManifest:j}=E,I=(0,o.normalizeAppPath)(_),H=!!b.routes[O]&&(w.isDev||(0,m.isRouteCacheOwner)(O,w.cacheOwner,b.routes[O])),M=!!(b.dynamicRoutes[I]||H),U=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,P,!1):t.end("This page could not be found"),null);if(M&&!S){let e=b.dynamicRoutes[I];if(e&&!1===e.fallback&&!H){if(A.adapterPath)return await U();throw new g.NoFallbackError}}let D=null;!M||w.isDev||S||(D="/index"===(D=O)?"/":D);let F=!0===w.isDev||!M,K=M&&!F;j&&q&&(0,s.setManifestsSingleton)({page:_,clientReferenceManifest:q,serverActionsManifest:j});let L=e.method||"GET",$=(0,i.getTracer)(),B=$.getActiveScopeSpan(),G=!!(null==T?void 0:T.isWrappedByNextServer),z=!!(0,n.getRequestMeta)(e,"minimalMode"),V=(0,n.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,A,b,z);null==V||V.resetRequestCache(),globalThis.__incrementalCache=V;let X={params:y,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:S,supportsDynamicResponse:F,incrementalCache:V,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>w.onRequestError(e,t,a,n,T)},sharedContext:{buildId:C,deploymentId:x}},Q=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(Q,(0,u.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!z&&k&&N&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await w.handle(J,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let i=X.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let s=X.renderOpts.collectedTags;if(!M)return await (0,p.sendResponse)(Q,W,n,i),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[R.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=R.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:k})},!1,T),t}},Y=async(n,s)=>{try{var o,l;let n=await w.handleResponse({req:e,nextConfig:A,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:N,responseGenerator:Z,waitUntil:a.waitUntil,isMinimalMode:z});if(!M)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==f.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});z||t.setHeader("x-nextjs-cache",k?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,h.fromNodeOutgoingHttpHeaders)(n.value.headers);z&&M||i.delete(R.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,v.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(Q,W,new Response(n.value.body,{headers:i,status:n.value.status||200}));return}catch(t){if(t instanceof g.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:k})},!1,T),M)throw t;await (0,p.sendResponse)(Q,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:i.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||I,o=`${L} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),s&&s!==n&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(G&&B)await Y(B,void 0);else{let t=$.getActiveScopeSpan();await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${_}`,kind:i.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>Y(e,t)),void 0,!G)}}e.s(["handler",0,x,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:E})},"routeModule",0,w,"serverHooks",0,C,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,E])},730249,e=>{e.v(e=>Promise.resolve().then(()=>e(405898)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__1h09r50._.js.map
|