wrong-notebook 2026.10.25-2 → 2026.10.25

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.
Files changed (327) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +3 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +18 -0
  6. package/.next/server/app/_global-error/page.js +1 -1
  7. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/admin/page.js.nft.json +1 -1
  16. package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  17. package/.next/server/app/admin/user/[id]/page.js.nft.json +1 -1
  18. package/.next/server/app/admin/user/[id]/page_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/admin/dashboard/route.js +12 -11
  20. package/.next/server/app/api/admin/dashboard/route.js.nft.json +1 -1
  21. package/.next/server/app/api/admin/migrate-tags/route.js +1 -1
  22. package/.next/server/app/api/admin/migrate-tags/route.js.nft.json +1 -1
  23. package/.next/server/app/api/admin/system-reset/route.js +1 -1
  24. package/.next/server/app/api/admin/system-reset/route.js.nft.json +1 -1
  25. package/.next/server/app/api/admin/users/[id]/detail/route.js +12 -11
  26. package/.next/server/app/api/admin/users/[id]/detail/route.js.nft.json +1 -1
  27. package/.next/server/app/api/admin/users/[id]/route.js +1 -1
  28. package/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -1
  29. package/.next/server/app/api/admin/users/route.js +1 -1
  30. package/.next/server/app/api/admin/users/route.js.nft.json +1 -1
  31. package/.next/server/app/api/ai/models/route.js +1 -1
  32. package/.next/server/app/api/ai/models/route.js.nft.json +1 -1
  33. package/.next/server/app/api/ai/test/route.js +9 -8
  34. package/.next/server/app/api/ai/test/route.js.nft.json +1 -1
  35. package/.next/server/app/api/analytics/route.js +1 -1
  36. package/.next/server/app/api/analytics/route.js.nft.json +1 -1
  37. package/.next/server/app/api/analyze/route.js +12 -11
  38. package/.next/server/app/api/analyze/route.js.nft.json +1 -1
  39. package/.next/server/app/api/auth/[...nextauth]/route.js +1 -1
  40. package/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -1
  41. package/.next/server/app/api/error-items/[id]/delete/route.js +1 -1
  42. package/.next/server/app/api/error-items/[id]/delete/route.js.nft.json +1 -1
  43. package/.next/server/app/api/error-items/[id]/figure/route.js +13 -12
  44. package/.next/server/app/api/error-items/[id]/figure/route.js.nft.json +1 -1
  45. package/.next/server/app/api/error-items/[id]/fix-latex/route.js +14 -13
  46. package/.next/server/app/api/error-items/[id]/fix-latex/route.js.nft.json +1 -1
  47. package/.next/server/app/api/error-items/[id]/geogebra/route.js +11 -10
  48. package/.next/server/app/api/error-items/[id]/geogebra/route.js.nft.json +1 -1
  49. package/.next/server/app/api/error-items/[id]/image/route.js +1 -1
  50. package/.next/server/app/api/error-items/[id]/image/route.js.nft.json +1 -1
  51. package/.next/server/app/api/error-items/[id]/notes/route.js +1 -1
  52. package/.next/server/app/api/error-items/[id]/notes/route.js.nft.json +1 -1
  53. package/.next/server/app/api/error-items/[id]/practice-records/route.js +1 -1
  54. package/.next/server/app/api/error-items/[id]/practice-records/route.js.nft.json +1 -1
  55. package/.next/server/app/api/error-items/[id]/reanswer/route.js +13 -12
  56. package/.next/server/app/api/error-items/[id]/reanswer/route.js.nft.json +1 -1
  57. package/.next/server/app/api/error-items/[id]/retag/route.js +12 -11
  58. package/.next/server/app/api/error-items/[id]/retag/route.js.nft.json +1 -1
  59. package/.next/server/app/api/error-items/[id]/route.js +1 -1
  60. package/.next/server/app/api/error-items/[id]/route.js.nft.json +1 -1
  61. package/.next/server/app/api/error-items/[id]/svg-animation/route.js +13 -12
  62. package/.next/server/app/api/error-items/[id]/svg-animation/route.js.nft.json +1 -1
  63. package/.next/server/app/api/error-items/batch-delete/route.js +1 -1
  64. package/.next/server/app/api/error-items/batch-delete/route.js.nft.json +1 -1
  65. package/.next/server/app/api/error-items/clear/route.js +1 -1
  66. package/.next/server/app/api/error-items/clear/route.js.nft.json +1 -1
  67. package/.next/server/app/api/error-items/list/route.js +1 -1
  68. package/.next/server/app/api/error-items/list/route.js.nft.json +1 -1
  69. package/.next/server/app/api/error-items/route.js +13 -12
  70. package/.next/server/app/api/error-items/route.js.nft.json +1 -1
  71. package/.next/server/app/api/error-items/short/[shortId]/route.js +1 -1
  72. package/.next/server/app/api/error-items/short/[shortId]/route.js.nft.json +1 -1
  73. package/.next/server/app/api/error-items/similarity/route.js +1 -1
  74. package/.next/server/app/api/error-items/similarity/route.js.nft.json +1 -1
  75. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js +12 -11
  76. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js.nft.json +1 -1
  77. package/.next/server/app/api/exams/[id]/results/route.js +12 -11
  78. package/.next/server/app/api/exams/[id]/results/route.js.nft.json +1 -1
  79. package/.next/server/app/api/exams/[id]/retry/route.js +11 -10
  80. package/.next/server/app/api/exams/[id]/retry/route.js.nft.json +1 -1
  81. package/.next/server/app/api/exams/[id]/route.js +11 -10
  82. package/.next/server/app/api/exams/[id]/route.js.nft.json +1 -1
  83. package/.next/server/app/api/exams/route.js +11 -10
  84. package/.next/server/app/api/exams/route.js.nft.json +1 -1
  85. package/.next/server/app/api/export/route.js +1 -1
  86. package/.next/server/app/api/export/route.js.nft.json +1 -1
  87. package/.next/server/app/api/geogebra-analyze/route.js +12 -11
  88. package/.next/server/app/api/geogebra-analyze/route.js.nft.json +1 -1
  89. package/.next/server/app/api/health/route.js +1 -1
  90. package/.next/server/app/api/health/route.js.nft.json +1 -1
  91. package/.next/server/app/api/import/route.js +11 -10
  92. package/.next/server/app/api/import/route.js.nft.json +1 -1
  93. package/.next/server/app/api/logs/frontend/route.js +1 -1
  94. package/.next/server/app/api/logs/frontend/route.js.nft.json +1 -1
  95. package/.next/server/app/api/minimax-code/checkin/route/app-paths-manifest.json +3 -0
  96. package/.next/server/app/api/minimax-code/checkin/route/build-manifest.json +12 -0
  97. package/.next/server/app/api/minimax-code/checkin/route/server-reference-manifest.json +4 -0
  98. package/.next/server/app/api/minimax-code/checkin/route.js +14 -0
  99. package/.next/server/app/api/minimax-code/checkin/route.js.map +5 -0
  100. package/.next/server/app/api/minimax-code/checkin/route.js.nft.json +1 -0
  101. package/.next/server/app/api/minimax-code/checkin/route_client-reference-manifest.js +3 -0
  102. package/.next/server/app/api/minimax-code/login/route/app-paths-manifest.json +3 -0
  103. package/.next/server/app/api/minimax-code/login/route/build-manifest.json +12 -0
  104. package/.next/server/app/api/minimax-code/login/route/server-reference-manifest.json +4 -0
  105. package/.next/server/app/api/minimax-code/login/route.js +12 -0
  106. package/.next/server/app/api/minimax-code/login/route.js.map +5 -0
  107. package/.next/server/app/api/minimax-code/login/route.js.nft.json +1 -0
  108. package/.next/server/app/api/minimax-code/login/route_client-reference-manifest.js +3 -0
  109. package/.next/server/app/api/minimax-code/route/app-paths-manifest.json +3 -0
  110. package/.next/server/app/api/minimax-code/route/build-manifest.json +12 -0
  111. package/.next/server/app/api/minimax-code/route/server-reference-manifest.json +4 -0
  112. package/.next/server/app/api/minimax-code/route.js +14 -0
  113. package/.next/server/app/api/minimax-code/route.js.map +5 -0
  114. package/.next/server/app/api/minimax-code/route.js.nft.json +1 -0
  115. package/.next/server/app/api/minimax-code/route_client-reference-manifest.js +3 -0
  116. package/.next/server/app/api/notebooks/[id]/retag/route.js +11 -10
  117. package/.next/server/app/api/notebooks/[id]/retag/route.js.nft.json +1 -1
  118. package/.next/server/app/api/notebooks/[id]/route.js +1 -1
  119. package/.next/server/app/api/notebooks/[id]/route.js.nft.json +1 -1
  120. package/.next/server/app/api/notebooks/route.js +1 -1
  121. package/.next/server/app/api/notebooks/route.js.nft.json +1 -1
  122. package/.next/server/app/api/openclaw/batch-upload/route.js +12 -11
  123. package/.next/server/app/api/openclaw/batch-upload/route.js.nft.json +1 -1
  124. package/.next/server/app/api/practice/generate/route.js +11 -10
  125. package/.next/server/app/api/practice/generate/route.js.nft.json +1 -1
  126. package/.next/server/app/api/practice/grade/route.js +11 -10
  127. package/.next/server/app/api/practice/grade/route.js.nft.json +1 -1
  128. package/.next/server/app/api/practice/record/[id]/route.js +13 -12
  129. package/.next/server/app/api/practice/record/[id]/route.js.nft.json +1 -1
  130. package/.next/server/app/api/practice/record/route.js +10 -9
  131. package/.next/server/app/api/practice/record/route.js.nft.json +1 -1
  132. package/.next/server/app/api/reanswer/route.js +11 -10
  133. package/.next/server/app/api/reanswer/route.js.nft.json +1 -1
  134. package/.next/server/app/api/register/route.js +1 -1
  135. package/.next/server/app/api/register/route.js.nft.json +1 -1
  136. package/.next/server/app/api/register/status/route.js +1 -1
  137. package/.next/server/app/api/register/status/route.js.nft.json +1 -1
  138. package/.next/server/app/api/review/due/route.js +1 -1
  139. package/.next/server/app/api/review/due/route.js.nft.json +1 -1
  140. package/.next/server/app/api/settings/route.js +6 -5
  141. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  142. package/.next/server/app/api/stats/practice/clear/route.js +1 -1
  143. package/.next/server/app/api/stats/practice/clear/route.js.nft.json +1 -1
  144. package/.next/server/app/api/stats/practice/route.js +1 -1
  145. package/.next/server/app/api/stats/practice/route.js.nft.json +1 -1
  146. package/.next/server/app/api/tags/route.js +1 -1
  147. package/.next/server/app/api/tags/route.js.nft.json +1 -1
  148. package/.next/server/app/api/tags/stats/route.js +1 -1
  149. package/.next/server/app/api/tags/stats/route.js.nft.json +1 -1
  150. package/.next/server/app/api/tags/suggestions/route.js +1 -1
  151. package/.next/server/app/api/tags/suggestions/route.js.nft.json +1 -1
  152. package/.next/server/app/api/tasks/route.js +1 -1
  153. package/.next/server/app/api/tasks/route.js.nft.json +1 -1
  154. package/.next/server/app/api/user/route.js +1 -1
  155. package/.next/server/app/api/user/route.js.nft.json +1 -1
  156. package/.next/server/app/api/version/route.js +1 -1
  157. package/.next/server/app/api/version/route.js.nft.json +1 -1
  158. package/.next/server/app/error-items/[id]/page.js.nft.json +1 -1
  159. package/.next/server/app/error-items/[id]/page_client-reference-manifest.js +1 -1
  160. package/.next/server/app/exams/[id]/page.js.nft.json +1 -1
  161. package/.next/server/app/exams/[id]/page_client-reference-manifest.js +1 -1
  162. package/.next/server/app/exams/[id]/print/page.js.nft.json +1 -1
  163. package/.next/server/app/exams/[id]/print/page_client-reference-manifest.js +1 -1
  164. package/.next/server/app/exams/page.js.nft.json +1 -1
  165. package/.next/server/app/exams/page_client-reference-manifest.js +1 -1
  166. package/.next/server/app/favicon.ico/route.js +1 -1
  167. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  168. package/.next/server/app/login/page.js.nft.json +1 -1
  169. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  170. package/.next/server/app/manifest.webmanifest/route.js +1 -1
  171. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  172. package/.next/server/app/notebooks/[id]/add/page.js.nft.json +1 -1
  173. package/.next/server/app/notebooks/[id]/add/page_client-reference-manifest.js +1 -1
  174. package/.next/server/app/notebooks/[id]/page.js.nft.json +1 -1
  175. package/.next/server/app/notebooks/[id]/page_client-reference-manifest.js +1 -1
  176. package/.next/server/app/notebooks/page.js.nft.json +1 -1
  177. package/.next/server/app/notebooks/page_client-reference-manifest.js +1 -1
  178. package/.next/server/app/page.js.nft.json +1 -1
  179. package/.next/server/app/page_client-reference-manifest.js +1 -1
  180. package/.next/server/app/practice/page.js.nft.json +1 -1
  181. package/.next/server/app/practice/page_client-reference-manifest.js +1 -1
  182. package/.next/server/app/print-preview/page.js.nft.json +1 -1
  183. package/.next/server/app/print-preview/page_client-reference-manifest.js +1 -1
  184. package/.next/server/app/register/page.js.nft.json +1 -1
  185. package/.next/server/app/register/page_client-reference-manifest.js +1 -1
  186. package/.next/server/app/review/page.js.nft.json +1 -1
  187. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  188. package/.next/server/app/stats/page.js.nft.json +1 -1
  189. package/.next/server/app/stats/page_client-reference-manifest.js +1 -1
  190. package/.next/server/app/tags/page.js.nft.json +1 -1
  191. package/.next/server/app/tags/page_client-reference-manifest.js +1 -1
  192. package/.next/server/app-paths-manifest.json +3 -0
  193. package/.next/server/chunks/{[externals]__1yyxisf-dquqj._.js → [externals]__1242krpdwt3fy._.js} +1 -1
  194. package/.next/server/chunks/{[externals]__0pot68n2q47fn._.js → [externals]__1pplcusjo3ok7._.js} +1 -1
  195. package/.next/server/chunks/[externals]__1zw_oy_-csyo1._.js +3 -0
  196. package/.next/server/chunks/{[root-of-the-server]__03_k40ubn0a9g._.js → [root-of-the-server]__0-12_rul4y06m._.js} +1 -1
  197. package/.next/server/chunks/{[root-of-the-server]__1dll9dp1pfrtj._.js → [root-of-the-server]__0-jhvuvprdrmu._.js} +2 -2
  198. package/.next/server/chunks/{[root-of-the-server]__00vnodiir_2d4._.js → [root-of-the-server]__0-lanxvfyc5w7._.js} +1 -1
  199. package/.next/server/chunks/{[root-of-the-server]__0rg4hkgdxbjou._.js → [root-of-the-server]__00rgirsp29kma._.js} +1 -1
  200. package/.next/server/chunks/{[root-of-the-server]__15eu8gun_s7xv._.js → [root-of-the-server]__023qntqk9nbma._.js} +2 -2
  201. package/.next/server/chunks/{[root-of-the-server]__18si67df5ho67._.js → [root-of-the-server]__035mztvplnh0_._.js} +2 -2
  202. package/.next/server/chunks/{[root-of-the-server]__0ry-pq8_6mc_0._.js → [root-of-the-server]__03nsgjsm70ted._.js} +2 -2
  203. package/.next/server/chunks/{[root-of-the-server]__1klj9kp10-bta._.js → [root-of-the-server]__03rln5n_21ad0._.js} +2 -2
  204. package/.next/server/chunks/{[root-of-the-server]__0-d9f8_x-uokl._.js → [root-of-the-server]__05-dvjb11wbvo._.js} +1 -1
  205. package/.next/server/chunks/{[root-of-the-server]__061dm-7_xqjef._.js → [root-of-the-server]__0ayraoa4xz-qt._.js} +2 -2
  206. package/.next/server/chunks/{[root-of-the-server]__04894g43fsy-j._.js → [root-of-the-server]__0b3ss-8ztcftu._.js} +1 -1
  207. package/.next/server/chunks/[root-of-the-server]__0dmllzem7rfag._.js +3 -0
  208. package/.next/server/chunks/[root-of-the-server]__0gx76tnihfcyv._.js +3 -0
  209. package/.next/server/chunks/{[root-of-the-server]__0an5a3hedd42o._.js → [root-of-the-server]__0h7igxq4ub38i._.js} +2 -2
  210. package/.next/server/chunks/{[root-of-the-server]__1i75c6j1-yn3y._.js → [root-of-the-server]__0icc6dvauvb15._.js} +2 -2
  211. package/.next/server/chunks/{[root-of-the-server]__1-g3tlhljmfsp._.js → [root-of-the-server]__0jb_3-yu-o6ms._.js} +2 -2
  212. package/.next/server/chunks/{[root-of-the-server]__1-hc0q3ck7id_._.js → [root-of-the-server]__0jjisfje72sqz._.js} +2 -2
  213. package/.next/server/chunks/[root-of-the-server]__0kskkg4ve55lv._.js +3 -0
  214. package/.next/server/chunks/[root-of-the-server]__0mbd9_76yhyaf._.js +3 -0
  215. package/.next/server/chunks/{[root-of-the-server]__1n8ih5ow23_12._.js → [root-of-the-server]__0my6t3vz24mmo._.js} +2 -2
  216. package/.next/server/chunks/{[root-of-the-server]__1k0zrfx1r08xk._.js → [root-of-the-server]__0nj600_104dqn._.js} +2 -2
  217. package/.next/server/chunks/[root-of-the-server]__0q4s9a9wy51vm._.js +3 -0
  218. package/.next/server/chunks/{[root-of-the-server]__18j9-n7s671bt._.js → [root-of-the-server]__0q_db5a74evdw._.js} +1 -1
  219. package/.next/server/chunks/{[root-of-the-server]__0_qgrtzrjahhc._.js → [root-of-the-server]__0qb8n1h-am-es._.js} +2 -2
  220. package/.next/server/chunks/{[root-of-the-server]__0yd-eoiuoru2o._.js → [root-of-the-server]__0rbh_oqaajxmo._.js} +2 -2
  221. package/.next/server/chunks/{[root-of-the-server]__1k_8n_p3i4my_._.js → [root-of-the-server]__0ssa-hz8b3v1i._.js} +1 -1
  222. package/.next/server/chunks/{[root-of-the-server]__123tftn1fdgwu._.js → [root-of-the-server]__0u2_q8y9hl1u-._.js} +2 -2
  223. package/.next/server/chunks/[root-of-the-server]__0uz7-ix0696nv._.js +3 -0
  224. package/.next/server/chunks/[root-of-the-server]__0v3k8_i3f2v13._.js +3 -0
  225. package/.next/server/chunks/[root-of-the-server]__0vu6_38lbzxar._.js +3 -0
  226. package/.next/server/chunks/[root-of-the-server]__0wcet8-wl-oad._.js +3 -0
  227. package/.next/server/chunks/{[root-of-the-server]__0hjv7gm7tjgzr._.js → [root-of-the-server]__0wmczeyrx2y7f._.js} +1 -1
  228. package/.next/server/chunks/{[root-of-the-server]__1q9wd_k6hcd5m._.js → [root-of-the-server]__0zb48en2m8yk0._.js} +3 -3
  229. package/.next/server/chunks/[root-of-the-server]__0zjg773epx4r_._.js +1 -1
  230. package/.next/server/chunks/{[root-of-the-server]__0p4dqz2jo4o3r._.js → [root-of-the-server]__0zr9l7lnr1i0l._.js} +2 -2
  231. package/.next/server/chunks/{[root-of-the-server]__0k0-mj3lzqicn._.js → [root-of-the-server]__1-302_px1h0qz._.js} +2 -2
  232. package/.next/server/chunks/[root-of-the-server]__1-9hu4j35d9ao._.js +3 -0
  233. package/.next/server/chunks/{[root-of-the-server]__00atddp_h2wsm._.js → [root-of-the-server]__12tt2pf5nuueu._.js} +2 -2
  234. package/.next/server/chunks/[root-of-the-server]__13z5coff9j0sa._.js +3 -0
  235. package/.next/server/chunks/[root-of-the-server]__14n5uude1fj4h._.js +3 -0
  236. package/.next/server/chunks/{[root-of-the-server]__1e_3xwt459gzy._.js → [root-of-the-server]__16c0c0-pt6gz4._.js} +1 -1
  237. package/.next/server/chunks/[root-of-the-server]__17pktht8hd051._.js +3 -0
  238. package/.next/server/chunks/[root-of-the-server]__18lmdddgrhac8._.js +3 -0
  239. package/.next/server/chunks/{[root-of-the-server]__1unmu-s-yg7fk._.js → [root-of-the-server]__199tod2f3vhny._.js} +2 -2
  240. package/.next/server/chunks/[root-of-the-server]__1a1fr6o2wf7qx._.js +3 -0
  241. package/.next/server/chunks/{[root-of-the-server]__0l7y2xk1m7h84._.js → [root-of-the-server]__1ar95f9mysi15._.js} +1 -1
  242. package/.next/server/chunks/[root-of-the-server]__1bep0vcwbtlfu._.js +3 -0
  243. package/.next/server/chunks/[root-of-the-server]__1esyxu40fpnyx._.js +3 -0
  244. package/.next/server/chunks/[root-of-the-server]__1fc23i58z_ao2._.js +1 -1
  245. package/.next/server/chunks/{[root-of-the-server]__15vjk2wddz8hx._.js → [root-of-the-server]__1g2qwf_mnzqly._.js} +2 -2
  246. package/.next/server/chunks/{[root-of-the-server]__20khcxfcwy16p._.js → [root-of-the-server]__1gg8lq2q9gzg2._.js} +3 -3
  247. package/.next/server/chunks/{[root-of-the-server]__1wfua4wupbgjj._.js → [root-of-the-server]__1imiyrtb6t6zp._.js} +2 -2
  248. package/.next/server/chunks/[root-of-the-server]__1iux__qytdtm5._.js +3 -0
  249. package/.next/server/chunks/[root-of-the-server]__1jhz19cuxjpmb._.js +3 -0
  250. package/.next/server/chunks/[root-of-the-server]__1jthkkelxfeb0._.js +3 -0
  251. package/.next/server/chunks/[root-of-the-server]__1k7cmt02s_syx._.js +3 -0
  252. package/.next/server/chunks/[root-of-the-server]__1kvcjw9quzr0w._.js +3 -0
  253. package/.next/server/chunks/[root-of-the-server]__1nsrbw9jntgo8._.js +3 -0
  254. package/.next/server/chunks/[root-of-the-server]__1p08ff3pxle05._.js +3 -0
  255. package/.next/server/chunks/{[root-of-the-server]__1vgkjjilvagrv._.js → [root-of-the-server]__1pulvd2ac2agx._.js} +1 -1
  256. package/.next/server/chunks/[root-of-the-server]__1rfqipe89aq-u._.js +3 -0
  257. package/.next/server/chunks/[root-of-the-server]__1uscfmw0q-en5._.js +3 -0
  258. package/.next/server/chunks/{[root-of-the-server]__15g3fbcq719hq._.js → [root-of-the-server]__1ya630gfyks-f._.js} +2 -2
  259. package/.next/server/chunks/[root-of-the-server]__1yslrvk_y61kt._.js +3 -0
  260. package/.next/server/chunks/[root-of-the-server]__1zyka21s1ahtj._.js +1 -1
  261. package/.next/server/chunks/{[root-of-the-server]__1jvkc3eu49g96._.js → [root-of-the-server]__20i0-g_8_okaf._.js} +2 -2
  262. package/.next/server/chunks/[root-of-the-server]__20sulb1y6n1b8._.js +3 -0
  263. package/.next/server/chunks/_076-jjzrfdsdk._.js +3 -0
  264. package/.next/server/chunks/_0geyrqrvyak26._.js +1 -1
  265. package/.next/server/chunks/_0kkvpy2s_y3-n._.js +1 -1
  266. package/.next/server/chunks/_0lob14xk0ko5z._.js +3 -0
  267. package/.next/server/chunks/_0ne4rbj35w-io._.js +1 -1
  268. package/.next/server/chunks/_0qsjdkq-39qbo._.js +1 -1
  269. package/.next/server/chunks/_13ffmxv8qrwi0._.js +1 -1
  270. package/.next/server/chunks/_1hp9mnz19v199._.js +3 -0
  271. package/.next/server/chunks/_1lrt8e26anbnm._.js +1 -1
  272. package/.next/server/chunks/_1pvqo-qnv-nqm._.js +1 -1
  273. package/.next/server/chunks/_next-internal_server_app_api_minimax-code_checkin_route_actions_0wqvstxphnn7t.js +3 -0
  274. package/.next/server/chunks/_next-internal_server_app_api_minimax-code_login_route_actions_0z7k0201hg8nt.js +3 -0
  275. package/.next/server/chunks/_next-internal_server_app_api_minimax-code_route_actions_0isqzusy30klb.js +3 -0
  276. package/.next/server/chunks/src_03_og0nynnyx2._.js +3 -0
  277. package/.next/server/chunks/src_lib_05svhzm9a162-._.js +1 -1
  278. package/.next/server/chunks/src_lib_logger_ts_1a0ve505bb0y2._.js +3 -0
  279. package/.next/server/chunks/src_lib_minimax-code_auth_ts_0-i5sxuori1um._.js +3 -0
  280. package/.next/server/chunks/src_lib_minimax-code_checkin_ts_1j1mpuxc1vgoz._.js +3 -0
  281. package/.next/server/chunks/ssr/{[root-of-the-server]__070lhtl_a6l81._.js → [root-of-the-server]__1vkia8gjeangv._.js} +1 -1
  282. package/.next/server/chunks/ssr/_00np6xqvkg6u-._.js +1 -1
  283. package/.next/server/chunks/ssr/src_1gayunqs8u2e2._.js +1 -1
  284. package/.next/server/chunks/ssr/src_components_providers_tsx_09kw-mv3nb6xs._.js +10 -10
  285. package/.next/server/instrumentation.js +1 -1
  286. package/.next/server/middleware-build-manifest.js +3 -3
  287. package/.next/server/middleware-manifest.json +5 -5
  288. package/.next/server/pages/500.html +1 -1
  289. package/.next/server/preview-props.json +3 -3
  290. package/.next/server/server-reference-manifest.js +1 -1
  291. package/.next/server/server-reference-manifest.json +1 -1
  292. package/.next/static/chunks/1nimjc5xqpgag.js +191 -0
  293. package/.next/static/chunks/1v_ioerabkr4s.js +1 -0
  294. package/.next/static/chunks/43gsd2ww2f2iy.css +3 -0
  295. package/package.json +1 -1
  296. package/prisma/seed.db +0 -0
  297. package/.next/server/chunks/[root-of-the-server]__076sanerpxzzq._.js +0 -3
  298. package/.next/server/chunks/[root-of-the-server]__08ftj1z8v5lqc._.js +0 -3
  299. package/.next/server/chunks/[root-of-the-server]__09-twlny39tdc._.js +0 -3
  300. package/.next/server/chunks/[root-of-the-server]__09mpwfp41rtdc._.js +0 -3
  301. package/.next/server/chunks/[root-of-the-server]__0dql4kl3n1jq6._.js +0 -3
  302. package/.next/server/chunks/[root-of-the-server]__0fyho53bjgbss._.js +0 -3
  303. package/.next/server/chunks/[root-of-the-server]__0hgoyp7m26_hk._.js +0 -3
  304. package/.next/server/chunks/[root-of-the-server]__0j-pkzf61aot8._.js +0 -3
  305. package/.next/server/chunks/[root-of-the-server]__0swyn0_rzg_pb._.js +0 -3
  306. package/.next/server/chunks/[root-of-the-server]__0tua5u4r1xt_r._.js +0 -3
  307. package/.next/server/chunks/[root-of-the-server]__0vtzo5ex73ywq._.js +0 -3
  308. package/.next/server/chunks/[root-of-the-server]__1-2dj_mbdiqvl._.js +0 -3
  309. package/.next/server/chunks/[root-of-the-server]__1-ti76u3720cd._.js +0 -3
  310. package/.next/server/chunks/[root-of-the-server]__10-um36nto0ht._.js +0 -3
  311. package/.next/server/chunks/[root-of-the-server]__10jwy1-wzrjon._.js +0 -3
  312. package/.next/server/chunks/[root-of-the-server]__12czp5_up_ywb._.js +0 -3
  313. package/.next/server/chunks/[root-of-the-server]__1bqziovn_k5u5._.js +0 -3
  314. package/.next/server/chunks/[root-of-the-server]__1cbj5r83fs2up._.js +0 -3
  315. package/.next/server/chunks/[root-of-the-server]__1d25c4t27ht5c._.js +0 -3
  316. package/.next/server/chunks/[root-of-the-server]__1dxa-5wqgxi3y._.js +0 -3
  317. package/.next/server/chunks/[root-of-the-server]__1i0nyuimhqkda._.js +0 -3
  318. package/.next/server/chunks/[root-of-the-server]__1wpzmu_3tg_74._.js +0 -3
  319. package/.next/server/chunks/[root-of-the-server]__1ztojnklvdebx._.js +0 -3
  320. package/.next/server/chunks/[root-of-the-server]__1zzfvs1z1_tig._.js +0 -3
  321. package/.next/server/chunks/src_0tzpy5j8n_1bx._.js +0 -3
  322. package/.next/static/chunks/00kfvk-buhhsb.js +0 -191
  323. package/.next/static/chunks/0_9gv911-tqmk.css +0 -3
  324. package/.next/static/chunks/2wk_a0jmwmybn.js +0 -1
  325. /package/.next/static/{ZH3ew12HOzoE3JRl8c_8L → 5uNP139l0DCSagwPDMOvD}/_buildManifest.js +0 -0
  326. /package/.next/static/{ZH3ew12HOzoE3JRl8c_8L → 5uNP139l0DCSagwPDMOvD}/_clientMiddlewareManifest.js +0 -0
  327. /package/.next/static/{ZH3ew12HOzoE3JRl8c_8L → 5uNP139l0DCSagwPDMOvD}/_ssgManifest.js +0 -0
