wrong-notebook 2026.10.22-2 → 2026.10.22-3
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/build-manifest.json +8 -8
- package/.next/prerender-manifest.json +4 -4
- 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 +2 -2
- package/.next/server/app/api/admin/dashboard/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/migrate-tags/route.js +2 -2
- package/.next/server/app/api/admin/migrate-tags/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/system-reset/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- package/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/admin/users/route.js +2 -2
- package/.next/server/app/api/admin/users/route.js.nft.json +1 -1
- package/.next/server/app/api/ai/models/route.js +2 -2
- package/.next/server/app/api/ai/models/route.js.nft.json +1 -1
- package/.next/server/app/api/ai/test/route.js +2 -2
- package/.next/server/app/api/ai/test/route.js.nft.json +1 -1
- package/.next/server/app/api/analytics/route.js +2 -2
- package/.next/server/app/api/analytics/route.js.nft.json +1 -1
- package/.next/server/app/api/analyze/route.js +2 -2
- package/.next/server/app/api/analyze/route.js.nft.json +1 -1
- package/.next/server/app/api/auth/[...nextauth]/route.js +2 -2
- package/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/delete/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/image/route.js +2 -2
- package/.next/server/app/api/error-items/[id]/image/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/mastery/route.js +2 -2
- package/.next/server/app/api/error-items/[id]/mastery/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/notes/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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.nft.json +1 -1
- package/.next/server/app/api/error-items/[id]/svg-animation/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- package/.next/server/app/api/error-items/clear/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/list/route.js +2 -2
- package/.next/server/app/api/error-items/list/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/route.js +2 -2
- package/.next/server/app/api/error-items/route.js.nft.json +1 -1
- package/.next/server/app/api/error-items/short/[shortId]/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +4 -4
- package/.next/server/app/api/exams/[id]/results/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/retry/route.js +2 -2
- package/.next/server/app/api/exams/[id]/retry/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/exams/route.js +2 -2
- package/.next/server/app/api/exams/route.js.nft.json +1 -1
- package/.next/server/app/api/export/route.js +2 -2
- package/.next/server/app/api/export/route.js.nft.json +1 -1
- package/.next/server/app/api/geogebra-analyze/route.js +2 -2
- 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 +2 -2
- package/.next/server/app/api/import/route.js.nft.json +1 -1
- package/.next/server/app/api/logs/frontend/route.js +2 -2
- package/.next/server/app/api/logs/frontend/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/[id]/retag/route.js +2 -2
- package/.next/server/app/api/notebooks/[id]/retag/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/[id]/route.js +2 -2
- package/.next/server/app/api/notebooks/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/notebooks/route.js +2 -2
- package/.next/server/app/api/notebooks/route.js.nft.json +1 -1
- package/.next/server/app/api/openclaw/batch-upload/route.js +2 -2
- package/.next/server/app/api/openclaw/batch-upload/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/generate/route.js +2 -2
- package/.next/server/app/api/practice/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/record/[id]/route.js +2 -2
- package/.next/server/app/api/practice/record/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/practice/record/route.js +2 -2
- package/.next/server/app/api/practice/record/route.js.nft.json +1 -1
- package/.next/server/app/api/reanswer/route.js +2 -2
- 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 +2 -2
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/stats/practice/clear/route.js +2 -2
- package/.next/server/app/api/stats/practice/clear/route.js.nft.json +1 -1
- package/.next/server/app/api/stats/practice/route.js +2 -2
- package/.next/server/app/api/stats/practice/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/route.js +2 -2
- package/.next/server/app/api/tags/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/stats/route.js +2 -2
- package/.next/server/app/api/tags/stats/route.js.nft.json +1 -1
- package/.next/server/app/api/tags/suggestions/route.js +2 -2
- package/.next/server/app/api/tags/suggestions/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js +2 -2
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/user/route.js +2 -2
- 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/manifest.webmanifest.body +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/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]__0pot68n._.js +1 -1
- package/.next/server/chunks/[externals]__1735khz._.js +1 -1
- package/.next/server/chunks/[externals]_assert_1pwe1ri._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__00_hq9v._.js +6 -6
- package/.next/server/chunks/[root-of-the-server]__01bzczj._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__02j1w81._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__03nfvnm._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__04tyyvs._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__05s4wut._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__06_nln5._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__06h5afw._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__07jl92a._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0_t7bbz._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0akadps._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0be5c5r._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0bqawi0._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0bsw5c9._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0c59gc3._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0cmxmwt._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0d5dpu4._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0d9ijed._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0e22a4y._.js +10 -10
- package/.next/server/chunks/[root-of-the-server]__0fnyu4s._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0gp88gz._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0inxsnu._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0j5231l._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0jaawra._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0k-nf6a._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0k-p1pj._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0lrdm1u._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0lro5a7._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0m8p-6f._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0mfjf2y._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0mqorxb._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0no6umu._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0nqbham._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0o9gtvd._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0obb4y-._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0p3u6_q._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0rk_yxy._.js +3 -3
- package/.next/server/chunks/[root-of-the-server]__0rmrkd_._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0tdibjz._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0u58zap._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0vhjihq._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0vz88er._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0wf9znr._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0yc8r2x._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0zv7jom._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__11_-ncy._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__11_1z7m._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__11n87go._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__11p4ahb._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__122xu-0._.js +9 -9
- package/.next/server/chunks/[root-of-the-server]__131taws._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__13ebiit._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1413v0e._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__14dnbrn._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__14jqm9_._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__152lbaw._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__15tkoe6._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__16begv4._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__17duis5._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__17q3k-v._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__184u6de._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__18atlj8._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__18c7l6u._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__18zrkky._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__19vj8qy._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1_gkx5x._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1aaux7e._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1cceu4b._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1cn6rlb._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1csfdxc._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1ezwxao._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1g1wi9i._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1gmc_uw._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1h09r50._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1hpwwxw._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1j6mx-v._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1jdi-1f._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1jtd2ar._.js +2 -2
- package/.next/server/chunks/[root-of-the-server]__1ju8z29._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1kpo44g._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1kqv61m._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1lct0vi._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1loecue._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1m4-ab6._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1mkpya8._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1nmtv65._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1nwf3ua._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1oup682._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1p8hw44._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1pplzr1._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1rsn804._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1sdtn83._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1u-1vx4._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1v6nwhq._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1vw740y._.js +9 -9
- package/.next/server/chunks/[root-of-the-server]__20465pr._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__207mxv8._.js +1 -1
- 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/_0_o8yhv._.js +1 -1
- package/.next/server/chunks/_0c5hvv3._.js +4 -4
- package/.next/server/chunks/_0ekrwj-._.js +6 -6
- package/.next/server/chunks/_0frix22._.js +4 -4
- package/.next/server/chunks/_0gwg6ba._.js +1 -1
- package/.next/server/chunks/_0gxi3zr._.js +1 -1
- package/.next/server/chunks/_0lz3t4l._.js +12 -12
- package/.next/server/chunks/_0rdo0a4._.js +1 -1
- package/.next/server/chunks/_0uxp3uh._.js +1 -1
- package/.next/server/chunks/_0x3ltk0._.js +6 -6
- 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/_167vv93._.js +1 -1
- 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/_1e1h1f1._.js +1 -1
- package/.next/server/chunks/_1ex6ovo._.js +1 -1
- package/.next/server/chunks/_1fgb9ve._.js +1 -1
- package/.next/server/chunks/_1flar98._.js +1 -1
- package/.next/server/chunks/_1m-yyz-._.js +1 -1
- 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/_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]_mastery_route_actions_1l5uan6.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 +2 -2
- 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]__0b8kewv._.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]__0icjezr._.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]__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/_062gk85._.js +3 -0
- package/.next/server/chunks/ssr/_07ls0n_._.js +1 -1
- package/.next/server/chunks/ssr/_0i9hwpv._.js +1 -1
- package/.next/server/chunks/ssr/_0idg05p._.js +3 -0
- 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/_17igtpd._.js +1 -1
- package/.next/server/chunks/ssr/_1gu1rou._.js +1 -1
- 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 +7 -7
- 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/02d-8f2qj7j3j.js +1 -0
- package/.next/static/chunks/02t7qqptint2p.js +1 -0
- package/.next/static/chunks/090a6irxe0c6j.js +1 -0
- package/.next/static/chunks/0bhxyq7e2eqjc.js +5 -0
- package/.next/static/chunks/0if-vqkhyn-zc.js +1 -0
- package/.next/static/chunks/0jf31atbtr1mv.js +1 -0
- package/.next/static/chunks/0vgthy7v615hq.js +1 -0
- package/.next/static/chunks/1e5n4cprhwujv.js +1 -0
- package/.next/static/chunks/1edfvwc5_eck-.js +31 -0
- package/.next/static/chunks/1f0u19gh5_49z.js +1 -0
- package/.next/static/chunks/1fdj59ys-pend.js +1 -0
- package/.next/static/chunks/1kerqdluzq2l0.js +1 -0
- package/.next/static/chunks/1r4lwlvm7m53v.js +1 -0
- package/.next/static/chunks/1rz1bokv9edzr.js +1 -0
- package/.next/static/chunks/1s-d67d-yroyw.js +1 -0
- package/.next/static/chunks/1tw5_upsy-qj_.js +22 -0
- package/.next/static/chunks/1w1xvldfmcs67.js +6 -0
- package/.next/static/chunks/1zdof8ylzqm8w.js +1 -0
- package/.next/static/chunks/2-k1hjh6ff6y4.js +1 -0
- package/.next/static/chunks/21qpve5q3mjly.js +1 -0
- package/.next/static/chunks/21v32ctwcoxqt.js +1 -0
- package/.next/static/chunks/27-t289uq6_ju.js +3 -0
- package/.next/static/chunks/293-te2b34thz.js +1 -0
- package/.next/static/chunks/2dgleoh5fbs83.js +1 -0
- package/.next/static/chunks/2di_nd6djcxwu.js +1 -0
- package/.next/static/chunks/2mk03owifu2m1.js +33 -0
- package/.next/static/chunks/2qza4p5d9fz_2.js +1 -0
- package/.next/static/chunks/2s4c8fcrdnew4.js +1 -0
- package/.next/static/chunks/2zdqnkem9n6a9.js +1 -0
- package/.next/static/chunks/3-wm04s--suy5.js +1 -0
- package/.next/static/chunks/33t46atd3n2zd.js +1 -0
- package/.next/static/chunks/37yx4gh09tzwc.js +1 -0
- package/.next/static/chunks/3_ymrkgcp90nl.js +191 -0
- package/.next/static/chunks/3gwb465dhjxo9.js +1 -0
- package/.next/static/chunks/3h1inei-ffe-t.js +1 -0
- package/.next/static/chunks/{130ch9mnvb6mp.css → 3n-yabfsiog4i.css} +1 -1
- package/.next/static/chunks/3umldi5zknsyi.js +1 -0
- package/.next/static/chunks/turbopack-1yjxh4vceobdr.js +1 -0
- package/.next/static/{xZpf28Jr6w9NoYOlVaWKI → lggRjZo2bfOA34ETpQH59}/_clientMiddlewareManifest.js +2 -2
- package/LICENSE +22 -0
- package/package.json +3 -2
- package/prisma/seed.db +0 -0
- package/public/icons/apple-touch-icon.png +0 -0
- package/public/icons/icon-192.png +0 -0
- package/public/icons/icon-512.png +0 -0
- package/public/icons/icon-maskable-512.png +0 -0
- package/public/offline.html +61 -0
- package/public/sw.js +84 -0
- package/.next/server/chunks/ssr/_12c20v5._.js +0 -3
- package/.next/server/chunks/ssr/_1filpif._.js +0 -3
- package/.next/static/chunks/00pn0o7lymln6.js +0 -1
- package/.next/static/chunks/02521degnqmf0.js +0 -1
- package/.next/static/chunks/0_w084ms_lq25.js +0 -22
- package/.next/static/chunks/0dzfsm6h13fyr.js +0 -1
- package/.next/static/chunks/0ehjiuuxbbhq9.js +0 -1
- package/.next/static/chunks/0iq53qkw5hvrs.js +0 -1
- package/.next/static/chunks/0m81l71kojx8j.js +0 -1
- package/.next/static/chunks/0nckb2-62ooyq.js +0 -1
- package/.next/static/chunks/0snej-v5yglxr.js +0 -1
- package/.next/static/chunks/1-7k9gbbjkcml.js +0 -1
- package/.next/static/chunks/17wdtw8hml2n6.js +0 -191
- package/.next/static/chunks/1cd32rtomdngh.js +0 -1
- package/.next/static/chunks/1io3-cth_2-cd.js +0 -1
- package/.next/static/chunks/1oiuiyv1cv06v.js +0 -31
- package/.next/static/chunks/1t4-pobw0y5cf.js +0 -1
- package/.next/static/chunks/1xg811762s1p1.js +0 -1
- package/.next/static/chunks/1z_5sj1wqi06v.js +0 -1
- package/.next/static/chunks/2a0kgntckcbvf.js +0 -1
- package/.next/static/chunks/2dlme2fdlkms6.js +0 -1
- package/.next/static/chunks/2f37cahijtel1.js +0 -1
- package/.next/static/chunks/2h-exsnhkfnb8.js +0 -1
- package/.next/static/chunks/2pmzqbg-qabof.js +0 -1
- package/.next/static/chunks/2rmhba08h4qqo.js +0 -33
- package/.next/static/chunks/2s07soqug65hc.js +0 -1
- package/.next/static/chunks/2vm3br71ud51j.js +0 -1
- package/.next/static/chunks/2w2uo9jjxt-re.js +0 -1
- package/.next/static/chunks/2yl8a-gxngbuq.js +0 -1
- package/.next/static/chunks/32bl-oqw9oso0.js +0 -1
- package/.next/static/chunks/35cov9g4cgt-v.js +0 -1
- package/.next/static/chunks/3b-g5_r9nto3s.js +0 -6
- package/.next/static/chunks/3g1rm2suowncy.js +0 -3
- package/.next/static/chunks/3helovsg02qr4.js +0 -1
- package/.next/static/chunks/3jta6jrk-jubq.js +0 -1
- package/.next/static/chunks/3yhf6xyypekz6.js +0 -1
- package/.next/static/chunks/3z9gc_02gl8n9.js +0 -1
- package/.next/static/chunks/427wg73nuzpiz.js +0 -5
- package/.next/static/chunks/turbopack-1-0r7_puvz3eq.js +0 -1
- /package/.next/static/{xZpf28Jr6w9NoYOlVaWKI → lggRjZo2bfOA34ETpQH59}/_buildManifest.js +0 -0
- /package/.next/static/{xZpf28Jr6w9NoYOlVaWKI → lggRjZo2bfOA34ETpQH59}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
+
<meta name="theme-color" content="#4f46e5">
|
|
7
|
+
<title>智能错题本</title>
|
|
8
|
+
<style>
|
|
9
|
+
:root { color-scheme: light dark; }
|
|
10
|
+
body {
|
|
11
|
+
margin: 0;
|
|
12
|
+
min-height: 100vh;
|
|
13
|
+
display: flex;
|
|
14
|
+
align-items: center;
|
|
15
|
+
justify-content: center;
|
|
16
|
+
font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
|
|
17
|
+
background: #f8fafc;
|
|
18
|
+
color: #0f172a;
|
|
19
|
+
}
|
|
20
|
+
main { max-width: 360px; padding: 32px 16px; text-align: center; }
|
|
21
|
+
img { width: 96px; height: 96px; border-radius: 22px; }
|
|
22
|
+
h1 { font-size: 20px; margin: 24px 0 8px; }
|
|
23
|
+
p { margin: 0 0 24px; color: #475569; line-height: 1.6; }
|
|
24
|
+
button {
|
|
25
|
+
border: 0;
|
|
26
|
+
border-radius: 8px;
|
|
27
|
+
padding: 10px 24px;
|
|
28
|
+
font-size: 16px;
|
|
29
|
+
color: #fff;
|
|
30
|
+
background: #4f46e5;
|
|
31
|
+
}
|
|
32
|
+
@media (prefers-color-scheme: dark) {
|
|
33
|
+
body { background: #0f172a; color: #f1f5f9; }
|
|
34
|
+
p { color: #94a3b8; }
|
|
35
|
+
}
|
|
36
|
+
</style>
|
|
37
|
+
</head>
|
|
38
|
+
<body>
|
|
39
|
+
<main>
|
|
40
|
+
<img src="/icons/icon-192.png" alt="">
|
|
41
|
+
<h1 id="title">无法连接到服务器</h1>
|
|
42
|
+
<p id="message">请检查网络连接,或确认错题本服务已启动,然后重试。</p>
|
|
43
|
+
<button id="retry" type="button">重试</button>
|
|
44
|
+
</main>
|
|
45
|
+
<script>
|
|
46
|
+
if (!/^zh/i.test(navigator.language || '')) {
|
|
47
|
+
document.documentElement.lang = 'en';
|
|
48
|
+
document.title = 'Wrong Notebook';
|
|
49
|
+
document.getElementById('title').textContent = 'Cannot reach the server';
|
|
50
|
+
document.getElementById('message').textContent = 'Check your network connection or make sure the Wrong Notebook server is running, then try again.';
|
|
51
|
+
document.getElementById('retry').textContent = 'Retry';
|
|
52
|
+
}
|
|
53
|
+
document.getElementById('retry').addEventListener('click', function () {
|
|
54
|
+
location.reload();
|
|
55
|
+
});
|
|
56
|
+
window.addEventListener('online', function () {
|
|
57
|
+
location.reload();
|
|
58
|
+
});
|
|
59
|
+
</script>
|
|
60
|
+
</body>
|
|
61
|
+
</html>
|
package/public/sw.js
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* 错题本 PWA Service Worker
|
|
3
|
+
*
|
|
4
|
+
* - 页面导航:始终走网络,断网时返回离线页 /offline.html
|
|
5
|
+
* - /_next/static、/icons:文件名带哈希或基本不变,缓存优先
|
|
6
|
+
* - API 与其他请求不经过缓存,保证数据始终来自服务器
|
|
7
|
+
*/
|
|
8
|
+
const VERSION = 'v1';
|
|
9
|
+
const STATIC_CACHE = `wrong-notebook-static-${VERSION}`;
|
|
10
|
+
const OFFLINE_URL = '/offline.html';
|
|
11
|
+
const PRECACHE = [OFFLINE_URL, '/icons/icon-192.png', '/icons/icon-512.png'];
|
|
12
|
+
/** 静态缓存最多保留的条目数,超出后删除最早写入的 */
|
|
13
|
+
const MAX_STATIC_ENTRIES = 300;
|
|
14
|
+
|
|
15
|
+
self.addEventListener('install', (event) => {
|
|
16
|
+
event.waitUntil(
|
|
17
|
+
caches.open(STATIC_CACHE)
|
|
18
|
+
.then((cache) => cache.addAll(PRECACHE))
|
|
19
|
+
.then(() => self.skipWaiting())
|
|
20
|
+
);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
self.addEventListener('activate', (event) => {
|
|
24
|
+
event.waitUntil(
|
|
25
|
+
caches.keys()
|
|
26
|
+
.then((keys) => Promise.all(
|
|
27
|
+
keys
|
|
28
|
+
.filter((key) => key.startsWith('wrong-notebook-') && key !== STATIC_CACHE)
|
|
29
|
+
.map((key) => caches.delete(key))
|
|
30
|
+
))
|
|
31
|
+
.then(() => self.clients.claim())
|
|
32
|
+
);
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
function isStaticAsset(url) {
|
|
36
|
+
return url.pathname.startsWith('/_next/static/') || url.pathname.startsWith('/icons/');
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
async function trimCache(cache) {
|
|
40
|
+
const keys = await cache.keys();
|
|
41
|
+
const excess = keys.length - MAX_STATIC_ENTRIES;
|
|
42
|
+
for (let i = 0; i < excess; i++) {
|
|
43
|
+
if (!keys[i].url.endsWith(OFFLINE_URL)) await cache.delete(keys[i]);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
async function cacheFirst(request) {
|
|
48
|
+
const cached = await caches.match(request);
|
|
49
|
+
if (cached) return cached;
|
|
50
|
+
const response = await fetch(request);
|
|
51
|
+
if (response.ok && response.type === 'basic') {
|
|
52
|
+
const cache = await caches.open(STATIC_CACHE);
|
|
53
|
+
await cache.put(request, response.clone());
|
|
54
|
+
trimCache(cache);
|
|
55
|
+
}
|
|
56
|
+
return response;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
async function networkWithOfflineFallback(request) {
|
|
60
|
+
try {
|
|
61
|
+
return await fetch(request);
|
|
62
|
+
} catch (error) {
|
|
63
|
+
const offline = await caches.match(OFFLINE_URL);
|
|
64
|
+
if (offline) return offline;
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
self.addEventListener('fetch', (event) => {
|
|
70
|
+
const { request } = event;
|
|
71
|
+
if (request.method !== 'GET') return;
|
|
72
|
+
|
|
73
|
+
const url = new URL(request.url);
|
|
74
|
+
if (url.origin !== self.location.origin) return;
|
|
75
|
+
|
|
76
|
+
if (request.mode === 'navigate') {
|
|
77
|
+
event.respondWith(networkWithOfflineFallback(request));
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if (isStaticAsset(url)) {
|
|
82
|
+
event.respondWith(cacheFirst(request));
|
|
83
|
+
}
|
|
84
|
+
});
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[33354,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},53722,a=>{"use strict";let b=(0,a.i(70106).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],53722)},39761,a=>{"use strict";let b=(0,a.i(70106).default)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);a.s(["BarChart3",0,b],39761)},16201,a=>{"use strict";let b=(0,a.i(70106).default)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);a.s(["CheckCircle",0,b],16201)},62722,a=>{"use strict";let b=(0,a.i(70106).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,b],62722)},84505,a=>{"use strict";let b=(0,a.i(70106).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);a.s(["Download",0,b],84505)},41379,a=>{"use strict";let b=(0,a.i(70106).default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);a.s(["EyeOff",0,b],41379)},77156,a=>{"use strict";let b=(0,a.i(70106).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],77156)},4720,a=>{"use strict";let b=(0,a.i(70106).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],4720)},33836,a=>{"use strict";let b=(0,a.i(70106).default)("languages",[["path",{d:"m5 8 6 6",key:"1wu5hv"}],["path",{d:"m4 14 6-6 2-3",key:"1k1g8d"}],["path",{d:"M2 5h12",key:"or177f"}],["path",{d:"M7 2h1",key:"1t2jsx"}],["path",{d:"m22 22-5-10-5 10",key:"don7ne"}],["path",{d:"M14 18h6",key:"1m8k6r"}]]);a.s(["Languages",0,b],33836)},15618,a=>{"use strict";let b=(0,a.i(70106).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",0,b],15618)},69520,a=>{"use strict";let b=(0,a.i(70106).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],69520)},87654,a=>{"use strict";let b=(0,a.i(70106).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],87654)},46842,a=>{"use strict";let b=(0,a.i(70106).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);a.s(["User",0,b],46842)},42027,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(96221),e=a.i(99570),f=a.i(66718),g=a.i(70430),h=a.i(50194),i=a.i(91938),j=a.i(30534);a.s(["DuplicateThresholdSetting",0,function({onSaved:a}){let{t:k}=(0,h.useLanguage)(),[l,m]=(0,c.useState)(String(90)),[n,o]=(0,c.useState)(null),[p,q]=(0,c.useState)(!0),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null),v=Number(l),w=""!==l.trim()&&Number.isFinite(v)&&v>=1&&v<=100&&1e-6>Math.abs(100*v-Math.round(100*v)),x=(0,c.useCallback)(async()=>{q(!0),u(null);try{let a=(await i.apiClient.get("/api/user")).questionDuplicateThreshold??90;m(String(a)),o(a)}catch(a){u(k.importFlow.thresholdLoadFailed),j.frontendLogger.error("[Settings]","加载判重阈值失败",{error:a instanceof Error?a.message:String(a)})}finally{q(!1)}},[k.importFlow.thresholdLoadFailed]);(0,c.useEffect)(()=>{x()},[x]);let y=async()=>{if(w&&null!==n){s(!0),u(null);try{let b=(await i.apiClient.patch("/api/user",{questionDuplicateThreshold:v})).questionDuplicateThreshold??v;o(b),m(String(b)),u(k.importFlow.preferenceSaved),a?.(b)}catch(a){u(k.importFlow.preferenceSaveFailed),j.frontendLogger.error("[Settings]","保存判重阈值失败",{error:a instanceof Error?a.message:String(a)})}finally{s(!1)}}};return(0,b.jsxs)("div",{className:"space-y-2 border-t pt-4",children:[(0,b.jsx)(g.Label,{htmlFor:"question-duplicate-threshold",children:k.importFlow.thresholdLabel}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)(f.Input,{id:"question-duplicate-threshold",type:"number",min:1,max:100,step:.01,value:l,onChange:a=>{m(a.target.value),u(null)},disabled:p||r||null===n,className:"w-28","aria-describedby":"question-duplicate-threshold-hint"}),(0,b.jsx)("span",{"aria-hidden":"true",children:"%"}),(0,b.jsxs)(e.Button,{type:"button",size:"sm",variant:"outline",onClick:y,disabled:p||r||null===n||!w||v===n,children:[(p||r)&&(0,b.jsx)(d.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),k.importFlow.saveThreshold]}),!p&&null===n&&(0,b.jsx)(e.Button,{type:"button",size:"sm",variant:"outline",onClick:x,children:k.importFlow.retryLoad})]}),(0,b.jsx)("p",{id:"question-duplicate-threshold-hint",className:"text-xs text-muted-foreground",children:k.importFlow.thresholdDescription}),null!==n&&!w&&(0,b.jsx)("p",{className:"text-xs text-destructive",role:"alert",children:k.importFlow.thresholdInvalid}),t&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",role:"status",children:t})]})}],42027)},86304,a=>{"use strict";var b=a.i(87924),c=a.i(11011),d=a.i(187),e=a.i(68114);let f=(0,d.cva)("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d,asChild:g=!1,...h}){let i=g?c.Slot:"span";return(0,b.jsx)(i,{"data-slot":"badge",className:(0,e.cn)(f({variant:d}),a),...h})}])},70430,30553,a=>{"use strict";var b=a.i(87924),c=a.i(72131);a.i(35112);var d=a.i(11011),e=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,e)=>{let f=(0,d.createSlot)(`Primitive.${e}`),g=c.forwardRef((a,c)=>{let{asChild:d,...g}=a;return(0,b.jsx)(d?f:e,{...g,ref:c})});return g.displayName=`Primitive.${e}`,{...a,[e]:g}},{});a.s(["Primitive",0,e],30553);var f=c.forwardRef((a,c)=>(0,b.jsx)(e.label,{...a,ref:c,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));f.displayName="Label";var g=a.i(68114);a.s(["Label",0,function({className:a,...c}){return(0,b.jsx)(f,{"data-slot":"label",className:(0,g.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...c})}],70430)},29246,a=>{"use strict";var b=a.i(87924),c=a.i(68114);a.s(["Textarea",0,function({className:a,...d}){return(0,b.jsx)("textarea",{"data-slot":"textarea",className:(0,c.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),...d})}])},29759,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(86705);let e=(0,c.createContext)({timeZone:d.DEFAULT_TIME_ZONE,setTimeZone:()=>void 0});a.s(["TimeZoneProvider",0,function({children:a,initialTimeZone:f=d.DEFAULT_TIME_ZONE}){let[g,h]=(0,c.useState)(f);return(0,b.jsx)(e.Provider,{value:{timeZone:g,setTimeZone:h},children:a})},"useTimeZone",0,function(){return(0,c.useContext)(e)}])},30534,a=>{"use strict";let b=new class{buffer=[];flushTimer=null;addToBuffer(a,b,c,d){let e={level:a,prefix:b,message:c,context:d,timestamp:new Date().toISOString(),url:"",userAgent:"u">typeof navigator?navigator.userAgent:""};(this.buffer.push(e),this.buffer.length>=20)?this.flush():this.scheduleFlush()}scheduleFlush(){this.flushTimer||(this.flushTimer=setTimeout(()=>{this.flush()},1e3))}flush(){if(this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null),0===this.buffer.length)return;let a=[...this.buffer];this.buffer=[],this.sendBatch(a)}async sendBatch(a){try{fetch("/api/logs/frontend",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({logs:a})}).catch(a=>{console.warn("Failed to send logs to backend:",a)})}catch(a){}}info(a,b,c,d={}){console.log(`${a} ${b}`,c||""),!1!==d.sendToBackend&&this.addToBuffer("info",a,b,c)}warn(a,b,c,d={}){console.warn(`${a} ${b}`,c||""),!1!==d.sendToBackend&&this.addToBuffer("warn",a,b,c)}error(a,b,c,d={}){console.error(`${a} ${b}`,c||""),!1!==d.sendToBackend&&this.addToBuffer("error",a,b,c)}forceFlush(){this.flush()}};a.s(["frontendLogger",0,b])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_12c20v5._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[210,a=>{"use strict";let b=(0,a.i(70106).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],210)},50522,a=>{"use strict";let b=(0,a.i(70106).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",0,b],50522)},99464,a=>{"use strict";let b=(0,a.i(70106).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],99464)},68368,23222,a=>{"use strict";var b=a.i(87924),c=a.i(50194),d=a.i(57292);let e=["primary","junior_high","senior_high"],f="primary",g=["math","english","chinese","physics","chemistry","biology","history","geography","politics"];function h(a){return"string"==typeof a&&g.includes(a)}function i(a){var b;let c=h(a.subjectKey)?a.subjectKey:(0,d.inferSubjectFromName)(a.name);return{stage:"string"==typeof(b=a.stage)&&e.includes(b)?a.stage:f,subject:c&&h(c)?c:null}}function j(){let{t:a}=(0,c.useLanguage)();return{stageLabel:b=>({primary:a.auth.primary,junior_high:a.auth.juniorHigh,senior_high:a.auth.seniorHigh})[b],subjectLabel:b=>a.tags.subjects[b]}}a.s(["DEFAULT_NOTEBOOK_STAGE",0,f,"NOTEBOOK_STAGES",0,e,"STAGE_SUBJECTS",0,{primary:["math","english"],junior_high:g,senior_high:g},"resolveNotebookScope",0,i],23222),a.s(["NotebookScopeLabel",0,function({notebook:a,className:c}){let{stageLabel:d,subjectLabel:e}=j(),f=i(a);return(0,b.jsxs)("span",{className:c,children:[d(f.stage),f.subject?` \xb7 ${e(f.subject)}`:""]})},"useNotebookScopeLabels",0,j],68368)},73556,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(14574),e=a.i(99570),f=a.i(66718),g=a.i(70430),h=a.i(50194),i=a.i(10302);a.s(["RenameNotebookDialog",0,function({open:a,onOpenChange:j,currentName:k,onRename:l}){let[m,n]=(0,c.useState)(k),[o,p]=(0,c.useState)(!1),{t:q}=(0,h.useLanguage)();(0,c.useEffect)(()=>{n(k)},[k]);let r=async()=>{if(!m.trim())return void i.toast.warning(q.notebooks?.renameDialog?.enterName||"Please enter notebook name");p(!0);try{await l(m.trim()),j(!1)}catch(a){console.error(a)}finally{p(!1)}};return(0,b.jsx)(d.Dialog,{open:a,onOpenChange:j,children:(0,b.jsxs)(d.DialogContent,{children:[(0,b.jsx)(d.DialogHeader,{children:(0,b.jsx)(d.DialogTitle,{children:q.notebooks?.renameDialog?.title||"Rename Notebook"})}),(0,b.jsx)("div",{className:"space-y-4 py-4",children:(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)(g.Label,{htmlFor:"rename-name",children:q.notebooks?.renameDialog?.nameLabel||"New Name"}),(0,b.jsx)(f.Input,{id:"rename-name",placeholder:q.notebooks?.renameDialog?.placeholder||"Enter new notebook name",value:m,onChange:a=>n(a.target.value),onKeyDown:a=>"Enter"===a.key&&r()})]})}),(0,b.jsxs)(d.DialogFooter,{children:[(0,b.jsx)(e.Button,{variant:"outline",onClick:()=>j(!1),children:q.common.cancel}),(0,b.jsx)(e.Button,{onClick:r,disabled:o||!m.trim(),children:o?q.notebooks?.renameDialog?.renaming||"Renaming...":q.notebooks?.renameDialog?.rename||"Rename"})]})]})})}])},95001,a=>{"use strict";var b=a.i(87924),c=a.i(50944),d=a.i(99570),e=a.i(210);a.s(["BackButton",0,function({fallbackUrl:a,className:f}){let g=(0,c.useRouter)();return(0,b.jsx)(d.Button,{variant:"ghost",size:"icon",onClick:()=>{g.push(a)},className:f,children:(0,b.jsx)(e.ArrowLeft,{className:"h-5 w-5"})})}])},79834,a=>{"use strict";var b=a.i(87924),c=a.i(68114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex flex-col items-center justify-center rounded-2xl border border-dashed bg-card/50 px-6 py-14 text-center",g),children:[(0,b.jsx)("div",{className:"mb-4 flex h-14 w-14 items-center justify-center rounded-2xl bg-accent text-accent-foreground",children:(0,b.jsx)(a,{className:"h-7 w-7"})}),(0,b.jsx)("p",{className:"font-medium",children:d}),e&&(0,b.jsx)("p",{className:"mt-1 max-w-sm text-sm text-muted-foreground",children:e}),f&&(0,b.jsx)("div",{className:"mt-5",children:f})]})}])},51538,a=>{"use strict";var b=a.i(87924),c=a.i(95001),d=a.i(68114);a.s(["PageHeader",0,function({title:a,description:e,backHref:f,actions:g,titleAddon:h,className:i}){return(0,b.jsxs)("div",{className:(0,d.cn)("flex items-start gap-3",i),children:[f&&(0,b.jsx)(c.BackButton,{fallbackUrl:f,className:"-ml-2 shrink-0"}),(0,b.jsxs)("div",{className:"min-w-0 flex-1 space-y-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("h1",{className:"truncate text-2xl font-bold tracking-tight sm:text-3xl",children:a}),h]}),e&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground sm:text-base",children:e})]}),g&&(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:g})]})}])},6376,a=>{"use strict";var b=a.i(87924),c=a.i(96221);a.s(["PageLoading",0,function({label:a}){return(0,b.jsxs)("div",{className:"flex min-h-[50vh] flex-col items-center justify-center gap-3 text-muted-foreground",children:[(0,b.jsx)(c.Loader2,{className:"h-7 w-7 animate-spin text-primary"}),a&&(0,b.jsx)("p",{className:"text-sm",children:a})]})}])},57292,a=>{"use strict";a.i(86705),a.s(["inferSubjectFromName",0,function(a){if(!a)return null;let b=a.toLowerCase();return b.includes("math")||b.includes("数学")?"math":b.includes("physics")||b.includes("物理")?"physics":b.includes("chemistry")||b.includes("化学")?"chemistry":b.includes("biology")||b.includes("生物")?"biology":b.includes("english")||b.includes("英语")?"english":b.includes("chinese")||b.includes("语文")?"chinese":b.includes("history")||b.includes("历史")?"history":b.includes("geography")||b.includes("地理")?"geography":b.includes("politics")||b.includes("政治")?"politics":null}])},74484,a=>{"use strict";var b=a.i(72131),c=a.i(50194);a.s(["usePageTitle",0,function(...a){let{t:d}=(0,c.useLanguage)(),e=[d.pageTitle.base,...a.map(a=>"string"==typeof a?a.trim():"").filter(a=>a.length>0)].join("-");(0,b.useEffect)(()=>{document.title=e},[e])}])},79188,a=>{"use strict";var b=a.i(91938);async function c(a){try{return(await b.apiClient.get(`/api/error-items/short/${encodeURIComponent(a)}`)).id}catch{return null}}a.s(["locateByShortId",0,c])},83715,a=>{"use strict";let b=RegExp("^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{6}$");a.s(["isShortId",0,function(a){return"string"==typeof a&&b.test(a)}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_1filpif._.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,71689,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],71689)},63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],63059)},3116,e=>{"use strict";let t=(0,e.i(75254).default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Clock",0,t],3116)},63804,e=>{"use strict";let t=(0,e.i(75254).default)("list-checks",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]]);e.s(["ListChecks",0,t],63804)},88699,e=>{"use strict";let t=(0,e.i(75254).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],88699)},3281,e=>{"use strict";let t=(0,e.i(75254).default)("printer",[["path",{d:"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2",key:"143wyd"}],["path",{d:"M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6",key:"1itne7"}],["rect",{x:"6",y:"14",width:"12",height:"8",rx:"1",key:"1ue0tg"}]]);e.s(["Printer",0,t],3281)},83086,e=>{"use strict";let t=(0,e.i(75254).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",0,t],83086)},69937,e=>{"use strict";var t=e.i(18050);let r=(0,e.i(75254).default)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);var n=e.i(11110),a=e.i(75157);let i=[1,2,3,4,5];e.s(["DifficultyStars",0,function({value:e,onChange:s,disabled:l,size:o="sm",showUnrated:c=!0,className:d}){let{t:u}=(0,n.useLanguage)(),m=e??0,h="sm"===o?"h-3.5 w-3.5":"h-5 w-5",f=m?u.difficulty.starsLabel.replace("{n}",String(m)):u.difficulty.unrated;return s?(0,t.jsxs)("span",{className:(0,a.cn)("inline-flex items-center gap-0.5",d),role:"group","aria-label":`${u.difficulty.label}:${f}`,title:u.difficulty.clearHint,children:[i.map(e=>(0,t.jsx)("button",{type:"button",disabled:l,onClick:()=>s(e===m?null:e),"aria-label":u.difficulty.setStars.replace("{n}",String(e)),"aria-pressed":e<=m,className:"rounded p-0.5 hover:bg-muted disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:(0,t.jsx)(r,{className:(0,a.cn)(h,e<=m?"fill-amber-400 text-amber-400":"text-muted-foreground/40")})},e)),!m&&c&&(0,t.jsx)("span",{className:"ml-1 text-xs text-muted-foreground",children:u.difficulty.unrated})]}):m?(0,t.jsx)("span",{className:(0,a.cn)("inline-flex items-center",d),role:"img","aria-label":`${u.difficulty.label}:${f}`,title:f,children:i.map(e=>(0,t.jsx)(r,{className:(0,a.cn)(h,e<=m?"fill-amber-400 text-amber-400":"text-muted-foreground/30"),"aria-hidden":!0},e))}):c?(0,t.jsx)("span",{className:(0,a.cn)("text-xs text-muted-foreground",d),children:u.difficulty.unrated}):null}],69937)},9830,76824,e=>{"use strict";var t=e.i(18050),r=e.i(11110),n=e.i(52122);let a=["primary","junior_high","senior_high"],i="primary",s=["math","english","chinese","physics","chemistry","biology","history","geography","politics"];function l(e){return"string"==typeof e&&s.includes(e)}function o(e){var t;let r=l(e.subjectKey)?e.subjectKey:(0,n.inferSubjectFromName)(e.name);return{stage:"string"==typeof(t=e.stage)&&a.includes(t)?e.stage:i,subject:r&&l(r)?r:null}}function c(){let{t:e}=(0,r.useLanguage)();return{stageLabel:t=>({primary:e.auth.primary,junior_high:e.auth.juniorHigh,senior_high:e.auth.seniorHigh})[t],subjectLabel:t=>e.tags.subjects[t]}}e.s(["DEFAULT_NOTEBOOK_STAGE",0,i,"NOTEBOOK_STAGES",0,a,"STAGE_SUBJECTS",0,{primary:["math","english"],junior_high:s,senior_high:s},"resolveNotebookScope",0,o],76824),e.s(["NotebookScopeLabel",0,function({notebook:e,className:r}){let{stageLabel:n,subjectLabel:a}=c(),i=o(e);return(0,t.jsxs)("span",{className:r,children:[n(i.stage),i.subject?` \xb7 ${a(i.subject)}`:""]})},"useNotebookScopeLabels",0,c],9830)},67153,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(76639),a=e.i(19455),i=e.i(93479),s=e.i(10204),l=e.i(11110),o=e.i(94114);e.s(["RenameNotebookDialog",0,function({open:e,onOpenChange:c,currentName:d,onRename:u}){let[m,h]=(0,r.useState)(d),[f,p]=(0,r.useState)(!1),{t:g}=(0,l.useLanguage)();(0,r.useEffect)(()=>{h(d)},[d]);let x=async()=>{if(!m.trim())return void o.toast.warning(g.notebooks?.renameDialog?.enterName||"Please enter notebook name");p(!0);try{await u(m.trim()),c(!1)}catch(e){console.error(e)}finally{p(!1)}};return(0,t.jsx)(n.Dialog,{open:e,onOpenChange:c,children:(0,t.jsxs)(n.DialogContent,{children:[(0,t.jsx)(n.DialogHeader,{children:(0,t.jsx)(n.DialogTitle,{children:g.notebooks?.renameDialog?.title||"Rename Notebook"})}),(0,t.jsx)("div",{className:"space-y-4 py-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(s.Label,{htmlFor:"rename-name",children:g.notebooks?.renameDialog?.nameLabel||"New Name"}),(0,t.jsx)(i.Input,{id:"rename-name",placeholder:g.notebooks?.renameDialog?.placeholder||"Enter new notebook name",value:m,onChange:e=>h(e.target.value),onKeyDown:e=>"Enter"===e.key&&x()})]})}),(0,t.jsxs)(n.DialogFooter,{children:[(0,t.jsx)(a.Button,{variant:"outline",onClick:()=>c(!1),children:g.common.cancel}),(0,t.jsx)(a.Button,{onClick:x,disabled:f||!m.trim(),children:f?g.notebooks?.renameDialog?.renaming||"Renaming...":g.notebooks?.renameDialog?.rename||"Rename"})]})]})})}])},90546,e=>{"use strict";var t=e.i(18050),r=e.i(18566),n=e.i(19455),a=e.i(71689);e.s(["BackButton",0,function({fallbackUrl:e,className:i}){let s=(0,r.useRouter)();return(0,t.jsx)(n.Button,{variant:"ghost",size:"icon",onClick:()=>{s.push(e)},className:i,children:(0,t.jsx)(a.ArrowLeft,{className:"h-5 w-5"})})}])},15288,e=>{"use strict";var t=e.i(18050),r=e.i(75157);e.s(["Card",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",e),...n})},"CardContent",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",e),...n})},"CardDescription",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",e),...n})},"CardHeader",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e),...n})},"CardTitle",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",e),...n})}])},57428,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(20783),a=e.i(30030),i=e.i(81140),s=e.i(69340),l=e.i(99682),o=e.i(35804),c=e.i(96626);e.i(74080);var d=Symbol("radix.slottable");function u(e){return r.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===d}var m=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{var i,s;let l,o,c,d=(s=i=`Primitive.${a}`,(l=r.forwardRef((e,t)=>{let{children:a,...i}=e;if(r.isValidElement(a)){var s;let e,l,o=(s=a,(l=(e=Object.getOwnPropertyDescriptor(s.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?s.ref:(l=(e=Object.getOwnPropertyDescriptor(s,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?s.props.ref:s.props.ref||s.ref),c=function(e,t){let r={...t};for(let n in t){let a=e[n],i=t[n];/^on[A-Z]/.test(n)?a&&i?r[n]=(...e)=>{let t=i(...e);return a(...e),t}:a&&(r[n]=a):"style"===n?r[n]={...a,...i}:"className"===n&&(r[n]=[a,i].filter(Boolean).join(" "))}return{...e,...r}}(i,a.props);return a.type!==r.Fragment&&(c.ref=t?(0,n.composeRefs)(t,o):o),r.cloneElement(a,c)}return r.Children.count(a)>1?r.Children.only(null):null})).displayName=`${s}.SlotClone`,o=l,(c=r.forwardRef((e,n)=>{let{children:a,...i}=e,s=r.Children.toArray(a),l=s.find(u);if(l){let e=l.props.children,a=s.map(t=>t!==l?t:r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null);return(0,t.jsx)(o,{...i,ref:n,children:r.isValidElement(e)?r.cloneElement(e,void 0,a):null})}return(0,t.jsx)(o,{...i,ref:n,children:a})})).displayName=`${i}.Slot`,c),m=r.forwardRef((e,r)=>{let{asChild:n,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(n?d:a,{...i,ref:r})});return m.displayName=`Primitive.${a}`,{...e,[a]:m}},{}),h="Checkbox",[f,p]=(0,a.createContextScope)(h),[g,x]=f(h);function y(e){let{__scopeCheckbox:n,checked:a,children:i,defaultChecked:l,disabled:o,form:c,name:d,onCheckedChange:u,required:m,value:f="on",internal_do_not_use_render:p}=e,[x,y]=(0,s.useControllableState)({prop:a,defaultProp:l??!1,onChange:u,caller:h}),[b,k]=r.useState(null),[j,v]=r.useState(null),N=r.useRef(!1),w=!b||!!c||!!b.closest("form"),C={checked:x,disabled:o,setChecked:y,control:b,setControl:k,name:d,form:c,value:f,hasConsumerStoppedPropagationRef:N,required:m,defaultChecked:!E(l)&&l,isFormControl:w,bubbleInput:j,setBubbleInput:v};return(0,t.jsx)(g,{scope:n,...C,children:"function"==typeof p?p(C):i})}var b="CheckboxTrigger",k=r.forwardRef(({__scopeCheckbox:e,onKeyDown:a,onClick:s,...l},o)=>{let{control:c,value:d,disabled:u,checked:h,required:f,setControl:p,setChecked:g,hasConsumerStoppedPropagationRef:y,isFormControl:k,bubbleInput:j}=x(b,e),v=(0,n.useComposedRefs)(o,p),N=r.useRef(h);return r.useEffect(()=>{let e=c?.form;if(e){let t=()=>g(N.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[c,g]),(0,t.jsx)(m.button,{type:"button",role:"checkbox","aria-checked":E(h)?"mixed":h,"aria-required":f,"data-state":S(h),"data-disabled":u?"":void 0,disabled:u,value:d,...l,ref:v,onKeyDown:(0,i.composeEventHandlers)(a,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,i.composeEventHandlers)(s,e=>{g(e=>!!E(e)||!e),j&&k&&(y.current=e.isPropagationStopped(),y.current||e.stopPropagation())})})});k.displayName=b;var j=r.forwardRef((e,r)=>{let{__scopeCheckbox:n,name:a,checked:i,defaultChecked:s,required:l,disabled:o,value:c,onCheckedChange:d,form:u,...m}=e;return(0,t.jsx)(y,{__scopeCheckbox:n,checked:i,defaultChecked:s,disabled:o,required:l,onCheckedChange:d,name:a,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(k,{...m,ref:r,__scopeCheckbox:n}),e&&(0,t.jsx)(C,{__scopeCheckbox:n})]})})});j.displayName=h;var v="CheckboxIndicator",N=r.forwardRef((e,r)=>{let{__scopeCheckbox:n,forceMount:a,...i}=e,s=x(v,n);return(0,t.jsx)(c.Presence,{present:a||E(s.checked)||!0===s.checked,children:(0,t.jsx)(m.span,{"data-state":S(s.checked),"data-disabled":s.disabled?"":void 0,...i,ref:r,style:{pointerEvents:"none",...e.style}})})});N.displayName=v;var w="CheckboxBubbleInput",C=r.forwardRef(({__scopeCheckbox:e,...a},i)=>{let{control:s,hasConsumerStoppedPropagationRef:c,checked:d,defaultChecked:u,required:h,disabled:f,name:p,value:g,form:y,bubbleInput:b,setBubbleInput:k}=x(w,e),j=(0,n.useComposedRefs)(i,k),v=(0,l.usePrevious)(d),N=(0,o.useSize)(s);r.useEffect(()=>{if(!b)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!c.current;if(v!==d&&e){let r=new Event("click",{bubbles:t});b.indeterminate=E(d),e.call(b,!E(d)&&d),b.dispatchEvent(r)}},[b,v,d,c]);let C=r.useRef(!E(d)&&d);return(0,t.jsx)(m.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??C.current,required:h,disabled:f,name:p,value:g,form:y,...a,tabIndex:-1,ref:j,style:{...a.style,...N,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function E(e){return"indeterminate"===e}function S(e){return E(e)?"indeterminate":e?"checked":"unchecked"}C.displayName=w;var _=e.i(43531),R=e.i(75157);let L=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(j,{ref:n,className:(0,R.cn)("peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",e),...r,children:(0,t.jsx)(N,{className:(0,R.cn)("flex items-center justify-center text-current"),children:(0,t.jsx)(_.Check,{className:"h-4 w-4"})})}));L.displayName=j.displayName,e.s(["Checkbox",0,L],57428)},12505,e=>{"use strict";var t=e.i(18050),r=e.i(75157);e.s(["EmptyState",0,function({icon:e,title:n,description:a,action:i,className:s}){return(0,t.jsxs)("div",{className:(0,r.cn)("flex flex-col items-center justify-center rounded-2xl border border-dashed bg-card/50 px-6 py-14 text-center",s),children:[(0,t.jsx)("div",{className:"mb-4 flex h-14 w-14 items-center justify-center rounded-2xl bg-accent text-accent-foreground",children:(0,t.jsx)(e,{className:"h-7 w-7"})}),(0,t.jsx)("p",{className:"font-medium",children:n}),a&&(0,t.jsx)("p",{className:"mt-1 max-w-sm text-sm text-muted-foreground",children:a}),i&&(0,t.jsx)("div",{className:"mt-5",children:i})]})}])},93842,e=>{"use strict";var t=e.i(18050),r=e.i(90546),n=e.i(75157);e.s(["PageHeader",0,function({title:e,description:a,backHref:i,actions:s,titleAddon:l,className:o}){return(0,t.jsxs)("div",{className:(0,n.cn)("flex items-start gap-3",o),children:[i&&(0,t.jsx)(r.BackButton,{fallbackUrl:i,className:"-ml-2 shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 space-y-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("h1",{className:"truncate text-2xl font-bold tracking-tight sm:text-3xl",children:e}),l]}),a&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground sm:text-base",children:a})]}),s&&(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:s})]})}])},86963,e=>{"use strict";var t=e.i(18050),r=e.i(31278);e.s(["PageLoading",0,function({label:e}){return(0,t.jsxs)("div",{className:"flex min-h-[50vh] flex-col items-center justify-center gap-3 text-muted-foreground",children:[(0,t.jsx)(r.Loader2,{className:"h-7 w-7 animate-spin text-primary"}),e&&(0,t.jsx)("p",{className:"text-sm",children:e})]})}])},69817,e=>{"use strict";e.s(["DEFAULT_PAGE_SIZE",0,18,"MAX_VISIBLE_PAGES",0,5,"PRINT_PREVIEW_PAGE_SIZE",0,200])},52122,e=>{"use strict";e.i(30691),e.s(["inferSubjectFromName",0,function(e){if(!e)return null;let t=e.toLowerCase();return t.includes("math")||t.includes("数学")?"math":t.includes("physics")||t.includes("物理")?"physics":t.includes("chemistry")||t.includes("化学")?"chemistry":t.includes("biology")||t.includes("生物")?"biology":t.includes("english")||t.includes("英语")?"english":t.includes("chinese")||t.includes("语文")?"chinese":t.includes("history")||t.includes("历史")?"history":t.includes("geography")||t.includes("地理")?"geography":t.includes("politics")||t.includes("政治")?"politics":null}])},62825,e=>{"use strict";function t(e){return"not_attempted"===e||"wrong_attempt"===e||"unknown"===e?e:"unknown"}e.s(["getMistakeStatusLabel",0,function(e,r="zh"){return("en"===r?{not_attempted:"Not attempted",wrong_attempt:"Wrong attempt",unknown:"Unknown"}:{not_attempted:"不会做",wrong_attempt:"做错了",unknown:"未判断"})[t(e)]},"normalizeMistakeStatusForSave",0,function(e,r){return(r||"").trim()?"wrong_attempt":t(e)}])},35209,e=>{"use strict";var t=e.i(71645),r=e.i(11110);e.s(["usePageTitle",0,function(...e){let{t:n}=(0,r.useLanguage)(),a=[n.pageTitle.base,...e.map(e=>"string"==typeof e?e.trim():"").filter(e=>e.length>0)].join("-");(0,t.useEffect)(()=>{document.title=a},[a])}])},33547,e=>{"use strict";var t=e.i(41931);async function r(e){try{return(await t.apiClient.get(`/api/error-items/short/${encodeURIComponent(e)}`)).id}catch{return null}}e.s(["locateByShortId",0,r])},47279,e=>{"use strict";let t=RegExp("^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{6}$");e.s(["isShortId",0,function(e){return"string"==typeof e&&t.test(e)}])}]);
|