wrong-notebook 0.0.0-stage → 2026.10.21

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 (1067) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +81 -0
  3. package/.next/build-manifest.json +24 -0
  4. package/.next/package.json +1 -0
  5. package/.next/prerender-manifest.json +104 -0
  6. package/.next/required-server-files.json +358 -0
  7. package/.next/routes-manifest.json +579 -0
  8. package/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  9. package/.next/server/app/_global-error/page/build-manifest.json +20 -0
  10. package/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  11. package/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  12. package/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
  13. package/.next/server/app/_global-error/page.js +9 -0
  14. package/.next/server/app/_global-error/page.js.map +5 -0
  15. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  16. package/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
  17. package/.next/server/app/_global-error.html +1 -0
  18. package/.next/server/app/_global-error.meta +30 -0
  19. package/.next/server/app/_global-error.rsc +15 -0
  20. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +20 -0
  21. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  22. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  23. package/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  24. package/.next/server/app/_not-found/page/build-manifest.json +20 -0
  25. package/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
  26. package/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  27. package/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
  28. package/.next/server/app/_not-found/page.js +13 -0
  29. package/.next/server/app/_not-found/page.js.map +5 -0
  30. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  31. package/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  32. package/.next/server/app/admin/page/app-paths-manifest.json +3 -0
  33. package/.next/server/app/admin/page/build-manifest.json +20 -0
  34. package/.next/server/app/admin/page/next-font-manifest.json +11 -0
  35. package/.next/server/app/admin/page/react-loadable-manifest.json +1 -0
  36. package/.next/server/app/admin/page/server-reference-manifest.json +4 -0
  37. package/.next/server/app/admin/page.js +14 -0
  38. package/.next/server/app/admin/page.js.map +5 -0
  39. package/.next/server/app/admin/page.js.nft.json +1 -0
  40. package/.next/server/app/admin/page_client-reference-manifest.js +3 -0
  41. package/.next/server/app/admin/user/[id]/page/app-paths-manifest.json +3 -0
  42. package/.next/server/app/admin/user/[id]/page/build-manifest.json +20 -0
  43. package/.next/server/app/admin/user/[id]/page/next-font-manifest.json +11 -0
  44. package/.next/server/app/admin/user/[id]/page/react-loadable-manifest.json +1 -0
  45. package/.next/server/app/admin/user/[id]/page/server-reference-manifest.json +4 -0
  46. package/.next/server/app/admin/user/[id]/page.js +14 -0
  47. package/.next/server/app/admin/user/[id]/page.js.map +5 -0
  48. package/.next/server/app/admin/user/[id]/page.js.nft.json +1 -0
  49. package/.next/server/app/admin/user/[id]/page_client-reference-manifest.js +3 -0
  50. package/.next/server/app/api/admin/dashboard/route/app-paths-manifest.json +3 -0
  51. package/.next/server/app/api/admin/dashboard/route/build-manifest.json +12 -0
  52. package/.next/server/app/api/admin/dashboard/route/server-reference-manifest.json +4 -0
  53. package/.next/server/app/api/admin/dashboard/route.js +10 -0
  54. package/.next/server/app/api/admin/dashboard/route.js.map +5 -0
  55. package/.next/server/app/api/admin/dashboard/route.js.nft.json +1 -0
  56. package/.next/server/app/api/admin/dashboard/route_client-reference-manifest.js +3 -0
  57. package/.next/server/app/api/admin/migrate-tags/route/app-paths-manifest.json +3 -0
  58. package/.next/server/app/api/admin/migrate-tags/route/build-manifest.json +12 -0
  59. package/.next/server/app/api/admin/migrate-tags/route/server-reference-manifest.json +4 -0
  60. package/.next/server/app/api/admin/migrate-tags/route.js +9 -0
  61. package/.next/server/app/api/admin/migrate-tags/route.js.map +5 -0
  62. package/.next/server/app/api/admin/migrate-tags/route.js.nft.json +1 -0
  63. package/.next/server/app/api/admin/migrate-tags/route_client-reference-manifest.js +3 -0
  64. package/.next/server/app/api/admin/system-reset/route/app-paths-manifest.json +3 -0
  65. package/.next/server/app/api/admin/system-reset/route/build-manifest.json +12 -0
  66. package/.next/server/app/api/admin/system-reset/route/server-reference-manifest.json +4 -0
  67. package/.next/server/app/api/admin/system-reset/route.js +8 -0
  68. package/.next/server/app/api/admin/system-reset/route.js.map +5 -0
  69. package/.next/server/app/api/admin/system-reset/route.js.nft.json +1 -0
  70. package/.next/server/app/api/admin/system-reset/route_client-reference-manifest.js +3 -0
  71. package/.next/server/app/api/admin/users/[id]/detail/route/app-paths-manifest.json +3 -0
  72. package/.next/server/app/api/admin/users/[id]/detail/route/build-manifest.json +12 -0
  73. package/.next/server/app/api/admin/users/[id]/detail/route/server-reference-manifest.json +4 -0
  74. package/.next/server/app/api/admin/users/[id]/detail/route.js +9 -0
  75. package/.next/server/app/api/admin/users/[id]/detail/route.js.map +5 -0
  76. package/.next/server/app/api/admin/users/[id]/detail/route.js.nft.json +1 -0
  77. package/.next/server/app/api/admin/users/[id]/detail/route_client-reference-manifest.js +3 -0
  78. package/.next/server/app/api/admin/users/[id]/route/app-paths-manifest.json +3 -0
  79. package/.next/server/app/api/admin/users/[id]/route/build-manifest.json +12 -0
  80. package/.next/server/app/api/admin/users/[id]/route/server-reference-manifest.json +4 -0
  81. package/.next/server/app/api/admin/users/[id]/route.js +8 -0
  82. package/.next/server/app/api/admin/users/[id]/route.js.map +5 -0
  83. package/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -0
  84. package/.next/server/app/api/admin/users/[id]/route_client-reference-manifest.js +3 -0
  85. package/.next/server/app/api/admin/users/route/app-paths-manifest.json +3 -0
  86. package/.next/server/app/api/admin/users/route/build-manifest.json +12 -0
  87. package/.next/server/app/api/admin/users/route/server-reference-manifest.json +4 -0
  88. package/.next/server/app/api/admin/users/route.js +8 -0
  89. package/.next/server/app/api/admin/users/route.js.map +5 -0
  90. package/.next/server/app/api/admin/users/route.js.nft.json +1 -0
  91. package/.next/server/app/api/admin/users/route_client-reference-manifest.js +3 -0
  92. package/.next/server/app/api/ai/models/route/app-paths-manifest.json +3 -0
  93. package/.next/server/app/api/ai/models/route/build-manifest.json +12 -0
  94. package/.next/server/app/api/ai/models/route/server-reference-manifest.json +4 -0
  95. package/.next/server/app/api/ai/models/route.js +14 -0
  96. package/.next/server/app/api/ai/models/route.js.map +5 -0
  97. package/.next/server/app/api/ai/models/route.js.nft.json +1 -0
  98. package/.next/server/app/api/ai/models/route_client-reference-manifest.js +3 -0
  99. package/.next/server/app/api/ai/test/route/app-paths-manifest.json +3 -0
  100. package/.next/server/app/api/ai/test/route/build-manifest.json +12 -0
  101. package/.next/server/app/api/ai/test/route/server-reference-manifest.json +4 -0
  102. package/.next/server/app/api/ai/test/route.js +15 -0
  103. package/.next/server/app/api/ai/test/route.js.map +5 -0
  104. package/.next/server/app/api/ai/test/route.js.nft.json +1 -0
  105. package/.next/server/app/api/ai/test/route_client-reference-manifest.js +3 -0
  106. package/.next/server/app/api/analytics/route/app-paths-manifest.json +3 -0
  107. package/.next/server/app/api/analytics/route/build-manifest.json +12 -0
  108. package/.next/server/app/api/analytics/route/server-reference-manifest.json +4 -0
  109. package/.next/server/app/api/analytics/route.js +9 -0
  110. package/.next/server/app/api/analytics/route.js.map +5 -0
  111. package/.next/server/app/api/analytics/route.js.nft.json +1 -0
  112. package/.next/server/app/api/analytics/route_client-reference-manifest.js +3 -0
  113. package/.next/server/app/api/analyze/route/app-paths-manifest.json +3 -0
  114. package/.next/server/app/api/analyze/route/build-manifest.json +12 -0
  115. package/.next/server/app/api/analyze/route/server-reference-manifest.json +4 -0
  116. package/.next/server/app/api/analyze/route.js +16 -0
  117. package/.next/server/app/api/analyze/route.js.map +5 -0
  118. package/.next/server/app/api/analyze/route.js.nft.json +1 -0
  119. package/.next/server/app/api/analyze/route_client-reference-manifest.js +3 -0
  120. package/.next/server/app/api/auth/[...nextauth]/route/app-paths-manifest.json +3 -0
  121. package/.next/server/app/api/auth/[...nextauth]/route/build-manifest.json +12 -0
  122. package/.next/server/app/api/auth/[...nextauth]/route/server-reference-manifest.json +4 -0
  123. package/.next/server/app/api/auth/[...nextauth]/route.js +7 -0
  124. package/.next/server/app/api/auth/[...nextauth]/route.js.map +5 -0
  125. package/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -0
  126. package/.next/server/app/api/auth/[...nextauth]/route_client-reference-manifest.js +3 -0
  127. package/.next/server/app/api/error-items/[id]/delete/route/app-paths-manifest.json +3 -0
  128. package/.next/server/app/api/error-items/[id]/delete/route/build-manifest.json +12 -0
  129. package/.next/server/app/api/error-items/[id]/delete/route/server-reference-manifest.json +4 -0
  130. package/.next/server/app/api/error-items/[id]/delete/route.js +8 -0
  131. package/.next/server/app/api/error-items/[id]/delete/route.js.map +5 -0
  132. package/.next/server/app/api/error-items/[id]/delete/route.js.nft.json +1 -0
  133. package/.next/server/app/api/error-items/[id]/delete/route_client-reference-manifest.js +3 -0
  134. package/.next/server/app/api/error-items/[id]/figure/route/app-paths-manifest.json +3 -0
  135. package/.next/server/app/api/error-items/[id]/figure/route/build-manifest.json +12 -0
  136. package/.next/server/app/api/error-items/[id]/figure/route/server-reference-manifest.json +4 -0
  137. package/.next/server/app/api/error-items/[id]/figure/route.js +15 -0
  138. package/.next/server/app/api/error-items/[id]/figure/route.js.map +5 -0
  139. package/.next/server/app/api/error-items/[id]/figure/route.js.nft.json +1 -0
  140. package/.next/server/app/api/error-items/[id]/figure/route_client-reference-manifest.js +3 -0
  141. package/.next/server/app/api/error-items/[id]/fix-latex/route/app-paths-manifest.json +3 -0
  142. package/.next/server/app/api/error-items/[id]/fix-latex/route/build-manifest.json +12 -0
  143. package/.next/server/app/api/error-items/[id]/fix-latex/route/server-reference-manifest.json +4 -0
  144. package/.next/server/app/api/error-items/[id]/fix-latex/route.js +16 -0
  145. package/.next/server/app/api/error-items/[id]/fix-latex/route.js.map +5 -0
  146. package/.next/server/app/api/error-items/[id]/fix-latex/route.js.nft.json +1 -0
  147. package/.next/server/app/api/error-items/[id]/fix-latex/route_client-reference-manifest.js +3 -0
  148. package/.next/server/app/api/error-items/[id]/geogebra/route/app-paths-manifest.json +3 -0
  149. package/.next/server/app/api/error-items/[id]/geogebra/route/build-manifest.json +12 -0
  150. package/.next/server/app/api/error-items/[id]/geogebra/route/server-reference-manifest.json +4 -0
  151. package/.next/server/app/api/error-items/[id]/geogebra/route.js +15 -0
  152. package/.next/server/app/api/error-items/[id]/geogebra/route.js.map +5 -0
  153. package/.next/server/app/api/error-items/[id]/geogebra/route.js.nft.json +1 -0
  154. package/.next/server/app/api/error-items/[id]/geogebra/route_client-reference-manifest.js +3 -0
  155. package/.next/server/app/api/error-items/[id]/image/route/app-paths-manifest.json +3 -0
  156. package/.next/server/app/api/error-items/[id]/image/route/build-manifest.json +12 -0
  157. package/.next/server/app/api/error-items/[id]/image/route/server-reference-manifest.json +4 -0
  158. package/.next/server/app/api/error-items/[id]/image/route.js +9 -0
  159. package/.next/server/app/api/error-items/[id]/image/route.js.map +5 -0
  160. package/.next/server/app/api/error-items/[id]/image/route.js.nft.json +1 -0
  161. package/.next/server/app/api/error-items/[id]/image/route_client-reference-manifest.js +3 -0
  162. package/.next/server/app/api/error-items/[id]/mastery/route/app-paths-manifest.json +3 -0
  163. package/.next/server/app/api/error-items/[id]/mastery/route/build-manifest.json +12 -0
  164. package/.next/server/app/api/error-items/[id]/mastery/route/server-reference-manifest.json +4 -0
  165. package/.next/server/app/api/error-items/[id]/mastery/route.js +8 -0
  166. package/.next/server/app/api/error-items/[id]/mastery/route.js.map +5 -0
  167. package/.next/server/app/api/error-items/[id]/mastery/route.js.nft.json +1 -0
  168. package/.next/server/app/api/error-items/[id]/mastery/route_client-reference-manifest.js +3 -0
  169. package/.next/server/app/api/error-items/[id]/notes/route/app-paths-manifest.json +3 -0
  170. package/.next/server/app/api/error-items/[id]/notes/route/build-manifest.json +12 -0
  171. package/.next/server/app/api/error-items/[id]/notes/route/server-reference-manifest.json +4 -0
  172. package/.next/server/app/api/error-items/[id]/notes/route.js +8 -0
  173. package/.next/server/app/api/error-items/[id]/notes/route.js.map +5 -0
  174. package/.next/server/app/api/error-items/[id]/notes/route.js.nft.json +1 -0
  175. package/.next/server/app/api/error-items/[id]/notes/route_client-reference-manifest.js +3 -0
  176. package/.next/server/app/api/error-items/[id]/practice-records/route/app-paths-manifest.json +3 -0
  177. package/.next/server/app/api/error-items/[id]/practice-records/route/build-manifest.json +12 -0
  178. package/.next/server/app/api/error-items/[id]/practice-records/route/server-reference-manifest.json +4 -0
  179. package/.next/server/app/api/error-items/[id]/practice-records/route.js +8 -0
  180. package/.next/server/app/api/error-items/[id]/practice-records/route.js.map +5 -0
  181. package/.next/server/app/api/error-items/[id]/practice-records/route.js.nft.json +1 -0
  182. package/.next/server/app/api/error-items/[id]/practice-records/route_client-reference-manifest.js +3 -0
  183. package/.next/server/app/api/error-items/[id]/reanswer/route/app-paths-manifest.json +3 -0
  184. package/.next/server/app/api/error-items/[id]/reanswer/route/build-manifest.json +12 -0
  185. package/.next/server/app/api/error-items/[id]/reanswer/route/server-reference-manifest.json +4 -0
  186. package/.next/server/app/api/error-items/[id]/reanswer/route.js +15 -0
  187. package/.next/server/app/api/error-items/[id]/reanswer/route.js.map +5 -0
  188. package/.next/server/app/api/error-items/[id]/reanswer/route.js.nft.json +1 -0
  189. package/.next/server/app/api/error-items/[id]/reanswer/route_client-reference-manifest.js +3 -0
  190. package/.next/server/app/api/error-items/[id]/retag/route/app-paths-manifest.json +3 -0
  191. package/.next/server/app/api/error-items/[id]/retag/route/build-manifest.json +12 -0
  192. package/.next/server/app/api/error-items/[id]/retag/route/server-reference-manifest.json +4 -0
  193. package/.next/server/app/api/error-items/[id]/retag/route.js +16 -0
  194. package/.next/server/app/api/error-items/[id]/retag/route.js.map +5 -0
  195. package/.next/server/app/api/error-items/[id]/retag/route.js.nft.json +1 -0
  196. package/.next/server/app/api/error-items/[id]/retag/route_client-reference-manifest.js +3 -0
  197. package/.next/server/app/api/error-items/[id]/route/app-paths-manifest.json +3 -0
  198. package/.next/server/app/api/error-items/[id]/route/build-manifest.json +12 -0
  199. package/.next/server/app/api/error-items/[id]/route/server-reference-manifest.json +4 -0
  200. package/.next/server/app/api/error-items/[id]/route.js +9 -0
  201. package/.next/server/app/api/error-items/[id]/route.js.map +5 -0
  202. package/.next/server/app/api/error-items/[id]/route.js.nft.json +1 -0
  203. package/.next/server/app/api/error-items/[id]/route_client-reference-manifest.js +3 -0
  204. package/.next/server/app/api/error-items/[id]/svg-animation/route/app-paths-manifest.json +3 -0
  205. package/.next/server/app/api/error-items/[id]/svg-animation/route/build-manifest.json +12 -0
  206. package/.next/server/app/api/error-items/[id]/svg-animation/route/server-reference-manifest.json +4 -0
  207. package/.next/server/app/api/error-items/[id]/svg-animation/route.js +16 -0
  208. package/.next/server/app/api/error-items/[id]/svg-animation/route.js.map +5 -0
  209. package/.next/server/app/api/error-items/[id]/svg-animation/route.js.nft.json +1 -0
  210. package/.next/server/app/api/error-items/[id]/svg-animation/route_client-reference-manifest.js +3 -0
  211. package/.next/server/app/api/error-items/batch-delete/route/app-paths-manifest.json +3 -0
  212. package/.next/server/app/api/error-items/batch-delete/route/build-manifest.json +12 -0
  213. package/.next/server/app/api/error-items/batch-delete/route/server-reference-manifest.json +4 -0
  214. package/.next/server/app/api/error-items/batch-delete/route.js +8 -0
  215. package/.next/server/app/api/error-items/batch-delete/route.js.map +5 -0
  216. package/.next/server/app/api/error-items/batch-delete/route.js.nft.json +1 -0
  217. package/.next/server/app/api/error-items/batch-delete/route_client-reference-manifest.js +3 -0
  218. package/.next/server/app/api/error-items/clear/route/app-paths-manifest.json +3 -0
  219. package/.next/server/app/api/error-items/clear/route/build-manifest.json +12 -0
  220. package/.next/server/app/api/error-items/clear/route/server-reference-manifest.json +4 -0
  221. package/.next/server/app/api/error-items/clear/route.js +8 -0
  222. package/.next/server/app/api/error-items/clear/route.js.map +5 -0
  223. package/.next/server/app/api/error-items/clear/route.js.nft.json +1 -0
  224. package/.next/server/app/api/error-items/clear/route_client-reference-manifest.js +3 -0
  225. package/.next/server/app/api/error-items/list/route/app-paths-manifest.json +3 -0
  226. package/.next/server/app/api/error-items/list/route/build-manifest.json +12 -0
  227. package/.next/server/app/api/error-items/list/route/server-reference-manifest.json +4 -0
  228. package/.next/server/app/api/error-items/list/route.js +10 -0
  229. package/.next/server/app/api/error-items/list/route.js.map +5 -0
  230. package/.next/server/app/api/error-items/list/route.js.nft.json +1 -0
  231. package/.next/server/app/api/error-items/list/route_client-reference-manifest.js +3 -0
  232. package/.next/server/app/api/error-items/route/app-paths-manifest.json +3 -0
  233. package/.next/server/app/api/error-items/route/build-manifest.json +12 -0
  234. package/.next/server/app/api/error-items/route/server-reference-manifest.json +4 -0
  235. package/.next/server/app/api/error-items/route.js +17 -0
  236. package/.next/server/app/api/error-items/route.js.map +5 -0
  237. package/.next/server/app/api/error-items/route.js.nft.json +1 -0
  238. package/.next/server/app/api/error-items/route_client-reference-manifest.js +3 -0
  239. package/.next/server/app/api/error-items/short/[shortId]/route/app-paths-manifest.json +3 -0
  240. package/.next/server/app/api/error-items/short/[shortId]/route/build-manifest.json +12 -0
  241. package/.next/server/app/api/error-items/short/[shortId]/route/server-reference-manifest.json +4 -0
  242. package/.next/server/app/api/error-items/short/[shortId]/route.js +8 -0
  243. package/.next/server/app/api/error-items/short/[shortId]/route.js.map +5 -0
  244. package/.next/server/app/api/error-items/short/[shortId]/route.js.nft.json +1 -0
  245. package/.next/server/app/api/error-items/short/[shortId]/route_client-reference-manifest.js +3 -0
  246. package/.next/server/app/api/error-items/similarity/route/app-paths-manifest.json +3 -0
  247. package/.next/server/app/api/error-items/similarity/route/build-manifest.json +12 -0
  248. package/.next/server/app/api/error-items/similarity/route/server-reference-manifest.json +4 -0
  249. package/.next/server/app/api/error-items/similarity/route.js +9 -0
  250. package/.next/server/app/api/error-items/similarity/route.js.map +5 -0
  251. package/.next/server/app/api/error-items/similarity/route.js.nft.json +1 -0
  252. package/.next/server/app/api/error-items/similarity/route_client-reference-manifest.js +3 -0
  253. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route/app-paths-manifest.json +3 -0
  254. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route/build-manifest.json +12 -0
  255. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route/server-reference-manifest.json +4 -0
  256. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js +16 -0
  257. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js.map +5 -0
  258. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route.js.nft.json +1 -0
  259. package/.next/server/app/api/exams/[id]/questions/[questionId]/regenerate/route_client-reference-manifest.js +3 -0
  260. package/.next/server/app/api/exams/[id]/results/route/app-paths-manifest.json +3 -0
  261. package/.next/server/app/api/exams/[id]/results/route/build-manifest.json +12 -0
  262. package/.next/server/app/api/exams/[id]/results/route/server-reference-manifest.json +4 -0
  263. package/.next/server/app/api/exams/[id]/results/route.js +16 -0
  264. package/.next/server/app/api/exams/[id]/results/route.js.map +5 -0
  265. package/.next/server/app/api/exams/[id]/results/route.js.nft.json +1 -0
  266. package/.next/server/app/api/exams/[id]/results/route_client-reference-manifest.js +3 -0
  267. package/.next/server/app/api/exams/[id]/retry/route/app-paths-manifest.json +3 -0
  268. package/.next/server/app/api/exams/[id]/retry/route/build-manifest.json +12 -0
  269. package/.next/server/app/api/exams/[id]/retry/route/server-reference-manifest.json +4 -0
  270. package/.next/server/app/api/exams/[id]/retry/route.js +16 -0
  271. package/.next/server/app/api/exams/[id]/retry/route.js.map +5 -0
  272. package/.next/server/app/api/exams/[id]/retry/route.js.nft.json +1 -0
  273. package/.next/server/app/api/exams/[id]/retry/route_client-reference-manifest.js +3 -0
  274. package/.next/server/app/api/exams/[id]/route/app-paths-manifest.json +3 -0
  275. package/.next/server/app/api/exams/[id]/route/build-manifest.json +12 -0
  276. package/.next/server/app/api/exams/[id]/route/server-reference-manifest.json +4 -0
  277. package/.next/server/app/api/exams/[id]/route.js +16 -0
  278. package/.next/server/app/api/exams/[id]/route.js.map +5 -0
  279. package/.next/server/app/api/exams/[id]/route.js.nft.json +1 -0
  280. package/.next/server/app/api/exams/[id]/route_client-reference-manifest.js +3 -0
  281. package/.next/server/app/api/exams/route/app-paths-manifest.json +3 -0
  282. package/.next/server/app/api/exams/route/build-manifest.json +12 -0
  283. package/.next/server/app/api/exams/route/server-reference-manifest.json +4 -0
  284. package/.next/server/app/api/exams/route.js +16 -0
  285. package/.next/server/app/api/exams/route.js.map +5 -0
  286. package/.next/server/app/api/exams/route.js.nft.json +1 -0
  287. package/.next/server/app/api/exams/route_client-reference-manifest.js +3 -0
  288. package/.next/server/app/api/export/route/app-paths-manifest.json +3 -0
  289. package/.next/server/app/api/export/route/build-manifest.json +12 -0
  290. package/.next/server/app/api/export/route/server-reference-manifest.json +4 -0
  291. package/.next/server/app/api/export/route.js +10 -0
  292. package/.next/server/app/api/export/route.js.map +5 -0
  293. package/.next/server/app/api/export/route.js.nft.json +1 -0
  294. package/.next/server/app/api/export/route_client-reference-manifest.js +3 -0
  295. package/.next/server/app/api/geogebra-analyze/route/app-paths-manifest.json +3 -0
  296. package/.next/server/app/api/geogebra-analyze/route/build-manifest.json +12 -0
  297. package/.next/server/app/api/geogebra-analyze/route/server-reference-manifest.json +4 -0
  298. package/.next/server/app/api/geogebra-analyze/route.js +15 -0
  299. package/.next/server/app/api/geogebra-analyze/route.js.map +5 -0
  300. package/.next/server/app/api/geogebra-analyze/route.js.nft.json +1 -0
  301. package/.next/server/app/api/geogebra-analyze/route_client-reference-manifest.js +3 -0
  302. package/.next/server/app/api/health/route/app-paths-manifest.json +3 -0
  303. package/.next/server/app/api/health/route/build-manifest.json +12 -0
  304. package/.next/server/app/api/health/route/server-reference-manifest.json +4 -0
  305. package/.next/server/app/api/health/route.js +7 -0
  306. package/.next/server/app/api/health/route.js.map +5 -0
  307. package/.next/server/app/api/health/route.js.nft.json +1 -0
  308. package/.next/server/app/api/health/route_client-reference-manifest.js +3 -0
  309. package/.next/server/app/api/import/route/app-paths-manifest.json +3 -0
  310. package/.next/server/app/api/import/route/build-manifest.json +12 -0
  311. package/.next/server/app/api/import/route/server-reference-manifest.json +4 -0
  312. package/.next/server/app/api/import/route.js +17 -0
  313. package/.next/server/app/api/import/route.js.map +5 -0
  314. package/.next/server/app/api/import/route.js.nft.json +1 -0
  315. package/.next/server/app/api/import/route_client-reference-manifest.js +3 -0
  316. package/.next/server/app/api/logs/frontend/route/app-paths-manifest.json +3 -0
  317. package/.next/server/app/api/logs/frontend/route/build-manifest.json +12 -0
  318. package/.next/server/app/api/logs/frontend/route/server-reference-manifest.json +4 -0
  319. package/.next/server/app/api/logs/frontend/route.js +8 -0
  320. package/.next/server/app/api/logs/frontend/route.js.map +5 -0
  321. package/.next/server/app/api/logs/frontend/route.js.nft.json +1 -0
  322. package/.next/server/app/api/logs/frontend/route_client-reference-manifest.js +3 -0
  323. package/.next/server/app/api/notebooks/[id]/retag/route/app-paths-manifest.json +3 -0
  324. package/.next/server/app/api/notebooks/[id]/retag/route/build-manifest.json +12 -0
  325. package/.next/server/app/api/notebooks/[id]/retag/route/server-reference-manifest.json +4 -0
  326. package/.next/server/app/api/notebooks/[id]/retag/route.js +16 -0
  327. package/.next/server/app/api/notebooks/[id]/retag/route.js.map +5 -0
  328. package/.next/server/app/api/notebooks/[id]/retag/route.js.nft.json +1 -0
  329. package/.next/server/app/api/notebooks/[id]/retag/route_client-reference-manifest.js +3 -0
  330. package/.next/server/app/api/notebooks/[id]/route/app-paths-manifest.json +3 -0
  331. package/.next/server/app/api/notebooks/[id]/route/build-manifest.json +12 -0
  332. package/.next/server/app/api/notebooks/[id]/route/server-reference-manifest.json +4 -0
  333. package/.next/server/app/api/notebooks/[id]/route.js +9 -0
  334. package/.next/server/app/api/notebooks/[id]/route.js.map +5 -0
  335. package/.next/server/app/api/notebooks/[id]/route.js.nft.json +1 -0
  336. package/.next/server/app/api/notebooks/[id]/route_client-reference-manifest.js +3 -0
  337. package/.next/server/app/api/notebooks/route/app-paths-manifest.json +3 -0
  338. package/.next/server/app/api/notebooks/route/build-manifest.json +12 -0
  339. package/.next/server/app/api/notebooks/route/server-reference-manifest.json +4 -0
  340. package/.next/server/app/api/notebooks/route.js +10 -0
  341. package/.next/server/app/api/notebooks/route.js.map +5 -0
  342. package/.next/server/app/api/notebooks/route.js.nft.json +1 -0
  343. package/.next/server/app/api/notebooks/route_client-reference-manifest.js +3 -0
  344. package/.next/server/app/api/openclaw/batch-upload/route/app-paths-manifest.json +3 -0
  345. package/.next/server/app/api/openclaw/batch-upload/route/build-manifest.json +12 -0
  346. package/.next/server/app/api/openclaw/batch-upload/route/server-reference-manifest.json +4 -0
  347. package/.next/server/app/api/openclaw/batch-upload/route.js +15 -0
  348. package/.next/server/app/api/openclaw/batch-upload/route.js.map +5 -0
  349. package/.next/server/app/api/openclaw/batch-upload/route.js.nft.json +1 -0
  350. package/.next/server/app/api/openclaw/batch-upload/route_client-reference-manifest.js +3 -0
  351. package/.next/server/app/api/practice/generate/route/app-paths-manifest.json +3 -0
  352. package/.next/server/app/api/practice/generate/route/build-manifest.json +12 -0
  353. package/.next/server/app/api/practice/generate/route/server-reference-manifest.json +4 -0
  354. package/.next/server/app/api/practice/generate/route.js +15 -0
  355. package/.next/server/app/api/practice/generate/route.js.map +5 -0
  356. package/.next/server/app/api/practice/generate/route.js.nft.json +1 -0
  357. package/.next/server/app/api/practice/generate/route_client-reference-manifest.js +3 -0
  358. package/.next/server/app/api/practice/record/[id]/route/app-paths-manifest.json +3 -0
  359. package/.next/server/app/api/practice/record/[id]/route/build-manifest.json +12 -0
  360. package/.next/server/app/api/practice/record/[id]/route/server-reference-manifest.json +4 -0
  361. package/.next/server/app/api/practice/record/[id]/route.js +15 -0
  362. package/.next/server/app/api/practice/record/[id]/route.js.map +5 -0
  363. package/.next/server/app/api/practice/record/[id]/route.js.nft.json +1 -0
  364. package/.next/server/app/api/practice/record/[id]/route_client-reference-manifest.js +3 -0
  365. package/.next/server/app/api/practice/record/route/app-paths-manifest.json +3 -0
  366. package/.next/server/app/api/practice/record/route/build-manifest.json +12 -0
  367. package/.next/server/app/api/practice/record/route/server-reference-manifest.json +4 -0
  368. package/.next/server/app/api/practice/record/route.js +15 -0
  369. package/.next/server/app/api/practice/record/route.js.map +5 -0
  370. package/.next/server/app/api/practice/record/route.js.nft.json +1 -0
  371. package/.next/server/app/api/practice/record/route_client-reference-manifest.js +3 -0
  372. package/.next/server/app/api/reanswer/route/app-paths-manifest.json +3 -0
  373. package/.next/server/app/api/reanswer/route/build-manifest.json +12 -0
  374. package/.next/server/app/api/reanswer/route/server-reference-manifest.json +4 -0
  375. package/.next/server/app/api/reanswer/route.js +15 -0
  376. package/.next/server/app/api/reanswer/route.js.map +5 -0
  377. package/.next/server/app/api/reanswer/route.js.nft.json +1 -0
  378. package/.next/server/app/api/reanswer/route_client-reference-manifest.js +3 -0
  379. package/.next/server/app/api/register/route/app-paths-manifest.json +3 -0
  380. package/.next/server/app/api/register/route/build-manifest.json +12 -0
  381. package/.next/server/app/api/register/route/server-reference-manifest.json +4 -0
  382. package/.next/server/app/api/register/route.js +9 -0
  383. package/.next/server/app/api/register/route.js.map +5 -0
  384. package/.next/server/app/api/register/route.js.nft.json +1 -0
  385. package/.next/server/app/api/register/route_client-reference-manifest.js +3 -0
  386. package/.next/server/app/api/register/status/route/app-paths-manifest.json +3 -0
  387. package/.next/server/app/api/register/status/route/build-manifest.json +12 -0
  388. package/.next/server/app/api/register/status/route/server-reference-manifest.json +4 -0
  389. package/.next/server/app/api/register/status/route.js +8 -0
  390. package/.next/server/app/api/register/status/route.js.map +5 -0
  391. package/.next/server/app/api/register/status/route.js.nft.json +1 -0
  392. package/.next/server/app/api/register/status/route_client-reference-manifest.js +3 -0
  393. package/.next/server/app/api/settings/route/app-paths-manifest.json +3 -0
  394. package/.next/server/app/api/settings/route/build-manifest.json +12 -0
  395. package/.next/server/app/api/settings/route/server-reference-manifest.json +4 -0
  396. package/.next/server/app/api/settings/route.js +9 -0
  397. package/.next/server/app/api/settings/route.js.map +5 -0
  398. package/.next/server/app/api/settings/route.js.nft.json +1 -0
  399. package/.next/server/app/api/settings/route_client-reference-manifest.js +3 -0
  400. package/.next/server/app/api/stats/practice/clear/route/app-paths-manifest.json +3 -0
  401. package/.next/server/app/api/stats/practice/clear/route/build-manifest.json +12 -0
  402. package/.next/server/app/api/stats/practice/clear/route/server-reference-manifest.json +4 -0
  403. package/.next/server/app/api/stats/practice/clear/route.js +8 -0
  404. package/.next/server/app/api/stats/practice/clear/route.js.map +5 -0
  405. package/.next/server/app/api/stats/practice/clear/route.js.nft.json +1 -0
  406. package/.next/server/app/api/stats/practice/clear/route_client-reference-manifest.js +3 -0
  407. package/.next/server/app/api/stats/practice/route/app-paths-manifest.json +3 -0
  408. package/.next/server/app/api/stats/practice/route/build-manifest.json +12 -0
  409. package/.next/server/app/api/stats/practice/route/server-reference-manifest.json +4 -0
  410. package/.next/server/app/api/stats/practice/route.js +9 -0
  411. package/.next/server/app/api/stats/practice/route.js.map +5 -0
  412. package/.next/server/app/api/stats/practice/route.js.nft.json +1 -0
  413. package/.next/server/app/api/stats/practice/route_client-reference-manifest.js +3 -0
  414. package/.next/server/app/api/tags/route/app-paths-manifest.json +3 -0
  415. package/.next/server/app/api/tags/route/build-manifest.json +12 -0
  416. package/.next/server/app/api/tags/route/server-reference-manifest.json +4 -0
  417. package/.next/server/app/api/tags/route.js +9 -0
  418. package/.next/server/app/api/tags/route.js.map +5 -0
  419. package/.next/server/app/api/tags/route.js.nft.json +1 -0
  420. package/.next/server/app/api/tags/route_client-reference-manifest.js +3 -0
  421. package/.next/server/app/api/tags/stats/route/app-paths-manifest.json +3 -0
  422. package/.next/server/app/api/tags/stats/route/build-manifest.json +12 -0
  423. package/.next/server/app/api/tags/stats/route/server-reference-manifest.json +4 -0
  424. package/.next/server/app/api/tags/stats/route.js +8 -0
  425. package/.next/server/app/api/tags/stats/route.js.map +5 -0
  426. package/.next/server/app/api/tags/stats/route.js.nft.json +1 -0
  427. package/.next/server/app/api/tags/stats/route_client-reference-manifest.js +3 -0
  428. package/.next/server/app/api/tags/suggestions/route/app-paths-manifest.json +3 -0
  429. package/.next/server/app/api/tags/suggestions/route/build-manifest.json +12 -0
  430. package/.next/server/app/api/tags/suggestions/route/server-reference-manifest.json +4 -0
  431. package/.next/server/app/api/tags/suggestions/route.js +8 -0
  432. package/.next/server/app/api/tags/suggestions/route.js.map +5 -0
  433. package/.next/server/app/api/tags/suggestions/route.js.nft.json +1 -0
  434. package/.next/server/app/api/tags/suggestions/route_client-reference-manifest.js +3 -0
  435. package/.next/server/app/api/tasks/route/app-paths-manifest.json +3 -0
  436. package/.next/server/app/api/tasks/route/build-manifest.json +12 -0
  437. package/.next/server/app/api/tasks/route/server-reference-manifest.json +4 -0
  438. package/.next/server/app/api/tasks/route.js +8 -0
  439. package/.next/server/app/api/tasks/route.js.map +5 -0
  440. package/.next/server/app/api/tasks/route.js.nft.json +1 -0
  441. package/.next/server/app/api/tasks/route_client-reference-manifest.js +3 -0
  442. package/.next/server/app/api/user/route/app-paths-manifest.json +3 -0
  443. package/.next/server/app/api/user/route/build-manifest.json +12 -0
  444. package/.next/server/app/api/user/route/server-reference-manifest.json +4 -0
  445. package/.next/server/app/api/user/route.js +10 -0
  446. package/.next/server/app/api/user/route.js.map +5 -0
  447. package/.next/server/app/api/user/route.js.nft.json +1 -0
  448. package/.next/server/app/api/user/route_client-reference-manifest.js +3 -0
  449. package/.next/server/app/api/version/route/app-paths-manifest.json +3 -0
  450. package/.next/server/app/api/version/route/build-manifest.json +12 -0
  451. package/.next/server/app/api/version/route/server-reference-manifest.json +4 -0
  452. package/.next/server/app/api/version/route.js +7 -0
  453. package/.next/server/app/api/version/route.js.map +5 -0
  454. package/.next/server/app/api/version/route.js.nft.json +1 -0
  455. package/.next/server/app/api/version/route_client-reference-manifest.js +3 -0
  456. package/.next/server/app/error-items/[id]/page/app-paths-manifest.json +3 -0
  457. package/.next/server/app/error-items/[id]/page/build-manifest.json +20 -0
  458. package/.next/server/app/error-items/[id]/page/next-font-manifest.json +11 -0
  459. package/.next/server/app/error-items/[id]/page/react-loadable-manifest.json +1 -0
  460. package/.next/server/app/error-items/[id]/page/server-reference-manifest.json +4 -0
  461. package/.next/server/app/error-items/[id]/page.js +14 -0
  462. package/.next/server/app/error-items/[id]/page.js.map +5 -0
  463. package/.next/server/app/error-items/[id]/page.js.nft.json +1 -0
  464. package/.next/server/app/error-items/[id]/page_client-reference-manifest.js +3 -0
  465. package/.next/server/app/exams/[id]/page/app-paths-manifest.json +3 -0
  466. package/.next/server/app/exams/[id]/page/build-manifest.json +20 -0
  467. package/.next/server/app/exams/[id]/page/next-font-manifest.json +11 -0
  468. package/.next/server/app/exams/[id]/page/react-loadable-manifest.json +1 -0
  469. package/.next/server/app/exams/[id]/page/server-reference-manifest.json +4 -0
  470. package/.next/server/app/exams/[id]/page.js +14 -0
  471. package/.next/server/app/exams/[id]/page.js.map +5 -0
  472. package/.next/server/app/exams/[id]/page.js.nft.json +1 -0
  473. package/.next/server/app/exams/[id]/page_client-reference-manifest.js +3 -0
  474. package/.next/server/app/exams/[id]/print/page/app-paths-manifest.json +3 -0
  475. package/.next/server/app/exams/[id]/print/page/build-manifest.json +20 -0
  476. package/.next/server/app/exams/[id]/print/page/next-font-manifest.json +11 -0
  477. package/.next/server/app/exams/[id]/print/page/react-loadable-manifest.json +1 -0
  478. package/.next/server/app/exams/[id]/print/page/server-reference-manifest.json +4 -0
  479. package/.next/server/app/exams/[id]/print/page.js +14 -0
  480. package/.next/server/app/exams/[id]/print/page.js.map +5 -0
  481. package/.next/server/app/exams/[id]/print/page.js.nft.json +1 -0
  482. package/.next/server/app/exams/[id]/print/page_client-reference-manifest.js +3 -0
  483. package/.next/server/app/exams/page/app-paths-manifest.json +3 -0
  484. package/.next/server/app/exams/page/build-manifest.json +20 -0
  485. package/.next/server/app/exams/page/next-font-manifest.json +11 -0
  486. package/.next/server/app/exams/page/react-loadable-manifest.json +1 -0
  487. package/.next/server/app/exams/page/server-reference-manifest.json +4 -0
  488. package/.next/server/app/exams/page.js +14 -0
  489. package/.next/server/app/exams/page.js.map +5 -0
  490. package/.next/server/app/exams/page.js.nft.json +1 -0
  491. package/.next/server/app/exams/page_client-reference-manifest.js +3 -0
  492. package/.next/server/app/favicon.ico/route/app-paths-manifest.json +3 -0
  493. package/.next/server/app/favicon.ico/route/build-manifest.json +12 -0
  494. package/.next/server/app/favicon.ico/route.js +8 -0
  495. package/.next/server/app/favicon.ico/route.js.map +5 -0
  496. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  497. package/.next/server/app/favicon.ico.body +0 -0
  498. package/.next/server/app/favicon.ico.meta +1 -0
  499. package/.next/server/app/latex-test/page/app-paths-manifest.json +3 -0
  500. package/.next/server/app/latex-test/page/build-manifest.json +20 -0
  501. package/.next/server/app/latex-test/page/next-font-manifest.json +11 -0
  502. package/.next/server/app/latex-test/page/react-loadable-manifest.json +1 -0
  503. package/.next/server/app/latex-test/page/server-reference-manifest.json +4 -0
  504. package/.next/server/app/latex-test/page.js +14 -0
  505. package/.next/server/app/latex-test/page.js.map +5 -0
  506. package/.next/server/app/latex-test/page.js.nft.json +1 -0
  507. package/.next/server/app/latex-test/page_client-reference-manifest.js +3 -0
  508. package/.next/server/app/login/page/app-paths-manifest.json +3 -0
  509. package/.next/server/app/login/page/build-manifest.json +20 -0
  510. package/.next/server/app/login/page/next-font-manifest.json +11 -0
  511. package/.next/server/app/login/page/react-loadable-manifest.json +1 -0
  512. package/.next/server/app/login/page/server-reference-manifest.json +4 -0
  513. package/.next/server/app/login/page.js +14 -0
  514. package/.next/server/app/login/page.js.map +5 -0
  515. package/.next/server/app/login/page.js.nft.json +1 -0
  516. package/.next/server/app/login/page_client-reference-manifest.js +3 -0
  517. package/.next/server/app/manifest.webmanifest/route/app-paths-manifest.json +3 -0
  518. package/.next/server/app/manifest.webmanifest/route/build-manifest.json +12 -0
  519. package/.next/server/app/manifest.webmanifest/route/server-reference-manifest.json +4 -0
  520. package/.next/server/app/manifest.webmanifest/route.js +8 -0
  521. package/.next/server/app/manifest.webmanifest/route.js.map +5 -0
  522. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -0
  523. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +3 -0
  524. package/.next/server/app/manifest.webmanifest.body +1 -0
  525. package/.next/server/app/manifest.webmanifest.meta +1 -0
  526. package/.next/server/app/notebooks/[id]/add/page/app-paths-manifest.json +3 -0
  527. package/.next/server/app/notebooks/[id]/add/page/build-manifest.json +20 -0
  528. package/.next/server/app/notebooks/[id]/add/page/next-font-manifest.json +11 -0
  529. package/.next/server/app/notebooks/[id]/add/page/react-loadable-manifest.json +1 -0
  530. package/.next/server/app/notebooks/[id]/add/page/server-reference-manifest.json +4 -0
  531. package/.next/server/app/notebooks/[id]/add/page.js +14 -0
  532. package/.next/server/app/notebooks/[id]/add/page.js.map +5 -0
  533. package/.next/server/app/notebooks/[id]/add/page.js.nft.json +1 -0
  534. package/.next/server/app/notebooks/[id]/add/page_client-reference-manifest.js +3 -0
  535. package/.next/server/app/notebooks/[id]/page/app-paths-manifest.json +3 -0
  536. package/.next/server/app/notebooks/[id]/page/build-manifest.json +20 -0
  537. package/.next/server/app/notebooks/[id]/page/next-font-manifest.json +11 -0
  538. package/.next/server/app/notebooks/[id]/page/react-loadable-manifest.json +1 -0
  539. package/.next/server/app/notebooks/[id]/page/server-reference-manifest.json +4 -0
  540. package/.next/server/app/notebooks/[id]/page.js +14 -0
  541. package/.next/server/app/notebooks/[id]/page.js.map +5 -0
  542. package/.next/server/app/notebooks/[id]/page.js.nft.json +1 -0
  543. package/.next/server/app/notebooks/[id]/page_client-reference-manifest.js +3 -0
  544. package/.next/server/app/notebooks/page/app-paths-manifest.json +3 -0
  545. package/.next/server/app/notebooks/page/build-manifest.json +20 -0
  546. package/.next/server/app/notebooks/page/next-font-manifest.json +11 -0
  547. package/.next/server/app/notebooks/page/react-loadable-manifest.json +1 -0
  548. package/.next/server/app/notebooks/page/server-reference-manifest.json +4 -0
  549. package/.next/server/app/notebooks/page.js +14 -0
  550. package/.next/server/app/notebooks/page.js.map +5 -0
  551. package/.next/server/app/notebooks/page.js.nft.json +1 -0
  552. package/.next/server/app/notebooks/page_client-reference-manifest.js +3 -0
  553. package/.next/server/app/page/app-paths-manifest.json +3 -0
  554. package/.next/server/app/page/build-manifest.json +20 -0
  555. package/.next/server/app/page/next-font-manifest.json +11 -0
  556. package/.next/server/app/page/react-loadable-manifest.json +1 -0
  557. package/.next/server/app/page/server-reference-manifest.json +4 -0
  558. package/.next/server/app/page.js +14 -0
  559. package/.next/server/app/page.js.map +5 -0
  560. package/.next/server/app/page.js.nft.json +1 -0
  561. package/.next/server/app/page_client-reference-manifest.js +3 -0
  562. package/.next/server/app/practice/page/app-paths-manifest.json +3 -0
  563. package/.next/server/app/practice/page/build-manifest.json +20 -0
  564. package/.next/server/app/practice/page/next-font-manifest.json +11 -0
  565. package/.next/server/app/practice/page/react-loadable-manifest.json +1 -0
  566. package/.next/server/app/practice/page/server-reference-manifest.json +4 -0
  567. package/.next/server/app/practice/page.js +14 -0
  568. package/.next/server/app/practice/page.js.map +5 -0
  569. package/.next/server/app/practice/page.js.nft.json +1 -0
  570. package/.next/server/app/practice/page_client-reference-manifest.js +3 -0
  571. package/.next/server/app/print-preview/page/app-paths-manifest.json +3 -0
  572. package/.next/server/app/print-preview/page/build-manifest.json +20 -0
  573. package/.next/server/app/print-preview/page/next-font-manifest.json +11 -0
  574. package/.next/server/app/print-preview/page/react-loadable-manifest.json +1 -0
  575. package/.next/server/app/print-preview/page/server-reference-manifest.json +4 -0
  576. package/.next/server/app/print-preview/page.js +14 -0
  577. package/.next/server/app/print-preview/page.js.map +5 -0
  578. package/.next/server/app/print-preview/page.js.nft.json +1 -0
  579. package/.next/server/app/print-preview/page_client-reference-manifest.js +3 -0
  580. package/.next/server/app/register/page/app-paths-manifest.json +3 -0
  581. package/.next/server/app/register/page/build-manifest.json +20 -0
  582. package/.next/server/app/register/page/next-font-manifest.json +11 -0
  583. package/.next/server/app/register/page/react-loadable-manifest.json +1 -0
  584. package/.next/server/app/register/page/server-reference-manifest.json +4 -0
  585. package/.next/server/app/register/page.js +14 -0
  586. package/.next/server/app/register/page.js.map +5 -0
  587. package/.next/server/app/register/page.js.nft.json +1 -0
  588. package/.next/server/app/register/page_client-reference-manifest.js +3 -0
  589. package/.next/server/app/stats/page/app-paths-manifest.json +3 -0
  590. package/.next/server/app/stats/page/build-manifest.json +20 -0
  591. package/.next/server/app/stats/page/next-font-manifest.json +11 -0
  592. package/.next/server/app/stats/page/react-loadable-manifest.json +1 -0
  593. package/.next/server/app/stats/page/server-reference-manifest.json +4 -0
  594. package/.next/server/app/stats/page.js +14 -0
  595. package/.next/server/app/stats/page.js.map +5 -0
  596. package/.next/server/app/stats/page.js.nft.json +1 -0
  597. package/.next/server/app/stats/page_client-reference-manifest.js +3 -0
  598. package/.next/server/app/tags/page/app-paths-manifest.json +3 -0
  599. package/.next/server/app/tags/page/build-manifest.json +20 -0
  600. package/.next/server/app/tags/page/next-font-manifest.json +11 -0
  601. package/.next/server/app/tags/page/react-loadable-manifest.json +1 -0
  602. package/.next/server/app/tags/page/server-reference-manifest.json +4 -0
  603. package/.next/server/app/tags/page.js +14 -0
  604. package/.next/server/app/tags/page.js.map +5 -0
  605. package/.next/server/app/tags/page.js.nft.json +1 -0
  606. package/.next/server/app/tags/page_client-reference-manifest.js +3 -0
  607. package/.next/server/app-paths-manifest.json +81 -0
  608. package/.next/server/chunks/1jng_app_api_exams_[id]_questions_[questionId]_regenerate_route_actions_1ggead3.js +3 -0
  609. package/.next/server/chunks/1oeh_server_app_api_error-items_[id]_practice-records_route_actions_0z2zuf1.js +3 -0
  610. package/.next/server/chunks/1oeh_server_app_api_error-items_[id]_svg-animation_route_actions_17gckf3.js +3 -0
  611. package/.next/server/chunks/[externals]__04n7qbr._.js +3 -0
  612. package/.next/server/chunks/[externals]__0pot68n._.js +3 -0
  613. package/.next/server/chunks/[externals]__1735khz._.js +3 -0
  614. package/.next/server/chunks/[externals]_assert_1pwe1ri._.js +3 -0
  615. package/.next/server/chunks/[root-of-the-server]__0-8hf14._.js +3 -0
  616. package/.next/server/chunks/[root-of-the-server]__00_hq9v._.js +153 -0
  617. package/.next/server/chunks/[root-of-the-server]__00m7v48._.js +3 -0
  618. package/.next/server/chunks/[root-of-the-server]__01bzczj._.js +3 -0
  619. package/.next/server/chunks/[root-of-the-server]__01m28mx._.js +3 -0
  620. package/.next/server/chunks/[root-of-the-server]__04mu6-m._.js +3 -0
  621. package/.next/server/chunks/[root-of-the-server]__04tyyvs._.js +3 -0
  622. package/.next/server/chunks/[root-of-the-server]__05no8nw._.js +3 -0
  623. package/.next/server/chunks/[root-of-the-server]__05s4wut._.js +3 -0
  624. package/.next/server/chunks/[root-of-the-server]__06h5afw._.js +3 -0
  625. package/.next/server/chunks/[root-of-the-server]__07jl92a._.js +3 -0
  626. package/.next/server/chunks/[root-of-the-server]__07nvz1d._.js +3 -0
  627. package/.next/server/chunks/[root-of-the-server]__08gak8r._.js +3 -0
  628. package/.next/server/chunks/[root-of-the-server]__08zi-xg._.js +3 -0
  629. package/.next/server/chunks/[root-of-the-server]__0994h9l._.js +3 -0
  630. package/.next/server/chunks/[root-of-the-server]__0_t7bbz._.js +3 -0
  631. package/.next/server/chunks/[root-of-the-server]__0akadps._.js +3 -0
  632. package/.next/server/chunks/[root-of-the-server]__0b3nww4._.js +3 -0
  633. package/.next/server/chunks/[root-of-the-server]__0bs5unr._.js +3 -0
  634. package/.next/server/chunks/[root-of-the-server]__0c59gc3._.js +3 -0
  635. package/.next/server/chunks/[root-of-the-server]__0dfbwm3._.js +3 -0
  636. package/.next/server/chunks/[root-of-the-server]__0e22a4y._.js +122 -0
  637. package/.next/server/chunks/[root-of-the-server]__0els3c1._.js +3 -0
  638. package/.next/server/chunks/[root-of-the-server]__0gp88gz._.js +3 -0
  639. package/.next/server/chunks/[root-of-the-server]__0gpohuv._.js +3 -0
  640. package/.next/server/chunks/[root-of-the-server]__0grkic-._.js +3 -0
  641. package/.next/server/chunks/[root-of-the-server]__0hj9oe2._.js +3 -0
  642. package/.next/server/chunks/[root-of-the-server]__0inxsnu._.js +3 -0
  643. package/.next/server/chunks/[root-of-the-server]__0j-gv3-._.js +3 -0
  644. package/.next/server/chunks/[root-of-the-server]__0jaawra._.js +3 -0
  645. package/.next/server/chunks/[root-of-the-server]__0je3zje._.js +3 -0
  646. package/.next/server/chunks/[root-of-the-server]__0m8p-6f._.js +3 -0
  647. package/.next/server/chunks/[root-of-the-server]__0m_f8ct._.js +3 -0
  648. package/.next/server/chunks/[root-of-the-server]__0na-z2m._.js +3 -0
  649. package/.next/server/chunks/[root-of-the-server]__0nqbham._.js +3 -0
  650. package/.next/server/chunks/[root-of-the-server]__0ns_tws._.js +3 -0
  651. package/.next/server/chunks/[root-of-the-server]__0p3hkz7._.js +3 -0
  652. package/.next/server/chunks/[root-of-the-server]__0pli74s._.js +3 -0
  653. package/.next/server/chunks/[root-of-the-server]__0qaih8c._.js +3 -0
  654. package/.next/server/chunks/[root-of-the-server]__0ra48rd._.js +3 -0
  655. package/.next/server/chunks/[root-of-the-server]__0rk_yxy._.js +9 -0
  656. package/.next/server/chunks/[root-of-the-server]__0sh6-yu._.js +3 -0
  657. package/.next/server/chunks/[root-of-the-server]__0ssagl1._.js +3 -0
  658. package/.next/server/chunks/[root-of-the-server]__0u58zap._.js +3 -0
  659. package/.next/server/chunks/[root-of-the-server]__0ws6c0v._.js +3 -0
  660. package/.next/server/chunks/[root-of-the-server]__0yc8r2x._.js +3 -0
  661. package/.next/server/chunks/[root-of-the-server]__0ydrrdj._.js +3 -0
  662. package/.next/server/chunks/[root-of-the-server]__0yds0ae._.js +3 -0
  663. package/.next/server/chunks/[root-of-the-server]__0ynfeq-._.js +3 -0
  664. package/.next/server/chunks/[root-of-the-server]__0z-sjqh._.js +3 -0
  665. package/.next/server/chunks/[root-of-the-server]__0zp1e41._.js +3 -0
  666. package/.next/server/chunks/[root-of-the-server]__108ydjw._.js +3 -0
  667. package/.next/server/chunks/[root-of-the-server]__10yghm_._.js +3 -0
  668. package/.next/server/chunks/[root-of-the-server]__11-sf2-._.js +3 -0
  669. package/.next/server/chunks/[root-of-the-server]__11wobg2._.js +3 -0
  670. package/.next/server/chunks/[root-of-the-server]__122xu-0._.js +32 -0
  671. package/.next/server/chunks/[root-of-the-server]__13_c7nc._.js +3 -0
  672. package/.next/server/chunks/[root-of-the-server]__13ebiit._.js +3 -0
  673. package/.next/server/chunks/[root-of-the-server]__1413v0e._.js +3 -0
  674. package/.next/server/chunks/[root-of-the-server]__14pcopd._.js +3 -0
  675. package/.next/server/chunks/[root-of-the-server]__150ei9u._.js +3 -0
  676. package/.next/server/chunks/[root-of-the-server]__15g7yjy._.js +3 -0
  677. package/.next/server/chunks/[root-of-the-server]__15tkoe6._.js +10 -0
  678. package/.next/server/chunks/[root-of-the-server]__19nm3y_._.js +3 -0
  679. package/.next/server/chunks/[root-of-the-server]__19vj8qy._.js +3 -0
  680. package/.next/server/chunks/[root-of-the-server]__1_gkx5x._.js +3 -0
  681. package/.next/server/chunks/[root-of-the-server]__1a4i9sz._.js +3 -0
  682. package/.next/server/chunks/[root-of-the-server]__1cn6rlb._.js +3 -0
  683. package/.next/server/chunks/[root-of-the-server]__1csfdxc._.js +3 -0
  684. package/.next/server/chunks/[root-of-the-server]__1e3crdc._.js +3 -0
  685. package/.next/server/chunks/[root-of-the-server]__1ezwxao._.js +3 -0
  686. package/.next/server/chunks/[root-of-the-server]__1g-xe1f._.js +3 -0
  687. package/.next/server/chunks/[root-of-the-server]__1g1wi9i._.js +3 -0
  688. package/.next/server/chunks/[root-of-the-server]__1g3usdn._.js +3 -0
  689. package/.next/server/chunks/[root-of-the-server]__1gmc_uw._.js +3 -0
  690. package/.next/server/chunks/[root-of-the-server]__1hmv25w._.js +3 -0
  691. package/.next/server/chunks/[root-of-the-server]__1hpwwxw._.js +3 -0
  692. package/.next/server/chunks/[root-of-the-server]__1hq73__._.js +3 -0
  693. package/.next/server/chunks/[root-of-the-server]__1jtd2ar._.js +6 -0
  694. package/.next/server/chunks/[root-of-the-server]__1kqv61m._.js +3 -0
  695. package/.next/server/chunks/[root-of-the-server]__1m4-ab6._.js +3 -0
  696. package/.next/server/chunks/[root-of-the-server]__1nmtv65._.js +10 -0
  697. package/.next/server/chunks/[root-of-the-server]__1oup682._.js +3 -0
  698. package/.next/server/chunks/[root-of-the-server]__1ouzjax._.js +3 -0
  699. package/.next/server/chunks/[root-of-the-server]__1pcgq22._.js +3 -0
  700. package/.next/server/chunks/[root-of-the-server]__1pplzr1._.js +3 -0
  701. package/.next/server/chunks/[root-of-the-server]__1q5nt5y._.js +3 -0
  702. package/.next/server/chunks/[root-of-the-server]__1qt6_3b._.js +3 -0
  703. package/.next/server/chunks/[root-of-the-server]__1sdtn83._.js +3 -0
  704. package/.next/server/chunks/[root-of-the-server]__1utxo11._.js +3 -0
  705. package/.next/server/chunks/[root-of-the-server]__1v1dgs2._.js +3 -0
  706. package/.next/server/chunks/[root-of-the-server]__1v9b8go._.js +3 -0
  707. package/.next/server/chunks/[root-of-the-server]__1vw740y._.js +32 -0
  708. package/.next/server/chunks/[root-of-the-server]__1vzxn91._.js +3 -0
  709. package/.next/server/chunks/[root-of-the-server]__1wgn76g._.js +3 -0
  710. package/.next/server/chunks/[root-of-the-server]__1wkh9sj._.js +3 -0
  711. package/.next/server/chunks/[root-of-the-server]__1xcmja4._.js +3 -0
  712. package/.next/server/chunks/[root-of-the-server]__1y6fx9-._.js +3 -0
  713. package/.next/server/chunks/[root-of-the-server]__1zos_p4._.js +3 -0
  714. package/.next/server/chunks/[root-of-the-server]__1zp0oig._.js +3 -0
  715. package/.next/server/chunks/[root-of-the-server]__203q6el._.js +3 -0
  716. package/.next/server/chunks/[root-of-the-server]__20bun16._.js +3 -0
  717. package/.next/server/chunks/[turbopack]_runtime.js +939 -0
  718. package/.next/server/chunks/_008zx49._.js +3 -0
  719. package/.next/server/chunks/_011-ll5._.js +3 -0
  720. package/.next/server/chunks/_0431fxn._.js +3 -0
  721. package/.next/server/chunks/_0ae3z2e._.js +3 -0
  722. package/.next/server/chunks/_0c5hvv3._.js +11 -0
  723. package/.next/server/chunks/_0ekrwj-._.js +36 -0
  724. package/.next/server/chunks/_0frix22._.js +11 -0
  725. package/.next/server/chunks/_0gxi3zr._.js +3 -0
  726. package/.next/server/chunks/_0lz3t4l._.js +19 -0
  727. package/.next/server/chunks/_0o1p57f._.js +3 -0
  728. package/.next/server/chunks/_0t6g4yt._.js +3 -0
  729. package/.next/server/chunks/_0uxp3uh._.js +3 -0
  730. package/.next/server/chunks/_0x3ltk0._.js +36 -0
  731. package/.next/server/chunks/_12w5k19._.js +3 -0
  732. package/.next/server/chunks/_13ffmxv._.js +3 -0
  733. package/.next/server/chunks/_14tz_k9._.js +3 -0
  734. package/.next/server/chunks/_16jdov0._.js +3 -0
  735. package/.next/server/chunks/_18amra5._.js +3 -0
  736. package/.next/server/chunks/_19fidvw._.js +3 -0
  737. package/.next/server/chunks/_1_ns7o3._.js +3 -0
  738. package/.next/server/chunks/_1a1aqmi._.js +3 -0
  739. package/.next/server/chunks/_1a1udq0._.js +3 -0
  740. package/.next/server/chunks/_1b0269x._.js +3 -0
  741. package/.next/server/chunks/_1b7qjlv._.js +3 -0
  742. package/.next/server/chunks/_1be-y66._.js +3 -0
  743. package/.next/server/chunks/_1ex6ovo._.js +3 -0
  744. package/.next/server/chunks/_1fgb9ve._.js +3 -0
  745. package/.next/server/chunks/_1m-yyz-._.js +3 -0
  746. package/.next/server/chunks/_1oj6gy_._.js +3 -0
  747. package/.next/server/chunks/_1oqpwh8._.js +3 -0
  748. package/.next/server/chunks/_1q5w9fc._.js +3 -0
  749. package/.next/server/chunks/_1ve0z0w._.js +3 -0
  750. package/.next/server/chunks/_1z_ujac._.js +3 -0
  751. package/.next/server/chunks/_211va-d._.js +3 -0
  752. package/.next/server/chunks/_next-internal_server_app_api_admin_dashboard_route_actions_1ispso-.js +3 -0
  753. package/.next/server/chunks/_next-internal_server_app_api_admin_migrate-tags_route_actions_1ztwxhx.js +3 -0
  754. package/.next/server/chunks/_next-internal_server_app_api_admin_system-reset_route_actions_15aselt.js +3 -0
  755. package/.next/server/chunks/_next-internal_server_app_api_admin_users_[id]_detail_route_actions_0oe_wkt.js +3 -0
  756. package/.next/server/chunks/_next-internal_server_app_api_admin_users_[id]_route_actions_1hhpuc4.js +3 -0
  757. package/.next/server/chunks/_next-internal_server_app_api_admin_users_route_actions_0q-rtz1.js +3 -0
  758. package/.next/server/chunks/_next-internal_server_app_api_ai_models_route_actions_0w7iwv-.js +3 -0
  759. package/.next/server/chunks/_next-internal_server_app_api_ai_test_route_actions_1p0n1q8.js +3 -0
  760. package/.next/server/chunks/_next-internal_server_app_api_analytics_route_actions_1e0ou17.js +3 -0
  761. package/.next/server/chunks/_next-internal_server_app_api_analyze_route_actions_0lx-23h.js +3 -0
  762. package/.next/server/chunks/_next-internal_server_app_api_auth_[___nextauth]_route_actions_08nexdk.js +3 -0
  763. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_delete_route_actions_1w26boq.js +3 -0
  764. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_figure_route_actions_0adlts0.js +3 -0
  765. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_fix-latex_route_actions_0hc7dhx.js +3 -0
  766. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_geogebra_route_actions_1-ks4uv.js +3 -0
  767. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_image_route_actions_1k9n5yl.js +3 -0
  768. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_mastery_route_actions_1l5uan6.js +3 -0
  769. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_notes_route_actions_1cjux7z.js +3 -0
  770. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_reanswer_route_actions_1-sw0j2.js +3 -0
  771. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_retag_route_actions_0ckki4n.js +3 -0
  772. package/.next/server/chunks/_next-internal_server_app_api_error-items_[id]_route_actions_1kbs4ux.js +3 -0
  773. package/.next/server/chunks/_next-internal_server_app_api_error-items_batch-delete_route_actions_0hiq_1k.js +3 -0
  774. package/.next/server/chunks/_next-internal_server_app_api_error-items_clear_route_actions_14t_6i-.js +3 -0
  775. package/.next/server/chunks/_next-internal_server_app_api_error-items_list_route_actions_032x4ue.js +3 -0
  776. package/.next/server/chunks/_next-internal_server_app_api_error-items_route_actions_1zdvz0p.js +3 -0
  777. package/.next/server/chunks/_next-internal_server_app_api_error-items_short_[shortId]_route_actions_02976v-.js +3 -0
  778. package/.next/server/chunks/_next-internal_server_app_api_error-items_similarity_route_actions_1i26if9.js +3 -0
  779. package/.next/server/chunks/_next-internal_server_app_api_exams_[id]_results_route_actions_1v3vhi4.js +3 -0
  780. package/.next/server/chunks/_next-internal_server_app_api_exams_[id]_retry_route_actions_1fdi39f.js +3 -0
  781. package/.next/server/chunks/_next-internal_server_app_api_exams_[id]_route_actions_1wuidrq.js +3 -0
  782. package/.next/server/chunks/_next-internal_server_app_api_exams_route_actions_1c_zhtj.js +3 -0
  783. package/.next/server/chunks/_next-internal_server_app_api_export_route_actions_0lpcnjc.js +3 -0
  784. package/.next/server/chunks/_next-internal_server_app_api_geogebra-analyze_route_actions_1xng0_c.js +3 -0
  785. package/.next/server/chunks/_next-internal_server_app_api_health_route_actions_1ryftkb.js +3 -0
  786. package/.next/server/chunks/_next-internal_server_app_api_import_route_actions_20ko04x.js +3 -0
  787. package/.next/server/chunks/_next-internal_server_app_api_logs_frontend_route_actions_0nxepty.js +3 -0
  788. package/.next/server/chunks/_next-internal_server_app_api_notebooks_[id]_retag_route_actions_00su_t8.js +3 -0
  789. package/.next/server/chunks/_next-internal_server_app_api_notebooks_[id]_route_actions_11j3vxg.js +3 -0
  790. package/.next/server/chunks/_next-internal_server_app_api_notebooks_route_actions_02cy45r.js +3 -0
  791. package/.next/server/chunks/_next-internal_server_app_api_openclaw_batch-upload_route_actions_1zz3oen.js +3 -0
  792. package/.next/server/chunks/_next-internal_server_app_api_practice_generate_route_actions_1krr9n_.js +3 -0
  793. package/.next/server/chunks/_next-internal_server_app_api_practice_record_[id]_route_actions_0zreiom.js +3 -0
  794. package/.next/server/chunks/_next-internal_server_app_api_practice_record_route_actions_0py9z__.js +3 -0
  795. package/.next/server/chunks/_next-internal_server_app_api_reanswer_route_actions_04xweh_.js +3 -0
  796. package/.next/server/chunks/_next-internal_server_app_api_register_route_actions_0vlzh_c.js +3 -0
  797. package/.next/server/chunks/_next-internal_server_app_api_register_status_route_actions_0b52_sj.js +3 -0
  798. package/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_1bpm9ac.js +3 -0
  799. package/.next/server/chunks/_next-internal_server_app_api_stats_practice_clear_route_actions_1iz6iz0.js +3 -0
  800. package/.next/server/chunks/_next-internal_server_app_api_stats_practice_route_actions_1tfoxx-.js +3 -0
  801. package/.next/server/chunks/_next-internal_server_app_api_tags_route_actions_1nb9ma2.js +3 -0
  802. package/.next/server/chunks/_next-internal_server_app_api_tags_stats_route_actions_0fmeadc.js +3 -0
  803. package/.next/server/chunks/_next-internal_server_app_api_tags_suggestions_route_actions_1xpolyv.js +3 -0
  804. package/.next/server/chunks/_next-internal_server_app_api_tasks_route_actions_123tq1_.js +3 -0
  805. package/.next/server/chunks/_next-internal_server_app_api_user_route_actions_1k-4clg.js +3 -0
  806. package/.next/server/chunks/_next-internal_server_app_api_version_route_actions_0kbx30h.js +3 -0
  807. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_0g2jjls.js +3 -0
  808. package/.next/server/chunks/_next-internal_server_app_manifest_webmanifest_route_actions_08hcpz0.js +3 -0
  809. package/.next/server/chunks/node_modules_next_1zdbrne._.js +10 -0
  810. package/.next/server/chunks/node_modules_zod_v4_classic_external_1-pw2v2.js +22 -0
  811. package/.next/server/chunks/src_0tzpy5j._.js +3 -0
  812. package/.next/server/chunks/src_lib_ai_prompts_ts_0z36zms._.js +554 -0
  813. package/.next/server/chunks/src_lib_date-time_ts_14chb27._.js +3 -0
  814. package/.next/server/chunks/src_lib_question-deduplication_ts_1p1bik-._.js +3 -0
  815. package/.next/server/chunks/ssr/[externals]_fs_0pplqgc._.js +3 -0
  816. package/.next/server/chunks/ssr/[root-of-the-server]__00gewu3._.js +35 -0
  817. package/.next/server/chunks/ssr/[root-of-the-server]__05f8wbh._.js +3 -0
  818. package/.next/server/chunks/ssr/[root-of-the-server]__0a0nty7._.js +3 -0
  819. package/.next/server/chunks/ssr/[root-of-the-server]__0ax9dog._.js +3 -0
  820. package/.next/server/chunks/ssr/[root-of-the-server]__0b8kewv._.js +3 -0
  821. package/.next/server/chunks/ssr/[root-of-the-server]__0bvtza7._.js +33 -0
  822. package/.next/server/chunks/ssr/[root-of-the-server]__0g_-bym._.js +3 -0
  823. package/.next/server/chunks/ssr/[root-of-the-server]__0gwwr7e._.js +3 -0
  824. package/.next/server/chunks/ssr/[root-of-the-server]__0hzktoi._.js +3 -0
  825. package/.next/server/chunks/ssr/[root-of-the-server]__0icjezr._.js +3 -0
  826. package/.next/server/chunks/ssr/[root-of-the-server]__0koj8h0._.js +3 -0
  827. package/.next/server/chunks/ssr/[root-of-the-server]__0s87xha._.js +3 -0
  828. package/.next/server/chunks/ssr/[root-of-the-server]__0snpjfe._.js +3 -0
  829. package/.next/server/chunks/ssr/[root-of-the-server]__0y_e9do._.js +3 -0
  830. package/.next/server/chunks/ssr/[root-of-the-server]__0ybs_4c._.js +3 -0
  831. package/.next/server/chunks/ssr/[root-of-the-server]__14l7peq._.js +3 -0
  832. package/.next/server/chunks/ssr/[root-of-the-server]__1507q8a._.js +3 -0
  833. package/.next/server/chunks/ssr/[root-of-the-server]__15ppb9j._.js +3 -0
  834. package/.next/server/chunks/ssr/[root-of-the-server]__191jn5n._.js +3 -0
  835. package/.next/server/chunks/ssr/[root-of-the-server]__1f2jx51._.js +33 -0
  836. package/.next/server/chunks/ssr/[root-of-the-server]__1gth76-._.js +3 -0
  837. package/.next/server/chunks/ssr/[root-of-the-server]__1ko_dw5._.js +3 -0
  838. package/.next/server/chunks/ssr/[root-of-the-server]__1l84pks._.js +3 -0
  839. package/.next/server/chunks/ssr/[root-of-the-server]__1m7qw-2._.js +3 -0
  840. package/.next/server/chunks/ssr/[root-of-the-server]__1ma2oml._.js +3 -0
  841. package/.next/server/chunks/ssr/[root-of-the-server]__1o8jotz._.js +3 -0
  842. package/.next/server/chunks/ssr/[root-of-the-server]__1o__w27._.js +3 -0
  843. package/.next/server/chunks/ssr/[root-of-the-server]__1p7f0va._.js +3 -0
  844. package/.next/server/chunks/ssr/[root-of-the-server]__1sg9eoj._.js +3 -0
  845. package/.next/server/chunks/ssr/[root-of-the-server]__1u74hyi._.js +3 -0
  846. package/.next/server/chunks/ssr/[root-of-the-server]__1xsovpr._.js +3 -0
  847. package/.next/server/chunks/ssr/[turbopack]_runtime.js +939 -0
  848. package/.next/server/chunks/ssr/_054yhx9._.js +3 -0
  849. package/.next/server/chunks/ssr/_07ls0n_._.js +3 -0
  850. package/.next/server/chunks/ssr/_0i9hwpv._.js +3 -0
  851. package/.next/server/chunks/ssr/_0iqp5hs._.js +3 -0
  852. package/.next/server/chunks/ssr/_0m1-rq-._.js +3 -0
  853. package/.next/server/chunks/ssr/_0mgbe2b._.js +3 -0
  854. package/.next/server/chunks/ssr/_0nv22wt._.js +3 -0
  855. package/.next/server/chunks/ssr/_0rz2_qb._.js +151 -0
  856. package/.next/server/chunks/ssr/_0sbbx9z._.js +7 -0
  857. package/.next/server/chunks/ssr/_0sf1gd9._.js +3 -0
  858. package/.next/server/chunks/ssr/_0uemk57._.js +3 -0
  859. package/.next/server/chunks/ssr/_0zj7dlu._.js +3 -0
  860. package/.next/server/chunks/ssr/_12c20v5._.js +3 -0
  861. package/.next/server/chunks/ssr/_17igtpd._.js +3 -0
  862. package/.next/server/chunks/ssr/_1filpif._.js +3 -0
  863. package/.next/server/chunks/ssr/_1gu1rou._.js +3 -0
  864. package/.next/server/chunks/ssr/_1jniqsj._.js +3 -0
  865. package/.next/server/chunks/ssr/_1kgnhmo._.js +8 -0
  866. package/.next/server/chunks/ssr/_1lt1lhz._.js +8 -0
  867. package/.next/server/chunks/ssr/_1yeu09q._.js +3 -0
  868. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-.js +3 -0
  869. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yr.js +3 -0
  870. package/.next/server/chunks/ssr/_next-internal_server_app_admin_page_actions_1mcickz.js +3 -0
  871. package/.next/server/chunks/ssr/_next-internal_server_app_admin_user_[id]_page_actions_0baj8gs.js +3 -0
  872. package/.next/server/chunks/ssr/_next-internal_server_app_error-items_[id]_page_actions_0qla9ak.js +3 -0
  873. package/.next/server/chunks/ssr/_next-internal_server_app_exams_[id]_page_actions_1kushg5.js +3 -0
  874. package/.next/server/chunks/ssr/_next-internal_server_app_exams_[id]_print_page_actions_0pxdgxq.js +3 -0
  875. package/.next/server/chunks/ssr/_next-internal_server_app_exams_page_actions_0av69f-.js +3 -0
  876. package/.next/server/chunks/ssr/_next-internal_server_app_latex-test_page_actions_19v7ka0.js +3 -0
  877. package/.next/server/chunks/ssr/_next-internal_server_app_login_page_actions_04fnjo0.js +3 -0
  878. package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_[id]_add_page_actions_0275ft2.js +3 -0
  879. package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_[id]_page_actions_1qj0i-7.js +3 -0
  880. package/.next/server/chunks/ssr/_next-internal_server_app_notebooks_page_actions_06x1kdz.js +3 -0
  881. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1j.js +3 -0
  882. package/.next/server/chunks/ssr/_next-internal_server_app_practice_page_actions_0cy-h5n.js +3 -0
  883. package/.next/server/chunks/ssr/_next-internal_server_app_print-preview_page_actions_1jhaaln.js +3 -0
  884. package/.next/server/chunks/ssr/_next-internal_server_app_register_page_actions_1op-s-x.js +3 -0
  885. package/.next/server/chunks/ssr/_next-internal_server_app_stats_page_actions_1olf1_a.js +3 -0
  886. package/.next/server/chunks/ssr/_next-internal_server_app_tags_page_actions_20v_n--.js +3 -0
  887. package/.next/server/chunks/ssr/node_modules_0o2aki7._.js +3 -0
  888. package/.next/server/chunks/ssr/node_modules_1y5ym6h._.js +3 -0
  889. package/.next/server/chunks/ssr/node_modules_next_1lnqo1a._.js +5 -0
  890. package/.next/server/chunks/ssr/node_modules_next_dist_077yo5w._.js +3 -0
  891. package/.next/server/chunks/ssr/node_modules_next_dist_0nkkbfv._.js +6 -0
  892. package/.next/server/chunks/ssr/node_modules_next_dist_1_c-t1n._.js +14 -0
  893. package/.next/server/chunks/ssr/node_modules_next_dist_1v8aef8._.js +3 -0
  894. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0bew68i._.js +33 -0
  895. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js +3 -0
  896. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js +3 -0
  897. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892.js +3 -0
  898. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js +3 -0
  899. package/.next/server/chunks/ssr/src_1biegcg._.js +3 -0
  900. package/.next/server/chunks/ssr/src_1gayunq._.js +3 -0
  901. package/.next/server/chunks/ssr/src_1o363ao._.js +3 -0
  902. package/.next/server/chunks/ssr/src_app_admin_page_tsx_0ublbd0._.js +3 -0
  903. package/.next/server/chunks/ssr/src_app_error-items_[id]_page_tsx_04xwwdm._.js +3 -0
  904. package/.next/server/chunks/ssr/src_app_notebooks_[id]_page_tsx_08njm-5._.js +3 -0
  905. package/.next/server/chunks/ssr/src_app_notebooks_page_tsx_1p9src5._.js +3 -0
  906. package/.next/server/chunks/ssr/src_app_page_tsx_1chiuah._.js +3 -0
  907. package/.next/server/chunks/ssr/src_app_practice_page_tsx_10gnx53._.js +3 -0
  908. package/.next/server/chunks/ssr/src_app_tags_page_tsx_1h2vkk4._.js +3 -0
  909. package/.next/server/chunks/ssr/src_components_providers_tsx_09kw-mv._.js +193 -0
  910. package/.next/server/chunks/ssr/src_lib_date-time_ts_0oyqctn._.js +3 -0
  911. package/.next/server/edge/chunks/[root-of-the-server]__1osrt2u._.js +3 -0
  912. package/.next/server/edge/chunks/_1s0wgnu._.js +3 -0
  913. package/.next/server/edge/chunks/node_modules_0g4gi6f._.js +13 -0
  914. package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_1iafar9.js +3 -0
  915. package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_1x1n1fx.js +3 -0
  916. package/.next/server/functions-config-manifest.json +6 -0
  917. package/.next/server/instrumentation.js +4 -0
  918. package/.next/server/middleware-build-manifest.js +24 -0
  919. package/.next/server/middleware-manifest.json +36 -0
  920. package/.next/server/next-font-manifest.js +1 -0
  921. package/.next/server/next-font-manifest.json +79 -0
  922. package/.next/server/pages/500.html +1 -0
  923. package/.next/server/pages-manifest.json +3 -0
  924. package/.next/server/prefetch-hints.json +11 -0
  925. package/.next/server/server-reference-manifest.js +1 -0
  926. package/.next/server/server-reference-manifest.json +5 -0
  927. package/.next/static/OpwRvHtdhPgxve2rKkWkK/_buildManifest.js +11 -0
  928. package/.next/static/OpwRvHtdhPgxve2rKkWkK/_clientMiddlewareManifest.js +6 -0
  929. package/.next/static/OpwRvHtdhPgxve2rKkWkK/_ssgManifest.js +1 -0
  930. package/.next/static/chunks/00pn0o7lymln6.js +1 -0
  931. package/.next/static/chunks/02521degnqmf0.js +1 -0
  932. package/.next/static/chunks/05q4yafxnvtzs.js +1 -0
  933. package/.next/static/chunks/0_w084ms_lq25.js +22 -0
  934. package/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
  935. package/.next/static/chunks/0dzfsm6h13fyr.js +1 -0
  936. package/.next/static/chunks/0ehjiuuxbbhq9.js +1 -0
  937. package/.next/static/chunks/0iq53qkw5hvrs.js +1 -0
  938. package/.next/static/chunks/0lxsaj3bivcgo.css +1 -0
  939. package/.next/static/chunks/0m81l71kojx8j.js +1 -0
  940. package/.next/static/chunks/0nckb2-62ooyq.js +1 -0
  941. package/.next/static/chunks/0snej-v5yglxr.js +1 -0
  942. package/.next/static/chunks/1-7k9gbbjkcml.js +1 -0
  943. package/.next/static/chunks/1ad3ir88_e_v6.css +3 -0
  944. package/.next/static/chunks/1cd32rtomdngh.js +1 -0
  945. package/.next/static/chunks/1io3-cth_2-cd.js +1 -0
  946. package/.next/static/chunks/1oiuiyv1cv06v.js +31 -0
  947. package/.next/static/chunks/1t4-pobw0y5cf.js +1 -0
  948. package/.next/static/chunks/1xg811762s1p1.js +1 -0
  949. package/.next/static/chunks/1z_5sj1wqi06v.js +1 -0
  950. package/.next/static/chunks/29erttsjondpe.js +1 -0
  951. package/.next/static/chunks/2dlme2fdlkms6.js +1 -0
  952. package/.next/static/chunks/2h-exsnhkfnb8.js +1 -0
  953. package/.next/static/chunks/2pmzqbg-qabof.js +1 -0
  954. package/.next/static/chunks/2rmhba08h4qqo.js +33 -0
  955. package/.next/static/chunks/2s07soqug65hc.js +1 -0
  956. package/.next/static/chunks/2w2uo9jjxt-re.js +1 -0
  957. package/.next/static/chunks/2yl8a-gxngbuq.js +1 -0
  958. package/.next/static/chunks/31rxdwy0u_t29.js +1 -0
  959. package/.next/static/chunks/32bl-oqw9oso0.js +1 -0
  960. package/.next/static/chunks/35cov9g4cgt-v.js +1 -0
  961. package/.next/static/chunks/37g3bsrs22xg7.js +191 -0
  962. package/.next/static/chunks/3b-g5_r9nto3s.js +6 -0
  963. package/.next/static/chunks/3c4-ozf1dxam2.css +1 -0
  964. package/.next/static/chunks/3g1rm2suowncy.js +3 -0
  965. package/.next/static/chunks/3helovsg02qr4.js +1 -0
  966. package/.next/static/chunks/3jta6jrk-jubq.js +1 -0
  967. package/.next/static/chunks/3yhf6xyypekz6.js +1 -0
  968. package/.next/static/chunks/3z9gc_02gl8n9.js +1 -0
  969. package/.next/static/chunks/427wg73nuzpiz.js +5 -0
  970. package/.next/static/chunks/turbopack-1-0r7_puvz3eq.js +1 -0
  971. package/.next/static/media/GeistMono_Variable-s.p.0iy569vnmknd-.woff2 +0 -0
  972. package/.next/static/media/Geist_Variable-s.p.03oqkqkevsckn.woff2 +0 -0
  973. package/.next/static/media/KaTeX_AMS-Regular.10y3kupq4t663.woff +0 -0
  974. package/.next/static/media/KaTeX_AMS-Regular.25ieegmnh38ts.woff2 +0 -0
  975. package/.next/static/media/KaTeX_AMS-Regular.418dr7cz3fo2x.ttf +0 -0
  976. package/.next/static/media/KaTeX_Caligraphic-Bold.06b-ya9t43ioz.woff2 +0 -0
  977. package/.next/static/media/KaTeX_Caligraphic-Bold.2vmk2hva4ctha.woff +0 -0
  978. package/.next/static/media/KaTeX_Caligraphic-Bold.40ltxhe834pns.ttf +0 -0
  979. package/.next/static/media/KaTeX_Caligraphic-Regular.07-7u27-nhn_r.ttf +0 -0
  980. package/.next/static/media/KaTeX_Caligraphic-Regular.2eph4dlhid_m9.woff2 +0 -0
  981. package/.next/static/media/KaTeX_Caligraphic-Regular.3gxeetazf831f.woff +0 -0
  982. package/.next/static/media/KaTeX_Fraktur-Bold.19yqa_tc9d_gx.ttf +0 -0
  983. package/.next/static/media/KaTeX_Fraktur-Bold.1alcy76__wdj2.woff +0 -0
  984. package/.next/static/media/KaTeX_Fraktur-Bold.2sasz-d-jtw8y.woff2 +0 -0
  985. package/.next/static/media/KaTeX_Fraktur-Regular.110oo81prr9n5.woff +0 -0
  986. package/.next/static/media/KaTeX_Fraktur-Regular.2d10y4xmjvzlf.woff2 +0 -0
  987. package/.next/static/media/KaTeX_Fraktur-Regular.2qhy34r6a05dn.ttf +0 -0
  988. package/.next/static/media/KaTeX_Main-Bold.0us_n0tnxlxu7.ttf +0 -0
  989. package/.next/static/media/KaTeX_Main-Bold.0v1esh257kqpe.woff +0 -0
  990. package/.next/static/media/KaTeX_Main-Bold.3-rowy8o6_4ky.woff2 +0 -0
  991. package/.next/static/media/KaTeX_Main-BoldItalic.13355ck5zr48q.woff +0 -0
  992. package/.next/static/media/KaTeX_Main-BoldItalic.14r2naom8mrec.woff2 +0 -0
  993. package/.next/static/media/KaTeX_Main-BoldItalic.3x_u9cepaced0.ttf +0 -0
  994. package/.next/static/media/KaTeX_Main-Italic.0afv392dj4w59.woff +0 -0
  995. package/.next/static/media/KaTeX_Main-Italic.0lig0v9j0700p.woff2 +0 -0
  996. package/.next/static/media/KaTeX_Main-Italic.2hkw3230mfwcv.ttf +0 -0
  997. package/.next/static/media/KaTeX_Main-Regular.0symfa7dqj6jd.ttf +0 -0
  998. package/.next/static/media/KaTeX_Main-Regular.15u8r3b2y7fv4.woff +0 -0
  999. package/.next/static/media/KaTeX_Main-Regular.1ryvsdzh2w1_e.woff2 +0 -0
  1000. package/.next/static/media/KaTeX_Math-BoldItalic.0y5w36a5aq__2.ttf +0 -0
  1001. package/.next/static/media/KaTeX_Math-BoldItalic.12pl58orkw9rg.woff +0 -0
  1002. package/.next/static/media/KaTeX_Math-BoldItalic.1oopuu636h4il.woff2 +0 -0
  1003. package/.next/static/media/KaTeX_Math-Italic.0w0b1ugh62cfr.woff +0 -0
  1004. package/.next/static/media/KaTeX_Math-Italic.2vkekfblmz5nb.ttf +0 -0
  1005. package/.next/static/media/KaTeX_Math-Italic.32405s1aq8vas.woff2 +0 -0
  1006. package/.next/static/media/KaTeX_SansSerif-Bold.0h3wi2z_eouyg.woff2 +0 -0
  1007. package/.next/static/media/KaTeX_SansSerif-Bold.1ovw5p-yjp56g.woff +0 -0
  1008. package/.next/static/media/KaTeX_SansSerif-Bold.2d03q85pwxpti.ttf +0 -0
  1009. package/.next/static/media/KaTeX_SansSerif-Italic.0wkjc4dm2kcit.woff2 +0 -0
  1010. package/.next/static/media/KaTeX_SansSerif-Italic.1qavw__2zz8gk.woff +0 -0
  1011. package/.next/static/media/KaTeX_SansSerif-Italic.3i-q087b23-m8.ttf +0 -0
  1012. package/.next/static/media/KaTeX_SansSerif-Regular.1i4afx8nk8n4r.woff +0 -0
  1013. package/.next/static/media/KaTeX_SansSerif-Regular.2peiewu59z3d-.woff2 +0 -0
  1014. package/.next/static/media/KaTeX_SansSerif-Regular.31pbu25feko_c.ttf +0 -0
  1015. package/.next/static/media/KaTeX_Script-Regular.11h14300o9pd0.woff2 +0 -0
  1016. package/.next/static/media/KaTeX_Script-Regular.28p_x7iz71ofe.ttf +0 -0
  1017. package/.next/static/media/KaTeX_Script-Regular.3110jb9c-bxna.woff +0 -0
  1018. package/.next/static/media/KaTeX_Size1-Regular.03lhvx36ekcou.woff2 +0 -0
  1019. package/.next/static/media/KaTeX_Size1-Regular.1slf4bh0hc6vm.woff +0 -0
  1020. package/.next/static/media/KaTeX_Size1-Regular.1y57-ck23ey8c.ttf +0 -0
  1021. package/.next/static/media/KaTeX_Size2-Regular.0-kwyvx03omo8.woff +0 -0
  1022. package/.next/static/media/KaTeX_Size2-Regular.14s5gg-puz6h-.woff2 +0 -0
  1023. package/.next/static/media/KaTeX_Size2-Regular.2u0s-b07k2o9m.ttf +0 -0
  1024. package/.next/static/media/KaTeX_Size3-Regular.04o9a_02gu_e8.woff +0 -0
  1025. package/.next/static/media/KaTeX_Size3-Regular.1n1rgzz84z8r9.woff2 +0 -0
  1026. package/.next/static/media/KaTeX_Size3-Regular.1pkn-dge4q0fv.ttf +0 -0
  1027. package/.next/static/media/KaTeX_Size4-Regular.2sgotkdv3dcyv.woff2 +0 -0
  1028. package/.next/static/media/KaTeX_Size4-Regular.2uelkfk2yna5e.ttf +0 -0
  1029. package/.next/static/media/KaTeX_Size4-Regular.3p2r1l7xmebxv.woff +0 -0
  1030. package/.next/static/media/KaTeX_Typewriter-Regular.11gr2d2wuwz77.woff2 +0 -0
  1031. package/.next/static/media/KaTeX_Typewriter-Regular.12f8myjij3617.woff +0 -0
  1032. package/.next/static/media/KaTeX_Typewriter-Regular.3nee9kjfy6nm8.ttf +0 -0
  1033. package/.next/static/media/favicon.2vob68tjqpejf.ico +0 -0
  1034. package/README.md +35 -2
  1035. package/bin/wrong-notebook.js +60 -0
  1036. package/launcher.js +177 -0
  1037. package/package.json +44 -4
  1038. package/prisma/migrations/20251127143435_init/migration.sql +62 -0
  1039. package/prisma/migrations/20251129152530_init/migration.sql +40 -0
  1040. package/prisma/migrations/20251130150624_add_education_info/migration.sql +6 -0
  1041. package/prisma/migrations/20251130161659_init/migration.sql +2 -0
  1042. package/prisma/migrations/20251201050917_add_admin_role/migration.sql +21 -0
  1043. package/prisma/migrations/20251203155126_cascade_delete_subject_error_items/migration.sql +29 -0
  1044. package/prisma/migrations/20251213132347_add_knowledge_tag_model/migration.sql +38 -0
  1045. package/prisma/migrations/20251219014445_fix_tag_constraints/migration.sql +11 -0
  1046. package/prisma/migrations/20260427090000_add_mistake_analysis_fields/migration.sql +4 -0
  1047. package/prisma/migrations/20260608000000_add_geogebra_commands/migration.sql +2 -0
  1048. package/prisma/migrations/20261018120000_add_practice_mastery_exam/migration.sql +103 -0
  1049. package/prisma/migrations/20261018133653_add_duplicate_import_details/migration.sql +4 -0
  1050. package/prisma/migrations/20261018134606_add_question_duplicate_threshold/migration.sql +2 -0
  1051. package/prisma/migrations/20261019090000_add_user_enable_geogebra/migration.sql +2 -0
  1052. package/prisma/migrations/20261019120000_lower_question_duplicate_threshold_default/migration.sql +27 -0
  1053. package/prisma/migrations/20261019150000_add_error_item_difficulty_stars/migration.sql +2 -0
  1054. package/prisma/migrations/20261019170000_add_notebook_stage_subject/migration.sql +17 -0
  1055. package/prisma/migrations/20261019190000_add_question_figure_svg/migration.sql +6 -0
  1056. package/prisma/migrations/20261019210000_add_svg_animation/migration.sql +3 -0
  1057. package/prisma/migrations/20261019230000_exam_question_multiple_results/migration.sql +40 -0
  1058. package/prisma/migrations/migration_lock.toml +3 -0
  1059. package/prisma/schema.prisma +222 -0
  1060. package/prisma/seed.db +0 -0
  1061. package/public/file.svg +1 -0
  1062. package/public/globe.svg +1 -0
  1063. package/public/icons/icon.png +0 -0
  1064. package/public/next.svg +1 -0
  1065. package/public/vercel.svg +1 -0
  1066. package/public/window.svg +1 -0
  1067. package/server.js +38 -0
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0els3c1._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var t=e.i(63021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},45706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},33086,e=>e.a(async(t,r)=>{try{var a=e.i(58821),n=e.i(69719),i=e.i(98043),s=e.i(63856),o=e.i(76759),l=e.i(50377),u=t([s]);[s]=u.then?(await u)():u;let c=(0,l.createLogger)("api:error-items:image"),p=n.z.object({imageDataUrl:n.z.string().max(0x1400000).regex(/^data:image\/(?:png|jpe?g|webp|gif);base64,[A-Za-z0-9+/]+={0,2}$/)});async function d(e,{params:t}){let{id:r}=await t;try{let t=await (0,s.getCurrentUser)();if(!t)return(0,o.unauthorized)("Authentication required");let n=p.safeParse(await e.json().catch(()=>null));if(!n.success)return(0,o.badRequest)("INVALID_IMAGE");let l=await i.prisma.errorItem.findUnique({where:{id:r},select:{userId:!0}});if(!l||l.userId!==t.id)return(0,o.notFound)("Item not found");return await i.prisma.errorItem.update({where:{id:r},data:{originalImageUrl:n.data.imageDataUrl}}),c.info({errorItemId:r,imageLength:n.data.imageDataUrl.length},"Original image replaced"),a.NextResponse.json({originalImageUrl:n.data.imageDataUrl})}catch(e){return c.error({error:e},"Error replacing original image"),(0,o.internalError)("Failed to replace image")}}e.s(["PUT",0,d]),r()}catch(e){r(e)}},!1),80304,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),i=e.i(61916),s=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),R=e.i(70101),x=e.i(74838),E=e.i(10372),g=e.i(93695),h=e.i(9580);e.i(52474);var m=e.i(220);let f=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/error-items/[id]/image/route",pathname:"/api/error-items/[id]/image",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/error-items/[id]/image/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(33086),...{}}),{workAsyncStorage:v,workUnitAsyncStorage:I,serverHooks:N}=f;async function O(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),f.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/error-items/[id]/image/route";v=v.replace(/\/index$/,"")||"/";let I=await f.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!I)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,deploymentId:O,params:A,nextConfig:w,parsedUrl:T,isDraftMode:_,prerenderManifest:D,routerServerContext:y,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,resolvedPathname:U,clientReferenceManifest:b,serverActionsManifest:q}=I,P=(0,o.normalizeAppPath)(v),L=!!D.routes[U]&&(f.isDev||(0,h.isRouteCacheOwner)(U,f.cacheOwner,D.routes[U])),j=!!(D.dynamicRoutes[P]||L),F=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,T,!1):t.end("This page could not be found"),null);if(j&&!_){let e=D.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(w.adapterPath)return await F();throw new g.NoFallbackError}}let k=null;!j||f.isDev||_||(k="/index"===(k=U)?"/":k);let M=!0===f.isDev||!j,H=j&&!M;q&&b&&(0,s.setManifestsSingleton)({page:v,clientReferenceManifest:b,serverActionsManifest:q});let B=e.method||"GET",G=(0,i.getTracer)(),V=G.getActiveScopeSpan(),z=!!(null==y?void 0:y.isWrappedByNextServer),K=!!(0,n.getRequestMeta)(e,"minimalMode"),$=(0,n.getRequestMeta)(e,"incrementalCache")||await f.getIncrementalCache(e,w,D,K);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let Q={params:A,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts,useCacheTimeout:w.experimental.useCacheTimeout},cacheComponents:!!w.cacheComponents,validationLevel:w.experimental.instantInsights.validationLevel,isDraftMode:_,supportsDynamicResponse:M,incrementalCache:$,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:w.cacheLife,staticPageGenerationTimeout:w.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>f.onRequestError(e,t,a,n,y)},sharedContext:{buildId:N,deploymentId:O}},X=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(X,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!K&&S&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await f.handle(Z,Q);e.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let s=Q.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(X,W,n,i),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[E.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,a=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==r&&r>0?w.expireTime:void 0:Q.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await f.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),t}},Y=async(n,s)=>{try{var o,l;let n=await f.handleResponse({req:e,nextConfig:w,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:a.waitUntil,isMinimalMode:K});if(!j)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",S?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),_&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,R.fromNodeOutgoingHttpHeaders)(n.value.headers);K&&j||i.delete(E.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,x.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(X,W,new Response(n.value.body,{headers:i,status:n.value.status||200}));return}catch(t){if(t instanceof g.NoFallbackError||await f.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),j)throw t;await (0,p.sendResponse)(X,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:i.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${B} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),s&&s!==n&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(z&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${v}`,kind:i.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!z)}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:I})},"routeModule",0,f,"serverHooks",0,N,"workAsyncStorage",0,v,"workUnitAsyncStorage",0,I])},76759,e=>{"use strict";var t=e.i(58821);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function a(e,r,a,n){let i={message:e};return a&&(i.code=a),n&&(i.details=n),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return a(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return a(e,409,r.CONFLICT)},"createErrorResponse",0,a,"forbidden",0,function(e="Forbidden"){return a(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return a(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return a(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return a(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return a(e,400,r.VALIDATION_ERROR,t)}])},63856,e=>e.a(async(t,r)=>{try{var a=e.i(13618),n=e.i(79832),i=e.i(98043),s=t([n]);async function o(){let e=await (0,a.getServerSession)(n.authOptions);return e?.user?.email?i.prisma.user.findUnique({where:{email:e.user.email}}):null}[n]=s.then?(await s)():s,e.s(["getCurrentUser",0,o]),r()}catch(e){r(e)}},!1),50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,i=t[e],s=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(i<s)return;let l=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0gp88gz._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[85685,e=>{e.v(e=>Promise.resolve().then(()=>e(54799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(35611)))},46735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(83085)))},91961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(12111)))},72331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1vzxn91._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(20442)))},30249,e=>{e.v(e=>Promise.resolve().then(()=>e(5898)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0gpohuv._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0grkic-._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0hj9oe2._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var r=e.i(63021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},49719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(r,t)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),t()}catch(e){t(e)}},!0),874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},54799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},27699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},21517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},24836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},45706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},92509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},24361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},6461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},76759,e=>{"use strict";var r=e.i(58821);let t={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,t,n,s){let i={message:e};return n&&(i.code=n),s&&(i.details=s),r.NextResponse.json(i,{status:t})}e.s(["ErrorCode",0,t,"badRequest",0,function(e,r){return n(e,400,t.BAD_REQUEST,r)},"conflict",0,function(e){return n(e,409,t.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,t.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,t.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,t.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,t.UNAUTHORIZED)},"validationError",0,function(e,r){return n(e,400,t.VALIDATION_ERROR,r)}])},50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,n={}){let s,i=r[e],a=(s=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[s]?r[s]:r.info;return(r,t)=>{let s,o;if(i<a)return;let u=new Date;"string"==typeof r?(s={},o=r):(s=r,o=t||"");{let r=JSON.stringify({level:e,time:u.toISOString(),...n,...s,msg:o});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let n=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])},4083,e=>{"use strict";var r=e.i(98043);async function t(e,n,s=r.prisma){if(!e||!n)return null;let i=await s.knowledgeTag.findMany({where:{subject:n,isSystem:!0,parentId:null},select:{id:!0,name:!0}});if(0===i.length)return null;let a=e.trim(),o=i.find(e=>e.name===a);if(o)return o.id;let u="";for(let[e,r]of Object.entries({一年级:"一年级","Grade 1":"一年级",二年级:"二年级","Grade 2":"二年级",三年级:"三年级","Grade 3":"三年级",四年级:"四年级","Grade 4":"四年级",五年级:"五年级","Grade 5":"五年级",六年级:"六年级","Grade 6":"六年级",初一:"七年级","Grade 7":"七年级",七年级:"七年级",初二:"八年级","Grade 8":"八年级",八年级:"八年级",初三:"九年级","Grade 9":"九年级",九年级:"九年级",高一:"高一","Grade 10":"高一","Senior 1":"高一",高二:"高二","Grade 11":"高二","Senior 2":"高二",高三:"高三","Grade 12":"高三","Senior 3":"高三"}))if(a.includes(e)){u=r;break}if(!u)return null;let d="";a.includes("上")||a.includes("1st")||a.includes("First")?d="上":(a.includes("下")||a.includes("2nd")||a.includes("Second"))&&(d="下");let l=[];for(let e of(d&&l.push(`${u}${d}`),l.push(u),l)){let r=i.find(r=>r.name===e);if(r)return r.id}return null}e.s(["findParentTagIdForGrade",0,t])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0inxsnu._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0j-gv3-._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var t=e.i(63021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},45706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},86264,e=>e.a(async(t,r)=>{try{var a=e.i(58821),n=e.i(13618),i=e.i(79832),s=e.i(98043),o=e.i(58078),u=e.i(76759),l=e.i(50377),d=t([i]);[i]=d.then?(await d)():d;let R=(0,l.createLogger)("api:admin:users:id");async function c(e,{params:t}){let{id:r}=await t,l=await (0,n.getServerSession)(i.authOptions);if(!(0,o.requireAdmin)(l))return(0,u.forbidden)("Admin access required");try{let{isActive:t}=await e.json();if(r===l?.user.id)return(0,u.badRequest)("Cannot disable your own account");let n=await s.prisma.user.findUnique({where:{id:r}});if(n?.email==="admin@localhost")return(0,u.badRequest)("Cannot disable super admin");let i=await s.prisma.user.update({where:{id:r},data:{isActive:t}});return a.NextResponse.json(i)}catch(e){return R.error({error:e},"Error updating user"),(0,u.internalError)("Failed to update user")}}async function p(e,{params:t}){let{id:r}=await t,l=await (0,n.getServerSession)(i.authOptions);if(!(0,o.requireAdmin)(l))return(0,u.forbidden)("Admin access required");try{if(r===l?.user.id)return(0,u.badRequest)("Cannot delete your own account");let e=await s.prisma.user.findUnique({where:{id:r}});if(e?.role==="admin"&&"admin@localhost"===e.email)return(0,u.badRequest)("Cannot delete super admin");let t=await s.prisma.user.delete({where:{id:r}});return a.NextResponse.json(t)}catch(e){return R.error({error:e},"Error deleting user"),(0,u.internalError)("Failed to delete user")}}e.s(["DELETE",0,p,"PATCH",0,c]),r()}catch(e){r(e)}},!1),84085,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),i=e.i(61916),s=e.i(74677),o=e.i(69741),u=e.i(16795),l=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),R=e.i(70101),E=e.i(74838),x=e.i(10372),h=e.i(93695),f=e.i(9580);e.i(52474);var m=e.i(220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/admin/users/[id]/route",pathname:"/api/admin/users/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/admin/users/[id]/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(86264),...{}}),{workAsyncStorage:N,workUnitAsyncStorage:O,serverHooks:g}=v;async function w(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let N="/api/admin/users/[id]/route";N=N.replace(/\/index$/,"")||"/";let O=await v.prepare(e,t,{srcPage:N,multiZoneDraftMode:!1});if(!O)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:g,deploymentId:w,params:A,nextConfig:I,parsedUrl:T,isDraftMode:_,prerenderManifest:D,routerServerContext:y,isOnDemandRevalidate:S,revalidateOnlyGenerated:b,resolvedPathname:q,clientReferenceManifest:C,serverActionsManifest:U}=O,P=(0,o.normalizeAppPath)(N),L=!!D.routes[q]&&(v.isDev||(0,f.isRouteCacheOwner)(q,v.cacheOwner,D.routes[q])),F=!!(D.dynamicRoutes[P]||L),j=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,T,!1):t.end("This page could not be found"),null);if(F&&!_){let e=D.dynamicRoutes[P];if(e&&!1===e.fallback&&!L){if(I.adapterPath)return await j();throw new h.NoFallbackError}}let k=null;!F||v.isDev||_||(k="/index"===(k=q)?"/":k);let H=!0===v.isDev||!F,M=F&&!H;U&&C&&(0,s.setManifestsSingleton)({page:N,clientReferenceManifest:C,serverActionsManifest:U});let B=e.method||"GET",G=(0,i.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==y?void 0:y.isWrappedByNextServer),Q=!!(0,n.getRequestMeta)(e,"minimalMode"),X=(0,n.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,I,D,Q);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let $={params:A,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts,useCacheTimeout:I.experimental.useCacheTimeout},cacheComponents:!!I.cacheComponents,validationLevel:I.experimental.instantInsights.validationLevel,isDraftMode:_,supportsDynamicResponse:H,incrementalCache:X,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:I.cacheLife,staticPageGenerationTimeout:I.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>v.onRequestError(e,t,a,n,y)},sharedContext:{buildId:g,deploymentId:w}},W=new u.NodeNextRequest(e),z=new u.NodeNextResponse(t),Z=l.NextRequestAdapter.fromNodeNextRequest(W,(0,l.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&S&&b&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await v.handle(Z,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let i=$.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let s=$.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)(W,z,n,i),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[x.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=x.INFINITE_CACHE?!1!==r&&r>0?I.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:S})},!1,y),t}},Y=async(n,s)=>{try{var o,u;let n=await v.handleResponse({req:e,nextConfig:I,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:b,responseGenerator:J,waitUntil:a.waitUntil,isMinimalMode:Q});if(!F)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(u=n.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",S?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),_&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,R.fromNodeOutgoingHttpHeaders)(n.value.headers);Q&&F||i.delete(x.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,E.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(W,z,new Response(n.value.body,{headers:i,status:n.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:S})},!1,y),F)throw t;await (0,p.sendResponse)(W,z,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:i.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${B} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),s&&s!==n&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${N}`,kind:i.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,w,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:O})},"routeModule",0,v,"serverHooks",0,g,"workAsyncStorage",0,N,"workUnitAsyncStorage",0,O])},76759,e=>{"use strict";var t=e.i(58821);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function a(e,r,a,n){let i={message:e};return a&&(i.code=a),n&&(i.details=n),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return a(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return a(e,409,r.CONFLICT)},"createErrorResponse",0,a,"forbidden",0,function(e="Forbidden"){return a(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return a(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return a(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return a(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return a(e,400,r.VALIDATION_ERROR,t)}])},58078,e=>{"use strict";e.s(["requireAdmin",0,function(e){var t;return!!e&&(t=e.user,t?.role==="admin")}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,i=t[e],s=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(i<s)return;let u=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:u.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0jaawra._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var r=e.i(63021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},49719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(r,t)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),t()}catch(e){t(e)}},!0),874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},54799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},27699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},22734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},21517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},24836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},45706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},92509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},24361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},6461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},76759,e=>{"use strict";var r=e.i(58821);let t={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,t,n,i){let s={message:e};return n&&(s.code=n),i&&(s.details=i),r.NextResponse.json(s,{status:t})}e.s(["ErrorCode",0,t,"badRequest",0,function(e,r){return n(e,400,t.BAD_REQUEST,r)},"conflict",0,function(e){return n(e,409,t.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,t.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,t.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,t.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,t.UNAUTHORIZED)},"validationError",0,function(e,r){return n(e,400,t.VALIDATION_ERROR,r)}])},26828,e=>{"use strict";let r=(0,e.i(50377).createLogger)("background-tasks"),t=globalThis,n=t.__backgroundTasks??=new Map,i=0;function s(e){for(let[r,t]of n)t.finishedAt&&e-Date.parse(t.finishedAt)>18e5&&n.delete(r)}function a(e){let t=Date.now();s(t);let a=`${t.toString(36)}-${(i++).toString(36)}`,o={id:a,userId:e.userId,kind:e.kind,subject:e.subject??null,status:"running",progress:void 0!==e.total?{done:0,total:e.total,failed:0}:null,error:null,link:e.link??null,startedAt:new Date(t).toISOString(),finishedAt:null};n.set(a,o);let c=(e,r)=>{"running"===o.status&&(o.status=e,o.error=r,o.finishedAt=new Date().toISOString())};return{id:a,setProgress:(e,r,t)=>{o.progress={done:e,total:r??o.progress?.total??e,failed:t??o.progress?.failed??0}},succeed:()=>c("succeeded",null),fail:e=>{let t;c("failed",((t=e instanceof Error?e.message:String(e)).startsWith("AI_")?t.split(":")[0]:t).slice(0,200)),r.debug({taskId:a,kind:o.kind,error:o.error},"Background task failed")}}}async function o(e,r){let t=a(e);try{let e=await r(t);return t.succeed(),e}catch(e){throw t.fail(e),e}}e.s(["clearFinishedBackgroundTasks",0,function(e){for(let[r,t]of n)t.userId===e&&"running"!==t.status&&n.delete(r)},"describeQuestion",0,function(e){let r=(e.questionText??"").replace(/\$+/g,"").replace(/\\[a-zA-Z]+|[{}\\]/g," ").replace(/[#*>`|_-]+/g," ").replace(/\s+/g," ").replace(/\s*([,。;:?!、])\s*/g,"$1").trim(),t=r.length>24?`${r.slice(0,24)}…`:r;return[e.shortId,t].filter(Boolean).join(" ")||"—"},"listBackgroundTasks",0,function(e){s(Date.now());let r=[...n.values()].filter(r=>r.userId===e);return[...r.filter(e=>"running"===e.status).sort((e,r)=>e.startedAt.localeCompare(r.startedAt)),...r.filter(e=>"running"!==e.status).sort((e,r)=>(r.finishedAt??"").localeCompare(e.finishedAt??"")).slice(0,30)].map(e=>({id:e.id,kind:e.kind,subject:e.subject,status:e.status,progress:e.progress&&{...e.progress},error:e.error,link:e.link,startedAt:e.startedAt,finishedAt:e.finishedAt}))},"startBackgroundTask",0,a,"trackBackgroundTask",0,o])},98003,e=>{"use strict";var r=e.i(22734),t=e.i(14747),n=e.i(50377),i=e.i(76025);let s=(0,n.createLogger)("config"),a=t.default.join(process.env.CONFIG_DIR||t.default.join(process.cwd(),"config"),"app-config.json"),o={aiProvider:process.env.AI_PROVIDER||"gemini",allowRegistration:!0,timeZone:i.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-4o"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function c(){if(r.default.existsSync(a))try{var e;let t=r.default.readFileSync(a,"utf-8"),n=JSON.parse(t),c=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){s.info("Detected legacy OpenAI config, migrating to multi-instance format..."),c=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let r={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let r=16*Math.random()|0;return("x"===e?r:3&r|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-4o"};return{instances:[r],activeInstanceId:r.id}}(n.openai);let e={...n,openai:c};r.default.writeFileSync(a,JSON.stringify(e,null,2)),s.info("Legacy OpenAI config migrated successfully")}return{...o,...n,timeZone:(0,i.isValidTimeZone)(n.timeZone)?n.timeZone.trim():i.DEFAULT_TIME_ZONE,openai:{instances:c?.instances||o.openai?.instances||[],activeInstanceId:c?.activeInstanceId||o.openai?.activeInstanceId},gemini:{...o.gemini,...n.gemini},azure:{...o.azure,...n.azure},anthropic:{...o.anthropic,...n.anthropic},prompts:{...o.prompts,...n.prompts},timeouts:{...o.timeouts,...n.timeouts}}}catch(e){s.error({error:e},"Failed to read config file")}return o}e.s(["getActiveOpenAIConfig",0,function(){let e=c(),r=e.openai?.instances||[],t=e.openai?.activeInstanceId;if(t&&0!==r.length)return r.find(e=>e.id===t)},"getAppConfig",0,c,"getAppTimeZone",0,function(){return c().timeZone||i.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,i.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let t=c(),n={...t,...e,timeZone:e.timeZone?.trim()??t.timeZone??i.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??t.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??t.openai?.activeInstanceId},gemini:{...t.gemini,...e.gemini},azure:{...t.azure,...e.azure},anthropic:{...t.anthropic,...e.anthropic},prompts:{...t.prompts,...e.prompts},timeouts:{...t.timeouts,...e.timeouts}};try{return r.default.writeFileSync(a,JSON.stringify(n,null,2)),n}catch(e){throw s.error({error:e},"Failed to write config file"),e}}])},63856,e=>e.a(async(r,t)=>{try{var n=e.i(13618),i=e.i(79832),s=e.i(98043),a=r([i]);async function o(){let e=await (0,n.getServerSession)(i.authOptions);return e?.user?.email?s.prisma.user.findUnique({where:{email:e.user.email}}):null}[i]=a.then?(await a)():a,e.s(["getCurrentUser",0,o]),t()}catch(e){t(e)}},!1),50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,n={}){let i,s=r[e],a=(i=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[i]?r[i]:r.info;return(r,t)=>{let i,o;if(s<a)return;let c=new Date;"string"==typeof r?(i={},o=r):(i=r,o=t||"");{let r=JSON.stringify({level:e,time:c.toISOString(),...n,...i,msg:o});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let n=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0je3zje._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},24214,(e,t,r)=>{t.exports={name:"wrong-notebook",version:"2026.10.19",private:!0,scripts:{dev:"next dev -H 0.0.0.0",build:"next build",start:"next start",lint:"eslint src",test:"vitest run","test:unit":"vitest run src/__tests__/unit","test:integration":"vitest run src/__tests__/integration","test:watch":"vitest","test:coverage":"vitest run --coverage","test:e2e":"playwright test","test:report":"playwright show-report --host 0.0.0.0"},dependencies:{"@anthropic-ai/sdk":"0.131.0","@google/genai":"^1.34.0","@next-auth/prisma-adapter":"^1.0.7","@prisma/client":"5.22.0","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-label":"^2.1.8","@radix-ui/react-progress":"^1.1.8","@radix-ui/react-select":"^2.2.6","@radix-ui/react-slider":"^1.3.6","@radix-ui/react-slot":"^1.2.4","@radix-ui/react-switch":"^1.2.6","@radix-ui/react-tabs":"^1.1.13",bcryptjs:"^3.0.3","date-fns":"^4.1.0","date-fns-tz":"^3.2.0",dotenv:"^17.2.3","global-agent":"^3.0.0",jsonrepair:"^3.13.1",katex:"^0.16.25",next:"~16.3.8","next-auth":"^4.24.15",openai:"^6.9.1",react:"19.2.8","react-dom":"19.2.8","react-dropzone":"^14.3.8","react-easy-crop":"^5.5.6","react-image-crop":"^11.0.10","react-markdown":"^10.1.0",recharts:"^3.5.0","rehype-katex":"^7.0.1",remark:"^15.0.1","remark-gfm":"^4.0.1","remark-math":"^6.0.0","strip-markdown":"^6.0.0",undici:"^7.16.0",zod:"^4.1.13"},devDependencies:{"@playwright/test":"^1.57.0","@tailwindcss/postcss":"^4","@types/bcryptjs":"^2.4.6","@types/node":"^20","@types/react":"^19","@types/react-dom":"^19","@vitejs/plugin-react":"^5.1.1","baseline-browser-mapping":"^2.8.32","class-variance-authority":"^0.7.1",clsx:"^2.1.1",eslint:"^9","eslint-config-next":"16.3.8",jsdom:"^27.2.0","lucide-react":"^0.555.0",prisma:"5.22.0","tailwind-merge":"^3.4.0",tailwindcss:"^4","tailwindcss-animate":"^1.0.7","ts-node":"^10.9.2","tw-animate-css":"^1.4.0",typescript:"^5",vitest:"^4.0.15"},prisma:{seed:'ts-node --compiler-options {"module":"CommonJS"} prisma/seed.ts'}}},5443,e=>{"use strict";var t=e.i(24214);e.s(["getAppVersion",0,function(){return process.env.APP_VERSION?.trim().replace(/^v/,"")||t.version}])},10382,e=>{"use strict";var t=e.i(58821),r=e.i(5443);async function a(){return t.NextResponse.json({version:(0,r.getAppVersion)()})}e.s(["GET",0,a,"dynamic",0,"force-dynamic"])},76281,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),s=e.i(59756),n=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),p=e.i(95169),c=e.i(47587),u=e.i(66012),x=e.i(70101),h=e.i(74838),v=e.i(10372),m=e.i(93695),g=e.i(9580);e.i(52474);var R=e.i(220);let w=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/version/route",pathname:"/api/version",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(10382),...{}}),{workAsyncStorage:y,workUnitAsyncStorage:f,serverHooks:E}=w;async function C(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/version/route";y=y.replace(/\/index$/,"")||"/";let f=await w.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,deploymentId:C,params:b,nextConfig:A,parsedUrl:k,isDraftMode:T,prerenderManifest:_,routerServerContext:q,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,resolvedPathname:j,clientReferenceManifest:N,serverActionsManifest:O}=f,H=(0,o.normalizeAppPath)(y),I=!!_.routes[j]&&(w.isDev||(0,g.isRouteCacheOwner)(j,w.cacheOwner,_.routes[j])),M=!!(_.dynamicRoutes[H]||I),D=async()=>((null==q?void 0:q.render404)?await q.render404(e,t,k,!1):t.end("This page could not be found"),null);if(M&&!T){let e=_.dynamicRoutes[H];if(e&&!1===e.fallback&&!I){if(A.adapterPath)return await D();throw new m.NoFallbackError}}let U=null;!M||w.isDev||T||(U="/index"===(U=j)?"/":U);let F=!0===w.isDev||!M,K=M&&!F;O&&N&&(0,i.setManifestsSingleton)({page:y,clientReferenceManifest:N,serverActionsManifest:O});let L=e.method||"GET",$=(0,n.getTracer)(),B=$.getActiveScopeSpan(),G=!!(null==q?void 0:q.isWrappedByNextServer),V=!!(0,s.getRequestMeta)(e,"minimalMode"),z=(0,s.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,A,_,V);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let X={params:b,previewProps:_.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:T,supportsDynamicResponse:F,incrementalCache:z,hmrRefreshHash:(0,s.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>w.onRequestError(e,t,a,s,q)},sharedContext:{buildId:E,deploymentId:C}},W=new l.NodeNextRequest(e),J=new l.NodeNextResponse(t),Z=d.NextRequestAdapter.fromNodeNextRequest(W,(0,d.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!V&&P&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await w.handle(Z,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let n=X.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let i=X.renderOpts.collectedTags;if(!M)return await (0,u.sendResponse)(W,J,s,n),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);i&&(t[v.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:P})},!1,q),t}},Y=async(s,i)=>{try{var o,l;let s=await w.handleResponse({req:e,nextConfig:A,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:S,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:V});if(!M)return;if((null==s||null==(o=s.value)?void 0:o.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==s||null==(l=s.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",P?"REVALIDATED":s.isMiss?"MISS":s.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,x.fromNodeOutgoingHttpHeaders)(s.value.headers);V&&M||n.delete(v.NEXT_CACHE_TAGS_HEADER),!s.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,h.getCacheControlHeader)(s.cacheControl)),await (0,u.sendResponse)(W,J,new Response(s.value.body,{headers:n,status:s.value.status||200}));return}catch(t){if(t instanceof m.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:P})},!1,q),M)throw t;await (0,u.sendResponse)(W,J,new Response(null,{status:500}));return}finally{(()=>{if(!s)return;let e=t.statusCode;s.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(s.setStatus({code:n.SpanStatusCode.ERROR}),s.setAttribute("error.type",e.toString()));let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||H,o=`${L} ${a}`;s.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),s.updateName(o),i&&i!==s&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if(G&&B)await Y(B,void 0);else{let t=$.getActiveScopeSpan();await $.withPropagatedContext(e.headers,()=>$.trace(p.BaseServerSpan.handleRequest,{spanName:`${L} ${y}`,kind:n.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>Y(e,t)),void 0,!G)}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:f})},"routeModule",0,w,"serverHooks",0,E,"workAsyncStorage",0,y,"workUnitAsyncStorage",0,f])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0m8p-6f._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[85685,e=>{e.v(e=>Promise.resolve().then(()=>e(54799)))},79955,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1_gkx5x._.js"].map(r=>e.l(r))).then(()=>r(35611)))},46735,e=>{e.v(r=>Promise.all(["server/chunks/[externals]__04n7qbr._.js","server/chunks/[root-of-the-server]__0rk_yxy._.js"].map(r=>e.l(r))).then(()=>r(83085)))},91961,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1jtd2ar._.js"].map(r=>e.l(r))).then(()=>r(12111)))},72331,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__1wgn76g._.js","server/chunks/[root-of-the-server]__1nmtv65._.js","server/chunks/[root-of-the-server]__0_t7bbz._.js"].map(r=>e.l(r))).then(()=>r(20442)))},30249,e=>{e.v(e=>Promise.resolve().then(()=>e(5898)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0m_f8ct._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0na-z2m._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var t=e.i(63021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(t,r)=>{try{var a=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(a),r()}catch(e){r(e)}},!0),874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},45706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},96976,e=>e.a(async(t,r)=>{try{var a=e.i(58821),n=e.i(98043),s=e.i(79832),i=e.i(13618),o=e.i(76759),l=e.i(50377),u=t([s]);[s]=u.then?(await u)():u;let c=(0,l.createLogger)("api:error-items:clear");async function d(e){let t=await (0,i.getServerSession)(s.authOptions);if(!t||!t.user)return(0,o.unauthorized)();let r=t.user.id;try{return await n.prisma.errorItem.deleteMany({where:{userId:r}}),a.NextResponse.json({message:"Error data cleared successfully"})}catch(e){return c.error({error:e},"Error clearing error data"),(0,o.internalError)("Failed to clear error data")}}e.s(["DELETE",0,d]),r()}catch(e){r(e)}},!1),40024,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),R=e.i(70101),E=e.i(74838),x=e.i(10372),h=e.i(93695),f=e.i(9580);e.i(52474);var v=e.i(220);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/error-items/clear/route",pathname:"/api/error-items/clear",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/error-items/clear/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(96976),...{}}),{workAsyncStorage:O,workUnitAsyncStorage:g,serverHooks:m}=N;async function I(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let O="/api/error-items/clear/route";O=O.replace(/\/index$/,"")||"/";let g=await N.prepare(e,t,{srcPage:O,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:m,deploymentId:I,params:A,nextConfig:T,parsedUrl:_,isDraftMode:w,prerenderManifest:D,routerServerContext:y,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:U}=g,L=(0,o.normalizeAppPath)(O),P=!!D.routes[b]&&(N.isDev||(0,f.isRouteCacheOwner)(b,N.cacheOwner,D.routes[b])),F=!!(D.dynamicRoutes[L]||P),j=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,_,!1):t.end("This page could not be found"),null);if(F&&!w){let e=D.dynamicRoutes[L];if(e&&!1===e.fallback&&!P){if(T.adapterPath)return await j();throw new h.NoFallbackError}}let k=null;!F||N.isDev||w||(k="/index"===(k=b)?"/":k);let M=!0===N.isDev||!F,H=F&&!M;U&&q&&(0,i.setManifestsSingleton)({page:O,clientReferenceManifest:q,serverActionsManifest:U});let B=e.method||"GET",G=(0,s.getTracer)(),V=G.getActiveScopeSpan(),K=!!(null==y?void 0:y.isWrappedByNextServer),Q=!!(0,n.getRequestMeta)(e,"minimalMode"),X=(0,n.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,T,D,Q);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let $={params:A,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:w,supportsDynamicResponse:M,incrementalCache:X,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>N.onRequestError(e,t,a,n,y)},sharedContext:{buildId:m,deploymentId:I}},z=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),J=async({previousCacheEntry:r})=>{try{if(!Q&&S&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await N.handle(Z,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let s=$.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let i=$.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)(z,W,n,s),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[x.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=x.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),t}},Y=async(n,i)=>{try{var o,l;let n=await N.handleResponse({req:e,nextConfig:T,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:C,responseGenerator:J,waitUntil:a.waitUntil,isMinimalMode:Q});if(!F)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",S?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,R.fromNodeOutgoingHttpHeaders)(n.value.headers);Q&&F||s.delete(x.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,E.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(z,W,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof h.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:L,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,y),F)throw t;await (0,p.sendResponse)(z,W,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||L,o=`${B} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if(K&&V)await Y(V,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${B} ${O}`,kind:s.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>Y(e,t)),void 0,!K)}}e.s(["handler",0,I,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:g})},"routeModule",0,N,"serverHooks",0,m,"workAsyncStorage",0,O,"workUnitAsyncStorage",0,g])},76759,e=>{"use strict";var t=e.i(58821);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function a(e,r,a,n){let s={message:e};return a&&(s.code=a),n&&(s.details=n),t.NextResponse.json(s,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return a(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return a(e,409,r.CONFLICT)},"createErrorResponse",0,a,"forbidden",0,function(e="Forbidden"){return a(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return a(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return a(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return a(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return a(e,400,r.VALIDATION_ERROR,t)}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,a={}){let n,s=t[e],i=(n=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[n]?t[n]:t.info;return(t,r)=>{let n,o;if(s<i)return;let l=new Date;"string"==typeof t?(n={},o=t):(n=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...a,...n,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let a=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,a="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return a.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0nqbham._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,r,t)=>{r.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var r=e.i(63021);let t=e.g.prisma||new r.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,t])},49719,(e,r,t)=>{r.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(r,t)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),t()}catch(e){t(e)}},!0),874,(e,r,t)=>{r.exports=e.x("buffer",()=>require("buffer"))},54799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},27699,(e,r,t)=>{r.exports=e.x("events",()=>require("events"))},22734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},21517,(e,r,t)=>{r.exports=e.x("http",()=>require("http"))},24836,(e,r,t)=>{r.exports=e.x("https",()=>require("https"))},70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},45706,(e,r,t)=>{r.exports=e.x("querystring",()=>require("querystring"))},92509,(e,r,t)=>{r.exports=e.x("url",()=>require("url"))},24361,(e,r,t)=>{r.exports=e.x("util",()=>require("util"))},6461,(e,r,t)=>{r.exports=e.x("zlib",()=>require("zlib"))},76759,e=>{"use strict";var r=e.i(58821);let t={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,t,n,i){let s={message:e};return n&&(s.code=n),i&&(s.details=i),r.NextResponse.json(s,{status:t})}e.s(["ErrorCode",0,t,"badRequest",0,function(e,r){return n(e,400,t.BAD_REQUEST,r)},"conflict",0,function(e){return n(e,409,t.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,t.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,t.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,t.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,t.UNAUTHORIZED)},"validationError",0,function(e,r){return n(e,400,t.VALIDATION_ERROR,r)}])},98003,e=>{"use strict";var r=e.i(22734),t=e.i(14747),n=e.i(50377),i=e.i(76025);let s=(0,n.createLogger)("config"),o=t.default.join(process.env.CONFIG_DIR||t.default.join(process.cwd(),"config"),"app-config.json"),a={aiProvider:process.env.AI_PROVIDER||"gemini",allowRegistration:!0,timeZone:i.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-4o"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function p(){if(r.default.existsSync(o))try{var e;let t=r.default.readFileSync(o,"utf-8"),n=JSON.parse(t),p=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){s.info("Detected legacy OpenAI config, migrating to multi-instance format..."),p=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let r={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let r=16*Math.random()|0;return("x"===e?r:3&r|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-4o"};return{instances:[r],activeInstanceId:r.id}}(n.openai);let e={...n,openai:p};r.default.writeFileSync(o,JSON.stringify(e,null,2)),s.info("Legacy OpenAI config migrated successfully")}return{...a,...n,timeZone:(0,i.isValidTimeZone)(n.timeZone)?n.timeZone.trim():i.DEFAULT_TIME_ZONE,openai:{instances:p?.instances||a.openai?.instances||[],activeInstanceId:p?.activeInstanceId||a.openai?.activeInstanceId},gemini:{...a.gemini,...n.gemini},azure:{...a.azure,...n.azure},anthropic:{...a.anthropic,...n.anthropic},prompts:{...a.prompts,...n.prompts},timeouts:{...a.timeouts,...n.timeouts}}}catch(e){s.error({error:e},"Failed to read config file")}return a}e.s(["getActiveOpenAIConfig",0,function(){let e=p(),r=e.openai?.instances||[],t=e.openai?.activeInstanceId;if(t&&0!==r.length)return r.find(e=>e.id===t)},"getAppConfig",0,p,"getAppTimeZone",0,function(){return p().timeZone||i.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,i.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let t=p(),n={...t,...e,timeZone:e.timeZone?.trim()??t.timeZone??i.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??t.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??t.openai?.activeInstanceId},gemini:{...t.gemini,...e.gemini},azure:{...t.azure,...e.azure},anthropic:{...t.anthropic,...e.anthropic},prompts:{...t.prompts,...e.prompts},timeouts:{...t.timeouts,...e.timeouts}};try{return r.default.writeFileSync(o,JSON.stringify(n,null,2)),n}catch(e){throw s.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let r={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function t(e,n={}){let i,s=r[e],o=(i=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==r[i]?r[i]:r.info;return(r,t)=>{let i,a;if(s<o)return;let p=new Date;"string"==typeof r?(i={},a=r):(i=r,a=t||"");{let r=JSON.stringify({level:e,time:p.toISOString(),...n,...i,msg:a});switch(e){case"error":case"fatal":console.error(r);break;case"warn":console.warn(r);break;default:console.log(r)}}}}let n=function e(r={}){return r.module,{trace:t("trace",r),debug:t("debug",r),info:t("info",r),warn:t("warn",r),error:t("error",r),fatal:t("fatal",r),child:t=>e({...r,...t}),box:(e,t,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...r,title:e,..."string"==typeof t?{content:t}:t||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])},41070,e=>{"use strict";let r="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",t=RegExp(`^[${r}]{6}$`);e.s(["BASE58_ALPHABET",0,r,"SHORT_ID_LENGTH",0,6,"isShortId",0,function(e){return"string"==typeof e&&t.test(e)}])},92366,e=>{"use strict";var r=e.i(54799),t=e.i(41070);async function n(e){for(let n=0;n<10;n++){let n=function(){let e="";for(;e.length<t.SHORT_ID_LENGTH;)for(let n of(0,r.randomBytes)(2*t.SHORT_ID_LENGTH))n<232&&e.length<t.SHORT_ID_LENGTH&&(e+=t.BASE58_ALPHABET[n%58]);return e}();if(!await e.errorItem.findUnique({where:{shortId:n},select:{id:!0}}))return n}throw Error("Failed to generate a unique short ID")}e.s(["generateUniqueShortId",0,n])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0ns_tws._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var t=e.i(63021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},45706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},60724,e=>e.a(async(t,r)=>{try{var n=e.i(58821),a=e.i(43911),i=e.i(79832),s=e.i(13618),o=e.i(76759),l=e.i(50377),u=e.i(26828),c=e.i(98043),d=e.i(59398),p=e.i(68426),E=t([i]);[i]=E.then?(await E)():E;let R=(0,l.createLogger)("api:reanswer");async function f(e){R.info("Reanswer API called");let t=await (0,s.getServerSession)(i.authOptions);if(!t)return R.warn("Unauthorized access attempt"),n.NextResponse.json({message:"Unauthorized"},{status:401});try{let r,{questionText:i,language:s="zh",subject:l,imageBase64:E,gradeSemester:f,subjectId:g}=await e.json();if(R.debug({questionLength:i?.length,language:s,subject:l,hasImage:!!E,gradeSemester:f},"Reanswer request received"),!i||0===i.trim().length)return R.warn("Missing question text"),(0,o.badRequest)("Missing question text");if("string"==typeof g&&g&&t.user?.email){let e=await c.prisma.subject.findFirst({where:{id:g,user:{email:t.user.email}},select:{name:!0,stage:!0,subjectKey:!0}});e&&(r=await (0,d.getNotebookCandidateTags)((0,p.resolveNotebookScope)(e)))}let I=(0,a.getAIService)(),x=await (0,u.trackBackgroundTask)({userId:t.user.id,kind:"reanswer",subject:(0,u.describeQuestion)({questionText:i})},()=>I.reanswerQuestion(i,s,l,E,f,r));return R.info("Reanswer successful"),n.NextResponse.json(x)}catch(n){let e=n instanceof Error?n.message:String(n),t=n instanceof Error?n.stack:void 0;R.error({error:e,stack:t},"Reanswer error occurred");let r=e||"Failed to reanswer question";return e.includes("AI_AUTH_ERROR")?r="AI_AUTH_ERROR":"AI_CONNECTION_FAILED"===e?r="AI_CONNECTION_FAILED":"AI_RESPONSE_ERROR"===e&&(r="AI_RESPONSE_ERROR"),(0,o.createErrorResponse)(r,500,o.ErrorCode.AI_ERROR)}}e.s(["POST",0,f]),r()}catch(e){r(e)}},!1),45313,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),i=e.i(61916),s=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),c=e.i(95169),d=e.i(47587),p=e.i(66012),E=e.i(70101),f=e.i(74838),R=e.i(10372),g=e.i(93695),I=e.i(9580);e.i(52474);var x=e.i(220);let m=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/reanswer/route",pathname:"/api/reanswer",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/reanswer/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(60724),...{}}),{workAsyncStorage:A,workUnitAsyncStorage:h,serverHooks:v}=m;async function O(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),m.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let A="/api/reanswer/route";A=A.replace(/\/index$/,"")||"/";let h=await m.prepare(e,t,{srcPage:A,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:O,params:_,nextConfig:N,parsedUrl:T,isDraftMode:w,prerenderManifest:y,routerServerContext:S,isOnDemandRevalidate:D,revalidateOnlyGenerated:b,resolvedPathname:C,clientReferenceManifest:P,serverActionsManifest:U}=h,k=(0,o.normalizeAppPath)(A),q=!!y.routes[C]&&(m.isDev||(0,I.isRouteCacheOwner)(C,m.cacheOwner,y.routes[C])),L=!!(y.dynamicRoutes[k]||q),F=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,T,!1):t.end("This page could not be found"),null);if(L&&!w){let e=y.dynamicRoutes[k];if(e&&!1===e.fallback&&!q){if(N.adapterPath)return await F();throw new g.NoFallbackError}}let j=null;!L||m.isDev||w||(j="/index"===(j=C)?"/":j);let M=!0===m.isDev||!L,Z=L&&!M;U&&P&&(0,s.setManifestsSingleton)({page:A,clientReferenceManifest:P,serverActionsManifest:U});let H=e.method||"GET",B=(0,i.getTracer)(),K=B.getActiveScopeSpan(),z=!!(null==S?void 0:S.isWrappedByNextServer),V=!!(0,a.getRequestMeta)(e,"minimalMode"),G=(0,a.getRequestMeta)(e,"incrementalCache")||await m.getIncrementalCache(e,N,y,V);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let $={params:_,previewProps:y.preview,renderOpts:{experimental:{authInterrupts:!!N.experimental.authInterrupts,useCacheTimeout:N.experimental.useCacheTimeout},cacheComponents:!!N.cacheComponents,validationLevel:N.experimental.instantInsights.validationLevel,isDraftMode:w,supportsDynamicResponse:M,incrementalCache:G,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:N.cacheLife,staticPageGenerationTimeout:N.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>m.onRequestError(e,t,n,a,S)},sharedContext:{buildId:v,deploymentId:O}},Q=new l.NodeNextRequest(e),Y=new l.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest(Q,(0,u.signalFromNodeResponse)(t)),X=async({previousCacheEntry:r})=>{try{if(!V&&D&&b&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await m.handle(W,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let i=$.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let s=$.renderOpts.collectedTags;if(!L)return await (0,p.sendResponse)(Q,Y,a,i),null;{let e=await a.blob(),t=(0,E.toNodeOutgoingHttpHeaders)(a.headers);s&&(t[R.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=R.INFINITE_CACHE?!1!==r&&r>0?N.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await m.onRequestError(e,t,{routerKind:"App Router",routePath:A,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:Z,isOnDemandRevalidate:D})},!1,S),t}},J=async(a,s)=>{try{var o,l;let a=await m.handleResponse({req:e,nextConfig:N,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:b,responseGenerator:X,waitUntil:n.waitUntil,isMinimalMode:V});if(!L)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",D?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,E.fromNodeOutgoingHttpHeaders)(a.value.headers);V&&L||i.delete(R.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,f.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)(Q,Y,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof g.NoFallbackError||await m.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:Z,isOnDemandRevalidate:D})},!1,S),L)throw t;await (0,p.sendResponse)(Q,Y,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=B.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||k,o=`${H} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":o}),a.updateName(o),s&&s!==a&&(s.setAttribute("http.route",n),s.updateName(o))})()}};if(z&&K)await J(K,void 0);else{let t=B.getActiveScopeSpan();await B.withPropagatedContext(e.headers,()=>B.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${A}`,kind:i.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},e=>J(e,t)),void 0,!z)}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:h})},"routeModule",0,m,"serverHooks",0,v,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,h])},76759,e=>{"use strict";var t=e.i(58821);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let i={message:e};return n&&(i.code=n),a&&(i.details=a),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},26828,e=>{"use strict";let t=(0,e.i(50377).createLogger)("background-tasks"),r=globalThis,n=r.__backgroundTasks??=new Map,a=0;function i(e){for(let[t,r]of n)r.finishedAt&&e-Date.parse(r.finishedAt)>18e5&&n.delete(t)}function s(e){let r=Date.now();i(r);let s=`${r.toString(36)}-${(a++).toString(36)}`,o={id:s,userId:e.userId,kind:e.kind,subject:e.subject??null,status:"running",progress:void 0!==e.total?{done:0,total:e.total,failed:0}:null,error:null,link:e.link??null,startedAt:new Date(r).toISOString(),finishedAt:null};n.set(s,o);let l=(e,t)=>{"running"===o.status&&(o.status=e,o.error=t,o.finishedAt=new Date().toISOString())};return{id:s,setProgress:(e,t,r)=>{o.progress={done:e,total:t??o.progress?.total??e,failed:r??o.progress?.failed??0}},succeed:()=>l("succeeded",null),fail:e=>{let r;l("failed",((r=e instanceof Error?e.message:String(e)).startsWith("AI_")?r.split(":")[0]:r).slice(0,200)),t.debug({taskId:s,kind:o.kind,error:o.error},"Background task failed")}}}async function o(e,t){let r=s(e);try{let e=await t(r);return r.succeed(),e}catch(e){throw r.fail(e),e}}e.s(["clearFinishedBackgroundTasks",0,function(e){for(let[t,r]of n)r.userId===e&&"running"!==r.status&&n.delete(t)},"describeQuestion",0,function(e){let t=(e.questionText??"").replace(/\$+/g,"").replace(/\\[a-zA-Z]+|[{}\\]/g," ").replace(/[#*>`|_-]+/g," ").replace(/\s+/g," ").replace(/\s*([,。;:?!、])\s*/g,"$1").trim(),r=t.length>24?`${t.slice(0,24)}…`:t;return[e.shortId,r].filter(Boolean).join(" ")||"—"},"listBackgroundTasks",0,function(e){i(Date.now());let t=[...n.values()].filter(t=>t.userId===e);return[...t.filter(e=>"running"===e.status).sort((e,t)=>e.startedAt.localeCompare(t.startedAt)),...t.filter(e=>"running"!==e.status).sort((e,t)=>(t.finishedAt??"").localeCompare(e.finishedAt??"")).slice(0,30)].map(e=>({id:e.id,kind:e.kind,subject:e.subject,status:e.status,progress:e.progress&&{...e.progress},error:e.error,link:e.link,startedAt:e.startedAt,finishedAt:e.finishedAt}))},"startBackgroundTask",0,s,"trackBackgroundTask",0,o])},98003,e=>{"use strict";var t=e.i(22734),r=e.i(14747),n=e.i(50377),a=e.i(76025);let i=(0,n.createLogger)("config"),s=r.default.join(process.env.CONFIG_DIR||r.default.join(process.cwd(),"config"),"app-config.json"),o={aiProvider:process.env.AI_PROVIDER||"gemini",allowRegistration:!0,timeZone:a.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-4o"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function l(){if(t.default.existsSync(s))try{var e;let r=t.default.readFileSync(s,"utf-8"),n=JSON.parse(r),l=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){i.info("Detected legacy OpenAI config, migrating to multi-instance format..."),l=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let t={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-4o"};return{instances:[t],activeInstanceId:t.id}}(n.openai);let e={...n,openai:l};t.default.writeFileSync(s,JSON.stringify(e,null,2)),i.info("Legacy OpenAI config migrated successfully")}return{...o,...n,timeZone:(0,a.isValidTimeZone)(n.timeZone)?n.timeZone.trim():a.DEFAULT_TIME_ZONE,openai:{instances:l?.instances||o.openai?.instances||[],activeInstanceId:l?.activeInstanceId||o.openai?.activeInstanceId},gemini:{...o.gemini,...n.gemini},azure:{...o.azure,...n.azure},anthropic:{...o.anthropic,...n.anthropic},prompts:{...o.prompts,...n.prompts},timeouts:{...o.timeouts,...n.timeouts}}}catch(e){i.error({error:e},"Failed to read config file")}return o}e.s(["getActiveOpenAIConfig",0,function(){let e=l(),t=e.openai?.instances||[],r=e.openai?.activeInstanceId;if(r&&0!==t.length)return t.find(e=>e.id===r)},"getAppConfig",0,l,"getAppTimeZone",0,function(){return l().timeZone||a.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,a.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let r=l(),n={...r,...e,timeZone:e.timeZone?.trim()??r.timeZone??a.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??r.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??r.openai?.activeInstanceId},gemini:{...r.gemini,...e.gemini},azure:{...r.azure,...e.azure},anthropic:{...r.anthropic,...e.anthropic},prompts:{...r.prompts,...e.prompts},timeouts:{...r.timeouts,...e.timeouts}};try{return t.default.writeFileSync(s,JSON.stringify(n,null,2)),n}catch(e){throw i.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,i=t[e],s=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,o;if(i<s)return;let l=new Date;"string"==typeof t?(a={},o=t):(a=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...n,...a,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0p3hkz7._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},98043,e=>{"use strict";var t=e.i(63021);let r=e.g.prisma||new t.PrismaClient({log:"true"===process.env.DEBUG_DB?["query","error","warn"]:["error"]});e.s(["prisma",0,r])},49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},44950,e=>e.a(async(t,r)=>{try{var n=await e.y("bcryptjs-ee66c2bdc904f2cf");e.n(n),r()}catch(e){r(e)}},!0),874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},45706,(e,t,r)=>{t.exports=e.x("querystring",()=>require("querystring"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},42057,e=>e.a(async(t,r)=>{try{var n=e.i(58821),a=e.i(13618),i=e.i(79832),s=e.i(76759),o=e.i(50377),l=e.i(26828),u=e.i(43911),c=t([i]);[i]=c.then?(await c)():c;let p=(0,o.createLogger)("api:geogebra-analyze");async function d(e){let t=await (0,a.getServerSession)(i.authOptions);try{if(!t?.user?.email)return(0,s.unauthorized)("Authentication required");let{questionText:r,answerText:a,analysis:i}=await e.json();if(!r?.trim())return n.NextResponse.json({suitable:!1,commands:[],description:"题目文本为空"},{status:400});let o=(0,u.getAIService)(),c=await (0,l.trackBackgroundTask)({userId:t.user.id,kind:"geogebra",subject:(0,l.describeQuestion)({questionText:r})},()=>o.analyzeForGeogebra(r,a||"",i||""));return p.info({suitable:c.suitable,commandCount:c.commands.length},"GeoGebra analysis complete"),n.NextResponse.json(c)}catch(t){p.error({error:t},"Error during GeoGebra analysis");let e=t instanceof Error?t.message:String(t);if(e.startsWith("AI_"))return n.NextResponse.json({message:e},{status:502});return n.NextResponse.json({message:"Failed to analyze for GeoGebra"},{status:500})}}e.s(["POST",0,d]),r()}catch(e){r(e)}},!1),42542,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),i=e.i(61916),s=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),c=e.i(95169),d=e.i(47587),p=e.i(66012),g=e.i(70101),f=e.i(74838),E=e.i(10372),R=e.i(93695),x=e.i(9580);e.i(52474);var I=e.i(220);let m=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/geogebra-analyze/route",pathname:"/api/geogebra-analyze",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/geogebra-analyze/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(42057),...{}}),{workAsyncStorage:h,workUnitAsyncStorage:A,serverHooks:v}=m;async function O(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),m.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let h="/api/geogebra-analyze/route";h=h.replace(/\/index$/,"")||"/";let A=await m.prepare(e,t,{srcPage:h,multiZoneDraftMode:!1});if(!A)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:O,params:_,nextConfig:N,parsedUrl:T,isDraftMode:y,prerenderManifest:D,routerServerContext:b,isOnDemandRevalidate:S,revalidateOnlyGenerated:w,resolvedPathname:C,clientReferenceManifest:P,serverActionsManifest:U}=A,k=(0,o.normalizeAppPath)(h),L=!!D.routes[C]&&(m.isDev||(0,x.isRouteCacheOwner)(C,m.cacheOwner,D.routes[C])),q=!!(D.dynamicRoutes[k]||L),j=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,T,!1):t.end("This page could not be found"),null);if(q&&!y){let e=D.dynamicRoutes[k];if(e&&!1===e.fallback&&!L){if(N.adapterPath)return await j();throw new R.NoFallbackError}}let F=null;!q||m.isDev||y||(F="/index"===(F=C)?"/":F);let M=!0===m.isDev||!q,Z=q&&!M;U&&P&&(0,s.setManifestsSingleton)({page:h,clientReferenceManifest:P,serverActionsManifest:U});let B=e.method||"GET",H=(0,i.getTracer)(),z=H.getActiveScopeSpan(),K=!!(null==b?void 0:b.isWrappedByNextServer),G=!!(0,a.getRequestMeta)(e,"minimalMode"),V=(0,a.getRequestMeta)(e,"incrementalCache")||await m.getIncrementalCache(e,N,D,G);null==V||V.resetRequestCache(),globalThis.__incrementalCache=V;let $={params:_,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!N.experimental.authInterrupts,useCacheTimeout:N.experimental.useCacheTimeout},cacheComponents:!!N.cacheComponents,validationLevel:N.experimental.instantInsights.validationLevel,isDraftMode:y,supportsDynamicResponse:M,incrementalCache:V,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:N.cacheLife,staticPageGenerationTimeout:N.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>m.onRequestError(e,t,n,a,b)},sharedContext:{buildId:v,deploymentId:O}},Q=new l.NodeNextRequest(e),Y=new l.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest(Q,(0,u.signalFromNodeResponse)(t)),X=async({previousCacheEntry:r})=>{try{if(!G&&S&&w&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await m.handle(W,$);e.fetchMetrics=$.renderOpts.fetchMetrics;let i=$.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let s=$.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(Q,Y,a,i),null;{let e=await a.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(a.headers);s&&(t[E.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=E.INFINITE_CACHE?!1!==r&&r>0?N.expireTime:void 0:$.renderOpts.collectedExpire;return{value:{kind:I.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await m.onRequestError(e,t,{routerKind:"App Router",routePath:h,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:Z,isOnDemandRevalidate:S})},!1,b),t}},J=async(a,s)=>{try{var o,l;let a=await m.handleResponse({req:e,nextConfig:N,cacheKey:F,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:w,responseGenerator:X,waitUntil:n.waitUntil,isMinimalMode:G});if(!q)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==I.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",S?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),y&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,g.fromNodeOutgoingHttpHeaders)(a.value.headers);G&&q||i.delete(E.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,f.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)(Q,Y,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof R.NoFallbackError||await m.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:Z,isOnDemandRevalidate:S})},!1,b),q)throw t;await (0,p.sendResponse)(Q,Y,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||k,o=`${B} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":o}),a.updateName(o),s&&s!==a&&(s.setAttribute("http.route",n),s.updateName(o))})()}};if(K&&z)await J(z,void 0);else{let t=H.getActiveScopeSpan();await H.withPropagatedContext(e.headers,()=>H.trace(c.BaseServerSpan.handleRequest,{spanName:`${B} ${h}`,kind:i.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},e=>J(e,t)),void 0,!K)}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:h,workUnitAsyncStorage:A})},"routeModule",0,m,"serverHooks",0,v,"workAsyncStorage",0,h,"workUnitAsyncStorage",0,A])},76759,e=>{"use strict";var t=e.i(58821);let r={UNAUTHORIZED:"UNAUTHORIZED",SESSION_EXPIRED:"SESSION_EXPIRED",FORBIDDEN:"FORBIDDEN",NOT_OWNER:"NOT_OWNER",ADMIN_REQUIRED:"ADMIN_REQUIRED",NOT_FOUND:"NOT_FOUND",USER_NOT_FOUND:"USER_NOT_FOUND",ITEM_NOT_FOUND:"ITEM_NOT_FOUND",BAD_REQUEST:"BAD_REQUEST",INVALID_INPUT:"INVALID_INPUT",MISSING_REQUIRED_FIELD:"MISSING_REQUIRED_FIELD",VALIDATION_ERROR:"VALIDATION_ERROR",OPERATION_NOT_ALLOWED:"OPERATION_NOT_ALLOWED",CONFLICT:"CONFLICT",ALREADY_EXISTS:"ALREADY_EXISTS",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR",AI_ERROR:"AI_ERROR"};function n(e,r,n,a){let i={message:e};return n&&(i.code=n),a&&(i.details=a),t.NextResponse.json(i,{status:r})}e.s(["ErrorCode",0,r,"badRequest",0,function(e,t){return n(e,400,r.BAD_REQUEST,t)},"conflict",0,function(e){return n(e,409,r.CONFLICT)},"createErrorResponse",0,n,"forbidden",0,function(e="Forbidden"){return n(e,403,r.FORBIDDEN)},"internalError",0,function(e="Internal server error"){return n(e,500,r.INTERNAL_ERROR)},"notFound",0,function(e="Not found"){return n(e,404,r.NOT_FOUND)},"unauthorized",0,function(e="Unauthorized"){return n(e,401,r.UNAUTHORIZED)},"validationError",0,function(e,t){return n(e,400,r.VALIDATION_ERROR,t)}])},26828,e=>{"use strict";let t=(0,e.i(50377).createLogger)("background-tasks"),r=globalThis,n=r.__backgroundTasks??=new Map,a=0;function i(e){for(let[t,r]of n)r.finishedAt&&e-Date.parse(r.finishedAt)>18e5&&n.delete(t)}function s(e){let r=Date.now();i(r);let s=`${r.toString(36)}-${(a++).toString(36)}`,o={id:s,userId:e.userId,kind:e.kind,subject:e.subject??null,status:"running",progress:void 0!==e.total?{done:0,total:e.total,failed:0}:null,error:null,link:e.link??null,startedAt:new Date(r).toISOString(),finishedAt:null};n.set(s,o);let l=(e,t)=>{"running"===o.status&&(o.status=e,o.error=t,o.finishedAt=new Date().toISOString())};return{id:s,setProgress:(e,t,r)=>{o.progress={done:e,total:t??o.progress?.total??e,failed:r??o.progress?.failed??0}},succeed:()=>l("succeeded",null),fail:e=>{let r;l("failed",((r=e instanceof Error?e.message:String(e)).startsWith("AI_")?r.split(":")[0]:r).slice(0,200)),t.debug({taskId:s,kind:o.kind,error:o.error},"Background task failed")}}}async function o(e,t){let r=s(e);try{let e=await t(r);return r.succeed(),e}catch(e){throw r.fail(e),e}}e.s(["clearFinishedBackgroundTasks",0,function(e){for(let[t,r]of n)r.userId===e&&"running"!==r.status&&n.delete(t)},"describeQuestion",0,function(e){let t=(e.questionText??"").replace(/\$+/g,"").replace(/\\[a-zA-Z]+|[{}\\]/g," ").replace(/[#*>`|_-]+/g," ").replace(/\s+/g," ").replace(/\s*([,。;:?!、])\s*/g,"$1").trim(),r=t.length>24?`${t.slice(0,24)}…`:t;return[e.shortId,r].filter(Boolean).join(" ")||"—"},"listBackgroundTasks",0,function(e){i(Date.now());let t=[...n.values()].filter(t=>t.userId===e);return[...t.filter(e=>"running"===e.status).sort((e,t)=>e.startedAt.localeCompare(t.startedAt)),...t.filter(e=>"running"!==e.status).sort((e,t)=>(t.finishedAt??"").localeCompare(e.finishedAt??"")).slice(0,30)].map(e=>({id:e.id,kind:e.kind,subject:e.subject,status:e.status,progress:e.progress&&{...e.progress},error:e.error,link:e.link,startedAt:e.startedAt,finishedAt:e.finishedAt}))},"startBackgroundTask",0,s,"trackBackgroundTask",0,o])},98003,e=>{"use strict";var t=e.i(22734),r=e.i(14747),n=e.i(50377),a=e.i(76025);let i=(0,n.createLogger)("config"),s=r.default.join(process.env.CONFIG_DIR||r.default.join(process.cwd(),"config"),"app-config.json"),o={aiProvider:process.env.AI_PROVIDER||"gemini",allowRegistration:!0,timeZone:a.DEFAULT_TIME_ZONE,openai:{instances:process.env.OPENAI_API_KEY?[{id:"env-default",name:"Default (ENV)",apiKey:process.env.OPENAI_API_KEY,baseUrl:process.env.OPENAI_BASE_URL||"https://api.openai.com/v1",model:process.env.OPENAI_MODEL||"gpt-4o"}]:[],activeInstanceId:process.env.OPENAI_API_KEY?"env-default":void 0},gemini:{apiKey:process.env.GOOGLE_API_KEY,baseUrl:process.env.GEMINI_BASE_URL,model:process.env.GEMINI_MODEL||"gemini-2.5-flash"},azure:{apiKey:process.env.AZURE_OPENAI_API_KEY,endpoint:process.env.AZURE_OPENAI_ENDPOINT,deploymentName:process.env.AZURE_OPENAI_DEPLOYMENT,apiVersion:process.env.AZURE_OPENAI_API_VERSION||"2024-02-15-preview",model:process.env.AZURE_OPENAI_MODEL||"gpt-4o"},anthropic:{apiKey:process.env.ANTHROPIC_API_KEY,baseUrl:process.env.ANTHROPIC_BASE_URL,model:process.env.ANTHROPIC_MODEL||"claude-sonnet-5-5"},prompts:{analyze:"",similar:""},timeouts:{analyze:18e4}};function l(){if(t.default.existsSync(s))try{var e;let r=t.default.readFileSync(s,"utf-8"),n=JSON.parse(r),l=n.openai;if((e=n.openai)&&"object"==typeof e&&"apiKey"in e&&!("instances"in e)){i.info("Detected legacy OpenAI config, migrating to multi-instance format..."),l=function(e){if(!e.apiKey)return{instances:[],activeInstanceId:void 0};let t={id:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}),name:"Default",apiKey:e.apiKey,baseUrl:e.baseUrl||"https://api.openai.com/v1",model:e.model||"gpt-4o"};return{instances:[t],activeInstanceId:t.id}}(n.openai);let e={...n,openai:l};t.default.writeFileSync(s,JSON.stringify(e,null,2)),i.info("Legacy OpenAI config migrated successfully")}return{...o,...n,timeZone:(0,a.isValidTimeZone)(n.timeZone)?n.timeZone.trim():a.DEFAULT_TIME_ZONE,openai:{instances:l?.instances||o.openai?.instances||[],activeInstanceId:l?.activeInstanceId||o.openai?.activeInstanceId},gemini:{...o.gemini,...n.gemini},azure:{...o.azure,...n.azure},anthropic:{...o.anthropic,...n.anthropic},prompts:{...o.prompts,...n.prompts},timeouts:{...o.timeouts,...n.timeouts}}}catch(e){i.error({error:e},"Failed to read config file")}return o}e.s(["getActiveOpenAIConfig",0,function(){let e=l(),t=e.openai?.instances||[],r=e.openai?.activeInstanceId;if(r&&0!==t.length)return t.find(e=>e.id===r)},"getAppConfig",0,l,"getAppTimeZone",0,function(){return l().timeZone||a.DEFAULT_TIME_ZONE},"updateAppConfig",0,function(e){if(void 0!==e.timeZone&&!(0,a.isValidTimeZone)(e.timeZone))throw Error("INVALID_TIME_ZONE");let r=l(),n={...r,...e,timeZone:e.timeZone?.trim()??r.timeZone??a.DEFAULT_TIME_ZONE,openai:{instances:e.openai?.instances??r.openai?.instances??[],activeInstanceId:e.openai?.activeInstanceId??r.openai?.activeInstanceId},gemini:{...r.gemini,...e.gemini},azure:{...r.azure,...e.azure},anthropic:{...r.anthropic,...e.anthropic},prompts:{...r.prompts,...e.prompts},timeouts:{...r.timeouts,...e.timeouts}};try{return t.default.writeFileSync(s,JSON.stringify(n,null,2)),n}catch(e){throw i.error({error:e},"Failed to write config file"),e}}])},50377,e=>{"use strict";let t={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function r(e,n={}){let a,i=t[e],s=(a=process.env.LOG_LEVEL?.toLowerCase())&&void 0!==t[a]?t[a]:t.info;return(t,r)=>{let a,o;if(i<s)return;let l=new Date;"string"==typeof t?(a={},o=t):(a=t,o=r||"");{let t=JSON.stringify({level:e,time:l.toISOString(),...n,...a,msg:o});switch(e){case"error":case"fatal":console.error(t);break;case"warn":console.warn(t);break;default:console.log(t)}}}}let n=function e(t={}){return t.module,{trace:r("trace",t),debug:r("debug",t),info:r("info",t),warn:r("warn",t),error:r("error",t),fatal:r("fatal",t),child:r=>e({...t,...r}),box:(e,r,n="📋")=>{console.log(JSON.stringify({level:"info",time:new Date().toISOString(),...t,title:e,..."string"==typeof r?{content:r}:r||{},msg:e}))},divider:(e="-")=>{}}}({env:"production"});e.s(["createLogger",0,function(e){return n.child({module:e})}])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0pli74s._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0qaih8c._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[51615,(e,r,o)=>{r.exports=e.x("node:buffer",()=>require("node:buffer"))},2157,(e,r,o)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},47299,(e,r,o)=>{r.exports=e.x("node:http",()=>require("node:http"))},61095,(e,r,o)=>{r.exports=e.x("node:net",()=>require("node:net"))},50227,(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"))},57764,(e,r,o)=>{r.exports=e.x("node:url",()=>require("node:url"))},12057,(e,r,o)=>{r.exports=e.x("node:util",()=>require("node:util"))},27028,(e,r,o)=>{r.exports=e.x("node:zlib",()=>require("node:zlib"))},25897,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0akadps._.js","server/chunks/[root-of-the-server]__15tkoe6._.js"].map(r=>e.l(r))).then(()=>r(55057)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0ra48rd._.js.map
@@ -0,0 +1,9 @@
1
+ module.exports=[1457,(e,t,i)=>{t.exports=e.x("node:readline",()=>require("node:readline"))},83085,e=>{"use strict";var t,i,r,s,a,o,n,l,c,d,h,f,m,_,u,w,y,p,v,g,P,F,S,b,E,G,T,k,O,N,I,$,M,R,x,A,D,L,j,W,U,C,q,z=e.i(96155),Y=e.i(12714),B=e.i(2157),K=e.i(50227),V=e.i(74533),H=e.i(66680),X=e.i(1457),J=e.i(64351),Z=e.i(32014);function Q(e){if("object"!==e.inputSchema.type)throw Error(`JSON schema for tool "${e.name}" must be an object, but got ${e.inputSchema.type}`);return{type:"custom",name:e.name,input_schema:e.inputSchema,description:e.description,run:e.run,parse:e=>e,...e.close?{close:e.close}:{}}}var ee=e.i(68120),et=H,ei=B,er=K;let es=ei.promises;function ea(e,t){let i=er.relative(e,t);return""===i||!i.startsWith(".."+er.sep)&&".."!==i&&!er.isAbsolute(i)}async function eo(e,t){for(let i of e)if(ea(await el(er.resolve(i)),t))return i}function en(e){let t=e?.code;return"string"==typeof t?t:void 0}async function el(e){let t=[],i=e,r=0;for(;;){let e;try{e=await es.realpath(i)}catch(s){let e;try{e=(await es.lstat(i)).isSymbolicLink()}catch(s){let e=en(s);if("ENOENT"!==e&&"ENOTDIR"!==e)throw s;let r=er.dirname(i);if(r===i)throw s;t.push(er.basename(i)),i=r;continue}if(!e)throw s;if(++r>40)throw Object.assign(Error("too many levels of symbolic links"),{code:"ELOOP"});i=er.resolve(er.dirname(i),await es.readlink(i));continue}return t.length?er.join(e,...t.reverse()):e}}async function ec(e,t,i){let r,s=i?.allowedRoots??[],a=await el(er.resolve(e));try{r=await el(er.resolve(a,t))}catch(e){throw new Z.ToolError(eh(e,`path ${JSON.stringify(t)}`))}if(ea(a,r)||await eo(s,r)!==void 0)return r;let o=s.length?"the session's working directory and its other permitted directories":"the session's working directory";throw new Z.ToolError(`path ${JSON.stringify(t)} is outside ${o}`)}async function ed(e,t){let i,r=er.dirname(e),s=er.join(r,`.tmp-${process.pid}-${et.randomUUID()}`),a=await es.stat(e).then(e=>511&e.mode,()=>void 0);try{i=await es.open(s,"wx",384),void 0!==a&&await i.chmod(a),await i.writeFile(t,"utf-8"),await i.sync(),await i.close(),i=void 0,await es.rename(s,e)}catch(e){throw i&&await i.close().catch(()=>{}),await es.unlink(s).catch(()=>{}),e}}function eh(e,t){let i=en(e);switch(i){case"ENOENT":return`${t}: no such file or directory`;case"EACCES":case"EPERM":return`${t}: permission denied`;case"ENOTDIR":return`${t}: not a directory`;case"EISDIR":return`${t}: is a directory`;case"ELOOP":return`${t}: too many levels of symbolic links`;case"ENAMETOOLONG":return`${t}: file name too long`;case"ENOSPC":return`${t}: no space left on device`;case"EMFILE":case"ENFILE":return`${t}: too many open files`;default:return`${t}: ${void 0!==i?`i/o error (${i})`:"i/o error"}`}}let ef=Buffer.from("\n");class em extends J.AnthropicError{constructor(e){super(`bash command timed out after ${e}ms`),this.name="BashTimeoutError",this.timeoutMs=e}}let e_=/\x1b\[[0-9;?]*[ -/]*[@-~]/g,eu=Y.glob;function ew(e){return void 0===e?262144:e}function ey(e){if(void 0!==e)throw new J.AnthropicError("The `unrestrictedPaths` option you passed to the agent toolset (AgentToolContext) is no longer supported. The toolset's file tools (read, write, edit, glob, grep) are now always confined to the working directory plus the directories listed in `allowedRoots`. Remove `unrestrictedPaths` from your context; to let the file tools reach any other directory, add it to `allowedRoots`.")}function ep(e){return[eF(e),eS(e),eG(e),eT(e),ek(e),eO(e)]}async function ev(e,t){return ey(e.unrestrictedPaths),ec(e.workdir,t,{allowedRoots:e.allowedRoots??[]})}function eg(e,t){return eo(e.readOnlyRoots??[],t)}var eP=(i=new WeakMap,r=new WeakMap,s=new WeakMap,a=new WeakMap,o=new WeakMap,t=new WeakSet,n=function(e){if((0,z.__classPrivateFieldSet)(this,r,(0,z.__classPrivateFieldGet)(this,r,"f")+e,"f"),(0,z.__classPrivateFieldGet)(this,r,"f").length>102400&&((0,z.__classPrivateFieldSet)(this,r,(0,z.__classPrivateFieldGet)(this,r,"f").slice((0,z.__classPrivateFieldGet)(this,r,"f").length-102400),"f"),(0,z.__classPrivateFieldSet)(this,s,!0,"f")),(0,z.__classPrivateFieldGet)(this,o,"f")&&(0,z.__classPrivateFieldGet)(this,r,"f").indexOf((0,z.__classPrivateFieldGet)(this,o,"f").sentinel)>=0){let e=(0,z.__classPrivateFieldGet)(this,o,"f");(0,z.__classPrivateFieldSet)(this,o,null,"f"),e.resolve()}},class{constructor(e,l=function(){let e={};for(let[t,i]of Object.entries(process.env))t.startsWith("ANTHROPIC_")||(e[t]=i);return e}()){t.add(this),i.set(this,void 0),r.set(this,""),s.set(this,!1),a.set(this,!1),o.set(this,null),(0,z.__classPrivateFieldSet)(this,i,V.spawn("/bin/bash",["--noprofile","--norc"],{cwd:e,env:{...l,PS1:"",PS2:"",TERM:"dumb"},stdio:["pipe","pipe","pipe"],detached:!0}),"f"),(0,z.__classPrivateFieldGet)(this,i,"f").stdout.setEncoding("utf8"),(0,z.__classPrivateFieldGet)(this,i,"f").stderr.setEncoding("utf8"),(0,z.__classPrivateFieldGet)(this,i,"f").stdout.on("data",e=>(0,z.__classPrivateFieldGet)(this,t,"m",n).call(this,e)),(0,z.__classPrivateFieldGet)(this,i,"f").stderr.on("data",e=>(0,z.__classPrivateFieldGet)(this,t,"m",n).call(this,e)),(0,z.__classPrivateFieldGet)(this,i,"f").once("close",()=>{(0,z.__classPrivateFieldSet)(this,a,!0,"f");let e=(0,z.__classPrivateFieldGet)(this,o,"f");(0,z.__classPrivateFieldSet)(this,o,null,"f"),e?.resolve()})}get closed(){return(0,z.__classPrivateFieldGet)(this,a,"f")}async exec(e,t={}){if((0,z.__classPrivateFieldGet)(this,a,"f"))throw new J.AnthropicError("bash session terminated");let n=t.timeoutMs??12e4,l=t.signal;l?.throwIfAborted(),(0,z.__classPrivateFieldSet)(this,r,"","f"),(0,z.__classPrivateFieldSet)(this,s,!1,"f");let c=`__ANT_CMD_${H.randomUUID()}_DONE__`,d=`${c.slice(0,8)}''${c.slice(8)}`,h=`{ ${e}
2
+ } </dev/null 2>&1; printf '\\n${d}%d\\n' $?
3
+ `;if((0,z.__classPrivateFieldGet)(this,i,"f").stdin.write(h),0>(0,z.__classPrivateFieldGet)(this,r,"f").indexOf(c)){let e,t,{promise:i,resolve:r}=(0,ee.promiseWithResolvers)();(0,z.__classPrivateFieldSet)(this,o,{sentinel:c,resolve:r},"f");try{await Promise.race([i,new Promise((t,i)=>{e=setTimeout(()=>i(new em(n)),n)}),new Promise((e,i)=>{l&&(t=()=>i(l.reason),l.addEventListener("abort",t,{once:!0}))})])}finally{e&&clearTimeout(e),t&&l&&l.removeEventListener("abort",t),(0,z.__classPrivateFieldSet)(this,o,null,"f")}}let f=(0,z.__classPrivateFieldGet)(this,r,"f").indexOf(c);if(f<0)throw new J.AnthropicError("bash session terminated");let m=(0,z.__classPrivateFieldGet)(this,r,"f").slice(f+c.length).match(/^(-?\d+)/),_=m?parseInt(m[1],10):-1,u=(0,z.__classPrivateFieldGet)(this,r,"f").slice(0,f).replace(e_,"").replace(/\n+$/,"");return(0,z.__classPrivateFieldGet)(this,s,"f")&&(u=`[output truncated]
4
+ ${u}`),{output:u,exitCode:_}}close(){if((0,z.__classPrivateFieldGet)(this,a,"f"))return;(0,z.__classPrivateFieldSet)(this,a,!0,"f");let e=(0,z.__classPrivateFieldGet)(this,o,"f");(0,z.__classPrivateFieldSet)(this,o,null,"f"),e?.resolve(),(0,z.__classPrivateFieldGet)(this,i,"f").stdout.destroy(),(0,z.__classPrivateFieldGet)(this,i,"f").stderr.destroy(),(0,z.__classPrivateFieldGet)(this,i,"f").stdin.destroy();try{process.kill(-(0,z.__classPrivateFieldGet)(this,i,"f").pid,"SIGKILL")}catch{(0,z.__classPrivateFieldGet)(this,i,"f").kill("SIGKILL")}(0,z.__classPrivateFieldGet)(this,i,"f").unref()}});function eF(e){let t;ey(e.unrestrictedPaths);let i=Promise.resolve();return Q({name:"bash",description:"Run a bash command in a persistent shell. State (cwd, env vars) persists across calls.",inputSchema:{type:"object",properties:{command:{type:"string",description:"The command to run"},restart:{type:"boolean",description:"Restart the persistent shell before running"},timeout_ms:{type:"integer",description:"Per-call timeout in milliseconds"}}},run:async({command:r,restart:s,timeout_ms:a},o)=>{let n=i,l=(0,ee.promiseWithResolvers)();i=l.promise;try{await n}catch{}try{if(s&&(t?.close(),t=void 0),!r){if(s)return"bash session restarted";throw new Z.ToolError("bash: command is required")}t??(t=new eP(e.workdir,e.env));try{let{output:e,exitCode:i}=await t.exec(r,{timeoutMs:a??12e4,signal:o?.signal});if(0!==i)throw new Z.ToolError(e||`exit ${i}`);return e}catch(e){if(e instanceof Z.ToolError)throw e;throw t.close(),t=void 0,new Z.ToolError(`bash: ${e instanceof Error?e.message:String(e)}`)}}finally{l.resolve()}},close:()=>{t?.close(),t=void 0}})}function eS(e){return ey(e.unrestrictedPaths),Q({name:"read",description:"Read a UTF-8 text file relative to the workdir.",inputSchema:{type:"object",properties:{file_path:{type:"string"},view_range:{type:"array",items:{type:"integer"},description:"[start_line, end_line] 1-indexed inclusive"}},required:["file_path"]},run:async({file_path:t,view_range:i})=>{let r;if(!t)throw new Z.ToolError("read: file_path is required");let s=await ev(e,t);if(i?.length&&2!==i.length)throw new Z.ToolError("read: view_range must be [start_line, end_line]");try{let a=await Y.stat(s);if(!a.isFile())throw new Z.ToolError(`read: ${t} is not a regular file`);let o=ew(e.maxFileBytes);if(null!==o&&a.size>o){if(!i?.length)throw new Z.ToolError(`read: ${t} is ${a.size} bytes, exceeds ${o}-byte limit. Use the view_range parameter to read specific line ranges, e.g. view_range: [1, 500].`);let[e,r]=i;return await eb(s,t,e,r,o)}r=await Y.readFile(s,"utf8")}catch(e){if(e instanceof Z.ToolError)throw e;throw new Z.ToolError(`read: ${eh(e,t)}`)}if(!i?.length)return r;let[a,o]=i,n=r.split("\n"),l=Math.max(0,a-1),c=o>0?o:n.length;return n.slice(l,c).join("\n")}})}async function eb(e,t,i,r,s){let a=new eE(t,i,r,s);if(a.rangeIsEmpty())return"";let o=B.createReadStream(e,{highWaterMark:65536});try{for await(let e of o)if(a.collectFrom(e),a.rangeIsCollected())break}finally{o.destroy()}return a.text()}var eE=(c=new WeakMap,d=new WeakMap,h=new WeakMap,f=new WeakMap,m=new WeakMap,_=new WeakMap,u=new WeakMap,w=new WeakMap,y=new WeakMap,l=new WeakSet,p=function(e,t){if((0,z.__classPrivateFieldGet)(this,w,"f").push(e),(0,z.__classPrivateFieldSet)(this,y,(0,z.__classPrivateFieldGet)(this,y,"f")+e.length,"f"),t&&(0,z.__classPrivateFieldGet)(this,u,"f")+1<(0,z.__classPrivateFieldGet)(this,m,"f")&&((0,z.__classPrivateFieldGet)(this,w,"f").push(ef),(0,z.__classPrivateFieldSet)(this,y,(0,z.__classPrivateFieldGet)(this,y,"f")+ef.length,"f")),(0,z.__classPrivateFieldGet)(this,y,"f")>(0,z.__classPrivateFieldGet)(this,_,"f"))throw(0,z.__classPrivateFieldGet)(this,l,"m",v).call(this)},v=function(){return new Z.ToolError((0,z.__classPrivateFieldGet)(this,m,"f")-(0,z.__classPrivateFieldGet)(this,f,"f")==1?`read: line ${(0,z.__classPrivateFieldGet)(this,f,"f")+1} of ${(0,z.__classPrivateFieldGet)(this,c,"f")} alone exceeds ${(0,z.__classPrivateFieldGet)(this,_,"f")}-byte limit. The read tool cannot return part of a line, so view_range cannot narrow this further.`:`read: view_range [${(0,z.__classPrivateFieldGet)(this,d,"f")}, ${(0,z.__classPrivateFieldGet)(this,h,"f")}] of ${(0,z.__classPrivateFieldGet)(this,c,"f")} exceeds ${(0,z.__classPrivateFieldGet)(this,_,"f")}-byte limit. Narrow the view_range to read a smaller portion.`)},class{constructor(e,t,i,r){l.add(this),c.set(this,void 0),d.set(this,void 0),h.set(this,void 0),f.set(this,void 0),m.set(this,void 0),_.set(this,void 0),u.set(this,0),w.set(this,[]),y.set(this,0),(0,z.__classPrivateFieldSet)(this,c,e,"f"),(0,z.__classPrivateFieldSet)(this,d,t,"f"),(0,z.__classPrivateFieldSet)(this,h,i,"f"),(0,z.__classPrivateFieldSet)(this,f,Math.max(0,t-1),"f"),(0,z.__classPrivateFieldSet)(this,m,i>0?i:1/0,"f"),(0,z.__classPrivateFieldSet)(this,_,r,"f")}rangeIsEmpty(){return(0,z.__classPrivateFieldGet)(this,m,"f")<=(0,z.__classPrivateFieldGet)(this,f,"f")}rangeIsCollected(){return(0,z.__classPrivateFieldGet)(this,u,"f")>=(0,z.__classPrivateFieldGet)(this,m,"f")}collectFrom(e){var t;let i=0;for(;i<e.length&&!this.rangeIsCollected();){let r=e.indexOf(10,i),s=r<0?e.length:r;if((0,z.__classPrivateFieldGet)(this,u,"f")>=(0,z.__classPrivateFieldGet)(this,f,"f")&&(0,z.__classPrivateFieldGet)(this,l,"m",p).call(this,e.subarray(i,s),r>=0),r<0)break;(0,z.__classPrivateFieldSet)(this,u,(t=(0,z.__classPrivateFieldGet)(this,u,"f"),++t),"f"),i=r+1}}text(){return Buffer.concat((0,z.__classPrivateFieldGet)(this,w,"f"),(0,z.__classPrivateFieldGet)(this,y,"f")).toString("utf8")}});function eG(e){return ey(e.unrestrictedPaths),Q({name:"write",description:"Write a UTF-8 text file relative to the workdir, creating parent directories as needed.",inputSchema:{type:"object",properties:{file_path:{type:"string"},content:{type:"string"}},required:["file_path","content"]},run:async({file_path:t,content:i})=>{if(!t)throw new Z.ToolError("write: file_path is required");let r=await ev(e,t),s=await eg(e,r);if(void 0!==s)throw new Z.ToolError(`write: ${t} is inside read-only directory ${s}`);try{await Y.mkdir(K.dirname(r),{recursive:!0,mode:448}),await ed(r,i??"")}catch(e){throw new Z.ToolError(`write: ${eh(e,t)}`)}return`wrote ${Buffer.byteLength(i??"")} bytes to ${t}`}})}function eT(e){return ey(e.unrestrictedPaths),Q({name:"edit",description:"Replace old_string with new_string in a file. old_string must be unique unless replace_all.",inputSchema:{type:"object",properties:{file_path:{type:"string"},old_string:{type:"string"},new_string:{type:"string"},replace_all:{type:"boolean"}},required:["file_path","old_string","new_string"]},run:async({file_path:t,old_string:i,new_string:r,replace_all:s})=>{let a,o;if(!t)throw new Z.ToolError("edit: file_path is required");if(!i)throw new Z.ToolError("edit: old_string is required");let n=await ev(e,t),l=await eg(e,n);if(void 0!==l)throw new Z.ToolError(`edit: ${t} is inside read-only directory ${l}`);try{let i=await Y.stat(n);if(!i.isFile())throw new Z.ToolError(`edit: ${t} is not a regular file`);let r=ew(e.maxFileBytes);if(null!==r&&i.size>r)throw new Z.ToolError(`edit: ${t} is ${i.size} bytes, exceeds ${r}-byte limit. The edit tool loads the whole file and cannot modify a file this large.`);a=await Y.readFile(n,"utf8")}catch(e){if(e instanceof Z.ToolError)throw e;throw new Z.ToolError(`edit: ${eh(e,t)}`)}let c=a.split(i).length-1;if(0===c)throw new Z.ToolError(`edit: old_string not found in ${t}`);if(s)o=a.split(i).join(r);else{if(c>1)throw new Z.ToolError(`edit: old_string appears ${c} times in ${t} (must be unique)`);o=a.replace(i,()=>r)}try{await ed(n,o)}catch(e){throw new Z.ToolError(`edit: write: ${eh(e,t)}`)}return`edited ${t} (${s?c:1} replacement(s))`}})}function ek(e){return ey(e.unrestrictedPaths),Q({name:"glob",description:"Match files under the workdir against a glob pattern. Results are mtime-sorted, newest first.",inputSchema:{type:"object",properties:{pattern:{type:"string"},path:{type:"string",description:"Directory to search in. Defaults to the workdir."}},required:["pattern"]},run:async({pattern:t,path:i})=>{if(!t)throw new Z.ToolError("glob: pattern is required");if(K.isAbsolute(t))throw new Z.ToolError("glob: absolute pattern not permitted; pass a relative pattern (and optionally path)");if(t.split(/[\\/{},]/).includes(".."))throw new Z.ToolError('glob: ".." is not permitted in the pattern');let r=i?await ev(e,i):K.resolve(e.workdir),s=i?r:await el(r),a=[],o=e$;try{for await(let e of eu(t,{cwd:r,withFileTypes:!0,exclude:e=>".git"===e.name||"node_modules"===e.name})){let t;if(o--<=0)break;if(!e.isFile())continue;let i=K.join(e.parentPath,e.name);try{t=await Y.realpath(i)}catch{continue}if(!ea(s,t))continue;let r=0;try{r=(await Y.stat(i)).mtimeMs}catch{}a.push({path:i,mtime:r})}}catch(e){throw new Z.ToolError(`glob: ${e instanceof Error?e.message:String(e)}`)}return 0===a.length?"no matches":(a.sort((e,t)=>t.mtime-e.mtime),a.slice(0,200).map(e=>e.path).join("\n"))}})}function eO(e){return ey(e.unrestrictedPaths),Q({name:"grep",description:"Search file contents for a regex. Uses ripgrep if available, otherwise a built-in walker.",inputSchema:{type:"object",properties:{pattern:{type:"string"},path:{type:"string"}},required:["pattern"]},run:async({pattern:t,path:i},r)=>{var s,a,o,n;if(!t)throw new Z.ToolError("grep: pattern is required");let l=K.resolve(e.workdir);i&&(l=await ev(e,i));let c=await eR();return c?(s=c,a=t,o=l,n=r?.signal,new Promise((e,t)=>{let i=V.spawn(s,["-n","--no-heading","-e",a,"--",o],{...n?{signal:n}:{}}),r="",l="",c=!1;i.stdout.on("data",e=>{!c&&(r+=e).length>102400&&(c=!0,r=r.slice(0,102400),i.kill("SIGKILL"))}),i.stderr.on("data",e=>l+=e),i.on("close",i=>n?.aborted?t(new Z.ToolError("grep: aborted")):c?e(r+`
5
+ [output truncated at 102400 bytes]`):0===i?e(r):1===i?e("no matches"):void t(new Z.ToolError(`grep: rg failed: ${l||`exit ${i}`}`))),i.on("error",e=>{if(n?.aborted)return t(new Z.ToolError("grep: aborted"));t(new Z.ToolError(`grep: rg failed: ${e.message}`))})})):eN(t,l,r?.signal)}})}async function eN(e,t,i){let r;try{r=new RegExp(e)}catch(e){throw new Z.ToolError(`grep: invalid regex: ${e instanceof Error?e.message:String(e)}`)}let s=[],a=102400,o=e=>(a-=e.length+1)<0?(s.push("[output truncated at 102400 bytes]"),!1):(s.push(e),!0),n=await Y.stat(t).catch(()=>null);if(n?.isFile()?await eI(t,r,o):await eM(t,"",e=>eI(K.join(t,e),r,o),i),i?.aborted)throw new Z.ToolError("grep: aborted");return 0===s.length?"no matches":s.join("\n")}async function eI(e,t,i){let r=B.createReadStream(e,{encoding:"utf8"}),s=X.createInterface({input:r,crlfDelay:1/0}),a=0;try{for await(let r of s)if(a++,!(r.length>2e3)&&t.test(r)&&!i(`${e}:${a}:${r}`))return!1}catch{}finally{r.destroy()}return!0}let e$=5e4;async function eM(e,t,i,r){let s=e$;async function a(t,o){let n;if(o>40)return!0;if(r?.aborted)return!1;try{n=await Y.readdir(K.join(e,t),{withFileTypes:!0})}catch{return!0}for(let e of n){if(".git"===e.name||"node_modules"===e.name)continue;if(s--<=0||r?.aborted)return!1;let n=t?K.join(t,e.name):e.name;if(e.isDirectory()){if(!await a(n,o+1))return!1}else if(e.isFile()&&await i(n)===!1)return!1}return!0}await a(t,0)}async function eR(){for(let e of(process.env.PATH??"").split(K.delimiter)){let t=K.join(e,"rg");try{return await Y.access(t,B.constants.X_OK),t}catch{}}return null}e.s(["BashSession",0,eP,"BashTimeoutError",0,em,"betaAgentToolset20260401",0,ep,"betaBashTool",0,eF,"betaEditTool",0,eT,"betaGlobTool",0,ek,"betaGrepTool",0,eO,"betaReadTool",0,eS,"betaWriteTool",0,eG,"resolvePath",0,ev],87401),e.i(87401);var ei=B,er=K,ex=e.i(81111),ex=ex,eA=e.i(12057),eA=eA,eD=e.i(11935);let eL=ei.promises,ej=eA.promisify(V.execFile);async function eW(e){let{client:t,sessionId:i}=e;if(!t)return async()=>{};let r=(0,eD.loggerFor)(t),s=e.session;if(!s){if(void 0===i)return async()=>{};r.warn("AgentToolContext.sessionId is deprecated and costs an extra session fetch; fetch the session once and set `session` instead",{component:"agent-tool-context"}),s=await t.beta.sessions.retrieve(i)}let a=er.resolve(e.workdir,"skills"),o=[];for(let e of s.agent.skills)try{let i=await t.beta.skills.versions.retrieve(e.version,{skill_id:e.skill_id}),s=er.basename(i.name.trim());(""===s||"."===s||".."===s)&&(s=e.skill_id);let n=er.resolve(a,s);if(n!==a&&!n.startsWith(a+er.sep)){r.warn("skill name escapes the skills dir; skipping",{component:"agent-tool-context",name:i.name});continue}let l=await t.beta.skills.versions.download(i.id,{skill_id:e.skill_id});await eL.rm(n,{recursive:!0,force:!0}),await eL.mkdir(n,{recursive:!0,mode:448}),o.push(n),await eB(l,n),r.info("downloaded skill",{component:"agent-tool-context",skill_id:e.skill_id,version:i.id,dest:n})}catch(t){r.warn("failed to download skill",{component:"agent-tool-context",skill_id:e.skill_id,error:String(t)})}return async()=>{for(let e of o)await eL.rm(e,{recursive:!0,force:!0}).catch(t=>{r.warn("failed to clean up skill",{component:"agent-tool-context",dest:e,error:String(t)})})}}let eU="skill archive listing is inconsistent; refusing to extract",eC={unzip:new Set(["-","d","?"]),tar:new Set(["-","d","C"])};function eq(e){let t=e.split("\n");return""===t[t.length-1]&&t.pop(),t}async function ez(e){for(let t of(await eL.readdir(e,{withFileTypes:!0})))if(t.isDirectory())await ez(er.join(e,t.name));else if(!t.isFile())throw new J.AnthropicError(eU)}async function eY(e,t){try{let{stdout:i}=await ej(e,t);return i}catch(t){if("ENOENT"===en(t))throw new J.AnthropicError(`skill extraction requires the \`${e}\` command, but it was not found on PATH`);throw t}}async function eB(e,t){let i=er.join(t,`.skill-archive-${process.pid}-${Date.now()}`);if(!e.body)throw new J.AnthropicError("skill download response had no body");await ex.promises.pipeline(ex.Readable.fromWeb(e.body),ei.createWriteStream(i));let r=er.join(er.dirname(t),`.skill-stage-${process.pid}-${Date.now()}`),s=er.join(er.dirname(t),`.skill-exclude-${process.pid}-${Date.now()}`);try{let e=await eV(i,4),a=e.length>=4&&80===e[0]&&75===e[1]&&3===e[2]&&4===e[3],o=a?"unzip":"tar",n=await eY(o,a?["-Z1",i]:["-tf",i]),l=await eY(o,a?["-Z","--h","--t",i]:["-tvf",i]),{plain:c,special:d}=function(e,t,i){let r=eq(t),s=eq(i);if(r.length!==s.length)throw new J.AnthropicError(eU);let a=[],o=[];return r.forEach((t,i)=>{if(eC[e].has(s[i].charAt(0)))return void a.push(t);if(!/^[\x20-\x7E]+$/.test(t)||/[\\^#]/.test(t)||"unzip"===e&&t.startsWith("-"))throw new J.AnthropicError(`refusing to extract archive: cannot safely exclude member ${JSON.stringify(t)}`);o.push(t)}),{plain:a,special:o}}(o,n,l);for(let e of[...c,...d]){let t=e.trim();if(t&&(er.isAbsolute(t)||t.split(/[\\/]/).includes("..")))throw new J.AnthropicError(`refusing to extract unsafe archive member: ${t}`)}let h=function(e){let t,i=!1;for(let r of e){let e=r.trim().split("/").filter(e=>""!==e&&"."!==e);if(0===e.length)continue;let s=e[0];if(void 0===t)t=s;else if(s!==t)return"";e.length>1&&(i=!0)}return void 0!==t&&i?t:""}(c);await eL.mkdir(r,{recursive:!0,mode:448}),c.length>0&&await eY(o,await eK(o,i,r,d,s)),await ez(r);let f=h?er.join(r,h):r;for(let e of(await eL.readdir(f).catch(e=>{throw"ENOENT"===en(e)?new J.AnthropicError(eU):e})))await eL.rename(er.join(f,e),er.join(t,e))}finally{await eL.rm(i,{force:!0}),await eL.rm(s,{force:!0}),await eL.rm(r,{recursive:!0,force:!0})}}async function eK(e,t,i,r,s){let a=r.map(e=>e.replace(/[*?[\\]/g,"\\$&"));return"unzip"===e?["-oq",t,"-d",i,...a.length>0?["-x",...a]:[]]:0===a.length?["-xf",t,"-C",i]:(await eL.writeFile(s,a.join("\n")+"\n",{flag:"wx",mode:384}),["-xf",t,"-C",i,"-X",s])}async function eV(e,t){let i=await eL.open(e,"r");try{let e=Buffer.alloc(t),{bytesRead:r}=await i.read(e,0,t,0);return e.subarray(0,r)}finally{await i.close()}}var et=H,er=K,eH=J,eX=e.i(87160),eJ=e.i(98156),et=H,ei=B,er=K;let eZ=ei.promises,eQ=ei.constants,e0=eQ.O_NOFOLLOW??0,e1=eQ.O_NONBLOCK??0;var e4=(()=>{class e extends Error{constructor(e,t){super(`path ${JSON.stringify(t)} ${e}`),this.name="FileStoreError",this.reason=e,this.relPath=t}}return e.ESCAPES_ROOT="escapes the store root",e.IS_A_SYMLINK="is a symlink",e.NOT_A_FILE="is not a regular file",e.NOT_A_DIRECTORY="is not a directory",e.NOT_UTF8="is not valid utf-8",e.MOVE_DESTINATION_EXISTS="already exists",e})();function e8(e){return e.startsWith("/")&&!e.split("/").includes("..")}var e2=(()=>{class e{constructor(e,t,i=!1){this.hashes=new Map,this.rootPath=e,this.removedOnDispose=t,this.decoder=i?new TextDecoder("utf-8",{fatal:!0}):void 0}static async open(t,i){if(0===e0)throw Error("FileStore requires O_NOFOLLOW support on this platform");let r=!1;try{await eZ.lstat(t)}catch(e){if("ENOENT"!==e.code)throw e;r=!0}return new e(er.resolve(t),r,i?.utf8??!1)}async createRoot(){await e5(this.rootPath)}root(){return{path:this.rootPath,removedOnDispose:this.removedOnDispose}}async dispose(){this.removedOnDispose&&await eZ.rm(this.rootPath,{recursive:!0,force:!0})}async put(e,t,i){let r=e.replace(/\\/g,"/");if(r.endsWith("/")||r.endsWith("/.")||""===r||"."===r)throw new e4(e4.NOT_A_FILE,e);let s=this.resolveUnderRoot(e),a="string"==typeof t?(0,eX.encodeUTF8)(t):t;this.requireUtf8(e,a),await e6(this.rootPath,er.dirname(s)),await e3(s,a,i?.executable??!1)}async get(e){let t,i,r=this.resolveUnderRoot(e);try{t=await e7(e,r)}catch(e){if("ENOENT"===e.code)return null;throw e}try{let e=await t.readFile();i=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}finally{await t.close()}return this.requireUtf8(e,i),i}async ls(e="/"){let t=this.resolveUnderRoot(e);return new Set((await e9(this.rootPath,e,t)).map(([e])=>e))}async findSymlinks(e="/"){let t=this.resolveUnderRoot(e);return te(this.rootPath,e,t)}async hashtree(e="/"){let t=this.resolveUnderRoot(e),i=tr.nowNs(),r=Object.create(null);for(let[s,a]of(await e9(this.rootPath,e,t))){let e=await this.hashViaCache(s,a,i);null!==e&&(r[s]=e)}return r}async hashFile(e){let t,i=this.resolveUnderRoot(e);try{t=await eZ.lstat(i,{bigint:!0})}catch(e){if("ENOENT"===e.code)return null;throw e}if(t.isSymbolicLink())throw new e4(e4.IS_A_SYMLINK,e);if(!t.isFile())throw new e4(e4.NOT_A_FILE,e);let r=er.relative(this.rootPath,i).split(er.sep).join("/");return this.hashViaCache(r,i,tr.nowNs())}async move(e,t){let i=this.resolveUnderRoot(e),r=this.resolveUnderRoot(t);if(i!==this.rootPath&&r!==this.rootPath){if(await eZ.stat(r).then(()=>!0,()=>!1))throw new e4(e4.MOVE_DESTINATION_EXISTS,t);await e6(this.rootPath,er.dirname(r)),await eZ.rename(i,r)}}async remove(e){let t,i=this.resolveUnderRoot(e);if(i!==this.rootPath){try{t=await eZ.lstat(i,{bigint:!0})}catch(e){if("ENOENT"===e.code)return;throw e}if(t.isDirectory())await eZ.rm(i,{recursive:!0,force:!0});else try{await eZ.unlink(i)}catch(e){if("ENOENT"!==e.code)throw e}}}resolveUnderRoot(e){let t=e.replace(/\\/g,"/").replace(/^\/+/,""),i=t.split("/").filter(e=>""!==e&&"."!==e);if(er.posix.isAbsolute(t)||i.includes(".."))throw new e4(e4.ESCAPES_ROOT,e);return 0===i.length?this.rootPath:er.join(this.rootPath,...i)}requireUtf8(e,t){if(this.decoder)try{this.decoder.decode(t)}catch{throw new e4(e4.NOT_UTF8,e)}}async hashViaCache(e,t,i){var r,s,a,o;let n,l;try{n=await eZ.lstat(t,{bigint:!0})}catch(e){if("ENOENT"===e.code)return null;throw e}if(!n.isFile())return null;let c=this.hashes.get(e);if(void 0!==c&&(r=c,(s=n).mtimeNs===r.mtimeNs&&s.ctimeNs===r.ctimeNs&&s.size===r.size))l=c.sha;else try{l=await tr.hashFile(t)}catch(t){let e=t.code;if("ENOENT"===e||t instanceof e4||"ELOOP"===e||"EMLINK"===e)return null;throw t}return a=n,o=i,(a.mtimeNs>a.ctimeNs?a.mtimeNs:a.ctimeNs)<o-tr.timestampTrustMarginNs&&this.hashes.set(e,{mtimeNs:n.mtimeNs,ctimeNs:n.ctimeNs,size:n.size,sha:l}),l}}return e.isPathLegal=e8,e})();async function e5(e){let t=[],i=e;for(;;){try{await eZ.stat(i);break}catch(t){let e=t.code;if("ENOENT"!==e&&"ENOTDIR"!==e&&"ELOOP"!==e)throw t}t.push(i);let e=er.dirname(i);if(e===i)break;i=e}for(let e of t.reverse())try{await eZ.mkdir(e,{mode:448})}catch(e){if("EEXIST"!==e.code)throw e}}async function e6(e,t){let i=er.relative(e,t);if(""===i)return;let r=e;for(let e of i.split(er.sep)){r=er.join(r,e);try{await eZ.mkdir(r,{mode:448})}catch(e){if("EEXIST"!==e.code)throw e}}}async function e3(e,t,i){let r,s=er.join(er.dirname(e),`.fs-${et.randomBytes(8).toString("hex")}.tmp`);try{r=await eZ.open(s,eQ.O_WRONLY|eQ.O_CREAT|eQ.O_EXCL|e0,i?448:384),await r.writeFile(t),await r.close(),r=void 0,await eZ.rename(s,e)}catch(e){throw r&&await r.close().catch(()=>{}),await eZ.unlink(s).catch(()=>{}),e}}async function e7(e,t){let i;try{i=await eZ.open(t,eQ.O_RDONLY|e0|e1)}catch(i){let t=i.code;if("ELOOP"===t||"EMLINK"===t)throw new e4(e4.IS_A_SYMLINK,e);throw i}try{if(!(await i.stat()).isFile())throw new e4(e4.NOT_A_FILE,e)}catch(e){throw await i.close().catch(()=>{}),e}return i}async function e9(e,t,i){if(!await tt(t,i))return[];let r=[];return await ti(i,(t,i)=>{i.isFile()&&r.push([er.relative(e,t).split(er.sep).join("/"),t])}),r.sort(),r}async function te(e,t,i){let r,s=t=>er.relative(e,t).split(er.sep).join("/");try{r=await eZ.lstat(i,{bigint:!0})}catch(t){let e=t.code;if("ENOENT"===e||"ENOTDIR"===e)return new Set;throw t}if(r.isSymbolicLink())return new Set([s(i)]);if(!r.isDirectory())throw new e4(e4.NOT_A_DIRECTORY,t);let a=new Set;return await ti(i,(e,t)=>{t.isSymbolicLink()&&a.add(s(e))}),a}async function tt(e,t){let i;try{i=await eZ.lstat(t,{bigint:!0})}catch(t){let e=t.code;if("ENOENT"===e||"ENOTDIR"===e)return!1;throw t}if(!i.isDirectory())throw new e4(e4.NOT_A_DIRECTORY,e);return!0}async function ti(e,t){let i=[e];for(;i.length;){let e,r=i.pop();try{e=await eZ.readdir(r,{withFileTypes:!0})}catch(e){if("ENOENT"===e.code)continue;throw e}for(let s of e){let e=er.join(r,s.name);t(e,s),s.isDirectory()&&!s.isSymbolicLink()&&i.push(e)}}}let tr={hashFile:async function e(e){let t=et.createHash("sha256"),i=await e7(er.basename(e),e),r=new Uint8Array(1048576);try{for(;;){let{bytesRead:e}=await i.read(r,0,r.length);if(0===e)break;t.update(r.subarray(0,e))}}finally{await i.close()}return t.digest("hex")},timestampTrustMarginNs:2000000000n,nowNs:()=>1000000n*BigInt(Date.now())},ts=Symbol.asyncDispose;ts&&Object.defineProperty(e2.prototype,ts,{value:e2.prototype.dispose,configurable:!0,writable:!0});var ta=e.i(93668);let to=".anthropic-memory-store";function tn(e){return et.createHash("sha256").update(`version 1
6
+ ${e}`,"utf-8").digest("hex")}class tl extends eH.AnthropicError{constructor(e,t){super(e),this.name="SessionMemoryError",void 0!==t&&(this.cause=t)}}class tc{constructor(e,t,i){this.mode=e,this.cap=t,this.waiveWindow=i,this.attempted=0,this.capped=0,this.suppressed=0}takeSlot(){return this.attempted>=this.cap?(this.capped++,!1):(this.attempted++,!0)}}var td=(P=new WeakMap,F=new WeakMap,S=new WeakMap,b=new WeakMap,E=new WeakMap,G=new WeakMap,T=new WeakMap,k=new WeakMap,g=new WeakSet,O=function(e){if(e.mount_path){if(!e8(e.mount_path))throw new tl(`memory store mount_path is not a clean absolute path: ${JSON.stringify(e.mount_path)} (memory_store_id=${e.memory_store_id})`);return e.mount_path}return er.join((0,z.__classPrivateFieldGet)(this,F,"f"),"memory",e.name||e.memory_store_id)},N=async function(e){let t=await e.files.hashtree(),i=t[to];return(delete t[to],i===tn(e.memoryStoreId))?{files:t,markerOk:!0,distrustReason:null}:{files:t,markerOk:!1,distrustReason:void 0!==i?"the marker file does not match this store":"the marker file is gone"}},I=async function(e,t){try{let i=await (0,z.__classPrivateFieldGet)(this,g,"m",N).call(this,e),r=i.files;if(!i.markerOk){if(Object.keys(r).length>0)return void(0,z.__classPrivateFieldGet)(this,E,"f").warn(`${i.distrustReason}; leaving the memory store folder as found and not syncing`,{root:e.files.root().path,memory_store_id:e.memoryStoreId});await (0,z.__classPrivateFieldGet)(this,g,"m",M).call(this,e,"the folder or its marker is gone");return}if(0===Object.keys(r).length&&e.baseline.size>1)return void await (0,z.__classPrivateFieldGet)(this,g,"m",M).call(this,e,"every memory file is gone at once");let s=new Map;for await(let[t,i]of(0,z.__classPrivateFieldGet)(this,g,"m",W).call(this,e.memoryStoreId))s.set(t,i);let a=new tc((0,z.__classPrivateFieldGet)(this,b,"f"),Math.max(8,Math.min(50,Math.floor(e.baseline.size/4))),t),o=[],n=new Map;for(let t of[...new Set([...s.keys(),...Object.keys(r),...e.baseline.keys()])].sort()){let i,l=s.get(t),c=r[t],d=e.baseline.get(t);i=void 0!==c||void 0===d||void 0===l||l.content_sha256!==d||e.readOnly?await (0,z.__classPrivateFieldGet)(this,g,"m",x).call(this,e,t,l,c,o):await (0,z.__classPrivateFieldGet)(this,g,"m",C).call(this,e,t,l,d,a),void 0!==i&&n.set(t,i)}e.baseline=n,await (0,z.__classPrivateFieldGet)(this,g,"m",L).call(this,e,o),a.suppressed>0&&(0,z.__classPrivateFieldGet)(this,E,"f").debug("remote deletes are disabled; locally deleted memories stay on the server",{count:a.suppressed,memory_store_id:e.memoryStoreId}),a.capped>0&&(0,z.__classPrivateFieldGet)(this,E,"f").warn(`delete cap reached: ${"log_only"===a.mode?"would send":"sent"} ${a.attempted} deletes, held ${a.capped} for later syncs`,{memory_store_id:e.memoryStoreId})}catch(t){(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory sync failed",{memory_store_id:e.memoryStoreId,error:String(t)})}},$=async function(e,t){let i=new Map,r=new Set,s=async()=>{if(e.readOnly)return;let s=await (0,z.__classPrivateFieldGet)(this,g,"m",N).call(this,e);if(!s.markerOk)return void(0,z.__classPrivateFieldGet)(this,E,"f").warn(`${s.distrustReason}; not uploading anything from the memory store folder`,{root:e.files.root().path,memory_store_id:e.memoryStoreId});for(let[t,a]of Object.entries(s.files))a!==e.baseline.get(t)&&e.refusedShas.get(t)!==a&&(i.set(t,a),r.add(t));if(0===i.size||t?.aborted)return;let a=new Map;for await(let[i,r]of(0,z.__classPrivateFieldGet)(this,g,"m",W).call(this,e.memoryStoreId)){if(t?.aborted)return;a.set(i,r)}let o=[];for(let t of[...i.keys()].sort()){let s=i.get(t),n=e.baseline.get(t),l=a.get(t);if(void 0!==l&&l.content_sha256===s){e.baseline.set(t,l.content_sha256),r.delete(t);continue}if(void 0!==l&&l.content_sha256!==n){(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory changed both locally and remotely; the flush leaves the remote version",{path:t,memory_store_id:e.memoryStoreId}),r.delete(t);continue}o.push([t,s,l])}await (0,z.__classPrivateFieldGet)(this,g,"m",j).call(this,e,o,r,t)};try{await tf(s(),t),t?.aborted&&r.size>0&&(0,z.__classPrivateFieldGet)(this,E,"f").warn(`memory flush cut off part-way; ${r.size} of ${i.size} changed files had not finished uploading`,{memory_store_id:e.memoryStoreId})}catch(t){(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory flush failed",{memory_store_id:e.memoryStoreId,error:String(t)})}},M=async function(e,t){(0,z.__classPrivateFieldGet)(this,E,"f").warn(`${t}; re-downloading the memory store folder instead of syncing`,{root:e.files.root().path,memory_store_id:e.memoryStoreId}),await e.files.createRoot(),await (0,z.__classPrivateFieldGet)(this,g,"m",R).call(this,e)},R=async function(e){for await(let[t,i]of(e.baseline=new Map,e.pendingDeletes.clear(),await e.files.put(to,`version 1
7
+ ${e.memoryStoreId}`),(0,z.__classPrivateFieldGet)(this,g,"m",W).call(this,e.memoryStoreId,"full")))await (0,z.__classPrivateFieldGet)(this,g,"m",D).call(this,e,t,i.content??"")&&e.baseline.set(t,i.content_sha256)},x=async function(e,t,i,r,s){let a=e.baseline.get(t);if(void 0!==r&&e.pendingDeletes.delete(t),!i){if(void 0===r)return void e.pendingDeletes.delete(t);if(void 0!==a){if(r===a){let i=await (0,z.__classPrivateFieldGet)(this,g,"m",A).call(this,e,t,a);if(void 0===i)return;if(i===a)return a;r=i}e.readOnly?(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory deleted remotely but edited locally; keeping the file, which a read-only store cannot push",{path:t,memory_store_id:e.memoryStoreId}):e.refusedShas.get(t)!==r&&(0,z.__classPrivateFieldGet)(this,E,"f").info("memory deleted remotely but edited locally; re-creating it from the file",{path:t,memory_store_id:e.memoryStoreId})}if(e.readOnly||e.refusedShas.get(t)===r)return;return await (0,z.__classPrivateFieldGet)(this,g,"m",U).call(this,e,t,r,void 0)}let o=i.content_sha256,n=o!==a,l=void 0!==r&&r!==a&&r!==o,c=!e.readOnly&&l;return void 0===r&&void 0!==a?(n&&((0,z.__classPrivateFieldGet)(this,E,"f").warn("memory deleted locally but changed remotely; restoring the remote version",{path:t,memory_store_id:e.memoryStoreId}),e.pendingDeletes.delete(t),s.push([t,i])),a):n?r===o?o:(l&&(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory changed both locally and remotely; keeping the remote version",{path:t,memory_store_id:e.memoryStoreId}),s.push([t,i]),a):c?e.refusedShas.get(t)===r?o:await (0,z.__classPrivateFieldGet)(this,g,"m",U).call(this,e,t,r,i)??o:o},A=async function(e,t,i){let r;try{r=await e.files.hashFile(t)}catch(e){if(!(e instanceof e4)&&!th(e))throw e;return i}if(null!==r){if(r!==i)return r;try{await e.files.remove(t)}catch(r){if(!(r instanceof e4)&&!th(r))throw r;return(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to remove memory deleted remotely",{path:t,memory_store_id:e.memoryStoreId,error:String(r)}),i}}},D=async function(e,t,i){try{await e.files.put(t,i)}catch(i){if(!(i instanceof e4)&&!th(i))throw i;return(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to write memory",{path:t,memory_store_id:e.memoryStoreId,error:String(i)}),!1}return!0},L=async function(e,t){if(0===t.length)return;let i=async(t,i)=>{let r;try{r=await (0,z.__classPrivateFieldGet)(this,P,"f").beta.memoryStores.memories.retrieve(i.id,{memory_store_id:e.memoryStoreId,view:"full"})}catch(i){if((0,eJ.isStatus)(i,404))return;(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to fetch memory content",{path:t,memory_store_id:e.memoryStoreId,error:String(i)});return}await (0,z.__classPrivateFieldGet)(this,g,"m",D).call(this,e,t,r.content??"")&&e.baseline.set(t,r.content_sha256)},r=t[Symbol.iterator](),s=async()=>{for(let[e,t]of r)await i(e,t)};await Promise.all(Array.from({length:Math.min(16,t.length)},s))},j=async function(e,t,i,r){let s=t[Symbol.iterator](),a=async()=>{for(let[t,a,o]of s){if(r?.aborted)return;let s=await (0,z.__classPrivateFieldGet)(this,g,"m",U).call(this,e,t,a,o);i.delete(t),void 0!==s&&e.baseline.set(t,s)}};await Promise.all(Array.from({length:Math.min(32,t.length)},a))},W=async function*(e,t="basic"){for await(let i of(0,z.__classPrivateFieldGet)(this,P,"f").beta.memoryStores.memories.list(e,{view:t,limit:"basic"===t?100:20})){if("memory"!==i.type)continue;let t=i.path.replace(/^\/+/,"");if(t===to){(0,z.__classPrivateFieldGet)(this,E,"f").warn("the server listed the reserved marker path; skipping",{path:i.path,memory_store_id:e});continue}yield[t,i]}},U=async function e(t,i,r,s){try{let e=await t.files.get(i);if(null===e)return;let r=(0,eX.decodeUTF8)(e),a=s?await (0,z.__classPrivateFieldGet)(this,P,"f").beta.memoryStores.memories.update(s.id,{memory_store_id:t.memoryStoreId,content:r,precondition:{type:"content_sha256",content_sha256:s.content_sha256}}):await (0,z.__classPrivateFieldGet)(this,P,"f").beta.memoryStores.memories.create(t.memoryStoreId,{path:"/"+i,content:r});return t.refusedShas.delete(i),a.content_sha256}catch(o){if(s&&(0,eJ.isStatus)(o,404))return await (0,z.__classPrivateFieldGet)(this,g,"m",e).call(this,t,i,r,void 0);let a=o instanceof e4||(0,eJ.isStatus)(o,400)||(0,eJ.isStatus)(o,413);s&&(0,eJ.isStatus)(o,409)?(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory changed both locally and remotely; the upload was refused and the local edit loses",{path:i,memory_store_id:t.memoryStoreId}):a&&void 0!==r?(t.refusedShas.set(i,r),(0,z.__classPrivateFieldGet)(this,E,"f").warn("the server rejected this memory file, so it stays un-synced until its content changes",{path:i,memory_store_id:t.memoryStoreId,rejection:String(o)})):(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to upload memory",{path:i,memory_store_id:t.memoryStoreId,error:String(o)});return}},C=async function(e,t,i,r,s){let a,o;if("disabled"===s.mode)return s.suppressed++,r;let n=e.pendingDeletes.get(t);if(void 0===n&&(n=Date.now(),e.pendingDeletes.set(t,n)),!s.waiveWindow&&Date.now()-n<3e4)return r;try{a=await e.files.hashFile(to)===tn(e.memoryStoreId),o=await e.files.hashFile(t)===null}catch(e){if(!(e instanceof e4)&&!th(e))throw e;a=o=!1}if(!a)return r;if(!o)return e.pendingDeletes.delete(t),r;if(!s.takeSlot())return r;if("log_only"===s.mode)return(0,z.__classPrivateFieldGet)(this,E,"f").info("log-only: sync would delete this memory on the server",{path:t,memory_store_id:e.memoryStoreId}),r;let l=await (0,z.__classPrivateFieldGet)(this,g,"m",q).call(this,e,t,i,r);return void 0===l&&e.pendingDeletes.delete(t),l},q=async function(e,t,i,r){try{await (0,z.__classPrivateFieldGet)(this,P,"f").beta.memoryStores.memories.delete(i.id,{memory_store_id:e.memoryStoreId,expected_content_sha256:r})}catch(i){if((0,eJ.isStatus)(i,404))return;return(0,eJ.isStatus)(i,409)||(0,eJ.isStatus)(i,412)?(0,z.__classPrivateFieldGet)(this,E,"f").warn("memory deleted locally but changed remotely; keeping the remote version",{path:t,memory_store_id:e.memoryStoreId}):(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to delete memory",{path:t,memory_store_id:e.memoryStoreId,error:String(i)}),r}(0,z.__classPrivateFieldGet)(this,E,"f").info("propagated local deletion",{path:t,memory_store_id:e.memoryStoreId})},class{constructor(e,t){g.add(this),P.set(this,void 0),F.set(this,void 0),S.set(this,void 0),b.set(this,void 0),E.set(this,void 0),G.set(this,void 0),T.set(this,!1),k.set(this,[]),(0,z.__classPrivateFieldSet)(this,P,e,"f"),(0,z.__classPrivateFieldSet)(this,F,t.workdir,"f"),(0,z.__classPrivateFieldSet)(this,S,t.syncIntervalMs??ta.DEFAULT_MEMORY_SYNC_INTERVAL_MS,"f"),(0,ta.checkMemorySyncInterval)((0,z.__classPrivateFieldGet)(this,S,"f"),"syncIntervalMs"),(0,z.__classPrivateFieldSet)(this,b,t.syncDeletions??"enabled","f"),(0,z.__classPrivateFieldSet)(this,E,(0,eD.loggerFor)(e),"f"),(0,z.__classPrivateFieldSet)(this,G,Date.now(),"f")}get roots(){return(0,z.__classPrivateFieldGet)(this,k,"f").map(e=>e.files.root().path)}get readOnlyRoots(){return(0,z.__classPrivateFieldGet)(this,k,"f").filter(e=>e.readOnly).map(e=>e.files.root().path)}async download(e){for(let t of e.resources){let e;if("memory_store"!==t.type)continue;let i=(0,z.__classPrivateFieldGet)(this,g,"m",O).call(this,t);try{if(!(e={memoryStoreId:t.memory_store_id,files:await e2.open(i,{utf8:!0}),readOnly:"read_only"===t.access,baseline:new Map,refusedShas:new Map,pendingDeletes:new Map}).files.root().removedOnDispose)throw new tl(`something already exists at the memory store's path: ${i} (memory_store_id=${t.memory_store_id}); it must not exist when the session starts`);try{await e.files.createRoot()}catch(e){if(!th(e))throw e;throw new tl(`cannot create the memory store's folder: ${i} (memory_store_id=${t.memory_store_id}): ${e}; the worker host must make this mount path writable`,e)}await (0,z.__classPrivateFieldGet)(this,g,"m",R).call(this,e),(0,z.__classPrivateFieldGet)(this,E,"f").info("downloaded memories",{count:e.baseline.size,memory_store_id:e.memoryStoreId,dest:e.files.root().path}),(0,z.__classPrivateFieldGet)(this,k,"f").push(e)}catch(i){if(e&&await e.files.dispose().catch(()=>{}),i instanceof tl)throw i;throw new tl(`failed to download memory store memory_store_id=${t.memory_store_id}: ${i}`,i)}}(0,z.__classPrivateFieldSet)(this,G,Date.now(),"f")}async finish(){if((0,z.__classPrivateFieldGet)(this,T,"f"))throw new eH.AnthropicError("finish() was already called: it is the session's last sync and runs once");(0,z.__classPrivateFieldSet)(this,T,!0,"f"),await this.syncAll(!0)}async syncAll(e){await Promise.all((0,z.__classPrivateFieldGet)(this,k,"f").map(t=>(0,z.__classPrivateFieldGet)(this,g,"m",I).call(this,t,e))),(0,z.__classPrivateFieldSet)(this,G,Date.now(),"f")}async syncIfDue(){Date.now()-(0,z.__classPrivateFieldGet)(this,G,"f")<(0,z.__classPrivateFieldGet)(this,S,"f")||await this.syncAll(!1)}async flushWrites(e){await Promise.all((0,z.__classPrivateFieldGet)(this,k,"f").map(t=>(0,z.__classPrivateFieldGet)(this,g,"m",$).call(this,t,e)))}async dispose(){for(let e of(0,z.__classPrivateFieldGet)(this,k,"f")){let t=e.files.root();try{let i=await (0,z.__classPrivateFieldGet)(this,g,"m",N).call(this,e);if(!i.markerOk&&Object.keys(i.files).length>0){(0,z.__classPrivateFieldGet)(this,E,"f").warn(`${i.distrustReason}; leaving the memory store folder on disk`,{root:t.path,memory_store_id:e.memoryStoreId});continue}await e.files.dispose()}catch(t){if(!(t instanceof e4)&&!th(t))throw t;(0,z.__classPrivateFieldGet)(this,E,"f").warn("failed to remove the memory store folder",{root:e.files.root().path,memory_store_id:e.memoryStoreId,error:String(t)});continue}t.removedOnDispose&&(0,z.__classPrivateFieldGet)(this,E,"f").info("removed memory store dir",{dest:t.path,memory_store_id:e.memoryStoreId})}}});function th(e){return"object"==typeof e&&null!==e&&"string"==typeof e.code}async function tf(e,t){let i;if(!t)return void await e;let r=new Promise(e=>{i=e,t.aborted&&e()});t.addEventListener("abort",i,{once:!0});try{await Promise.race([e,r])}finally{t.removeEventListener("abort",i)}}e.s(["BashSession",0,eP,"BashTimeoutError",0,em,"DEFAULT_MEMORY_SYNC_INTERVAL_MS",()=>ta.DEFAULT_MEMORY_SYNC_INTERVAL_MS,"MARKER_PATH",0,to,"MEMORY_FLUSH_TIMEOUT_MS",0,3e4,"MIN_MEMORY_SYNC_INTERVAL_MS",()=>ta.MIN_MEMORY_SYNC_INTERVAL_MS,"SessionMemoryError",0,tl,"SessionMemoryStores",0,td,"betaAgentToolset20260401",0,ep,"betaBashTool",0,eF,"betaEditTool",0,eT,"betaGlobTool",0,ek,"betaGrepTool",0,eO,"betaReadTool",0,eS,"betaWriteTool",0,eG,"extractSkillArchive",0,eB,"resolvePath",0,ev,"setupSkills",0,eW],83085)}];
8
+
9
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0rk_yxy._.js.map