@@ -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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__09mpwfp41rtdc._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0dql4kl3n1jq6._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0fyho53bjgbss._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0hgoyp7m26_hk._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0j-pkzf61aot8._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0swyn0_rzg_pb._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0tua5u4r1xt_r._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0vtzo5ex73ywq._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1-2dj_mbdiqvl._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1-ti76u3720cd._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[[180473,e=>{var i=e.i(562810);e.s(["z",0,i])},206033,e=>{var i=e.i(562810);e.s(["z",0,i])},856379,e=>{var i=e.i(181912),r=e.i(798003),n=e.i(376025),t=e.i(50377),o=e.i(698043);let a=(0,t.f)("ai-quota");async function u(e,i=new Date){let{start:t,end:a}=(0,n.d)(i,(0,r.c)());return o.f.aiUsage.count({where:{userId:e,createdAt:{gte:t,lt:a}}})}async function d(e,n){try{let t=(0,r.b)().aiDailyLimit??0;if(t>0&&"admin"!==e.role&&await u(e.id)>=t)return a.info({userId:e.id,kind:n,limit:t},"AI daily limit reached"),(0,i.B)(i.p.AI_DAILY_LIMIT_EXCEEDED,429,i.p.AI_DAILY_LIMIT_EXCEEDED,{limit:t});await o.f.aiUsage.create({data:{userId:e.id,kind:n}})}catch(i){a.error({error:i,userId:e.id,kind:n},"Failed to check AI quota")}return null}e.s(["f",0,d])},843911,e=>{var i=e.i(893963),r=e.i(592938),n=e.i(229236),t=e.i(690604),o=e.i(298876),a=e.i(798003);let u=(0,e.i(50377).f)("ai");e.s(["f",0,function(){let e=(0,a.b)(),d=e.aiProvider;if("openai"===d){let e=(0,a.z)();return u.info({activeInstance:e?.name},"Using OpenAI Provider"),new r.F(e)}if("azure"===d)return u.info({deployment:e.azure?.deploymentName},"Using Azure OpenAI Provider"),new n.f(e.azure);if("anthropic"===d)return u.info({model:e.anthropic?.model},"Using Anthropic Provider"),new t.R(e.anthropic);{if("gemini"===d)return u.info("Using Gemini Provider"),new i.f(e.gemini);let n=(0,o.j)(d)?d:"minimax",t=(0,o.k)(n,e[n]);return u.info({vendor:o.$[n].name,model:t.model},"Using vendor provider (OpenAI compatible)"),new r.F(t)}}])},630166,e=>{e.s(["f",0,function(e,i){return(i||"").trim()?"wrong_attempt":"not_attempted"===e||"wrong_attempt"===e||"unknown"===e?e:"unknown"}])}],522734,(e,i,r)=>{i.exports=e.x("fs",()=>require("fs"))},504446,(e,i,r)=>{i.exports=e.x("net",()=>require("net"))},446786,(e,i,r)=>{i.exports=e.x("os",()=>require("os"))},755004,(e,i,r)=>{i.exports=e.x("tls",()=>require("tls"))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__10-um36nto0ht._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__10jwy1-wzrjon._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__12czp5_up_ywb._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1bqziovn_k5u5._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1cbj5r83fs2up._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1d25c4t27ht5c._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1dxa-5wqgxi3y._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1i0nyuimhqkda._.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_gkx5xy1-3em._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbralh87n._.js","server/chunks/[root-of-the-server]__0rk_yxyba4meu._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ara5taim._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__09-twlny39tdc._.js","server/chunks/[root-of-the-server]__1nmtv65uajre3._.js","server/chunks/[root-of-the-server]__0_t7bbz2btvts._.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__1wpzmu_3tg_74._.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_gkx5xy1-3em._.js"].map(r=>e.l(r))).then(()=>r(835611)))},146735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbralh87n._.js","server/chunks/[root-of-the-server]__0rk_yxyba4meu._.js"].map(r=>e.l(r))).then(()=>r(583085)))},791961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ara5taim._.js"].map(r=>e.l(r))).then(()=>r(312111)))},672331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1-2dj_mbdiqvl._.js","server/chunks/[root-of-the-server]__1nmtv65uajre3._.js","server/chunks/[root-of-the-server]__0_t7bbz2btvts._.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__1ztojnklvdebx._.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/[externals]__1oyo6y4k5ao25._.js","server/chunks/[root-of-the-server]__15tkoe60wvpdf._.js","server/chunks/node_modules_node-fetch_src_utils_multipart-parser_0a9aeam58e52_.js"].map(r=>e.l(r))).then(()=>r(255057)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1zzfvs1z1_tig._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[397998,e=>{"use strict";async function s(){{let{setupGlobalProxy:s}=await e.A(542676);s()}}e.s(["register",0,s])},542676,e=>{e.v(s=>Promise.all(["server/chunks/[externals]__0jzwjtlwxxyw6._.js","server/chunks/[root-of-the-server]__1fc23i58z_ao2._.js"].map(s=>e.l(s))).then(()=>s(489569)))}];
2
-
3
- //# sourceMappingURL=src_0tzpy5j8n_1bx._.js.map
@@ -1,191 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,1661,e=>{"use strict";var s=e.i(843476),t=e.i(111110),a=e.i(217255),r=e.i(215519),i=e.i(325164),n=e.i(522016),l=e.i(618566),c=e.i(217923),o=e.i(810980),d=e.i(551804),m=e.i(178583),u=e.i(475254);let x=(0,u.f)("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]),p=(0,u.f)("circle-plus",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]]),h=(0,u.f)("shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]),f=(0,u.f)("tags",[["path",{d:"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z",key:"16rjxf"}],["path",{d:"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193",key:"178nd4"}],["circle",{cx:"10.5",cy:"6.5",r:".5",fill:"currentColor",key:"12ikhr"}]]);var g=e.i(271645);let j=(0,u.f)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]),v=(0,u.f)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),y=(0,u.f)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var b=e.i(763639),N=e.i(531278);let w=(0,u.f)("message-square-text",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]]),k=(0,u.f)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);var S=e.i(284614),C=e.i(519455),A=e.i(776639),M=e.i(677572),T=e.i(306831),I=e.i(487486),E=e.i(981140),P=e.i(820783),U=e.i(30030),R=e.i(369340),_=e.i(635804),z=e.i(248425),D=Object.defineProperty,L=(e,s)=>D(e,"name",{value:s,configurable:!0}),F="Switch",[K,$]=(0,U.f)(F),[q,O]=K(F);function V(e){let{__scopeSwitch:t,checked:a,children:r,defaultChecked:i,disabled:n,form:l,name:c,onCheckedChange:o,required:d,value:m="on",internal_do_not_use_render:u}=e,[x,p]=(0,R.f)({prop:a,defaultProp:i??!1,onChange:o,caller:F}),[h,f]=g.useState(null),[j,v]=g.useState(null),[y,b]=g.useState(null),N=!h||!!l||!!h.closest("form"),w={checked:x,setChecked:p,disabled:n,control:h,setControl:f,name:c,form:l,value:m,userClick:y,onUserClick:b,required:d,defaultChecked:i,isFormControl:N,bubbleInput:j,setBubbleInput:v};return(0,s.jsx)(q,{scope:t,...w,children:W(u)?u(w):r})}L(V,"SwitchProvider");var B=g.forwardRef(L(function({__scopeSwitch:e,onClick:t,...a},r){let{control:i,form:n,value:l,disabled:c,checked:o,required:d,setControl:m,setChecked:u,onUserClick:x,isFormControl:p,bubbleInput:h}=O("SwitchTrigger",e),f=(0,P.f)(r,m),j=g.useRef(o);return g.useEffect(()=>{let e=n?i?.ownerDocument.getElementById(n):i?.form;if(e instanceof HTMLFormElement){let s=L(()=>u(j.current),"reset");return e.addEventListener("reset",s),()=>e.removeEventListener("reset",s)}},[i,n,u]),(0,s.jsx)(z.V.button,{type:"button",role:"switch","aria-checked":o,"aria-required":d,"data-state":X(o),"data-disabled":c?"":void 0,disabled:c,value:l,...a,ref:f,onClick:(0,E.f)(t,e=>{let s=e.isPropagationStopped();x({requestedChecked:!o,hasConsumerStoppedPropagation:s}),u(e=>!e),h&&p&&!s&&e.stopPropagation()})})},"SwitchTrigger")),H=g.forwardRef(L(function(e,t){let{__scopeSwitch:a,name:r,checked:i,defaultChecked:n,required:l,disabled:c,value:o,onCheckedChange:d,form:m,...u}=e;return(0,s.jsx)(V,{__scopeSwitch:a,checked:i,defaultChecked:n,disabled:c,required:l,onCheckedChange:d,name:r,form:m,value:o,internal_do_not_use_render:({isFormControl:e})=>(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(B,{...u,ref:t,__scopeSwitch:a}),e&&(0,s.jsx)(Y,{__scopeSwitch:a})]})})},"Switch")),G=g.forwardRef(L(function(e,t){let{__scopeSwitch:a,...r}=e,i=O("SwitchThumb",a);return(0,s.jsx)(z.V.span,{"data-state":X(i.checked),"data-disabled":i.disabled?"":void 0,...r,ref:t})},"SwitchThumb")),Y=g.forwardRef(L(function({__scopeSwitch:e,onClick:t,...a},r){let{control:i,userClick:n,checked:l,defaultChecked:c,required:o,disabled:d,name:m,value:u,form:x,bubbleInput:p,setBubbleInput:h}=O("SwitchBubbleInput",e),f=(0,P.f)(r,h),j=(0,_.f)(i),v=g.useRef(!1),y=g.useRef(l),b=g.useRef(n),N=g.useRef(null);g.useEffect(()=>{if(!p)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(!e)return;let s=y.current!==l;y.current=l;let t=null!==n&&n!==b.current;if(b.current=n,t)N.current=s?null:n,s&&e.call(p,l),p.dispatchEvent(new Event("click",{bubbles:!n.hasConsumerStoppedPropagation}));else if(s){let s=N.current;N.current=null;let t=s?.requestedChecked===l;v.current=!0,e.call(p,l),p.dispatchEvent(new Event("click",{bubbles:!(t&&s.hasConsumerStoppedPropagation)})),v.current=!1}},[p,l,n]);let w=g.useRef(l);return(0,s.jsx)(z.V.input,{type:"checkbox","aria-hidden":!0,defaultChecked:c??w.current,required:o,disabled:d,name:m,value:u,form:x,...a,tabIndex:-1,ref:f,onClick:(0,E.f)(t,e=>{v.current&&e.stopPropagation()}),style:{...a.style,...j,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"SwitchBubbleInput"));function W(e){return"function"==typeof e}function X(e){return e?"checked":"unchecked"}L(W,"isFunction"),L(X,"getState");var J=e.i(975157);let Z=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)(H,{className:(0,J.f)("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:a,children:(0,s.jsx)(G,{className:(0,J.f)("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));Z.displayName=H.displayName;var Q=e.i(793479),ee=e.i(110204);let es=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("div",{className:"relative w-full overflow-auto",children:(0,s.jsx)("table",{ref:a,className:(0,J.f)("w-full caption-bottom text-sm",e),...t})}));es.displayName="Table";let et=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("thead",{ref:a,className:(0,J.f)("[&_tr]:border-b",e),...t}));et.displayName="TableHeader";let ea=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("tbody",{ref:a,className:(0,J.f)("[&_tr:last-child]:border-0",e),...t}));ea.displayName="TableBody",(g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("tfoot",{ref:a,className:(0,J.f)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}))).displayName="TableFooter";let er=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("tr",{ref:a,className:(0,J.f)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));er.displayName="TableRow";let ei=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("th",{ref:a,className:(0,J.f)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),...t}));ei.displayName="TableHead";let en=g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("td",{ref:a,className:(0,J.f)("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));en.displayName="TableCell",(g.forwardRef(({className:e,...t},a)=>(0,s.jsx)("caption",{ref:a,className:(0,J.f)("mt-4 text-sm text-muted-foreground",e),...t}))).displayName="TableCaption";var el=e.i(727612);let ec=(0,u.f)("ban",[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var eo=e.i(269638),ed=e.i(41931),em=e.i(294114),eu=e.i(201276),ex=e.i(303163);function ep(){let{timeZone:e}=(0,r.M)(),{data:i}=(0,a.useSession)(),{t:n}=(0,t.b)(),[l,c]=(0,g.useState)([]),[o,d]=(0,g.useState)(!0),[m,u]=(0,g.useState)(!1),[x,p]=(0,g.useState)(!1),[h,f]=(0,g.useState)("0"),[j,v]=(0,g.useState)(!1),y=(0,g.useCallback)(async()=>{d(!0);try{let e=await ed.f.get("/api/admin/users");c(e)}catch(e){eu.f.error("[UserManagement]","Failed to fetch users",{error:e})}finally{d(!1)}},[]),b=(0,g.useCallback)(async()=>{try{let e=await ed.f.get("/api/settings");u(!0===e.allowRegistration),f(String(e.aiDailyLimit??0))}catch(e){eu.f.error("[UserManagement]","Failed to fetch config",{error:e})}},[]);(0,g.useEffect)(()=>{y(),b()},[y,b]);let w=async e=>{p(!0);try{await ed.f.post("/api/settings",{allowRegistration:e}),u(e)}catch(e){eu.f.error("[UserManagement]","Failed to update registration setting",{error:e}),em.c.error(n.common.error)}finally{p(!1)}},k=Number(h),S=""!==h.trim()&&Number.isInteger(k)&&k>=0,A=async()=>{if(S){v(!0);try{await ed.f.post("/api/settings",{aiDailyLimit:k}),em.c.success(n.admin.aiDailyLimitSaved)}catch(e){eu.f.error("[UserManagement]","Failed to update AI daily limit",{error:e}),em.c.error(n.common.error)}finally{v(!1)}}},M=async e=>{let s=e.isActive?n.admin.confirmDisable:n.admin.confirmEnable;if(await (0,em.u)(s))try{await ed.f.patch(`/api/admin/users/${e.id}`,{isActive:!e.isActive}),y()}catch(e){eu.f.error("[UserManagement]","Failed to update user status",{error:e}),em.c.error(n.common.error)}},E=async e=>{if(await (0,em.u)(n.admin.confirmDelete,{destructive:!0}))try{await ed.f.delete(`/api/admin/users/${e.id}`),y()}catch(s){eu.f.error("[UserManagement]","Failed to delete user",{error:s});let e=(0,ex.d)(s)||n.common.error;em.c.error(e)}};return o?(0,s.jsx)("div",{className:"flex justify-center py-8",children:(0,s.jsx)(N.f,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between p-4 border rounded-lg bg-muted/30",children:[(0,s.jsxs)("div",{className:"space-y-0.5",children:[(0,s.jsx)(ee.f,{className:"text-base",children:n.admin?.allowRegistration||"Allow New Registrations"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:n.admin?.allowRegistrationDesc||"When disabled, new users cannot register"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[x&&(0,s.jsx)(N.f,{className:"h-4 w-4 animate-spin"}),(0,s.jsx)(Z,{checked:m,onCheckedChange:w,disabled:x})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-4 border rounded-lg bg-muted/30 sm:flex-row sm:items-center sm:justify-between",children:[(0,s.jsxs)("div",{className:"space-y-0.5",children:[(0,s.jsx)(ee.f,{htmlFor:"ai-daily-limit",className:"text-base",children:n.admin.aiDailyLimit}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:n.admin.aiDailyLimitDesc})]}),(0,s.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,s.jsx)(Q.f,{id:"ai-daily-limit",type:"number",min:0,step:1,inputMode:"numeric",value:h,onChange:e=>f(e.target.value),"aria-invalid":!S,className:"w-24"}),(0,s.jsxs)(C.f,{size:"sm",onClick:A,disabled:j||!S,children:[j&&(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}),n.common.save]})]})]}),(0,s.jsx)("div",{className:"sm:hidden space-y-3",children:l.map(t=>(0,s.jsxs)("div",{className:"border rounded-lg p-4 bg-card space-y-3",children:[(0,s.jsxs)("div",{className:"flex justify-between items-start",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"font-medium",children:t.name||"N/A"}),(0,s.jsx)("div",{className:"text-sm text-muted-foreground",children:t.email})]}),(0,s.jsx)(I.f,{variant:"admin"===t.role?"default":"secondary",children:"admin"===t.role?n.admin.admin:n.admin.user})]}),(0,s.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,s.jsxs)("div",{className:"text-muted-foreground",children:[n.admin.errors,": ",t._count.errorItems," | ",n.admin.practiceCount,": ",t._count.practiceRecords," | ",n.admin.aiUsageToday,": ",t.aiUsageToday]}),(0,s.jsx)(I.f,{variant:t.isActive?"default":"destructive",className:"text-xs",children:t.isActive?n.admin.active:n.admin.disabled})]}),(0,s.jsxs)("div",{className:"flex justify-between items-center pt-2 border-t",children:[(0,s.jsx)("div",{className:"text-xs text-muted-foreground",children:(0,T.r)(t.createdAt,"yyyy-MM-dd",e)}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsx)(C.f,{variant:"ghost",size:"sm",onClick:()=>M(t),disabled:t.id===i?.user?.id,children:t.isActive?(0,s.jsx)(ec,{className:"h-4 w-4 text-orange-500"}):(0,s.jsx)(eo.f,{className:"h-4 w-4 text-green-500"})}),(0,s.jsx)(C.f,{variant:"ghost",size:"sm",onClick:()=>E(t),disabled:t.id===i?.user?.id,children:(0,s.jsx)(el.f,{className:"h-4 w-4 text-destructive"})})]})]})]},t.id))}),(0,s.jsx)("div",{className:"hidden sm:block border rounded-lg overflow-hidden",children:(0,s.jsxs)(es,{children:[(0,s.jsx)(et,{children:(0,s.jsxs)(er,{children:[(0,s.jsx)(ei,{children:n.admin.nameEmail}),(0,s.jsx)(ei,{children:n.admin.role}),(0,s.jsx)(ei,{children:n.admin.stats}),(0,s.jsx)(ei,{children:n.admin.createdAt}),(0,s.jsx)(ei,{children:n.admin.status}),(0,s.jsx)(ei,{className:"text-right",children:n.admin.actions})]})}),(0,s.jsx)(ea,{children:l.map(t=>(0,s.jsxs)(er,{children:[(0,s.jsxs)(en,{children:[(0,s.jsx)("div",{className:"font-medium",children:t.name||"N/A"}),(0,s.jsx)("div",{className:"text-sm text-muted-foreground",children:t.email})]}),(0,s.jsx)(en,{children:(0,s.jsx)(I.f,{variant:"admin"===t.role?"default":"secondary",children:"admin"===t.role?n.admin.admin:n.admin.user})}),(0,s.jsxs)(en,{children:[(0,s.jsxs)("div",{className:"text-sm",children:[n.admin.errors,": ",t._count.errorItems]}),(0,s.jsxs)("div",{className:"text-sm",children:[n.admin.practiceCount,": ",t._count.practiceRecords]}),(0,s.jsxs)("div",{className:"text-sm",children:[n.admin.aiUsageToday,": ",t.aiUsageToday]})]}),(0,s.jsx)(en,{children:(0,T.r)(t.createdAt,"yyyy-MM-dd",e)}),(0,s.jsx)(en,{children:(0,s.jsx)(I.f,{variant:t.isActive?"default":"destructive",children:t.isActive?n.admin.active:n.admin.disabled})}),(0,s.jsxs)(en,{className:"text-right space-x-2",children:[(0,s.jsx)(C.f,{variant:"ghost",size:"sm",onClick:()=>M(t),disabled:t.id===i?.user?.id,title:t.isActive?n.admin.disable:n.admin.enable,children:t.isActive?(0,s.jsx)(ec,{className:"h-4 w-4 text-orange-500"}):(0,s.jsx)(eo.f,{className:"h-4 w-4 text-green-500"})}),(0,s.jsx)(C.f,{variant:"ghost",size:"sm",onClick:()=>E(t),disabled:t.id===i?.user?.id,title:n.admin.delete,children:(0,s.jsx)(el.f,{className:"h-4 w-4 text-destructive"})})]})]},t.id))})]})})]})}let eh=(0,u.f)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]),ef=(0,u.f)("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]),eg=(0,u.f)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]),ej=(0,u.f)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);function ev(){return window.WrongNotebookAndroid??null}let ey=()=>()=>void 0;function eb(){let{t:e}=(0,t.b)(),a=(0,g.useSyncExternalStore)(ey,ev,()=>null);return a?a.isStandalone?.()?(0,s.jsx)("p",{className:"text-center text-sm text-muted-foreground",children:e.settings?.about?.androidStandalone||"Running on this device. Data is stored only on this device."}):(0,s.jsxs)("div",{className:"flex flex-col items-center gap-2 text-sm text-muted-foreground",children:[(0,s.jsxs)("span",{className:"break-all",children:[e.settings?.about?.androidServer||"Server",": ",a.getServerUrl()]}),(0,s.jsxs)(C.f,{variant:"outline",className:"gap-2",onClick:()=>a.changeServer(),children:[(0,s.jsx)(ej,{className:"h-4 w-4"}),e.settings?.about?.changeServer||"Change server"]})]}):null}let eN="https://github.com/margrop/wrong-notebook";function ew(){let{t:e}=(0,t.b)(),[a,r]=(0,g.useState)("");(0,g.useEffect)(()=>{fetch("/api/version").then(e=>e.json()).then(e=>r(e.version)).catch(()=>{})},[]);let i=[{href:eN,icon:ef,label:e.settings?.about?.github||"GitHub Repository"},{href:`${eN}/releases`,icon:eg,label:e.settings?.about?.releaseNotes||"Release Notes"},{href:`${eN}/issues`,icon:w,label:e.settings?.about?.feedback||"Feedback"}];return(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-6 py-8 text-center bg-muted/30 rounded-lg border",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("h3",{className:"text-2xl font-bold",children:e.app?.title||"Smart Error Notebook"}),(0,s.jsx)("p",{className:"text-muted-foreground",children:e.settings?.about?.desc||"AI-powered learning assistant"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2 text-sm text-muted-foreground border px-4 py-2 rounded-full bg-background",children:[(0,s.jsx)(y,{className:"h-4 w-4"}),(0,s.jsxs)("span",{children:[e.settings?.about?.version||"Version",": v",a||"unknown"]})]}),(0,s.jsx)(eb,{}),(0,s.jsx)("div",{className:"flex flex-col sm:flex-row flex-wrap justify-center gap-4 w-full sm:w-auto px-4 sm:px-0",children:i.map(({href:e,icon:t,label:a})=>(0,s.jsx)(C.f,{variant:"outline",asChild:!0,className:"gap-2 w-full sm:w-auto",children:(0,s.jsxs)("a",{href:e,target:"_blank",rel:"noopener noreferrer",children:[(0,s.jsx)(t,{className:"h-4 w-4"}),a,(0,s.jsx)(eh,{className:"h-3 w-3 ml-1 opacity-50"})]})},e))}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-8",children:e.settings?.about?.copyright||"© 2026 margrop · Based on wttwins/wrong-notebook · MIT License"})]})}var ek=e.i(286536),eS=e.i(77705);function eC({className:e,...a}){let{t:r}=(0,t.b)(),[i,n]=(0,g.useState)(!1);return(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(Q.f,{type:i?"text":"password",className:(0,J.f)("pr-10",e),...a}),(0,s.jsx)(C.f,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 py-2 hover:bg-transparent",onClick:()=>n(!i),"aria-label":i?r.common.hidePassword:r.common.showPassword,tabIndex:-1,children:i?(0,s.jsx)(eS.f,{className:"h-4 w-4 text-muted-foreground"}):(0,s.jsx)(ek.f,{className:"h-4 w-4 text-muted-foreground"})})]})}var eA=e.i(967489);let eM={name:"",email:"",educationStage:"",enrollmentYear:"",password:""};function eT(){let{t:e}=(0,t.b)(),[a,r]=(0,g.useState)(eM),[i,n]=(0,g.useState)(""),[l,c]=(0,g.useState)(!0),[o,d]=(0,g.useState)(!1),m=(0,g.useCallback)(async()=>{try{let e=await ed.f.get("/api/user");r({name:e.name||"",email:e.email||"",educationStage:e.educationStage||"",enrollmentYear:e.enrollmentYear||"",password:""})}catch(e){eu.f.error("[AccountSettings]","Failed to fetch profile",{error:e})}finally{c(!1)}},[]);(0,g.useEffect)(()=>{m()},[m]);let u=async()=>{if(a.password&&a.password!==i)return void em.c.error(e.settings?.messages?.passwordMismatch||"Passwords do not match");d(!0);try{let s={name:a.name,email:a.email,educationStage:a.educationStage};a.enrollmentYear&&(s.enrollmentYear=parseInt(a.enrollmentYear.toString())),a.password&&(s.password=a.password),await ed.f.patch("/api/user",s),em.c.success(e.settings?.messages?.profileUpdated||"Profile updated"),r(e=>({...e,password:""})),n(""),window.location.reload()}catch(s){eu.f.error("[AccountSettings]","Failed to update profile",{error:(0,ex.d)(s)??(0,ex.Z)(s)}),em.c.error((0,ex.d)(s)||e.settings?.messages?.updateFailed||"Update failed")}finally{d(!1)}};return l?(0,s.jsx)("div",{className:"flex justify-center py-8",children:(0,s.jsx)(N.f,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):(0,s.jsxs)("div",{className:"space-y-4 border rounded-lg p-4 bg-muted/30",children:[(0,s.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.auth?.name||"Name"}),(0,s.jsx)(Q.f,{value:a.name||"",onChange:e=>r({...a,name:e.target.value})})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.auth?.email||"Email"}),(0,s.jsx)(Q.f,{value:a.email||"",onChange:e=>r({...a,email:e.target.value}),type:"email"})]})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.auth?.educationStage||"Education Stage"}),(0,s.jsxs)(eA.d,{value:a.educationStage||"",onValueChange:e=>r({...a,educationStage:e}),children:[(0,s.jsx)(eA.P,{children:(0,s.jsx)(eA.U,{placeholder:e.auth?.selectStage||"Select Stage"})}),(0,s.jsxs)(eA.r,{children:[(0,s.jsx)(eA.T,{value:"primary",children:e.auth?.primary||"Primary School"}),(0,s.jsx)(eA.T,{value:"junior_high",children:e.auth?.juniorHigh||"Junior High"}),(0,s.jsx)(eA.T,{value:"senior_high",children:e.auth?.seniorHigh||"Senior High"}),(0,s.jsx)(eA.T,{value:"university",children:e.auth?.university||"University"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.auth?.enrollmentYear||"Enrollment Year"}),(0,s.jsx)(Q.f,{type:"number",value:a.enrollmentYear||"",onChange:e=>r({...a,enrollmentYear:e.target.value}),placeholder:"YYYY"})]})]}),(0,s.jsxs)("div",{className:"space-y-3 pt-2 border-t",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.settings?.account?.changePassword||"Change Password (Leave empty to keep)"}),(0,s.jsx)(eC,{value:a.password,onChange:e=>r({...a,password:e.target.value}),placeholder:"******",minLength:6})]}),a.password&&(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:e.auth?.confirmPassword||"Confirm Password"}),(0,s.jsx)(eC,{value:i,onChange:e=>n(e.target.value),placeholder:"******",minLength:6})]})]}),(0,s.jsxs)(C.f,{onClick:u,disabled:o,className:"w-full",children:[o&&(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}),e.settings?.account?.update||"Update Profile"]})]})}let eI=(0,u.f)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);var eE=e.i(373884);let eP=(0,u.f)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),eU={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"}},eR=Object.keys(eU);function e_(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(eU,e)}function ez({config:e,saving:a,saveButton:r}){let{t:i,language:n}=(0,t.b)(),[l,c]=(0,g.useState)(!1),[o,d]=(0,g.useState)(null),m=e=>i.settings?.ai?.errors?.[e]||e.replace("UNKNOWN:",""),u=async()=>{let s=function(e,s){let t=e.aiProvider;if("openai"===t){let a=e.openai?.instances?.find(s=>s.id===e.openai?.activeInstanceId);return a?.apiKey?{ok:!0,body:{provider:t,apiKey:a.apiKey,baseUrl:a.baseUrl,model:a.model,language:s}}:{ok:!1,error:"API_KEY_REQUIRED"}}if("azure"===t){let a=e.azure;return a?.apiKey&&a.endpoint&&a.deploymentName?{ok:!0,body:{provider:t,apiKey:a.apiKey,endpoint:a.endpoint,deploymentName:a.deploymentName,apiVersion:a.apiVersion,model:a.model,language:s}}:{ok:!1,error:"AZURE_CONFIG_INCOMPLETE"}}if("gemini"===t||"anthropic"===t||e_(t)){let a=e[t];return a?.apiKey?{ok:!0,body:{provider:t,apiKey:a.apiKey,baseUrl:a.baseUrl,model:a.model,language:s}}:{ok:!1,error:"API_KEY_REQUIRED"}}return{ok:!1,error:"UNSUPPORTED_PROVIDER"}}(e,n);if(!s.ok){if("UNSUPPORTED_PROVIDER"===s.error)return;d({success:!1,textSupport:!1,visionSupport:!1,textError:"AZURE_CONFIG_INCOMPLETE"===s.error?i.settings?.ai?.validationAzureEndpointRequired||"Azure config is incomplete":i.settings?.ai?.validationApiKeyRequired||"API Key is required"});return}c(!0),d(null);try{d(await ed.f.post("/api/ai/test",s.body))}catch(e){eu.f.error("[AiConnectionTest]","AI connection test failed",{error:e}),d({success:!1,textSupport:!1,visionSupport:!1,textError:(0,ex.Z)(e)})}finally{c(!1)}};return(0,s.jsxs)("div",{className:"space-y-3 pt-3 border-t",children:[(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)(C.f,{type:"button",variant:"outline",onClick:u,disabled:l||a,className:"flex-1",children:[l?(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}):(0,s.jsx)(eP,{className:"mr-2 h-4 w-4"}),l?i.settings?.ai?.testing||"Testing...":i.settings?.ai?.testConnection||"Test Connection"]}),r]}),o&&(0,s.jsxs)("div",{className:`p-3 rounded-md text-sm ${o.success?"bg-green-50 border border-green-200":"bg-red-50 border border-red-200"}`,children:[(0,s.jsx)("div",{className:"flex items-center gap-2 font-medium mb-2",children:o.success?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(eI,{className:"h-4 w-4 text-green-600"}),(0,s.jsx)("span",{className:"text-green-700",children:i.settings?.ai?.testSuccess||"Connection Successful"}),o.modelInfo&&(0,s.jsxs)("span",{className:"text-green-600 text-xs",children:["(",o.modelInfo,")"]})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(eE.f,{className:"h-4 w-4 text-red-600"}),(0,s.jsx)("span",{className:"text-red-700",children:i.settings?.ai?.testFailed||"Connection Failed"})]})}),o.success&&(0,s.jsxs)("div",{className:"space-y-1 text-xs",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)("span",{className:"text-muted-foreground",children:[i.settings?.ai?.textSupport||"Text Generation",":"]}),(0,s.jsxs)("span",{className:"text-green-600",children:["✓ ",i.settings?.ai?.supported||"Supported"]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)("span",{className:"text-muted-foreground",children:[i.settings?.ai?.visionSupport||"Vision/Multimodal",":"]}),o.visionSupport?(0,s.jsxs)("span",{className:"text-green-600",children:["✓ ",i.settings?.ai?.supported||"Supported"]}):(0,s.jsxs)("span",{className:"text-amber-600",children:["✗ ",o.visionError?m(o.visionError):i.settings?.ai?.notSupported||"Not Supported"]})]}),(0,s.jsx)("p",{className:"text-muted-foreground/60 text-[10px] pl-1",children:i.settings?.ai?.testNetworkNote})]}),!o.success&&o.textError&&(0,s.jsx)("p",{className:"text-red-600 text-xs mt-1",children:m(o.textError)})]})]})}var eD=e.i(16715);function eL({provider:e,apiKey:a,baseUrl:r,currentModel:i,onModelChange:n}){let{t:l}=(0,t.b)(),[c,o]=(0,g.useState)([]),[d,m]=(0,g.useState)(!1),[u,x]=(0,g.useState)(null),[p,h]=(0,g.useState)(i||""),[f,j]=(0,g.useState)(!1),[v,y]=(0,g.useState)(i);i!==v&&(y(i),h(i||""));let b=async()=>{if(!a)return void x(l.modelSelector?.enterApiKeyFirst||"Please enter API Key first");m(!0),x(null);try{let s=await ed.f.post("/api/ai/models",{provider:e,apiKey:a,...r&&{baseUrl:r}});if("error"in s&&"string"==typeof s.error){x(s.error),j(!0),o([]);return}o(s.models),0===s.models.length&&(x(l.modelSelector?.noVisionModel||"No vision model found, please enter manually"),j(!0))}catch(s){eu.f.error("[ModelSelector]","Failed to fetch models",{error:s});let e=s instanceof Error&&s.message||l.modelSelector?.fetchFailed||"Failed to fetch models";x(e+(l.modelSelector?.enterManually||", please enter manually")),j(!0)}finally{m(!1)}};return(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(ee.f,{className:"flex-1",children:l.modelSelector?.modelName||"Model Name"}),(0,s.jsx)(C.f,{type:"button",variant:"outline",size:"sm",onClick:b,disabled:d||!a,children:d?(0,s.jsx)(N.f,{className:"h-3 w-3 animate-spin"}):(0,s.jsx)(eD.f,{className:"h-3 w-3"})})]}),u&&(0,s.jsx)("p",{className:"text-xs text-yellow-600",children:u}),f||0===c.length?(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(Q.f,{value:p,onChange:e=>{var s;h(s=e.target.value),n(s)},placeholder:e_(e)?eU[e].model:"openai"===e?"gpt-6.1-sol":"gemini-1.5-flash"}),c.length>0&&(0,s.jsx)(C.f,{type:"button",variant:"link",size:"sm",className:"h-auto p-0 text-xs",onClick:()=>j(!1),children:l.modelSelector?.selectFromList||"Select from List"})]}):(0,s.jsx)("div",{className:"space-y-2",children:(0,s.jsxs)(eA.d,{value:i,onValueChange:e=>{"_custom"===e?j(!0):(j(!1),h(e),n(e))},children:[(0,s.jsx)(eA.P,{children:(0,s.jsx)(eA.U,{placeholder:l.modelSelector?.selectModel||"Select Model"})}),(0,s.jsxs)(eA.r,{children:[c.map(e=>(0,s.jsxs)(eA.T,{value:e.id,children:[e.name,e.owned_by&&` (${e.owned_by})`]},e.id)),(0,s.jsx)(eA.T,{value:"_custom",children:l.modelSelector?.customInput||"Custom Input..."})]})]})})]})}function eF({value:e,onChange:a}){let{t:r}=(0,t.b)(),i=(s,t)=>a({...e,[s]:t});return(0,s.jsxs)("div",{className:"space-y-3 animate-in fade-in slide-in-from-top-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"API Key"}),(0,s.jsx)(eC,{value:e?.apiKey||"",onChange:e=>i("apiKey",e.target.value),placeholder:"sk-ant-..."})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"Base URL (Optional)"}),(0,s.jsx)(Q.f,{value:e?.baseUrl||"",onChange:e=>i("baseUrl",e.target.value),placeholder:"https://api.anthropic.com"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:r.settings?.ai?.anthropicBaseUrlHint})]}),(0,s.jsx)(eL,{provider:"anthropic",apiKey:e?.apiKey,baseUrl:e?.baseUrl,currentModel:e?.model,onModelChange:e=>i("model",e)})]})}function eK({value:e,onChange:a}){let{t:r}=(0,t.b)(),i=(s,t)=>a({...e,[s]:t}),n=e=>e?.trim()?"":"border-destructive";return(0,s.jsxs)("div",{className:"space-y-3 animate-in fade-in slide-in-from-top-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(ee.f,{children:[r.settings?.ai?.azureEndpoint||"Azure Endpoint"," ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(Q.f,{value:e?.endpoint||"",onChange:e=>i("endpoint",e.target.value),placeholder:r.settings?.ai?.azureEndpointPlaceholder||"https://your-resource.openai.azure.com",className:n(e?.endpoint)})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(ee.f,{children:[r.settings?.ai?.azureDeployment||"Deployment Name"," ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(Q.f,{value:e?.deploymentName||"",onChange:e=>i("deploymentName",e.target.value),placeholder:r.settings?.ai?.azureDeploymentPlaceholder||"gpt-4o-deployment",className:n(e?.deploymentName)})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(ee.f,{children:["API Key ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(eC,{value:e?.apiKey||"",onChange:e=>i("apiKey",e.target.value),placeholder:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",className:n(e?.apiKey)})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:r.settings?.ai?.azureApiVersion||"API Version"}),(0,s.jsx)(Q.f,{value:e?.apiVersion||"",onChange:e=>i("apiVersion",e.target.value),placeholder:r.settings?.ai?.azureApiVersionPlaceholder||"2024-02-15-preview"})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:r.settings?.ai?.azureModel||"Model Display Name"}),(0,s.jsx)(Q.f,{value:e?.model||"",onChange:e=>i("model",e.target.value),placeholder:"gpt-4o"})]})]})}function e$({value:e,onChange:t}){let a=(s,a)=>t({...e,[s]:a});return(0,s.jsxs)("div",{className:"space-y-3 animate-in fade-in slide-in-from-top-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"API Key"}),(0,s.jsx)(eC,{value:e?.apiKey||"",onChange:e=>a("apiKey",e.target.value),placeholder:"AIza..."})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"Base URL (Optional)"}),(0,s.jsx)(Q.f,{value:e?.baseUrl||"",onChange:e=>a("baseUrl",e.target.value),placeholder:"https://generativelanguage.googleapis.com"})]}),(0,s.jsx)(eL,{provider:"gemini",apiKey:e?.apiKey,baseUrl:e?.baseUrl,currentModel:e?.model,onModelChange:e=>a("model",e)})]})}var eq=e.i(107233);function eO({value:e,onChange:a}){let{t:r}=(0,t.b)(),i=e?.instances||[],n=e?.activeInstanceId,l=i.find(e=>e.id===n),c=(s,t)=>{a({...e,instances:i.map(e=>e.id===n?{...e,[s]:t}:e)})},o=async()=>{if(!n||!await (0,em.u)(r.settings?.ai?.confirmDelete||"Delete this instance?",{destructive:!0}))return;let e=i.filter(e=>e.id!==n);a({instances:e,activeInstanceId:e[0]?.id})};return(0,s.jsxs)("div",{className:"space-y-3 animate-in fade-in slide-in-from-top-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(ee.f,{children:r.settings?.ai?.instances||"Instance"}),(0,s.jsxs)(C.f,{type:"button",variant:"outline",size:"sm",onClick:()=>{if(i.length>=10)return;let e={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let s=16*Math.random()|0;return("x"===e?s:3&s|8).toString(16)}),name:`Instance ${i.length+1}`,apiKey:"",baseUrl:"https://api.openai.com/v1",model:"gpt-6.1-sol"};a({instances:[...i,e],activeInstanceId:e.id})},disabled:i.length>=10,className:"h-7 px-2 text-xs",children:[(0,s.jsx)(eq.f,{className:"h-3 w-3 mr-1"}),r.settings?.ai?.addInstance||"Add"]})]}),i.length>0?(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)(eA.d,{value:n||"",onValueChange:s=>a({...e,activeInstanceId:s}),children:[(0,s.jsx)(eA.P,{className:"flex-1",children:(0,s.jsx)(eA.U,{placeholder:r.settings?.ai?.selectInstance||"Select Instance"})}),(0,s.jsx)(eA.r,{children:i.map(e=>(0,s.jsx)(eA.T,{value:e.id,children:e.name},e.id))})]}),i.length>1&&(0,s.jsx)(C.f,{type:"button",variant:"outline",size:"icon",onClick:o,className:"h-10 w-10 text-destructive hover:text-destructive",children:(0,s.jsx)(el.f,{className:"h-4 w-4"})})]}):(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:r.settings?.ai?.noInstances||"No instances configured. Click 'Add' to create one."}),i.length>=10&&(0,s.jsx)("p",{className:"text-xs text-amber-600",children:r.settings?.ai?.maxInstancesReached||"Maximum instances reached (10)"})]}),l&&(0,s.jsxs)("div",{className:"space-y-3 p-3 border rounded-md bg-background",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(ee.f,{children:[r.settings?.ai?.instanceName||"Instance Name"," ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(Q.f,{value:l.name||"",onChange:e=>c("name",e.target.value),placeholder:"e.g. 智谱 GLM-4V",className:l.name?.trim()?"":"border-destructive"})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(ee.f,{children:["API Key ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(eC,{value:l.apiKey||"",onChange:e=>c("apiKey",e.target.value),placeholder:"sk-...",className:l.apiKey?.trim()?"":"border-destructive"})]}),(0,s.jsxs)("div",{className:"space-y-2 pt-4 border-t",children:[(0,s.jsxs)(ee.f,{children:["Base URL ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(Q.f,{value:l.baseUrl||"",onChange:e=>c("baseUrl",e.target.value),placeholder:"https://api.openai.com/v1",className:l.baseUrl?.trim()?"":"border-destructive"})]}),(0,s.jsx)(eL,{provider:"openai",apiKey:l.apiKey,baseUrl:l.baseUrl,currentModel:l.model,onModelChange:e=>c("model",e)})]})]})}function eV({provider:e,value:a,onChange:r}){let{t:i}=(0,t.b)(),n=eU[e],l=(e,s)=>r({...a,[e]:s});return(0,s.jsxs)("div",{className:"space-y-3 animate-in fade-in slide-in-from-top-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"API Key"}),(0,s.jsx)(eC,{value:a?.apiKey||"",onChange:e=>l("apiKey",e.target.value),placeholder:"sk-..."}),(0,s.jsxs)("p",{className:"text-xs text-muted-foreground",children:[i.settings?.ai?.vendorApiKeyHint||"Get an API key from the console:"," ",(0,s.jsx)("a",{href:n.consoleUrl,target:"_blank",rel:"noopener noreferrer",className:"underline break-all",children:n.consoleUrl})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:"Base URL (Optional)"}),(0,s.jsx)(Q.f,{value:a?.baseUrl||"",onChange:e=>l("baseUrl",e.target.value),placeholder:n.baseUrl}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:i.settings?.ai?.vendorBaseUrlHint})]}),(0,s.jsx)(eL,{provider:e,apiKey:a?.apiKey,baseUrl:a?.baseUrl,currentModel:a?.model||n.model,onModelChange:e=>l("model",e)})]})}function eB({config:e,setConfig:a,loading:r,saving:i,onSave:n}){let{t:l}=(0,t.b)();return r?(0,s.jsx)("div",{className:"flex justify-center py-4",children:(0,s.jsx)(N.f,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):(0,s.jsxs)("div",{className:"space-y-4 border rounded-lg p-4 bg-muted/30",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:l.settings?.tabs?.ai||"AI Provider"}),(0,s.jsxs)(eA.d,{value:e.aiProvider,onValueChange:e=>a(s=>({...s,aiProvider:e})),children:[(0,s.jsx)(eA.P,{children:(0,s.jsx)(eA.U,{})}),(0,s.jsxs)(eA.r,{children:[eR.map(e=>(0,s.jsx)(eA.T,{value:e,children:eU[e].name},e)),(0,s.jsx)(eA.T,{value:"anthropic",children:"Anthropic / Compatible"}),(0,s.jsx)(eA.T,{value:"azure",children:"Azure OpenAI"}),(0,s.jsx)(eA.T,{value:"openai",children:"OpenAI / Compatible"}),(0,s.jsx)(eA.T,{value:"gemini",children:"Google Gemini"})]})]})]}),"openai"===e.aiProvider&&(0,s.jsx)(eO,{value:e.openai,onChange:e=>a(s=>({...s,openai:e}))}),"gemini"===e.aiProvider&&(0,s.jsx)(e$,{value:e.gemini,onChange:e=>a(s=>({...s,gemini:e}))}),"anthropic"===e.aiProvider&&(0,s.jsx)(eF,{value:e.anthropic,onChange:e=>a(s=>({...s,anthropic:e}))}),e_(e.aiProvider)&&(0,s.jsx)(eV,{provider:e.aiProvider,value:e[e.aiProvider],onChange:e=>a(s=>({...s,[s.aiProvider]:e}))},e.aiProvider),"azure"===e.aiProvider&&(0,s.jsx)(eK,{value:e.azure,onChange:e=>a(s=>({...s,azure:e}))}),(0,s.jsx)(ez,{config:e,saving:i,saveButton:(0,s.jsxs)(C.f,{onClick:n,disabled:i,className:"flex-1",children:[i&&(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}),l.settings?.ai?.save||"Save AI Settings"]})})]})}let eH={info:{card:"border-blue-200 bg-blue-50",title:"text-blue-900 font-bold",desc:"text-blue-800 font-medium",button:"bg-blue-100 hover:bg-blue-200 text-blue-900 border-blue-300"},danger:{card:"border-red-200 bg-red-50",title:"text-red-700 font-medium",desc:"text-red-600",button:""},critical:{card:"border-red-600/50 bg-red-100/50",title:"text-red-900 font-bold",desc:"text-red-800 font-medium",button:"bg-red-700 hover:bg-red-800"}};function eG({title:e,description:t,tone:a,busy:r,icon:i,onClick:n}){let l=eH[a];return(0,s.jsxs)("div",{className:`p-4 border rounded-lg ${l.card}`,children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:`text-sm flex items-center gap-2 ${l.title}`,children:e}),(0,s.jsx)(C.f,{variant:"info"===a?"outline":"destructive",size:"sm",onClick:n,disabled:r,className:l.button,children:r?(0,s.jsx)(N.f,{className:"h-4 w-4 animate-spin"}):i})]}),(0,s.jsx)("p",{className:`text-xs mt-2 ${l.desc}`,children:t})]})}function eY({isAdmin:e}){let{t:a}=(0,t.b)(),[r,i]=(0,g.useState)(null),n=async(e,s,t,a)=>{i(e);try{em.c.success(await s()),a&&window.location.reload()}catch(s){eu.f.error("[DangerZoneSettings]",`${e} failed`,{error:s}),em.c.error(t)}finally{i(null)}},l=a.settings?.clearSuccess||"Success",c=a.settings?.clearError||"Failed",o=async()=>{await (0,em.u)(a.settings?.migrateTagsConfirm||"This will reset system tags. Confirm?",{destructive:!0})&&await n("migrateTags",async()=>{let e=await ed.f.post("/api/admin/migrate-tags",{});return`${l}: ${e.count||0} tags migrated.`},a.settings?.clearError||"Failed to migrate tags",!1)},d=async()=>{await (0,em.u)(a.settings?.clearDataConfirm||"Are you sure?",{destructive:!0})&&await n("clearPractice",async()=>(await ed.f.delete("/api/stats/practice/clear"),l),c,!0)},m=async()=>{await (0,em.u)(a.settings?.clearErrorDataConfirm||"Are you sure?",{destructive:!0})&&await n("clearErrors",async()=>(await ed.f.delete("/api/error-items/clear"),l),c,!0)},u=async()=>{if(!await (0,em.u)(a.settings?.systemResetConfirm||"WARNING: Deleting ALL data. Undoing is impossible. Are you sure?",{destructive:!0}))return;let e=prompt(a.settings?.systemResetPrompt||"Type 'RESET' to confirm system initialization:","");if("RESET"!==e){null!==e&&em.c.error(a.common?.error||"Confirmation failed");return}await n("systemReset",async()=>(await ed.f.post("/api/admin/system-reset",{}),a.settings?.clearSuccess||"Success - System Reset Complete"),a.settings?.clearError||"Failed to reset system",!0)};return(0,s.jsxs)(s.Fragment,{children:[e&&(0,s.jsx)(eG,{tone:"info",title:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(eD.f,{className:"h-4 w-4"}),a.settings?.migrateTags||"Migrate Tags"]}),description:a.settings?.migrateTagsDesc||"Re-populates standard tags from file",busy:"migrateTags"===r,icon:(0,s.jsx)(eD.f,{className:"h-4 w-4"}),onClick:o}),(0,s.jsx)(eG,{tone:"danger",title:a.settings?.clearData||"Clear Practice Data",description:a.settings?.clearDataDesc||"This will permanently delete all practice history. Irreversible.",busy:"clearPractice"===r,icon:(0,s.jsx)(el.f,{className:"h-4 w-4"}),onClick:d}),(0,s.jsx)(eG,{tone:"danger",title:a.settings?.clearErrorData||"Clear Error Data",description:a.settings?.clearErrorDataDesc||"This will permanently delete all error items. Irreversible.",busy:"clearErrors"===r,icon:(0,s.jsx)(el.f,{className:"h-4 w-4"}),onClick:m}),e&&(0,s.jsx)(eG,{tone:"critical",title:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(j,{className:"h-4 w-4"}),a.settings?.systemReset||"System Initialization"]}),description:a.settings?.systemResetDesc||"Resets the system to factory state. Deletes ALL data.",busy:"systemReset"===r,icon:(0,s.jsx)(el.f,{className:"h-4 w-4"}),onClick:u})]})}var eW=e.i(440160);let eX=(0,u.f)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);async function eJ(e,s){let t=await fetch(e);if(!t.ok)throw Error((await t.json().catch(()=>({}))).message||"Export failed");let a=await t.blob(),r=window.URL.createObjectURL(a),i=document.createElement("a");i.href=r;let n=t.headers.get("Content-Disposition")?.match(/filename="(.+)"/);i.download=n?n[1]:s,document.body.appendChild(i),i.click(),document.body.removeChild(i),window.URL.revokeObjectURL(r)}function eZ({isAdmin:e}){let{t:a}=(0,t.b)(),[r,i]=(0,g.useState)(!1),[n,l]=(0,g.useState)(!1),[c,o]=(0,g.useState)(null),d=async e=>{if(!e||await (0,em.u)(a.settings?.exportAllConfirm||"Export all users' data? This may take a while.")){i(!0);try{await eJ(e?"/api/export?all=true":"/api/export",e?"wrong-notebook-export-all.json":"wrong-notebook-export.json"),em.c.success(a.settings?.exportSuccess||"Export successful")}catch(s){eu.f.error("[DataBackupSettings]",e?"Export all failed":"Export failed",{error:s}),em.c.error(a.settings?.exportFailed||"Export failed")}finally{i(!1)}}},m=async e=>{if(!c)return;let s=e?a.settings?.importAllConfirm||"Import all users' data? This will restore data for all users from the export file.":a.settings?.importConfirm||"Are you sure you want to import?";if(await (0,em.u)(s)){l(!0);try{let s=JSON.parse(await c.text()),{stats:t}=await ed.f.post(e?"/api/import?all=true":"/api/import",s);em.c.success((a.settings?.importResultDesc||"Imported {subjects} notebooks, {tags} tags, {items} error items, {schedules} review schedules, {records} practice records, {papers} exam papers.").replace("{subjects}",String(t.subjectsCreated)).replace("{tags}",String(t.tagsCreated)).replace("{items}",String(t.errorItemsCreated)).replace("{schedules}",String(t.reviewSchedulesCreated)).replace("{records}",String(t.practiceRecordsCreated)).replace("{papers}",String(t.examPapersCreated??0)).replace("{duplicates}",String(t.duplicateErrorItems??0))),o(null),window.location.reload()}catch(s){eu.f.error("[DataBackupSettings]",e?"Import all failed":"Import failed",{error:s}),em.c.error(a.settings?.importFailed||"Import failed")}finally{l(!1)}}},u=(e,t)=>e?(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}):t;return(0,s.jsxs)("div",{className:"p-4 border border-blue-200 rounded-lg bg-blue-50",children:[(0,s.jsx)("h4",{className:"text-sm font-bold text-blue-900 mb-3",children:a.settings?.dataManagement||"Data Management"}),(0,s.jsxs)("div",{className:"mb-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsx)("span",{className:"text-sm text-blue-800 font-medium",children:a.settings?.exportData||"Export Data"}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>d(!1),disabled:r,className:"bg-blue-100 hover:bg-blue-200 text-blue-900 border-blue-300",children:[u(r,(0,s.jsx)(eW.f,{className:"mr-2 h-4 w-4"})),a.settings?.exportData||"Export"]}),e&&(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>d(!0),disabled:r,className:"bg-orange-100 hover:bg-orange-200 text-orange-900 border-orange-300",children:[u(r,(0,s.jsx)(eW.f,{className:"mr-2 h-4 w-4"})),a.settings?.exportAllData||"Export All"]})]})]}),(0,s.jsx)("p",{className:"text-xs text-blue-700",children:a.settings?.exportDataDesc||"Export all data as JSON file."})]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,s.jsx)("span",{className:"text-sm text-blue-800 font-medium",children:a.settings?.importData||"Import Data"}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("input",{type:"file",accept:".json",onChange:e=>o(e.target.files?.[0]??c),className:"hidden",id:"import-file-input",disabled:n}),(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>document.getElementById("import-file-input")?.click(),disabled:n,className:"bg-blue-100 hover:bg-blue-200 text-blue-900 border-blue-300",children:[u(n,(0,s.jsx)(eX,{className:"mr-2 h-4 w-4"})),c?.name||a.settings?.selectFile||"Select File"]}),c&&(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>m(!1),disabled:n,className:"bg-green-100 hover:bg-green-200 text-green-900 border-green-300",children:[u(n,(0,s.jsx)(eI,{className:"mr-2 h-4 w-4"})),a.settings?.importData||"Import"]}),c&&e&&(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>m(!0),disabled:n,className:"bg-orange-100 hover:bg-orange-200 text-orange-900 border-orange-300",children:[u(n,(0,s.jsx)(eI,{className:"mr-2 h-4 w-4"})),a.settings?.importAllData||"Import All"]})]})]}),(0,s.jsx)("p",{className:"text-xs text-blue-700",children:a.settings?.importDataDesc||"Import data from JSON file. Existing data will be skipped."})]})]})}var eQ=e.i(307364);function e0({field:e,label:a,description:r}){let{t:i}=(0,t.b)(),[n,l]=(0,g.useState)(!1),[c,o]=(0,g.useState)(!1),[d,m]=(0,g.useState)(!1),[u,x]=(0,g.useState)(null),p=`preference-${e}`;(0,g.useEffect)(()=>{ed.f.get("/api/user").then(s=>l(!!s[e])).catch(()=>void 0).finally(()=>o(!0))},[e]);let h=async s=>{l(s),m(!0);try{await ed.f.patch("/api/user",{[e]:s}),x(i.importFlow.preferenceSaved)}catch(t){l(!s),x(i.importFlow.preferenceSaveFailed),eu.f.error("[Settings]","Failed to save user preference",{field:e,error:t instanceof Error?t.message:String(t)})}finally{m(!1)}};return(0,s.jsxs)("div",{className:"space-y-2 pt-4 border-t",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,s.jsx)(ee.f,{htmlFor:p,children:a}),(0,s.jsx)(Z,{id:p,checked:n,onCheckedChange:h,disabled:!c||d})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:r}),u&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:u})]})}function e1(){let{t:e}=(0,t.b)();return(0,s.jsx)(e0,{field:"enableGeogebra",label:e.importFlow.enableGeogebra,description:e.importFlow.enableGeogebraDesc})}function e2(){let{t:e}=(0,t.b)();return(0,s.jsx)(e0,{field:"confirmBeforeImport",label:e.importFlow.confirmBeforeImport,description:e.importFlow.confirmBeforeImportDesc})}function e4(){let{t:e}=(0,t.b)();return(0,s.jsx)(e0,{field:"enableSvgAnimation",label:e.importFlow.enableSvgAnimation,description:e.importFlow.enableSvgAnimationDesc})}function e3({value:e,onChange:a,disabled:r}){let{t:i}=(0,t.b)();return(0,s.jsxs)("div",{className:"space-y-2 pt-4 border-t",children:[(0,s.jsx)(ee.f,{htmlFor:"app-time-zone",children:i.settings.general.timeZoneLabel}),(0,s.jsx)(Q.f,{id:"app-time-zone",value:e,onChange:e=>a(e.target.value),disabled:r,list:"app-time-zones",placeholder:"Asia/Shanghai"}),(0,s.jsx)("datalist",{id:"app-time-zones",children:["Asia/Shanghai","Asia/Hong_Kong","Asia/Tokyo","Asia/Singapore","Europe/London","America/New_York","America/Los_Angeles","UTC"].map(e=>(0,s.jsx)("option",{value:e},e))}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:i.settings.general.timeZoneDesc})]})}function e5({config:e,setConfig:a,isAdmin:i,disabled:n}){let{t:l,language:c,setLanguage:o}=(0,t.b)(),{timeZone:d}=(0,r.M)(),m=e=>a(s=>({...s,timeouts:{...s.timeouts,analyze:1e3*e}}));return(0,s.jsxs)("div",{className:"space-y-4 border rounded-lg p-4 bg-muted/30",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(ee.f,{children:l.settings?.language||"Language"}),(0,s.jsxs)(eA.d,{value:c,onValueChange:e=>o(e),children:[(0,s.jsx)(eA.P,{children:(0,s.jsx)(eA.U,{})}),(0,s.jsxs)(eA.r,{children:[(0,s.jsx)(eA.T,{value:"zh",children:"中文 (Chinese)"}),(0,s.jsx)(eA.T,{value:"en",children:"English"})]})]})]}),(0,s.jsx)(e3,{value:e.timeZone??d,onChange:e=>a(s=>({...s,timeZone:e})),disabled:!i||n}),i&&(0,s.jsxs)("div",{className:"space-y-2 pt-4 border-t",children:[(0,s.jsx)(ee.f,{children:l.settings?.general?.timeoutLabel||"AI Analysis Timeout (Seconds)"}),(0,s.jsx)(Q.f,{type:"number",value:e.timeouts?.analyze?e.timeouts.analyze/1e3:"",onChange:e=>{let s=""===e.target.value?0:parseInt(e.target.value);m(isNaN(s)?0:s)},onBlur:()=>{let s=(e.timeouts?.analyze||0)/1e3,t=Math.min(600,Math.max(120,s));t!==s&&m(t)},min:120,max:600}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:l.settings?.general?.timeoutDesc||"Increase this value if you experience frequent timeouts during AI analysis."})]}),(0,s.jsx)(e2,{}),(0,s.jsx)(e4,{}),(0,s.jsx)(e1,{}),(0,s.jsx)(eQ.f,{})]})}var e6=e.i(624687),e8=e.i(247167);let e7={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function e9(e,s={}){let t,a=e7[e],r=(t=e8.default.env.LOG_LEVEL?.toLowerCase())&&void 0!==e7[t]?e7[t]:e7.info;return(t,i)=>{let n,l;if(a<r)return;let c=new Date;"string"==typeof t?(n={},l=t):(n=t,l=i||"");{let t=JSON.stringify({level:e,time:c.toISOString(),...s,...n,msg:l});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}(function e(s={}){return s.module,{trace:e9("trace",s),debug:e9("debug",s),info:e9("info",s),warn:e9("warn",s),error:e9("error",s),fatal:e9("fatal",s),child:t=>e({...s,...t}),box:(e,t,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...s,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}})({env:"production"}).child({module:"ai:prompts"});let se=`请参考《高思学校竞赛数学导引》(每讲分兴趣篇、拓展篇、超越篇,题目左侧标 1~5 颗星)的星级标准,结合题目所在年级评定难度:
2
- - 1 星:课本基础题,直接套用概念、公式或简单计算即可(相当于兴趣篇前几题)。
3
- - 2 星:校内拔高题,需要两三步推理或简单综合(相当于兴趣篇后几题)。
4
- - 3 星:常规奥数题,小升初、杯赛常见难度,需要掌握该专题的典型方法(相当于拓展篇)。
5
- - 4 星:较难奥数题,需要构造、分类讨论、转化或多种方法综合(相当于拓展篇末题、超越篇前几题)。
6
- - 5 星:竞赛压轴题,集训队水平,思路巧妙、步骤长(相当于超越篇难题)。
7
- 非数学学科按同样的 1~5 级划分:1 星为基础识记,3 星为综合应用,5 星为竞赛或压轴难度。`,ss=`- 输出一个完整的 <svg> 元素,包含 xmlns="http://www.w3.org/2000/svg" 和 viewBox(建议宽 400~600),不要用 Markdown 代码块包裹。
8
- - 白色背景、黑色线条(stroke="#000",线宽 1.5~2),需要区分的区域可用浅灰填充;不要使用彩色装饰。
9
- - 按原图比例和相对位置绘制,保留所有标注:顶点字母、数字、长度、角度、单位、箭头和虚线等,文字用 <text>(font-size 14~18)。
10
- - 只使用基本图形元素:line、polyline、polygon、rect、circle、ellipse、path、text、g、defs、marker。
11
- - 严禁使用 <image>、<script>、<foreignObject>、外部链接、外部字体或事件属性。`,st=String.raw`- 行内公式用 $...$,独立公式用 $$...$$;不要用 \(...\) 或 \[...\],每个 $ 必须成对出现。
12
- - 所有 LaTeX 命令(如 \frac、\sqrt、\times、\angle)都必须写在 $...$ 内,公式外不能出现反斜杠命令。
13
- - 只使用 KaTeX 支持的命令和环境:方程组用 \begin{cases}...\end{cases},多行推导用 \begin{aligned}...\end{aligned}(放在 $$...$$ 中),不要用 align、eqnarray、\newcommand、\usepackage、\label、\tag 等。
14
- - 大括号 {} 必须成对,\left 与 \right 必须成对,\begin{...} 与 \end{...} 必须对应。
15
- - 公式中的中文写在 \text{...} 里,或放到公式外;百分号写成 \%,美元符号写成 \$。
16
- - 反斜杠只写一个(\frac),不要写成 \\frac;换行符 \\ 只能用在 cases、aligned 等环境里。`,sa=`【角色与核心任务 (ROLE AND CORE TASK)】
17
- 你是一位世界顶尖的、经验丰富的、专业的跨学科考试分析专家(Interdisciplinary Exam Analysis Expert)。你的核心任务是极致准确地分析用户提供的考试题目图片,全面理解所有文本、图表和隐含约束,并提供一个完整、高度结构化且专业的解决方案。
18
-
19
- {{language_instruction}}
20
-
21
- 【核心输出要求 (OUTPUT REQUIREMENTS)】
22
- 你的响应输出**必须严格遵循以下自定义标签格式**。**严禁**使用 JSON 或 Markdown 代码块。**严禁**对 LaTeX 公式中的反斜杠进行二次转义(如 "\\frac" 是错误的,必须是 "\frac")。
23
-
24
- 请严格按照以下结构输出内容:
25
-
26
- <subject>
27
- 在此处填写学科,必须是以下之一:"数学", "物理", "化学", "生物", "英语", "语文", "历史", "地理", "政治", "其他"。
28
- </subject>
29
-
30
- <knowledge_points>
31
- 在此处填写知识点,使用逗号分隔,例如:知识点1, 知识点2, 知识点3
32
- </knowledge_points>
33
-
34
- <requires_image>
35
- 判断这道题是否需要依赖图片才能正确解答。如果题目包含几何图形、函数图像、实验装置图、电路图等必须看图才能理解的内容,填写 true;如果只需要文字描述即可理解(如英语题、纯文字数学题),填写 false。
36
- </requires_image>
37
-
38
- <has_figure>
39
- 判断题目本身是否带有配图(几何图形、函数图像、示意图、统计图、实验装置图、电路图等;不含学生的作答痕迹和纯文字表格)。有配图填 true,否则填 false。
40
- </has_figure>
41
-
42
- <figure_svg>
43
- 如果 has_figure 为 true,用 SVG 重新绘制题目配图:
44
- ${ss}
45
- 如果 has_figure 为 false,请留空。
46
- </figure_svg>
47
-
48
- <wrong_answer_text>
49
- 如果图片中包含学生已经写出的错误解答、错误步骤、草稿或错误答案,请尽量按原样摘录;如果没有看到学生错误解答,请留空。
50
- </wrong_answer_text>
51
-
52
- <mistake_status>
53
- 填写以下值之一:wrong_attempt(图片中有错误解答或错误步骤)、not_attempted(没有错误解答,像是完全不会做或未作答)、unknown(无法判断)。
54
- </mistake_status>
55
-
56
- <difficulty_stars>
57
- 只填写 1 到 5 之间的一个整数,表示题目难度星级。
58
- ${se}
59
- </difficulty_stars>
60
-
61
- <mistake_analysis>
62
- 如果图片中包含错误解答,请分析错误可能发生在哪一步、为什么错、导致了什么后果;如果没有错误解答,请留空。
63
- </mistake_analysis>
64
-
65
- <question_text>
66
- 在此处填写题目的完整文本。使用 Markdown 格式。所有数学公式使用 LaTeX 符号(行内 $...$,块级 $$...$$)。
67
-
68
- 【题干转录规则】
69
- 1. **逐字照录**:按图片原文转录题干(含题号、分值和标点),不要改写、概括、增删字词或调整语序;看不清的字用 [?] 标注。
70
- 2. **填空统一**:所有填空处统一写作 ____(4 个下划线),不论原图横线长短。
71
- 3. **图形描述**:如果题目依赖图形,在题干原文之后空一行,单独写**一段**以「图示:」开头的图形描述;只能使用「图示:」这一种写法(不要写「图示信息」「图示说明」等),描述中不要重复题干已有的文字。题目不依赖图形时不要写图示段落。
72
-
73
- 【表格处理规则】
74
- 如果图片中包含表格,必须完整转录表格内容,遵循以下原则:
75
-
76
- 1. **标准表格**:使用 Markdown 表格语法
77
- | 列标题1 | 列标题2 | 列标题3 |
78
- |---------|---------|---------|
79
- | 数据1 | 数据2 | 数据3 |
80
-
81
- 2. **复杂表格**(合并单元格/多级表头/不规则布局):
82
- - 优先尝试用 Markdown 表格近似表示
83
- - 如果 Markdown 无法准确表达,在表格前用文字说明结构,然后用简化的 Markdown 表格 + 注释
84
- - 示例:
85
- > 注:第1行为主标题,横跨3列;第2-3行为数据行
86
-
87
- | 项目 | 数值A | 数值B |
88
- |------|-------|-------|
89
- | 测试1 | 10 | 20 |
90
- | 测试2 | 15 | 25 |
91
-
92
- 3. **表格完整性要求**:
93
- - 必须转录所有单元格内容(包括空单元格用 - 或空格表示)
94
- - 保留表格标题、单位、注释
95
- - 保留数据的对齐关系和分组信息
96
- - 表格中的数学公式使用 LaTeX 语法
97
-
98
- 4. **表格上下文**:
99
- - 如果表格有标题或编号(如"表1"),保留在表格前
100
- - 如果表格后有注释或说明,保留在表格后
101
- - 保持表格在题目中的位置关系
102
-
103
- 5. **特殊情况处理**:
104
- - 图表混合:如果表格旁边有图形,用文字说明位置关系
105
- - 手写表格:尽力识别手写内容,不确定的用 [?] 标注
106
- - 模糊表格:如果表格不清晰,在表格前注明"(表格内容可能不完整)"
107
- </question_text>
108
-
109
- <answer_text>
110
- 在此处填写正确答案。使用 Markdown 和 LaTeX 符号。如果答案包含表格,遵循上述【表格处理规则】。
111
- </answer_text>
112
-
113
- <analysis>
114
- 在此处填写详细的步骤解析。
115
- * 必须使用简体中文。
116
- * **直接使用标准的 LaTeX 符号**(如 $\frac{1}{2}$),**不要**进行 JSON 转义(不要写成 \\frac)。
117
- * 如果解析过程需要表格(如列表对比、分步计算表),遵循上述【表格处理规则】。
118
- </analysis>
119
-
120
- 【知识点标签列表(KNOWLEDGE POINT LIST)】
121
- {{knowledge_points_list}}
122
-
123
- 【标签使用规则 (TAG RULES)】
124
- - 标签必须与题目实际考查的知识点精准匹配。
125
- - 每题最多 5 个标签。
126
-
127
- 【!!! 关键格式与内容约束 (CRITICAL RULES) !!!】
128
- 1. **格式严格**:必须严格包含上述 12 个 XML 标签,除此之外不要输出任何其他“开场白”或“结束语”。
129
- 2. **纯文本**:内容作为纯文本处理,**不要转义反斜杠**。
130
- 3. **内容完整**:如果包含子问题,请在 question_text 中完整列出。
131
- 4. **禁止图片**:严禁包含任何图片链接或 markdown 图片语法。
132
- 5. **LaTeX 规范**:
133
- ${st}
134
-
135
- {{grade_instruction}}
136
- {{provider_hints}}`,sr=`你是一位资深的K12教育题目生成专家,具备跨学科的题目创作能力。你的核心任务是**根据以下原题和知识点,举一反三生成高质量教学题目**,帮助学生巩固知识并拓展解题思路。
137
- ### 角色定义
138
- 1. **学科全能专家**
139
- - 精通K12阶段所有学科(数学/语文/英语/物理/化学/生物/历史/地理/政治)
140
- - 熟悉各年级课程标准与知识点分布
141
- - 能准确识别题目考察的核心能力点(计算/推理/分析/应用/创新)
142
- 2. **题目变异大师**
143
- - 掌握12种变式技法:条件替换/情境迁移/问题转化/数据重构/图形变形/角色反转/跨学科融合/难度阶梯/开放拓展/陷阱设计/逆向思维/生活应用
144
- - 确保变式题目保持原题核心考点,改变题目表现形式
145
- 3. **学情分析师**
146
- - 预判学生易错点(认知盲区/概念混淆/计算失误/审题偏差)
147
- - 在变式题目中针对性强化易错点训练
148
- ### 执行流程
149
- 1. **接收任务**
150
- 原题: "{{original_question}}"
151
- {{language_instruction}}
152
- DIFFICULTY LEVEL: {{difficulty_level}}
153
- {{difficulty_instruction}}
154
- Knowledge Points: {{knowledge_points}}
155
- 2. **解构分析**
156
- - 提取核心考点与能力要求
157
- - 分析题目陷阱与解题路径
158
- 3. **质量管控**
159
- - 确保每道题:
160
- ✓ 覆盖相同核心知识点
161
- ✓ 保持解题逻辑一致性
162
- ✓ 答案唯一且可验证
163
- ✓ 无知识性错误
164
- ### 输出规范
165
- 你的响应输出**必须严格遵循以下自定义标签格式**。**严禁**使用 JSON 或 Markdown 代码块。**严禁**返回 \`\`\`json ... \`\`\`。
166
-
167
- 请严格按照以下结构输出内容(不要包含任何其他文字):
168
-
169
- <question_text>
170
- 在此处填写新生成的填空题或解答题。不要包含题号、分值或选择题选项。
171
- </question_text>
172
-
173
- <answer_text>
174
- 在此处填写新题目的正确答案。
175
- </answer_text>
176
-
177
- <analysis>
178
- 在此处填写新题目的详细解析。
179
- * 必须使用简体中文。
180
- * **直接使用标准的 LaTeX 符号**(如 $\frac{1}{2}$),**不要**进行 JSON 转义。
181
- </analysis>
182
-
183
- {{figure_instruction}}
184
-
185
- ###关键格式与内容约束 (CRITICAL RULES) !!!
186
- 1. **纯文本**:内容作为纯文本处理,**不要转义反斜杠**。
187
- 2. **LaTeX 规范**:
188
- ${st}
189
-
190
- {{grade_instruction}}
191
- {{provider_hints}}`;var si=e.i(367240);function sn({name:e,description:t}){return(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-start gap-1 sm:gap-2 text-xs py-1",children:[(0,s.jsx)("code",{className:"bg-muted px-1.5 py-0.5 rounded font-mono text-primary shrink-0 w-fit",children:`{{${e}}}`}),(0,s.jsx)("span",{className:"text-muted-foreground",children:t})]})}function sl(){let{t:e}=(0,t.b)();return(0,s.jsxs)("div",{className:"bg-amber-50 border border-amber-200 rounded-md p-3 flex items-start gap-3 text-amber-900 text-sm mb-4",children:[(0,s.jsx)(j,{className:"h-5 w-5 shrink-0 text-amber-600"}),(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("p",{className:"font-medium",children:e.settings?.prompts?.caution||"Modify with Caution"}),(0,s.jsx)("p",{className:"text-amber-800/90 text-xs",children:e.settings?.prompts?.warning||"Variables in {{brackets}} are used to inject dynamic content. Please preserve these variables, otherwise the AI providing may fail to get question context or return invalid formats."})]})]})}function sc({config:e,onUpdate:a}){let{t:r}=(0,t.b)(),i=e.prompts?.analyze||sa,n=e.prompts?.similar||sr,l=async e=>{await (0,em.u)(r.settings?.prompts?.resetConfirm||"Are you sure you want to reset to default?",{destructive:!0})&&a(e,"analyze"===e?sa:sr)},c=(e,s)=>{a(e,s)};return(0,s.jsx)("div",{className:"space-y-4 border rounded-lg p-4 bg-muted/30",children:(0,s.jsxs)(M.i,{defaultValue:"analyze",className:"w-full",children:[(0,s.jsxs)(M.U,{className:"grid w-full grid-cols-2",children:[(0,s.jsx)(M.k,{value:"analyze",children:r.settings?.prompts?.analysisTab||"Analysis Prompt"}),(0,s.jsx)(M.k,{value:"similar",children:r.settings?.prompts?.similarTab||"Similar Question Prompt"})]}),(0,s.jsx)(M.S,{value:"analyze",className:"space-y-4 py-4",children:(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex justify-between items-center",children:[(0,s.jsx)(ee.f,{className:"text-base font-semibold",children:r.settings?.prompts?.customAnalysis||"Custom Analysis Template"}),(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>l("analyze"),children:[(0,s.jsx)(si.f,{className:"w-4 h-4 mr-2"}),r.settings?.prompts?.reset||"Reset Default"]})]}),(0,s.jsx)(sl,{}),(0,s.jsxs)("div",{className:"space-y-2 border rounded-md p-3 bg-background",children:[(0,s.jsxs)("h4",{className:"text-xs font-medium flex items-center gap-1.5 mb-2",children:[(0,s.jsx)(y,{className:"h-3.5 w-3.5"}),r.settings?.prompts?.variables||"Available Variables"]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(sn,{name:"language_instruction",description:r.settings?.prompts?.vars?.languageInstruction||"Injects instructions based on target language (e.g., keep English questions in English but analysis in Chinese)."}),(0,s.jsx)(sn,{name:"knowledge_points_list",description:r.settings?.prompts?.vars?.knowledgePointsList||"Injects the standard list of knowledge point tags for the specific subject."}),(0,s.jsx)(sn,{name:"provider_hints",description:r.settings?.prompts?.vars?.providerHints||"System-injected hints (e.g., enforcing JSON format)."})]})]}),(0,s.jsx)(e6.f,{value:i,onChange:e=>c("analyze",e.target.value),className:"font-mono text-xs min-h-[400px]",placeholder:sa})]})}),(0,s.jsx)(M.S,{value:"similar",className:"space-y-4 py-4",children:(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex justify-between items-center",children:[(0,s.jsx)(ee.f,{className:"text-base font-semibold",children:r.settings?.prompts?.customSimilar||"Custom Similar Question Template"}),(0,s.jsxs)(C.f,{variant:"outline",size:"sm",onClick:()=>l("similar"),children:[(0,s.jsx)(si.f,{className:"w-4 h-4 mr-2"}),r.settings?.prompts?.reset||"Reset Default"]})]}),(0,s.jsx)(sl,{}),(0,s.jsxs)("div",{className:"space-y-2 border rounded-md p-3 bg-background",children:[(0,s.jsxs)("h4",{className:"text-xs font-medium flex items-center gap-1.5 mb-2",children:[(0,s.jsx)(y,{className:"h-3.5 w-3.5"}),r.settings?.prompts?.variables||"Available Variables"]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(sn,{name:"difficulty_level",description:r.settings?.prompts?.vars?.difficultyLevel||"Target difficulty level."}),(0,s.jsx)(sn,{name:"difficulty_instruction",description:r.settings?.prompts?.vars?.difficultyInstruction||"Specific writing instructions for the target difficulty."}),(0,s.jsx)(sn,{name:"original_question",description:r.settings?.prompts?.vars?.originalQuestion||"The full text of the original question."}),(0,s.jsx)(sn,{name:"knowledge_points",description:r.settings?.prompts?.vars?.knowledgePoints||"List of knowledge points to test."}),(0,s.jsx)(sn,{name:"language_instruction",description:r.settings?.prompts?.vars?.languageInstructionShort||"Language formatting instructions."})]})]}),(0,s.jsx)(e6.f,{value:n,onChange:e=>c("similar",e.target.value),className:"font-mono text-xs min-h-[400px]",placeholder:sr})]})})]})})}function so({value:e,icon:t,label:a}){return(0,s.jsxs)(M.k,{value:e,className:"px-2 sm:px-3",children:[t,(0,s.jsx)("span",{className:"hidden sm:inline",children:a})]})}function sd(){let{setTimeZone:e}=(0,r.M)(),{data:i}=(0,a.useSession)(),n=i?.user?.role==="admin",{t:o}=(0,t.b)(),d=(0,l.useRouter)(),[m,u]=(0,g.useState)(!1),x=(0,g.useRef)(null),[p,f]=(0,g.useState)(!1),[I,E]=(0,g.useState)(!1),[P,U]=(0,g.useState)({aiProvider:"minimax"}),R=(0,g.useCallback)(async()=>{E(!0);try{U(await ed.f.get("/api/settings"))}catch(e){eu.f.error("[SettingsDialog]","Failed to fetch settings",{error:e})}finally{E(!1)}},[]);(0,g.useEffect)(()=>{m&&R()},[m,R]);let _=async()=>{let s=function(e,s){if(!(0,T.L)(e.timeZone??T.J))return s.settings.general.invalidTimeZone;if("openai"===e.aiProvider)for(let t of e.openai?.instances||[]){if(!t.name?.trim())return s.settings?.ai?.validationNameRequired||"Instance name is required";if(!t.apiKey?.trim())return s.settings?.ai?.validationApiKeyRequired||"API Key is required";if(!t.baseUrl?.trim())return s.settings?.ai?.validationBaseUrlRequired||"Base URL is required";if(!t.model?.trim())return s.settings?.ai?.validationModelRequired||"Model name is required"}if("azure"===e.aiProvider){if(!e.azure?.endpoint?.trim())return s.settings?.ai?.validationAzureEndpointRequired||"Azure Endpoint is required";if(!e.azure?.deploymentName?.trim())return s.settings?.ai?.validationAzureDeploymentRequired||"Deployment Name is required";if(!e.azure?.apiKey?.trim())return s.settings?.ai?.validationApiKeyRequired||"API Key is required"}return null}(P,o);if(s)return void em.c.error(s);f(!0);try{let s=await ed.f.post("/api/settings",P);U(s),e(s.timeZone||T.J),em.c.success(o.settings?.messages?.saved||"Settings saved"),x.current?.scrollTo({top:0,behavior:"smooth"})}catch(e){eu.f.error("[SettingsDialog]","Failed to save settings",{error:e}),em.c.error(o.settings?.messages?.saveFailed||"Failed to save")}finally{f(!1)}},z=e=>(0,s.jsxs)(C.f,{onClick:_,disabled:p,className:"w-full",children:[p&&(0,s.jsx)(N.f,{className:"mr-2 h-4 w-4 animate-spin"}),e]});return(0,s.jsxs)(A.N,{open:m,onOpenChange:u,children:[(0,s.jsx)(A.a,{asChild:!0,children:(0,s.jsxs)(C.f,{variant:"ghost",size:"icon",className:"rounded-full",children:[(0,s.jsx)(k,{className:"h-5 w-5"}),(0,s.jsx)("span",{className:"sr-only",children:o.settings?.title||"Settings"})]})}),(0,s.jsxs)(A.d,{ref:x,className:"w-[calc(100vw-2rem)] sm:max-w-[900px] max-h-[85vh] overflow-y-auto",children:[(0,s.jsxs)(A.s,{children:[(0,s.jsx)(A.F,{children:o.settings?.title||"Settings"}),(0,s.jsx)(A.C,{children:o.settings?.desc||"Manage your preferences and data."})]}),(0,s.jsxs)(M.i,{defaultValue:"general",className:"w-full",children:[(0,s.jsxs)(M.U,{className:`grid w-full grid-cols-4 ${n?"sm:grid-cols-7":"sm:grid-cols-4"} gap-1 h-auto`,children:[(0,s.jsx)(so,{value:"general",icon:(0,s.jsx)(b.f,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.general||"General"}),(0,s.jsx)(so,{value:"account",icon:(0,s.jsx)(S.f,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.account||"Account"}),n&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(so,{value:"ai",icon:(0,s.jsx)(v,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.ai||"AI Provider"}),(0,s.jsx)(so,{value:"prompts",icon:(0,s.jsx)(w,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.prompts||"Prompts"}),(0,s.jsx)(so,{value:"admin",icon:(0,s.jsx)(h,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.admin||"User Management"})]}),(0,s.jsx)(so,{value:"danger",icon:(0,s.jsx)(j,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.danger||"Danger"}),(0,s.jsx)(so,{value:"about",icon:(0,s.jsx)(y,{className:"h-4 w-4 sm:mr-2"}),label:o.settings?.tabs?.about||"About"})]}),(0,s.jsxs)(M.S,{value:"general",className:"space-y-4 py-4",children:[(0,s.jsx)(e5,{config:P,setConfig:U,isAdmin:n,disabled:I||p}),n&&z(o.settings?.save||"Save Settings")]}),(0,s.jsx)(M.S,{value:"account",className:"space-y-4 py-4",children:(0,s.jsx)(eT,{})}),(0,s.jsx)(M.S,{value:"ai",className:"space-y-4 py-4",children:(0,s.jsx)(eB,{config:P,setConfig:U,loading:I,saving:p,onSave:_})}),(0,s.jsxs)(M.S,{value:"prompts",className:"space-y-4 py-4",children:[(0,s.jsx)(sc,{config:P,onUpdate:(e,s)=>U(t=>({...t,prompts:{...t.prompts,[e]:s}}))}),z(o.settings?.prompts?.save||"Save Prompt Settings")]}),n&&(0,s.jsxs)(M.S,{value:"admin",className:"space-y-4 py-4",children:[(0,s.jsxs)(C.f,{variant:"outline",className:"w-full justify-start gap-2",onClick:()=>{u(!1),d.push("/admin")},children:[(0,s.jsx)(c.f,{className:"h-4 w-4"}),o.admin?.dashboard?.title||"Admin Dashboard"]}),(0,s.jsx)("div",{className:"border-t pt-4",children:(0,s.jsx)(ep,{})})]}),(0,s.jsx)(M.S,{value:"danger",className:"space-y-4 py-4",children:(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)(eZ,{isAdmin:n}),(0,s.jsx)(eY,{isAdmin:n})]})}),(0,s.jsx)(M.S,{value:"about",className:"space-y-4 py-4",children:(0,s.jsx)(ew,{})})]})]})]})}let sm=[/^\/login/,/^\/register/,/^\/print-preview/,/^\/exams\/[^/]+\/print/],su=[{key:"home",href:"/",icon:p,match:e=>"/"===e},{key:"notebooks",href:"/notebooks",icon:o.f,match:e=>e.startsWith("/notebooks")||e.startsWith("/error-items")||e.startsWith("/practice")},{key:"review",href:"/review",icon:d.f,match:e=>e.startsWith("/review")},{key:"tags",href:"/tags",icon:f,match:e=>e.startsWith("/tags")},{key:"stats",href:"/stats",icon:c.f,match:e=>e.startsWith("/stats")},{key:"exams",href:"/exams",icon:m.f,match:e=>e.startsWith("/exams")}];function sx({children:e}){let r=(0,l.usePathname)()||"/",{t:c}=(0,t.b)(),{data:o,status:d}=(0,a.useSession)();if(sm.some(e=>e.test(r))||"unauthenticated"===d)return(0,s.jsx)(s.Fragment,{children:e});let m=o?.user?.role==="admin",u=o?.user?.name||o?.user?.email||"";return(0,s.jsxs)("div",{className:"min-h-screen",children:[(0,s.jsx)("header",{className:"sticky top-0 z-40 border-b bg-card/80 backdrop-blur-md supports-[backdrop-filter]:bg-card/70 print:hidden",children:(0,s.jsxs)("div",{className:"mx-auto flex h-14 max-w-6xl items-center gap-3 px-4 md:h-16 md:px-8",children:[(0,s.jsxs)(n.default,{href:"/",className:"flex shrink-0 items-center gap-2",children:[(0,s.jsx)(i.default,{src:"/icons/icon.png",alt:"",width:32,height:32,className:"rounded-lg",priority:!0,unoptimized:!0}),(0,s.jsx)("span",{className:"text-base font-semibold tracking-tight",children:c.pageTitle.base})]}),(0,s.jsx)("nav",{className:"ml-4 hidden items-center gap-1 md:flex",children:su.map(e=>{let t=e.match(r),a=e.icon;return(0,s.jsxs)(n.default,{href:e.href,className:(0,J.f)("flex items-center gap-1.5 rounded-lg px-3 py-2 text-sm font-medium transition-colors",t?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-muted hover:text-foreground"),"aria-current":t?"page":void 0,children:[(0,s.jsx)(a,{className:"h-4 w-4"}),c.nav[e.key]]},e.key)})}),(0,s.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[u&&(0,s.jsxs)("span",{className:"mr-2 hidden max-w-40 items-center gap-2 truncate text-sm text-muted-foreground lg:flex",children:[(0,s.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary/10 text-xs font-semibold text-primary",children:u.slice(0,1).toUpperCase()}),(0,s.jsx)("span",{className:"truncate",children:u})]}),m&&(0,s.jsx)(n.default,{href:"/admin",title:c.nav.admin,children:(0,s.jsxs)(C.f,{variant:"ghost",size:"icon",className:"rounded-full",children:[(0,s.jsx)(h,{className:"h-5 w-5"}),(0,s.jsx)("span",{className:"sr-only",children:c.nav.admin})]})}),(0,s.jsx)(sd,{}),(0,s.jsx)(C.f,{variant:"ghost",size:"icon",className:"rounded-full text-muted-foreground hover:text-destructive",onClick:()=>(0,a.signOut)({callbackUrl:"/login"}),title:c.app.logout,children:(0,s.jsx)(x,{className:"h-5 w-5"})})]})]})}),(0,s.jsx)("div",{className:"pb-20 md:pb-0",children:e}),(0,s.jsx)("nav",{className:"pb-safe fixed inset-x-0 bottom-0 z-40 border-t bg-card/90 backdrop-blur-md md:hidden print:hidden",children:(0,s.jsx)("div",{className:"grid h-16 grid-cols-6",children:su.map(e=>{let t=e.match(r),a=e.icon;return(0,s.jsxs)(n.default,{href:e.href,className:(0,J.f)("flex flex-col items-center justify-center gap-1 text-[11px] font-medium transition-colors",t?"text-primary":"text-muted-foreground"),"aria-current":t?"page":void 0,children:[(0,s.jsx)("span",{className:(0,J.f)("flex h-7 w-12 items-center justify-center rounded-full transition-colors",t&&"bg-accent"),children:(0,s.jsx)(a,{className:"h-5 w-5"})}),c.nav[e.key]]},e.key)})})})]})}let sp=(0,u.f)("list-todo",[["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"}],["rect",{x:"3",y:"4",width:"6",height:"6",rx:"1",key:"cif1o7"}]]),sh=[/^\/login/,/^\/register/,/^\/print-preview/,/^\/exams\/[^/]+\/print/];function sf(){let{t:e}=(0,t.b)(),{timeZone:i}=(0,r.M)(),{status:c}=(0,a.useSession)(),o=(0,l.usePathname)(),[d,m]=(0,g.useState)(!1),[u,x]=(0,g.useState)([]),[p,h]=(0,g.useState)(()=>Date.now()),f="authenticated"!==c||sh.some(e=>e.test(o||"")),j=(0,g.useCallback)(async()=>{if("u"<typeof document||"hidden"!==document.visibilityState)try{let e=await ed.f.get("/api/tasks");x(e.tasks),h(Date.now())}catch{}},[]);if((0,g.useEffect)(()=>{if(f)return;let e=setTimeout(j,0),s=setInterval(j,d?2e3:15e3);return()=>{clearTimeout(e),clearInterval(s)}},[f,d,j]),f)return null;let v=u.filter(e=>"running"===e.status).length,y=u.some(e=>"running"!==e.status),b=async()=>{try{let e=await ed.f.delete("/api/tasks");x(e.tasks)}catch{}};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(C.f,{variant:"outline",size:"icon",className:"fixed bottom-20 right-4 z-40 h-11 w-11 rounded-full shadow-lg md:bottom-6 md:right-6 print:hidden",onClick:()=>m(!0),"aria-label":e.backgroundTasks.title,title:e.backgroundTasks.title,children:[v>0?(0,s.jsx)(N.f,{className:"h-5 w-5 animate-spin"}):(0,s.jsx)(sp,{className:"h-5 w-5"}),v>0&&(0,s.jsx)("span",{className:"absolute -right-1 -top-1 flex h-5 min-w-5 items-center justify-center rounded-full bg-primary px-1 text-xs text-primary-foreground",children:v})]}),(0,s.jsx)(A.N,{open:d,onOpenChange:m,children:(0,s.jsxs)(A.d,{className:"max-h-[85vh] overflow-y-auto sm:max-w-lg",children:[(0,s.jsxs)(A.s,{children:[(0,s.jsx)(A.F,{children:e.backgroundTasks.title}),(0,s.jsx)(A.C,{children:e.backgroundTasks.description})]}),0===u.length?(0,s.jsx)("p",{className:"py-6 text-center text-sm text-muted-foreground",children:e.backgroundTasks.empty}):(0,s.jsx)("ul",{className:"space-y-2",children:u.map(t=>{var a,r;let l;return(0,s.jsx)("li",{className:"rounded-md border p-3 text-sm",children:(0,s.jsxs)("div",{className:"flex items-start gap-2",children:["running"===t.status&&(0,s.jsx)(N.f,{className:"mt-0.5 h-4 w-4 shrink-0 animate-spin text-primary"}),"succeeded"===t.status&&(0,s.jsx)(eI,{className:"mt-0.5 h-4 w-4 shrink-0 text-green-600"}),"failed"===t.status&&(0,s.jsx)(eE.f,{className:"mt-0.5 h-4 w-4 shrink-0 text-destructive"}),(0,s.jsxs)("div",{className:"min-w-0 flex-1 space-y-1",children:[(0,s.jsxs)("div",{className:"font-medium",children:[e.backgroundTasks.kinds[t.kind],(0,s.jsxs)("span",{className:"font-normal text-muted-foreground",children:[" · ",e.backgroundTasks.status[t.status]]})]}),t.subject&&(0,s.jsx)("div",{className:"break-words text-muted-foreground",children:t.subject}),t.progress&&t.progress.total>0&&(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("div",{className:"h-1.5 overflow-hidden rounded bg-muted",children:(0,s.jsx)("div",{className:"h-full bg-primary transition-all",style:{width:`${Math.round(t.progress.done/t.progress.total*100)}%`}})}),(0,s.jsxs)("div",{className:"text-xs text-muted-foreground",children:[e.backgroundTasks.progress.replace("{done}",String(t.progress.done)).replace("{total}",String(t.progress.total)),t.progress.failed>0&&` \xb7 ${e.backgroundTasks.failedCount.replace("{count}",String(t.progress.failed))}`]})]}),t.error&&(0,s.jsx)("div",{className:"text-xs text-destructive",children:(s=>{if(!s)return null;let t=e.backgroundTasks.errors[s]??e.errors[s];return"string"==typeof t?t:s})(t.error)}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-x-3 text-xs text-muted-foreground",children:[(0,s.jsx)("span",{children:e.backgroundTasks.startedAt.replace("{time}",(0,T.r)(t.startedAt,"HH:mm:ss",i))}),(0,s.jsx)("span",{children:e.backgroundTasks.elapsed.replace("{time}",(a=t.startedAt,r=t.finishedAt,l=Math.max(0,Math.round(((r?Date.parse(r):p)-Date.parse(a))/1e3)),`${Math.floor(l/60)}:${String(l%60).padStart(2,"0")}`))}),t.link&&(0,s.jsx)(n.default,{href:t.link,className:"text-primary hover:underline",onClick:()=>m(!1),children:e.backgroundTasks.view})]})]})]})},t.id)})}),(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2 pt-1",children:[(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:e.backgroundTasks.retentionHint}),y&&(0,s.jsx)(C.f,{variant:"ghost",size:"sm",onClick:b,children:e.backgroundTasks.clearFinished})]})]})})]})}var sg=e.i(37727);let sj={success:{icon:eI,className:"text-success"},error:{icon:eE.f,className:"text-destructive"},warning:{icon:j,className:"text-warning"},info:{icon:y,className:"text-primary"}};function sv(){let{t:e}=(0,t.b)(),[a,r]=(0,g.useState)([]),[i,n]=(0,g.useState)(null);return(0,g.useEffect)(()=>(0,em.M)(e=>{r(e.toasts),n(e.confirm)}),[]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"pointer-events-none fixed inset-x-0 top-3 z-[100] flex flex-col items-center gap-2 px-4 print:hidden",role:"status","aria-live":"polite",children:a.map(t=>{let{icon:a,className:r}=sj[t.type];return(0,s.jsxs)("div",{className:"pointer-events-auto flex w-full max-w-sm items-start gap-3 rounded-xl border bg-card/95 px-4 py-3 text-sm shadow-lg backdrop-blur animate-in fade-in slide-in-from-top-2 duration-200",children:[(0,s.jsx)(a,{className:(0,J.f)("mt-0.5 h-4 w-4 shrink-0",r)}),(0,s.jsx)("p",{className:"min-w-0 flex-1 whitespace-pre-line break-words leading-relaxed",children:t.message}),(0,s.jsx)("button",{type:"button",className:"shrink-0 rounded p-0.5 text-muted-foreground transition-colors hover:text-foreground",onClick:()=>(0,em.p)(t.id),"aria-label":e.common.close,children:(0,s.jsx)(sg.X,{className:"h-3.5 w-3.5"})})]},t.id)})}),(0,s.jsx)(A.N,{open:!!i,onOpenChange:e=>{e||i?.resolve(!1)},children:(0,s.jsxs)(A.d,{className:"sm:max-w-md",children:[(0,s.jsxs)(A.s,{children:[(0,s.jsxs)(A.F,{className:"flex items-center gap-2",children:[i?.destructive&&(0,s.jsx)(j,{className:"h-5 w-5 text-destructive"}),i?.title||e.common.confirmTitle]}),(0,s.jsx)(A.C,{className:"whitespace-pre-line pt-1 text-left leading-relaxed",children:i?.message})]}),(0,s.jsxs)(A.c,{className:"gap-2",children:[(0,s.jsx)(C.f,{variant:"outline",onClick:()=>i?.resolve(!1),children:i?.cancelText||e.common.cancel}),(0,s.jsx)(C.f,{variant:i?.destructive?"destructive":"default",onClick:()=>i?.resolve(!0),autoFocus:!0,children:i?.confirmText||e.common.confirm})]})]})})]})}function sy(){return(0,g.useEffect)(()=>{"serviceWorker"in navigator&&navigator.serviceWorker.register("/sw.js",{scope:"/"}).catch(e=>{eu.f.warn("[PWA]","Service worker registration failed",{error:String(e)})})},[]),null}e.s(["Providers",0,function({children:e,timeZone:i}){return(0,s.jsx)(a.SessionProvider,{children:(0,s.jsx)(t.w,{children:(0,s.jsxs)(r.n,{initialTimeZone:i,children:[(0,s.jsx)(sx,{children:e}),(0,s.jsx)(sf,{}),(0,s.jsx)(sv,{}),(0,s.jsx)(sy,{})]})})})}],1661)}]);