@agent-spaces/server 0.3.63 → 0.3.65

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 (334) hide show
  1. package/dist/adapters/claude-code-runtime/index.js +68 -2
  2. package/dist/adapters/claude-code-runtime/message-format.js +27 -1
  3. package/dist/adapters/claude-code-runtime/sdk-config.js +12 -0
  4. package/dist/adapters/git.js +168 -57
  5. package/dist/agents/agent-designer.js +66 -12
  6. package/dist/agents/agent-message-parts.js +1 -1
  7. package/dist/agents/commit-agent.js +4 -2
  8. package/dist/agents/issue-task-controller.js +7 -3
  9. package/dist/app.js +56 -69
  10. package/dist/package.json +1 -1
  11. package/dist/routes/agent-commands.js +72 -0
  12. package/dist/routes/agent-sse.js +7 -0
  13. package/dist/routes/agent.js +18 -1
  14. package/dist/routes/database.js +346 -0
  15. package/dist/routes/git.js +198 -267
  16. package/dist/routes/kanban.js +39 -0
  17. package/dist/routes/robot-account.js +68 -0
  18. package/dist/services/agent-commands.js +168 -0
  19. package/dist/services/agent.js +36 -2
  20. package/dist/services/builtin-tools/command-tools.js +117 -0
  21. package/dist/services/builtin-tools/database-tools.js +578 -0
  22. package/dist/services/builtin-tools/index.js +5 -0
  23. package/dist/services/builtin-tools/input-helpers.js +26 -0
  24. package/dist/services/builtin-tools/issue-tools.js +209 -0
  25. package/dist/services/builtin-tools/kanban-tools.js +281 -0
  26. package/dist/services/database-vector.js +244 -0
  27. package/dist/services/git-operation-log.js +40 -0
  28. package/dist/services/global-wechat-qr.js +72 -0
  29. package/dist/services/hook-engine.js +175 -17
  30. package/dist/services/kanban.js +50 -0
  31. package/dist/services/notification-hub/bot-agent.js +3 -1
  32. package/dist/services/notification-hub/service.js +12 -2
  33. package/dist/services/robot-account.js +34 -0
  34. package/dist/services/workspace.js +2 -0
  35. package/dist/storage/database-store.js +365 -0
  36. package/dist/storage/kanban-store.js +142 -0
  37. package/dist/storage/robot-account-store.js +39 -0
  38. package/dist/web/404.html +1 -1
  39. package/dist/web/__next.__PAGE__.txt +4 -4
  40. package/dist/web/__next._full.txt +24 -31
  41. package/dist/web/__next._head.txt +4 -4
  42. package/dist/web/__next._index.txt +14 -14
  43. package/dist/web/__next._tree.txt +3 -8
  44. package/dist/web/_next/static/chunks/0-a.-hl3wv99k.js +1 -0
  45. package/dist/web/_next/static/chunks/{0ctg5qmw7uu.1.js → 0-pi.67w.ymsr.js} +3 -3
  46. package/dist/web/_next/static/chunks/0-v_p6j5u3_9l.js +1 -0
  47. package/dist/web/_next/static/chunks/0.-x29t-8gk0r.js +1 -0
  48. package/dist/web/_next/static/chunks/0.6b64sy0g5.3.js +3 -0
  49. package/dist/web/_next/static/chunks/0.l5e8~r7_0~p.js +1 -0
  50. package/dist/web/_next/static/chunks/00-syqzi-6zxr.js +1 -0
  51. package/dist/web/_next/static/chunks/{13~y-b.b9rrw4.js → 01~quun6sefgl.js} +1 -1
  52. package/dist/web/_next/static/chunks/02802taez976w.js +67 -0
  53. package/dist/web/_next/static/chunks/02j4sr9psucf-.js +1 -0
  54. package/dist/web/_next/static/chunks/033.awk90g6eh.js +1 -0
  55. package/dist/web/_next/static/chunks/06.kdsa9rr2h1.js +1 -0
  56. package/dist/web/_next/static/chunks/{0-oog4zg4_m~m.css → 062f9zqctzg.b.css} +0 -3
  57. package/dist/web/_next/static/chunks/06si8l0doqe8p.js +1 -0
  58. package/dist/web/_next/static/chunks/08ugbvzr20drp.js +2 -0
  59. package/dist/web/_next/static/chunks/{0kof5qdg8c2-k.js → 08x85faoz58i7.js} +37 -37
  60. package/dist/web/_next/static/chunks/0_cqojbge48kq.js +5 -0
  61. package/dist/web/_next/static/chunks/0_mvduwjsm35w.js +1 -0
  62. package/dist/web/_next/static/chunks/0d6~~lv0-6kex.js +3 -0
  63. package/dist/web/_next/static/chunks/{0ogpc3f3keopc.js → 0db14450oqzhg.js} +2 -2
  64. package/dist/web/_next/static/chunks/0fttswpzu69qx.js +1 -0
  65. package/dist/web/_next/static/chunks/0gdwop9cnpmtu.js +1 -0
  66. package/dist/web/_next/static/chunks/0ghx3j_.-gdyd.js +1 -0
  67. package/dist/web/_next/static/chunks/0j-l7l_k9jt45.js +1 -0
  68. package/dist/web/_next/static/chunks/0k4zdm72k_bfy.js +1 -0
  69. package/dist/web/_next/static/chunks/0kbvoxla7f751.js +1 -0
  70. package/dist/web/_next/static/chunks/{0aa6bcdmtpekn.js → 0l2w0qz1ea7ql.js} +2 -2
  71. package/dist/web/_next/static/chunks/0p3h-h3zj5ujg.js +30 -0
  72. package/dist/web/_next/static/chunks/0paaat8y96ayc.js +7 -0
  73. package/dist/web/_next/static/chunks/0pm-un~-sy3rl.js +1 -0
  74. package/dist/web/_next/static/chunks/0pq318f8xgafg.js +1 -0
  75. package/dist/web/_next/static/chunks/0t6s8of0qr6nc.js +1 -0
  76. package/dist/web/_next/static/chunks/0u6h-hqc_i52e.js +1 -0
  77. package/dist/web/_next/static/chunks/0uxzi~9b~k4mn.js +31 -0
  78. package/dist/web/_next/static/chunks/{002-dxhags4dj.js → 0v6hte2z-32ca.js} +2 -2
  79. package/dist/web/_next/static/chunks/{014x2qbuiszni.js → 0vis~lx0nxgn-.js} +3 -3
  80. package/dist/web/_next/static/chunks/{0y09i51u6ixq5.js → 0w7.tb29958zj.js} +1 -1
  81. package/dist/web/_next/static/chunks/0xbaakj0dfc0..js +1 -0
  82. package/dist/web/_next/static/chunks/0yd.m1afqg.2t.js +3 -0
  83. package/dist/web/_next/static/chunks/0yhbr8hl09b-5.js +1 -0
  84. package/dist/web/_next/static/chunks/0zncg76rgtbm-.js +1 -0
  85. package/dist/web/_next/static/chunks/0z~vqzbm_q371.js +1 -0
  86. package/dist/web/_next/static/chunks/0~~_ltu6dx_ch.js +1 -0
  87. package/dist/web/_next/static/chunks/{02c22g~xd-y30.js → 11cchuwoupmbf.js} +2 -2
  88. package/dist/web/_next/static/chunks/12jm4gwmvq-0q.js +90 -0
  89. package/dist/web/_next/static/chunks/12oxcgyhpaxw~.js +1 -0
  90. package/dist/web/_next/static/chunks/1452eibz62gs6.css +1 -0
  91. package/dist/web/_next/static/chunks/16zlreiems5cn.js +1 -0
  92. package/dist/web/_next/static/chunks/18awqjk9-o5m0.js +1 -0
  93. package/dist/web/_next/static/chunks/18c7g84y01mj0.js +1 -0
  94. package/dist/web/_next/static/chunks/{turbopack-0ndm2zc_pdptk.js → turbopack-11qjwlynmfc-n.js} +1 -1
  95. package/dist/web/_not-found/__next._full.txt +31 -30
  96. package/dist/web/_not-found/__next._head.txt +4 -4
  97. package/dist/web/_not-found/__next._index.txt +14 -14
  98. package/dist/web/_not-found/__next._not-found.__PAGE__.txt +2 -2
  99. package/dist/web/_not-found/__next._not-found.txt +3 -3
  100. package/dist/web/_not-found/__next._tree.txt +3 -3
  101. package/dist/web/_not-found.html +1 -1
  102. package/dist/web/_not-found.txt +31 -30
  103. package/dist/web/index.html +1 -1
  104. package/dist/web/index.txt +24 -31
  105. package/dist/web/login/__next._full.txt +32 -36
  106. package/dist/web/login/__next._head.txt +4 -4
  107. package/dist/web/login/__next._index.txt +14 -14
  108. package/dist/web/login/__next._tree.txt +3 -8
  109. package/dist/web/login/__next.login.__PAGE__.txt +4 -4
  110. package/dist/web/login/__next.login.txt +3 -3
  111. package/dist/web/login.html +1 -1
  112. package/dist/web/login.txt +32 -36
  113. package/dist/web/settings/__next._full.txt +34 -38
  114. package/dist/web/settings/__next._head.txt +4 -4
  115. package/dist/web/settings/__next._index.txt +14 -14
  116. package/dist/web/settings/__next._tree.txt +3 -8
  117. package/dist/web/settings/__next.settings.__PAGE__.txt +4 -4
  118. package/dist/web/settings/__next.settings.txt +5 -5
  119. package/dist/web/settings/agents/__next._full.txt +27 -32
  120. package/dist/web/settings/agents/__next._head.txt +4 -4
  121. package/dist/web/settings/agents/__next._index.txt +14 -14
  122. package/dist/web/settings/agents/__next._tree.txt +3 -8
  123. package/dist/web/settings/agents/__next.settings.agents.__PAGE__.txt +4 -4
  124. package/dist/web/settings/agents/__next.settings.agents.txt +3 -3
  125. package/dist/web/settings/agents/__next.settings.txt +5 -5
  126. package/dist/web/settings/agents.html +1 -1
  127. package/dist/web/settings/agents.txt +27 -32
  128. package/dist/web/settings/mcps/__next._full.txt +27 -32
  129. package/dist/web/settings/mcps/__next._head.txt +4 -4
  130. package/dist/web/settings/mcps/__next._index.txt +14 -14
  131. package/dist/web/settings/mcps/__next._tree.txt +3 -8
  132. package/dist/web/settings/mcps/__next.settings.mcps.__PAGE__.txt +4 -4
  133. package/dist/web/settings/mcps/__next.settings.mcps.txt +3 -3
  134. package/dist/web/settings/mcps/__next.settings.txt +5 -5
  135. package/dist/web/settings/mcps.html +1 -1
  136. package/dist/web/settings/mcps.txt +27 -32
  137. package/dist/web/settings/models/__next._full.txt +27 -32
  138. package/dist/web/settings/models/__next._head.txt +4 -4
  139. package/dist/web/settings/models/__next._index.txt +14 -14
  140. package/dist/web/settings/models/__next._tree.txt +3 -8
  141. package/dist/web/settings/models/__next.settings.models.__PAGE__.txt +4 -4
  142. package/dist/web/settings/models/__next.settings.models.txt +3 -3
  143. package/dist/web/settings/models/__next.settings.txt +5 -5
  144. package/dist/web/settings/models.html +1 -1
  145. package/dist/web/settings/models.txt +27 -32
  146. package/dist/web/settings/output-styles/__next._full.txt +27 -32
  147. package/dist/web/settings/output-styles/__next._head.txt +4 -4
  148. package/dist/web/settings/output-styles/__next._index.txt +14 -14
  149. package/dist/web/settings/output-styles/__next._tree.txt +3 -8
  150. package/dist/web/settings/output-styles/__next.settings.output-styles.__PAGE__.txt +4 -4
  151. package/dist/web/settings/output-styles/__next.settings.output-styles.txt +3 -3
  152. package/dist/web/settings/output-styles/__next.settings.txt +5 -5
  153. package/dist/web/settings/output-styles.html +1 -1
  154. package/dist/web/settings/output-styles.txt +27 -32
  155. package/dist/web/settings/prompts/__next._full.txt +27 -32
  156. package/dist/web/settings/prompts/__next._head.txt +4 -4
  157. package/dist/web/settings/prompts/__next._index.txt +14 -14
  158. package/dist/web/settings/prompts/__next._tree.txt +3 -8
  159. package/dist/web/settings/prompts/__next.settings.prompts.__PAGE__.txt +4 -4
  160. package/dist/web/settings/prompts/__next.settings.prompts.txt +3 -3
  161. package/dist/web/settings/prompts/__next.settings.txt +5 -5
  162. package/dist/web/settings/prompts.html +1 -1
  163. package/dist/web/settings/prompts.txt +27 -32
  164. package/dist/web/settings/providers/__next._full.txt +27 -32
  165. package/dist/web/settings/providers/__next._head.txt +4 -4
  166. package/dist/web/settings/providers/__next._index.txt +14 -14
  167. package/dist/web/settings/providers/__next._tree.txt +3 -8
  168. package/dist/web/settings/providers/__next.settings.providers.__PAGE__.txt +4 -4
  169. package/dist/web/settings/providers/__next.settings.providers.txt +3 -3
  170. package/dist/web/settings/providers/__next.settings.txt +5 -5
  171. package/dist/web/settings/providers.html +1 -1
  172. package/dist/web/settings/providers.txt +27 -32
  173. package/dist/web/settings/skills/__next._full.txt +27 -32
  174. package/dist/web/settings/skills/__next._head.txt +4 -4
  175. package/dist/web/settings/skills/__next._index.txt +14 -14
  176. package/dist/web/settings/skills/__next._tree.txt +3 -8
  177. package/dist/web/settings/skills/__next.settings.skills.__PAGE__.txt +4 -4
  178. package/dist/web/settings/skills/__next.settings.skills.txt +3 -3
  179. package/dist/web/settings/skills/__next.settings.txt +5 -5
  180. package/dist/web/settings/skills.html +1 -1
  181. package/dist/web/settings/skills.txt +27 -32
  182. package/dist/web/settings/tools/__next._full.txt +38 -0
  183. package/dist/web/settings/tools/__next._head.txt +6 -0
  184. package/dist/web/settings/tools/__next._index.txt +15 -0
  185. package/dist/web/settings/tools/__next._tree.txt +3 -0
  186. package/dist/web/settings/tools/__next.settings.tools.__PAGE__.txt +9 -0
  187. package/dist/web/settings/tools/__next.settings.tools.txt +5 -0
  188. package/dist/web/settings/tools/__next.settings.txt +7 -0
  189. package/dist/web/settings/tools.html +1 -0
  190. package/dist/web/settings/tools.txt +38 -0
  191. package/dist/web/settings.html +1 -1
  192. package/dist/web/settings.txt +34 -38
  193. package/dist/web/workflows/__next._full.txt +32 -38
  194. package/dist/web/workflows/__next._head.txt +4 -4
  195. package/dist/web/workflows/__next._index.txt +14 -14
  196. package/dist/web/workflows/__next._tree.txt +3 -8
  197. package/dist/web/workflows/__next.workflows.__PAGE__.txt +4 -4
  198. package/dist/web/workflows/__next.workflows.txt +3 -3
  199. package/dist/web/workflows.html +1 -1
  200. package/dist/web/workflows.txt +32 -38
  201. package/dist/web/workspace/_/__next._full.txt +31 -36
  202. package/dist/web/workspace/_/__next._head.txt +4 -4
  203. package/dist/web/workspace/_/__next._index.txt +14 -14
  204. package/dist/web/workspace/_/__next._tree.txt +4 -8
  205. package/dist/web/workspace/_/__next.workspace.$d$id.__PAGE__.txt +3 -3
  206. package/dist/web/workspace/_/__next.workspace.$d$id.txt +3 -3
  207. package/dist/web/workspace/_/__next.workspace.txt +3 -3
  208. package/dist/web/workspace/_.html +1 -1
  209. package/dist/web/workspace/_.txt +31 -36
  210. package/dist/web/workspaces/__next._full.txt +30 -37
  211. package/dist/web/workspaces/__next._head.txt +4 -4
  212. package/dist/web/workspaces/__next._index.txt +14 -14
  213. package/dist/web/workspaces/__next._tree.txt +3 -8
  214. package/dist/web/workspaces/__next.workspaces.__PAGE__.txt +4 -4
  215. package/dist/web/workspaces/__next.workspaces.txt +3 -3
  216. package/dist/web/workspaces.html +1 -1
  217. package/dist/web/workspaces.txt +30 -37
  218. package/dist/ws/agent-prompt.js +45 -8
  219. package/dist/ws/agent-runner.js +88 -10
  220. package/package.json +1 -1
  221. package/dist/web/_next/static/chunks/0-1bfvfwifh-m.js +0 -1
  222. package/dist/web/_next/static/chunks/02mf61htij8g0.js +0 -31
  223. package/dist/web/_next/static/chunks/046me66nilkff.js +0 -1
  224. package/dist/web/_next/static/chunks/04v-pqqs-2lvp.css +0 -1
  225. package/dist/web/_next/static/chunks/06w~.izyfylap.js +0 -1
  226. package/dist/web/_next/static/chunks/09t62a89~jesc.js +0 -3
  227. package/dist/web/_next/static/chunks/09y_3krccdd~u.js +0 -1
  228. package/dist/web/_next/static/chunks/0_e~hmntdfop9.js +0 -1
  229. package/dist/web/_next/static/chunks/0_udc.6.tueey.js +0 -1
  230. package/dist/web/_next/static/chunks/0cke33d38fnby.js +0 -90
  231. package/dist/web/_next/static/chunks/0cyq~8xb~r5fc.js +0 -1
  232. package/dist/web/_next/static/chunks/0ewceguykiut5.js +0 -1
  233. package/dist/web/_next/static/chunks/0fxa1edqr7dve.js +0 -1
  234. package/dist/web/_next/static/chunks/0hra80eyuu37u.js +0 -1
  235. package/dist/web/_next/static/chunks/0ie7y4k2ncvnn.js +0 -1
  236. package/dist/web/_next/static/chunks/0igc~uli58ncw.js +0 -2
  237. package/dist/web/_next/static/chunks/0msb2mi3hiu5_.js +0 -67
  238. package/dist/web/_next/static/chunks/0p1n8bvfnpl41.js +0 -1
  239. package/dist/web/_next/static/chunks/0ppr271hz0xoq.js +0 -1
  240. package/dist/web/_next/static/chunks/0s_dva~eh2yhi.js +0 -3
  241. package/dist/web/_next/static/chunks/0typj55ox8d5i.js +0 -1
  242. package/dist/web/_next/static/chunks/0w2p4ldi2aymp.js +0 -1
  243. package/dist/web/_next/static/chunks/0zc0xgp5ourcn.js +0 -1
  244. package/dist/web/_next/static/chunks/0zmhdridea1s5.js +0 -90
  245. package/dist/web/_next/static/chunks/10.alq.6stmld.js +0 -1
  246. package/dist/web/_next/static/chunks/11b3zgk1etlkw.js +0 -7
  247. package/dist/web/_next/static/chunks/11qp8r5dotf7d.js +0 -1
  248. package/dist/web/_next/static/chunks/12mxlicp247c8.js +0 -1
  249. package/dist/web/_next/static/chunks/135w27dd8c19s.js +0 -5
  250. package/dist/web/_next/static/chunks/176dc-dtokxxi.js +0 -16
  251. package/dist/web/_next/static/chunks/17g-0pqre.anw.js +0 -1
  252. package/dist/web/_next/static/media/0a7740363b4d4863-s.1110aazvokzp..woff2 +0 -0
  253. package/dist/web/_next/static/media/0da9c7f357bd9d4d-s.0ek5sshv8wk3m.woff2 +0 -0
  254. package/dist/web/_next/static/media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.woff2 +0 -0
  255. package/dist/web/_next/static/media/41e95f694c5c4549-s.0r1jrq7neqdsq.woff2 +0 -0
  256. package/dist/web/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2 +0 -0
  257. package/dist/web/_next/static/media/5f9d24ebef5d5292-s.0esuu2f5si~v8.woff2 +0 -0
  258. package/dist/web/_next/static/media/6c55a692938ebbbc-s.0g6rbszwfgn9y.woff2 +0 -0
  259. package/dist/web/_next/static/media/8e6fa89aa22d24ec-s.p.0uvzar8hswo3p.woff2 +0 -0
  260. package/dist/web/_next/static/media/a218039a3287bcfd-s.p.17-1enzs_j91b.woff2 +0 -0
  261. package/dist/web/_next/static/media/b2ea385cb5ae8625-s.0kjod.kaq1k69.woff2 +0 -0
  262. package/dist/web/_next/static/media/bdc7e24a509eb931-s.0apt5mko2.qn3.woff2 +0 -0
  263. package/dist/web/_next/static/media/c3cb240f9c892514-s.163v2i5cux7-c.woff2 +0 -0
  264. package/dist/web/_next/static/media/e2334d715941921e-s.p.12skym0rqknxy.woff2 +0 -0
  265. package/public/output-styles/carmack-mode.md +0 -381
  266. package/public/output-styles/codex-rigor-mode.md +0 -114
  267. package/public/output-styles/dhh-mode.md +0 -265
  268. package/public/output-styles/evan-you-mode.md +0 -539
  269. package/public/output-styles/index.json +0 -37
  270. package/public/output-styles/jobs-mode.md +0 -369
  271. package/public/output-styles/linus-mode.md +0 -135
  272. package/public/output-styles/uncle-bob-mode.md +0 -221
  273. package/public/prompt/andrej-karpathy-skills.md +0 -65
  274. package/public/prompt/claude-token-efficient-coding.md +0 -35
  275. package/public/prompt/index.json +0 -12
  276. package/public/skills/index.json +0 -92
  277. package/public/skills/planning-with-files/planning-with-files-zh/SKILL.md +0 -243
  278. package/public/skills/planning-with-files/planning-with-files-zh/scripts/check-complete.ps1 +0 -44
  279. package/public/skills/planning-with-files/planning-with-files-zh/scripts/check-complete.sh +0 -46
  280. package/public/skills/planning-with-files/planning-with-files-zh/scripts/init-session.ps1 +0 -124
  281. package/public/skills/planning-with-files/planning-with-files-zh/scripts/init-session.sh +0 -124
  282. package/public/skills/planning-with-files/planning-with-files-zh/scripts/session-catchup.py +0 -438
  283. package/public/skills/planning-with-files/planning-with-files-zh/templates/findings.md +0 -29
  284. package/public/skills/planning-with-files/planning-with-files-zh/templates/progress.md +0 -40
  285. package/public/skills/planning-with-files/planning-with-files-zh/templates/task_plan.md +0 -58
  286. package/public/skills/superpowers/brainstorming/SKILL.md +0 -164
  287. package/public/skills/superpowers/brainstorming/scripts/frame-template.html +0 -214
  288. package/public/skills/superpowers/brainstorming/scripts/helper.js +0 -88
  289. package/public/skills/superpowers/brainstorming/scripts/server.cjs +0 -354
  290. package/public/skills/superpowers/brainstorming/scripts/start-server.sh +0 -148
  291. package/public/skills/superpowers/brainstorming/scripts/stop-server.sh +0 -56
  292. package/public/skills/superpowers/brainstorming/spec-document-reviewer-prompt.md +0 -49
  293. package/public/skills/superpowers/brainstorming/visual-companion.md +0 -287
  294. package/public/skills/superpowers/dispatching-parallel-agents/SKILL.md +0 -182
  295. package/public/skills/superpowers/executing-plans/SKILL.md +0 -70
  296. package/public/skills/superpowers/finishing-a-development-branch/SKILL.md +0 -251
  297. package/public/skills/superpowers/receiving-code-review/SKILL.md +0 -213
  298. package/public/skills/superpowers/requesting-code-review/SKILL.md +0 -103
  299. package/public/skills/superpowers/requesting-code-review/code-reviewer.md +0 -168
  300. package/public/skills/superpowers/subagent-driven-development/SKILL.md +0 -279
  301. package/public/skills/superpowers/subagent-driven-development/code-quality-reviewer-prompt.md +0 -25
  302. package/public/skills/superpowers/subagent-driven-development/implementer-prompt.md +0 -113
  303. package/public/skills/superpowers/subagent-driven-development/spec-reviewer-prompt.md +0 -61
  304. package/public/skills/superpowers/systematic-debugging/CREATION-LOG.md +0 -119
  305. package/public/skills/superpowers/systematic-debugging/SKILL.md +0 -296
  306. package/public/skills/superpowers/systematic-debugging/condition-based-waiting-example.ts +0 -158
  307. package/public/skills/superpowers/systematic-debugging/condition-based-waiting.md +0 -115
  308. package/public/skills/superpowers/systematic-debugging/defense-in-depth.md +0 -122
  309. package/public/skills/superpowers/systematic-debugging/find-polluter.sh +0 -63
  310. package/public/skills/superpowers/systematic-debugging/root-cause-tracing.md +0 -169
  311. package/public/skills/superpowers/systematic-debugging/test-academic.md +0 -14
  312. package/public/skills/superpowers/systematic-debugging/test-pressure-1.md +0 -58
  313. package/public/skills/superpowers/systematic-debugging/test-pressure-2.md +0 -68
  314. package/public/skills/superpowers/systematic-debugging/test-pressure-3.md +0 -69
  315. package/public/skills/superpowers/test-driven-development/SKILL.md +0 -371
  316. package/public/skills/superpowers/test-driven-development/testing-anti-patterns.md +0 -299
  317. package/public/skills/superpowers/using-git-worktrees/SKILL.md +0 -215
  318. package/public/skills/superpowers/using-superpowers/SKILL.md +0 -117
  319. package/public/skills/superpowers/using-superpowers/references/codex-tools.md +0 -59
  320. package/public/skills/superpowers/using-superpowers/references/copilot-tools.md +0 -42
  321. package/public/skills/superpowers/using-superpowers/references/gemini-tools.md +0 -51
  322. package/public/skills/superpowers/verification-before-completion/SKILL.md +0 -139
  323. package/public/skills/superpowers/writing-plans/SKILL.md +0 -152
  324. package/public/skills/superpowers/writing-plans/plan-document-reviewer-prompt.md +0 -49
  325. package/public/skills/superpowers/writing-skills/SKILL.md +0 -655
  326. package/public/skills/superpowers/writing-skills/anthropic-best-practices.md +0 -1150
  327. package/public/skills/superpowers/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
  328. package/public/skills/superpowers/writing-skills/graphviz-conventions.dot +0 -172
  329. package/public/skills/superpowers/writing-skills/persuasion-principles.md +0 -187
  330. package/public/skills/superpowers/writing-skills/render-graphs.js +0 -168
  331. package/public/skills/superpowers/writing-skills/testing-skills-with-subagents.md +0 -384
  332. /package/dist/web/_next/static/{OoXAsPtrUWjC1l898FSvI → x4-CsKe6qUQyFDWVtfvUg}/_buildManifest.js +0 -0
  333. /package/dist/web/_next/static/{OoXAsPtrUWjC1l898FSvI → x4-CsKe6qUQyFDWVtfvUg}/_clientMiddlewareManifest.js +0 -0
  334. /package/dist/web/_next/static/{OoXAsPtrUWjC1l898FSvI → x4-CsKe6qUQyFDWVtfvUg}/_ssgManifest.js +0 -0
@@ -0,0 +1,30 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,565782,e=>{"use strict";var t=e.i(344180),r=e.i(764556),s=e.i(141889),n=e.i(325443),o=e.i(417092),a=e.i(953700),l=e.i(972846),d=e.i(992764),i=e.i(651850),i=i,c=e.i(579820),u=e.i(735207),u=u,x=e.i(433721);let m=(0,x.default)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]]);var h=e.i(588785),p=e.i(344118),f=e.i(315775);let g=(0,x.default)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);var b=e.i(415360);let j=(0,x.default)("file-check",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]]),w=(0,x.default)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),y=(0,x.default)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);var v=e.i(244073),N=e.i(465458);function k(e){if(!e)return"";let t=e,r=(t=(t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>`<pre><code class="language-${t}">${C(r.trim())}</code></pre>`)).replace(/^---$/gm,"<hr />")).split("\n"),s=[],n=!1,o=!1,a=!1,l=!1,d=()=>{n&&(s.push("</ul>"),n=!1),o&&(s.push("</ol>"),o=!1),l&&(s.push("</ul>"),l=!1)},i=()=>{a&&(s.push("</blockquote>"),a=!1)};for(let e of r){let t=e.trim();if(t.startsWith(">"))d(),a||(s.push("<blockquote>"),a=!0),s.push(`<p>${M(t.replace(/^>\s*/,""))}</p>`);else if(i(),t.startsWith("# "))d(),s.push(`<h1>${M(t.substring(2))}</h1>`);else if(t.startsWith("## "))d(),s.push(`<h2>${M(t.substring(3))}</h2>`);else if(t.startsWith("### "))d(),s.push(`<h3>${M(t.substring(4))}</h3>`);else if(t.startsWith("#### "))d(),s.push(`<h4>${M(t.substring(5))}</h4>`);else{let r=e.match(/^(\s*)-\s+\[([ x])\]\s+(.*)$/i),a=e.match(/^(\s*)[-*]\s+(.*)$/),c=e.match(/^(\s*)\d+\.\s+(.*)$/);if(r){n&&(s.push("</ul>"),n=!1),o&&(s.push("</ol>"),o=!1),l||(s.push('<ul data-type="taskList">'),l=!0);let e="x"===r[2].toLowerCase();s.push(`<li data-type="taskItem" data-checked="${e}">${M(r[3])}</li>`)}else a?(l&&(s.push("</ul>"),l=!1),o&&(s.push("</ol>"),o=!1),n||(s.push("<ul>"),n=!0),s.push(`<li>${M(a[2])}</li>`)):c?(l&&(s.push("</ul>"),l=!1),n&&(s.push("</ul>"),n=!1),o||(s.push("<ol>"),o=!0),s.push(`<li>${M(c[2])}</li>`)):""===t?(d(),i()):e.includes("<pre>")||e.includes("</pre>")||e.includes("<code>")||e.includes("</code>")?s.push(e):(d(),i(),s.push(`<p>${M(e)}</p>`))}}return d(),i(),s.join("\n")}function M(e){let t=C(e);return(t=(t=(t=(t=(t=t.replace(/\*\*(.*?)\*\*/g,"<strong>$1</strong>")).replace(/__(.*?)__/g,"<strong>$1</strong>")).replace(/\*(.*?)\*/g,"<em>$1</em>")).replace(/_(.*?)_/g,"<em>$1</em>")).replace(/~~(.*?)~~/g,"<s>$1</s>")).replace(/`(.*?)`/g,"<code>$1</code>")}function C(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}let z=["linear-gradient(to right, #10b981, #06b6d4)","linear-gradient(to right, #ec4899, #8b5cf6)","linear-gradient(to right, #f43f5e, #f97316)","linear-gradient(to right, #1e293b, #0f172a)","linear-gradient(to right, #3b82f6, #06b6d4)","linear-gradient(to right, #f59e0b, #e11d48)","linear-gradient(to right, #475569, #1e293b)"];var S=e.i(917955),$=e.i(568772),D=e.i(99567),L=e.i(332339),A=e.i(891041),E=A.TaskList,T=A.TaskItem;let H=(0,x.default)("bold",[["path",{d:"M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8",key:"mg9rjx"}]]),I=(0,x.default)("italic",[["line",{x1:"19",x2:"10",y1:"4",y2:"4",key:"15jd3p"}],["line",{x1:"14",x2:"5",y1:"20",y2:"20",key:"bu0au3"}],["line",{x1:"15",x2:"9",y1:"4",y2:"20",key:"uljnxc"}]]),R=(0,x.default)("strikethrough",[["path",{d:"M16 4H9a3 3 0 0 0-2.83 4",key:"43sutm"}],["path",{d:"M14 12a4 4 0 0 1 0 8H6",key:"nlfj13"}],["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}]]),q=(0,x.default)("heading-1",[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"m17 12 3-2v8",key:"1hhhft"}]]),P=(0,x.default)("heading-2",[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1",key:"9jr5yi"}]]),V=(0,x.default)("heading-3",[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2",key:"68ncm8"}],["path",{d:"M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2",key:"1ejuhz"}]]),O=(0,x.default)("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]),B=(0,x.default)("square-check-big",[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);var W=e.i(303867);let F=(0,x.default)("quote",[["path",{d:"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"rib7q0"}],["path",{d:"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"1ymkrd"}]]);var _=e.i(450158);let U=(0,x.default)("undo",[["path",{d:"M3 7v6h6",key:"1v2h90"}],["path",{d:"M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13",key:"1r6uu6"}]]),K=(0,x.default)("redo",[["path",{d:"M21 7v6h-6",key:"3ptur4"}],["path",{d:"M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3l3 2.7",key:"1kgawr"}]]);var X=e.i(346038);function Y({content:e,onChange:s,theme:n="sans"}){let[o,l]=(0,r.useState)(!1),[d,i]=(0,r.useState)(""),[c,u]=(0,r.useState)(0),x=(0,r.useRef)(null),m=(0,$.useEditor)({immediatelyRender:!1,extensions:[D.default.configure({heading:{levels:[1,2,3]},codeBlock:{HTMLAttributes:{class:"bg-card text-foreground rounded-lg p-4 font-mono text-sm my-4 overflow-x-auto border border-border"}},blockquote:{HTMLAttributes:{class:"border-l-4 border-muted-foreground/40 pl-4 py-1.5 italic my-4 text-muted-foreground bg-card/80 rounded-r-md"}},bulletList:{HTMLAttributes:{class:"list-disc pl-6 my-4 space-y-1 text-foreground"}},orderedList:{HTMLAttributes:{class:"list-decimal pl-6 my-4 space-y-1 text-foreground"}},horizontalRule:{HTMLAttributes:{class:"border-t-2 border-border my-6"}}}),L.default.configure({placeholder:"点击此处或输入 '/' 唤起快速块级排版样式..."}),E.configure({HTMLAttributes:{class:"space-y-1.5 my-4 pl-1 list-none"}}),T.configure({nested:!0,HTMLAttributes:{class:"flex items-start gap-3"}})],content:e,onUpdate:({editor:e})=>{s(e.getHTML());let{selection:t}=e.state,r=e.state.doc.textBetween(Math.max(0,t.from-10),t.from,"\n","\n"),n=r.lastIndexOf("/");if(-1!==n&&n===r.length-1)l(!0),i(""),u(0);else if(o){let e=r.slice(n+1);e.includes(" ")||!r.includes("/")?l(!1):i(e)}},editorProps:{attributes:{class:(0,N.cn)("focus:outline-none min-h-[500px] w-full py-6 px-1 prose max-w-none","prose-h1:text-3xl prose-h1:font-bold prose-h1:text-foreground prose-h1:mb-4 prose-h1:mt-6","prose-h2:text-2xl prose-h2:font-semibold prose-h2:text-foreground prose-h2:mb-3 prose-h2:mt-5","prose-h3:text-xl prose-h3:font-medium prose-h3:text-foreground prose-h3:mb-2 prose-h3:mt-4","prose-p:text-base prose-p:leading-relaxed prose-p:text-foreground/80 prose-p:my-2.5","prose-strong:text-foreground","serif"===n&&"font-serif","mono"===n&&"font-mono","sans"===n&&"font-sans")}}});(0,r.useEffect)(()=>{m&&e!==m.getHTML()&&m.commands.setContent(e,{emitUpdate:!1})},[e,m]);let h=[{title:"一级标题",icon:(0,t.jsx)(q,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleHeading({level:1}).run()},keywords:["h1"]},{title:"二级标题",icon:(0,t.jsx)(P,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleHeading({level:2}).run()},keywords:["h2"]},{title:"三级标题",icon:(0,t.jsx)(V,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleHeading({level:3}).run()},keywords:["h3"]},{title:"无序列表",icon:(0,t.jsx)(w,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleBulletList().run()},keywords:["list"]},{title:"有序列表",icon:(0,t.jsx)(O,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleOrderedList().run()},keywords:["ol"]},{title:"待办清单",icon:(0,t.jsx)(B,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleTaskList().run()},keywords:["todo"]},{title:"代码块",icon:(0,t.jsx)(W.Code,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleCodeBlock().run()},keywords:["code"]},{title:"引用",icon:(0,t.jsx)(F,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().toggleBlockquote().run()},keywords:["quote"]},{title:"分割线",icon:(0,t.jsx)(_.Minus,{className:"w-4 h-4 text-muted-foreground"}),action:()=>{m?.commands.deleteRange({from:m.state.selection.from-d.length-1,to:m.state.selection.from}),m?.chain().focus().setHorizontalRule().run()},keywords:["hr"]}].filter(e=>{let t=d.toLowerCase();return e.title.toLowerCase().includes(t)||e.keywords.some(e=>e.includes(t))});if((0,r.useEffect)(()=>{let e=e=>{o&&0!==h.length&&("ArrowDown"===e.key?(e.preventDefault(),u(e=>(e+1)%h.length)):"ArrowUp"===e.key?(e.preventDefault(),u(e=>(e-1+h.length)%h.length)):"Enter"===e.key?(e.preventDefault(),h[c].action(),l(!1)):"Escape"===e.key&&(e.preventDefault(),l(!1),m?.commands.focus()))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[o,c,h,m]),(0,r.useEffect)(()=>{let e=e=>{x.current&&!x.current.contains(e.target)&&l(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!m)return null;let p=(e,r,s,n,o)=>(0,t.jsx)("button",{onClick:e,disabled:o,className:(0,N.cn)("p-1.5 rounded-lg text-muted-foreground hover:bg-muted hover:text-foreground transition-all cursor-pointer",r&&"bg-accent text-foreground",o&&"opacity-20"),title:s,children:n});return(0,t.jsxs)("div",{className:"relative w-full z-10 flex flex-col h-full bg-background rounded-xl select-text",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between border-b border-border gap-1 pb-3 mb-2 px-1",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[p(()=>m.chain().focus().toggleBold().run(),m.isActive("bold"),"加粗",(0,t.jsx)(H,{className:"w-4 h-4"}),!m.can().toggleBold()),p(()=>m.chain().focus().toggleItalic().run(),m.isActive("italic"),"斜体",(0,t.jsx)(I,{className:"w-4 h-4"}),!m.can().toggleItalic()),p(()=>m.chain().focus().toggleStrike().run(),m.isActive("strike"),"删除线",(0,t.jsx)(R,{className:"w-4 h-4"}),!m.can().toggleStrike()),p(()=>m.chain().focus().toggleCode().run(),m.isActive("code"),"行内代码",(0,t.jsx)(W.Code,{className:"w-4 h-4"}),!m.can().toggleCode()),(0,t.jsx)("div",{className:"w-[1px] h-4 bg-border mx-1"}),p(()=>m.chain().focus().toggleHeading({level:1}).run(),m.isActive("heading",{level:1}),"H1",(0,t.jsx)("span",{className:"text-xs font-semibold",children:"H1"})),p(()=>m.chain().focus().toggleHeading({level:2}).run(),m.isActive("heading",{level:2}),"H2",(0,t.jsx)("span",{className:"text-xs font-semibold",children:"H2"})),p(()=>m.chain().focus().toggleHeading({level:3}).run(),m.isActive("heading",{level:3}),"H3",(0,t.jsx)("span",{className:"text-xs font-semibold",children:"H3"})),(0,t.jsx)("div",{className:"w-[1px] h-4 bg-border mx-1"}),p(()=>m.chain().focus().toggleBulletList().run(),m.isActive("bulletList"),"无序列表",(0,t.jsx)(w,{className:"w-4 h-4"})),p(()=>m.chain().focus().toggleOrderedList().run(),m.isActive("orderedList"),"有序列表",(0,t.jsx)(O,{className:"w-4 h-4"})),p(()=>m.chain().focus().toggleTaskList().run(),m.isActive("taskList"),"待办",(0,t.jsx)(B,{className:"w-4 h-4"})),(0,t.jsx)("div",{className:"w-[1px] h-4 bg-border mx-1"}),p(()=>m.chain().focus().toggleCodeBlock().run(),m.isActive("codeBlock"),"代码块",(0,t.jsx)(W.Code,{className:"w-4 h-4"})),p(()=>m.chain().focus().toggleBlockquote().run(),m.isActive("blockquote"),"引用",(0,t.jsx)(F,{className:"w-4 h-4"})),p(()=>m.chain().focus().setHorizontalRule().run(),!1,"分割线",(0,t.jsx)(_.Minus,{className:"w-4 h-4"}))]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("button",{onClick:()=>m.chain().focus().undo().run(),disabled:!m.can().undo(),className:"p-1.5 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground disabled:opacity-20 cursor-pointer",title:"撤销",children:(0,t.jsx)(U,{className:"w-4 h-4"})}),(0,t.jsx)("button",{onClick:()=>m.chain().focus().redo().run(),disabled:!m.can().redo(),className:"p-1.5 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground disabled:opacity-20 cursor-pointer",title:"重做",children:(0,t.jsx)(K,{className:"w-4 h-4"})}),(0,t.jsx)("button",{onClick:()=>{m.commands.focus(),l(!0),i(""),u(0)},className:"p-1.5 rounded-lg hover:bg-muted text-foreground ml-1 border border-border cursor-pointer",title:"/ 快捷键",children:(0,t.jsx)(a.Plus,{className:"w-4 h-4"})})]})]}),(0,t.jsxs)("div",{className:"relative min-h-[500px]",children:[(0,t.jsx)($.EditorContent,{editor:m}),o&&(0,t.jsxs)("div",{ref:x,className:"absolute left-8 -mt-2 w-72 bg-popover border border-border rounded-xl shadow-2xl overflow-hidden py-1.5 z-50",style:{maxHeight:"300px",overflowY:"auto"},children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 border-b border-border bg-muted/50 text-muted-foreground text-xs font-medium",children:[(0,t.jsx)(X.Keyboard,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:"搜索块命令"}),d&&(0,t.jsxs)("span",{className:"ml-auto bg-muted text-foreground px-1.5 py-0.2 rounded-md font-mono",children:["/",d]})]}),0===h.length?(0,t.jsx)("div",{className:"px-4 py-3 text-sm text-muted-foreground italic text-center",children:"未找到对应块选项"}):(0,t.jsx)("div",{className:"max-h-[240px] overflow-y-auto",children:h.map((e,r)=>(0,t.jsxs)("button",{onClick:()=>{e.action(),l(!1)},className:(0,N.cn)("w-full text-left px-3.5 py-2.5 flex items-center gap-3 transition-colors text-sm cursor-pointer",r===c?"bg-accent text-foreground border-l-2 border-foreground":"text-muted-foreground hover:bg-accent/50"),children:[(0,t.jsx)("div",{className:"p-1.5 rounded-lg bg-muted text-muted-foreground",children:e.icon}),(0,t.jsx)("span",{className:"font-medium",children:e.title})]},r))})]})]})]})}var J=e.i(355479),G=e.i(332277),Q=e.i(237597);let Z=(0,x.default)("heading",[["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M6 20V4",key:"1w1bmo"}],["path",{d:"M18 20V4",key:"o2hl4u"}]]),ee=(0,x.default)("table",[["path",{d:"M12 3v18",key:"108xh3"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M3 15h18",key:"5xshup"}]]);var et=e.i(791298),u=u;function er({contentMarkdown:e,onChange:s,theme:n="sans"}){let[o,a]=(0,r.useState)("split"),l=(0,r.useRef)(null),d=(0,r.useRef)(null),i=e=>{if("split"!==o)return;let t=e.currentTarget,r="textarea"===t.tagName.toLowerCase()?d.current:l.current;r&&(r.scrollTop=t.scrollTop/(t.scrollHeight-t.clientHeight)*(r.scrollHeight-r.clientHeight))},c=(e,t="",r="")=>{let n=l.current;if(!n)return;let o=n.selectionStart,a=n.selectionEnd,d=n.value,i=d.substring(o,a)||r;s(d.substring(0,o)+e+i+t+d.substring(a)),setTimeout(()=>{n.focus(),n.setSelectionRange(o+e.length,o+e.length+i.length)},0)},x=(e,r,s)=>(0,t.jsx)("button",{type:"button",onClick:e,className:"p-1.5 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors cursor-pointer",title:r,children:s}),m=k(e);return(0,t.jsxs)("div",{className:"w-full flex flex-col h-[550px] lg:h-[650px] bg-background border border-border rounded-xl overflow-hidden",children:[(0,t.jsxs)("div",{className:"bg-background border-b border-border px-3 py-2 flex flex-col sm:flex-row items-center justify-between gap-3 shrink-0",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[x(()=>c("### ","","小标题"),"标题",(0,t.jsx)(Z,{className:"w-4 h-4"})),x(()=>c("**","**","加粗"),"加粗",(0,t.jsx)(H,{className:"w-4 h-4"})),x(()=>c("*","*","斜体"),"斜体",(0,t.jsx)(I,{className:"w-4 h-4"})),x(()=>c("~~","~~","删除线"),"删除线",(0,t.jsx)(R,{className:"w-4 h-4"})),(0,t.jsx)("div",{className:"w-[1px] h-4 bg-border mx-1"}),x(()=>c("- ","","项目一"),"无序列表",(0,t.jsx)(w,{className:"w-4 h-4"})),x(()=>c("1. ","","项目一"),"有序列表",(0,t.jsx)(O,{className:"w-4 h-4"})),x(()=>c("- [ ] ","","任务"),"任务列表",(0,t.jsx)(B,{className:"w-4 h-4"})),(0,t.jsx)("div",{className:"w-[1px] h-4 bg-border mx-1"}),x(()=>c("`","`","code"),"行内代码",(0,t.jsx)(W.Code,{className:"w-4 h-4"})),x(()=>c("```js\n","\n```","code"),"代码块",(0,t.jsx)("span",{className:"font-mono text-xs font-bold",children:"</>"})),x(()=>c("> ","","引用"),"引用",(0,t.jsx)(F,{className:"w-4 h-4"})),x(()=>c("| 标题1 | 标题2 |\n| ---- | ---- |\n| 单元格1 | 单元格2 |"),"表格",(0,t.jsx)(ee,{className:"w-4 h-4"})),x(()=>c("[","](url)","链接"),"链接",(0,t.jsx)(et.Link,{className:"w-4 h-4"}))]}),(0,t.jsx)("div",{className:"flex items-center gap-1 bg-card p-1 rounded-lg shrink-0",children:["edit","split","preview"].map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>a(e),className:(0,N.cn)("flex items-center gap-1 px-2.5 py-1 text-xs font-medium rounded-md transition-colors cursor-pointer",o===e?"bg-accent text-foreground":"text-muted-foreground hover:text-foreground"),children:["edit"===e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(Q.Edit3,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{className:"hidden md:inline",children:"编辑"})]}),"split"===e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(J.Split,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{className:"hidden md:inline",children:"分屏"})]}),"preview"===e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(G.Eye,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{className:"hidden md:inline",children:"预览"})]})]},e))})]}),(0,t.jsxs)("div",{className:"flex-1 flex w-full min-h-0",children:[("edit"===o||"split"===o)&&(0,t.jsx)("div",{className:(0,N.cn)("h-full flex flex-col min-w-0 flex-1 relative border-r border-border","edit"===o?"w-full":"w-1/2"),children:(0,t.jsx)("textarea",{ref:l,value:e,onChange:e=>s(e.target.value),onScroll:i,className:(0,N.cn)("w-full h-full p-6 text-foreground font-mono text-sm leading-relaxed focus:outline-none resize-none bg-background overflow-y-auto","serif"===n&&"font-serif","mono"===n&&"font-mono text-xs")})}),("preview"===o||"split"===o)&&(0,t.jsxs)("div",{ref:d,onScroll:i,className:(0,N.cn)("h-full overflow-y-auto px-6 py-6 bg-background min-w-0 flex-1 prose max-w-none","preview"===o?"w-full":"w-1/2"),children:[(0,t.jsx)("div",{className:"flex items-center justify-between mb-4 pb-2 border-b border-border text-muted-foreground font-mono text-[10px] uppercase tracking-wider sticky top-0 bg-background z-10",children:(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)(u.default,{className:"w-3 h-3 text-muted-foreground"})," Live Preview"]})}),m?(0,t.jsx)("div",{className:"prose max-w-none",dangerouslySetInnerHTML:{__html:m}}):(0,t.jsx)("div",{className:"h-[90%] flex flex-col items-center justify-center text-muted-foreground/60 italic",children:"预览内容为空"})]})]})]})}function es({headings:e,open:s}){let[n,o]=r.default.useState(null),a=(0,r.useMemo)(()=>0===e.length?1:Math.min(...e.map(e=>e.level)),[e]),l=(0,r.useCallback)(e=>{let t=document.querySelector("[data-editor-content]");if(!t)return;let r=t.querySelectorAll("h1, h2, h3"),s=parseInt(e.replace("toc-h-",""));r[s]&&(r[s].scrollIntoView({behavior:"smooth",block:"start"}),o(e))},[]);return((0,r.useEffect)(()=>{if(!s||0===e.length)return;let t=document.querySelector("[data-editor-content]");if(!t)return;let r=new IntersectionObserver(r=>{for(let s of r)if(s.isIntersecting){let r=s.target.tagName.toLowerCase(),n=parseInt(r.replace("h","")),a=Array.from(t.querySelectorAll(r)).indexOf(s.target),l=e.findIndex(e=>e.level===n);l>=0&&o(`toc-h-${l+a}`)}},{root:t,rootMargin:"0px 0px -80% 0px",threshold:.1});return t.querySelectorAll("h1, h2, h3").forEach(e=>r.observe(e)),()=>r.disconnect()},[e,s]),s&&0!==e.length)?(0,t.jsxs)("div",{className:"fixed right-4 z-30 w-52 max-h-[50vh] bg-card/95 backdrop-blur-md border border-border rounded-xl shadow-2xl flex flex-col overflow-hidden",style:{top:200},children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-2 border-b border-border shrink-0 text-xs font-semibold text-muted-foreground",children:[(0,t.jsx)("span",{children:"目录"}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:e.length})]}),(0,t.jsx)("div",{className:"overflow-y-auto py-1.5 px-1 flex-1",children:e.map(e=>{let r=e.level-a,s=n===e.id;return(0,t.jsxs)("button",{onClick:()=>l(e.id),className:(0,N.cn)("w-full text-left px-2 py-1 rounded-md text-xs transition-all cursor-pointer flex items-center gap-1",s?"text-foreground font-semibold bg-accent":"text-muted-foreground hover:text-foreground hover:bg-muted/50"),style:{paddingLeft:`${8+12*r}px`},children:[r>0&&(0,t.jsx)(d.ChevronRight,{className:"w-2.5 h-2.5 shrink-0 opacity-40"}),(0,t.jsx)("span",{className:"truncate",children:e.text})]},e.id)})})]}):null}var en=e.i(989484),eo=e.i(357301),ea=e.i(209988),el=e.i(613812);function ed({open:e,onOpenChange:s,versions:n,selectedVersionId:o,onSelectVersion:a,loading:l,error:d,workspaceId:i,activeNodeTitle:c}){let u=(0,v.useTranslations)("database"),x=(0,v.useTranslations)("common"),m=n.find(e=>e.id===o)??null,[h,p]=(0,r.useState)(()=>Date.now());return(0,r.useEffect)(()=>{e&&p(Date.now())},[e]),(0,t.jsx)(ea.Dialog,{open:e,onOpenChange:s,children:(0,t.jsxs)(ea.DialogContent,{className:"!flex !w-[min(680px,calc(100vw-2rem))] !max-w-[min(680px,calc(100vw-2rem))] max-h-[min(760px,calc(100vh-4rem))] flex-col gap-0 overflow-hidden p-0",children:[(0,t.jsx)(ea.DialogHeader,{className:"shrink-0 border-b border-border px-4 py-3",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(en.FileText,{className:"size-4 text-muted-foreground"}),(0,t.jsx)(ea.DialogTitle,{className:"text-sm font-medium",children:u("historyVersions")})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:[n.length," ",u("versions")]})})]})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto px-4 py-3",children:l?(0,t.jsx)("div",{className:"py-4 text-xs text-muted-foreground",children:x("loading")}):d?(0,t.jsx)("div",{className:"py-4 text-xs text-destructive",children:d}):0===n.length?(0,t.jsx)("div",{className:"py-4 text-xs text-muted-foreground",children:u("noHistory")}):(0,t.jsx)("div",{className:"relative",children:n.map((e,r)=>{var s;let o,l=m?.id===e.id,d=0===r,i=e.patch.insertText.length-e.patch.deleteText.length;return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsxs)("div",{className:"relative flex gap-3 pb-4 last:pb-0",children:[r<n.length-1&&(0,t.jsx)("div",{className:"absolute top-6 bottom-0 left-[9px] w-px bg-border"}),(0,t.jsx)("div",{className:"relative z-10 flex shrink-0 pt-1",children:(0,t.jsx)("div",{className:(0,N.cn)("flex size-[19px] items-center justify-center rounded-full ring-2 ring-card",d?"bg-foreground":"border border-border bg-card"),children:(0,t.jsx)("span",{className:(0,N.cn)("font-mono text-[8px] font-bold leading-none",d?"text-background":"text-muted-foreground"),children:n.length-r})})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 cursor-pointer",onClick:()=>a(e.id),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.title||c||u("untitled")}),d&&(0,t.jsx)("span",{className:"inline-flex items-center rounded-full border border-transparent bg-secondary text-secondary-foreground px-2 py-0.5 text-[10px] font-normal",children:"Current"}),(0,t.jsx)("span",{className:"ml-auto shrink-0 text-xs text-muted-foreground",children:(e=>{let t=Math.floor((h-e)/6e4);if(t<1)return u("justNow");if(t<60)return`${t} ${u("minutesAgo")}`;let r=Math.floor(t/60);if(r<24)return`${r} ${u("hoursAgo")}`;let s=Math.floor(r/24);return`${s} ${u("daysAgo")}`})(e.createdAt)})]}),(0,t.jsxs)("div",{className:"mt-1.5 flex items-center gap-3",children:[(0,t.jsxs)("span",{className:"font-mono text-xs text-muted-foreground",children:["v",n.length-r]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground/40",children:"·"}),(0,t.jsx)("span",{className:"font-mono text-xs tabular-nums text-muted-foreground",children:(s=e.newContent,(o=new TextEncoder().encode(s).length)<1024?`${o} B`:`${(o/1024).toFixed(1)} KB`)}),0!==i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-muted-foreground/40",children:"·"}),(0,t.jsxs)("span",{className:(0,N.cn)("font-mono text-xs tabular-nums",i>0?"text-emerald-600 dark:text-emerald-400":"text-red-600 dark:text-red-400"),children:[i>0?"+":"",i>0?`+${i}`:i," chars"]})]}),!d&&(0,t.jsxs)("button",{onClick:e=>{e.stopPropagation()},className:"ml-auto inline-flex items-center gap-1 rounded-md px-2 h-6 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-accent-foreground transition-colors",children:[(0,t.jsx)(eo.RotateCcw,{className:"size-3"}),u("restore")]})]})]})]}),l&&(0,t.jsx)("div",{className:"ml-8 mb-4 h-[400px] overflow-hidden rounded-lg border border-border",children:(0,t.jsx)(el.DiffViewer,{oldContent:e.oldContent,newContent:e.newContent,path:`${e.title||c||u("untitled")}.md`,language:"markdown",compactDiff:!1})})]},e.id)})})})]})})}function ei({workspaceId:e,sidebarPanelRef:n,showSaveSuccess:o,onSave:x}){let{nodes:M,activeId:C,openTabs:$,editorMode:D,theme:L,isFullWidth:A,setActiveId:E,createNode:T,updateContent:H,renameNode:I,updateCover:R,setEditorMode:q,setTheme:P,setIsFullWidth:V,closeTab:O,listNodeVersions:B}=(0,s.useDatabaseStore)(),W=(0,v.useTranslations)("database"),[F,_]=(0,r.useState)(!0),[U,K]=(0,r.useState)(!1),[X,J]=(0,r.useState)([]),[G,Q]=(0,r.useState)(null),[Z,ee]=(0,r.useState)(!1),[et,en]=(0,r.useState)(null),eo=M.find(e=>e.id===C),ea=eo&&eo.content.replace(/<[^>]*>/g,"").trim().length||0,el=(0,r.useMemo)(()=>eo?"notion"===D?function(e){let t,r=/<h([1-3])[^>]*>(.*?)<\/h\1>/gi,s=[];for(;null!==(t=r.exec(e));){let e=parseInt(t[1]),r=t[2].replace(/<[^>]*>/g,"").trim();r&&s.push({id:`toc-h-${s.length}`,text:r,level:e})}return s}(eo.content):function(e){let t=[],r=0;for(let s of e.split("\n")){let e=s.match(/^(#{1,3})\s+(.+)$/);e&&t.push({id:`toc-h-${r++}`,text:e[2].trim(),level:e[1].length})}return t}(eo.content):[],[eo,D]),ec=(0,r.useCallback)(async t=>{await T(e,t),x()},[e,T,x]),eu=(0,r.useCallback)(t=>{eo&&("markdown"===t&&"notion"===D?H(e,eo.id,function(e){if(!e)return"";{let t=new DOMParser().parseFromString(e,"text/html"),r=e=>{if(e.nodeType===Node.TEXT_NODE)return e.nodeValue||"";if(e.nodeType===Node.ELEMENT_NODE){let t=e.tagName.toLowerCase(),s=Array.from(e.childNodes).map(r).join("");switch(t){case"h1":return`
2
+ # ${s}
3
+ `;case"h2":return`
4
+ ## ${s}
5
+ `;case"h3":return`
6
+ ### ${s}
7
+ `;case"h4":return`
8
+ #### ${s}
9
+ `;case"p":return`
10
+ ${s}
11
+ `;case"strong":case"b":return`**${s}**`;case"em":case"i":return`*${s}*`;case"s":case"del":return`~~${s}~~`;case"code":if(e.parentElement?.tagName.toLowerCase()==="pre")return s;return`\`${s}\``;case"pre":{let t=e.querySelector("code"),r=t?.getAttribute("class")?.replace("language-","")||"",s=t?t.textContent||"":e.textContent||"";return`
12
+ \`\`\`${r}
13
+ ${s.trim()}
14
+ \`\`\`
15
+ `}case"blockquote":return`
16
+ > ${s.replace(/\n/g,"\n> ")}
17
+ `;case"li":if(e.hasAttribute("data-checked")||e.querySelector('input[type="checkbox"]')){let t="true"===e.getAttribute("data-checked")||e.querySelector('input[type="checkbox"]')?.checked;return`${t?"[x]":"[ ]"} ${s}
18
+ `}return`${s}
19
+ `;case"ul":{let t=Array.from(e.childNodes).filter(e=>e.nodeType===Node.ELEMENT_NODE&&"li"===e.tagName.toLowerCase()).map(e=>`- ${r(e)}`).join("");return`
20
+ ${t}`}case"ol":{let t=1,s=Array.from(e.childNodes).filter(e=>e.nodeType===Node.ELEMENT_NODE&&"li"===e.tagName.toLowerCase()).map(e=>`${t++}. ${r(e)}`).join("");return`
21
+ ${s}`}case"hr":return`
22
+ ---
23
+ `;case"br":return`
24
+ `;default:return s}}return""};return Array.from(t.body.childNodes).map(r).join("").replace(/\n{3,}/g,"\n\n").trim()}}(eo.content)):"notion"===t&&"markdown"===D&&H(e,eo.id,k(eo.content)),q(t))},[eo,D,e,H,q]),ex=(0,r.useCallback)((e,t)=>{e.stopPropagation(),O(t)},[O]),em=(0,r.useCallback)(async()=>{if(eo){K(!0),ee(!0),en(null);try{let t=await B(e,eo.id);J(t),Q(t[0]?.id??null)}catch(e){en(e instanceof Error?e.message:W("loadHistoryFailed")),J([]),Q(null)}finally{ee(!1)}}},[eo,B,e,W]),eh=(0,r.useMemo)(()=>[{key:"sans",label:W("themeSans"),fontClass:"font-sans"},{key:"serif",label:W("themeSerif"),fontClass:"font-serif"},{key:"mono",label:W("themeMono"),fontClass:"font-mono"}],[W]);return(0,t.jsxs)("div",{className:"relative flex h-full min-h-0 flex-col overflow-hidden",children:[o&&(0,t.jsxs)("div",{className:"absolute top-4 right-1/2 translate-x-1/2 bg-card border border-border text-foreground text-xs font-semibold px-4 py-2 rounded-full flex items-center gap-2 shadow-2xl z-50",children:[(0,t.jsx)(g,{className:"w-3.5 h-3.5 text-emerald-400"}),(0,t.jsx)("span",{children:W("autoSaved")})]}),(0,t.jsx)("div",{className:"sticky top-0 flex items-center justify-between bg-muted/50 border-b border-border px-4 min-h-[44px] select-none z-10 shrink-0",children:(0,t.jsxs)("div",{className:"flex items-center gap-1 overflow-x-auto scrollbar-none py-1 flex-1 pr-4",children:[$.map(e=>{let r=M.find(t=>t.id===e);return r?(0,t.jsxs)("div",{onClick:()=>E(e),className:(0,N.cn)("flex items-center gap-2 px-3 py-1.5 rounded-lg text-xs cursor-pointer transition-all shrink-0 group border",C===e?"bg-card text-foreground border-border font-semibold":"text-muted-foreground hover:text-foreground hover:bg-muted border-transparent"),children:[(0,t.jsx)("span",{className:"text-sm select-none shrink-0",children:r.icon||"📝"}),(0,t.jsx)("span",{className:"truncate max-w-[120px]",children:r.title||W("untitled")}),(0,t.jsx)("button",{onClick:t=>ex(t,e),className:"p-0.5 rounded-md hover:bg-muted text-muted-foreground hover:text-foreground transition-colors ml-1 opacity-60 group-hover:opacity-100 cursor-pointer",children:(0,t.jsx)(l.X,{className:"w-3 h-3"})})]},e):null}),(0,t.jsx)("button",{onClick:()=>ec(null),className:"p-1.5 rounded-lg text-muted-foreground hover:text-foreground hover:bg-muted transition-colors ml-1 cursor-pointer shrink-0",children:(0,t.jsx)(a.Plus,{className:"w-3.5 h-3.5"})})]})}),eo?(0,t.jsxs)("div",{className:"flex-1 min-h-0 flex flex-col",children:[(0,t.jsx)(es,{headings:el,open:F}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto w-full flex flex-col","data-editor-content":!0,children:[(0,t.jsxs)("div",{className:"h-12 px-6 border-b border-border flex items-center justify-between bg-background/90 backdrop-blur-md sticky top-0 z-50 select-none shrink-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[n&&(0,t.jsx)("button",{onClick:()=>n.current?.isCollapsed()?n.current?.expand():n.current?.collapse(),className:"p-1.5 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground transition-colors mr-1 cursor-pointer",children:(0,t.jsx)(i.default,{className:"w-4 h-4"})}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground font-medium",children:[(0,t.jsx)("span",{children:W("knowledgeBase")}),(0,t.jsx)(d.ChevronRight,{className:"w-3.5 h-3.5 text-muted-foreground/50"}),eo.parentId&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{onClick:()=>eo.parentId&&E(eo.parentId),className:"hover:text-foreground hover:underline cursor-pointer",children:M.find(e=>e.id===eo.parentId)?.title||W("parentDir")}),(0,t.jsx)(d.ChevronRight,{className:"w-3.5 h-3.5 text-muted-foreground/50"})]}),(0,t.jsx)("span",{className:"text-foreground font-semibold truncate max-w-[180px]",children:eo.title||W("currentDoc")})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsxs)("div",{className:"flex bg-card border border-border p-1 rounded-xl shrink-0",children:[(0,t.jsxs)("button",{onClick:()=>eu("notion"),className:(0,N.cn)("flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold rounded-lg transition-all cursor-pointer","notion"===D?"bg-muted text-foreground font-bold":"text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(c.Layers,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:W("notionEditor")})]}),(0,t.jsxs)("button",{onClick:()=>eu("markdown"),className:(0,N.cn)("flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold rounded-lg transition-all cursor-pointer","markdown"===D?"bg-muted text-foreground font-bold":"text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(u.default,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:W("markdownEditor")})]})]}),(0,t.jsx)("div",{className:"w-[1px] h-5 bg-border"}),(0,t.jsx)("button",{onClick:()=>_(!F),title:F?W("closeToc"):W("openToc"),className:(0,N.cn)("w-9 h-9 rounded-xl border border-border bg-card transition-all cursor-pointer flex items-center justify-center shrink-0",F?"text-foreground border-muted-foreground/40":"text-muted-foreground hover:text-foreground hover:border-muted-foreground/40"),children:(0,t.jsx)(w,{className:"w-4 h-4"})}),(0,t.jsx)("div",{className:"w-[1px] h-5 bg-border"}),(0,t.jsxs)(S.DropdownMenu,{children:[(0,t.jsx)(S.DropdownMenuTrigger,{className:"w-9 h-9 rounded-xl border border-border hover:border-muted-foreground/40 bg-card text-muted-foreground hover:text-foreground transition-all cursor-pointer flex items-center justify-center shrink-0",children:(0,t.jsx)(f.MoreHorizontal,{className:"w-4 h-4"})}),(0,t.jsxs)(S.DropdownMenuContent,{align:"end",className:"w-56",children:[(0,t.jsx)(S.DropdownMenuGroup,{children:(0,t.jsx)(S.DropdownMenuLabel,{className:"text-[10px] font-bold uppercase tracking-wider",children:W("typographyAndFont")})}),(0,t.jsx)(S.DropdownMenuSeparator,{}),eh.map(({key:e,label:r,fontClass:s})=>(0,t.jsxs)(S.DropdownMenuItem,{onClick:()=>P(e),className:(0,N.cn)("flex items-center justify-between text-xs",L===e&&"font-semibold"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:(0,N.cn)("text-xs bg-muted text-foreground px-1.5 py-0.5 rounded border border-border font-medium",s),children:"Ag"}),(0,t.jsx)("span",{className:s,children:r})]}),L===e&&(0,t.jsx)(p.Check,{className:"w-3.5 h-3.5"})]},e)),(0,t.jsx)(S.DropdownMenuSeparator,{}),(0,t.jsxs)(S.DropdownMenuItem,{onClick:em,className:"text-xs",children:[(0,t.jsx)(y,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:W("viewHistory")})]}),(0,t.jsx)(S.DropdownMenuSeparator,{}),(0,t.jsx)(S.DropdownMenuGroup,{children:(0,t.jsx)(S.DropdownMenuLabel,{className:"text-[10px] font-bold uppercase tracking-wider",children:W("pageWidth")})}),(0,t.jsx)(S.DropdownMenuSeparator,{}),(0,t.jsxs)(S.DropdownMenuItem,{onClick:()=>V(!A),className:(0,N.cn)("flex items-center justify-between text-xs",A&&"font-semibold"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[A?(0,t.jsx)(m,{className:"w-3.5 h-3.5"}):(0,t.jsx)(h.Maximize2,{className:"w-3.5 h-3.5"}),(0,t.jsx)("span",{children:A?W("restoreWidth"):W("fullWidth")})]}),A&&(0,t.jsx)(p.Check,{className:"w-3.5 h-3.5"})]})]})]})]})]}),(0,t.jsx)("div",{className:"w-full h-44 shrink-0 relative group border-b border-border",style:{background:eo.cover||"linear-gradient(to right, #0284c7, #06b6d4)"},children:(0,t.jsxs)("div",{className:"absolute bottom-3 right-4 opacity-0 group-hover:opacity-100 transition-opacity bg-card/90 backdrop-blur-md rounded-xl p-1.5 border border-border flex items-center gap-1 shadow-xl",children:[(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground font-bold px-2",children:W("cover")}),z.map((r,s)=>(0,t.jsx)("button",{onClick:()=>{R(e,eo.id,r),x()},style:{background:r},className:(0,N.cn)("w-4 h-4 rounded-full border hover:scale-125 transition-transform cursor-pointer",eo.cover===r?"border-white scale-110":"border-transparent")},s))]})}),(0,t.jsxs)("div",{className:(0,N.cn)("flex-1 mx-auto px-6 md:px-12 py-8 flex flex-col w-full",A?"max-w-none":"max-w-4xl"),children:[(0,t.jsxs)("div",{className:"mb-6 relative group select-text",children:[(0,t.jsx)("span",{className:"text-4xl absolute -top-16 left-0 select-none bg-card p-2.5 rounded-2xl shadow-xl border border-border",children:eo.icon||"📝"}),(0,t.jsxs)("div",{className:"text-[11px] text-muted-foreground font-semibold mb-2 flex items-center gap-1 mt-4",children:[(0,t.jsx)(b.Sparkles,{className:"w-3.5 h-3.5 text-muted-foreground/60"}),(0,t.jsx)("span",{children:W("autoSaveEnabled")})]}),(0,t.jsx)("input",{type:"text",value:eo.title,onChange:t=>{I(e,eo.id,t.target.value),x()},placeholder:W("untitled"),className:(0,N.cn)("w-full text-3xl md:text-4xl font-extrabold text-foreground border-none outline-none focus:ring-0 p-0 tracking-tight bg-transparent placeholder:text-muted-foreground/40 select-text","serif"===L&&"font-serif","mono"===L&&"font-mono")})]}),(0,t.jsx)("div",{className:"flex-1 min-h-0 select-text",children:"notion"===D?(0,t.jsx)(Y,{content:eo.content,onChange:t=>{H(e,eo.id,t),x()},theme:L}):(0,t.jsx)(er,{contentMarkdown:eo.content,onChange:t=>{H(e,eo.id,t),x()},theme:L})}),(0,t.jsxs)("div",{className:"sticky bottom-0 bg-background border-t border-border py-3 px-6 md:px-12 flex flex-col sm:flex-row items-center justify-between text-[11px] text-muted-foreground font-medium gap-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-5",children:[(0,t.jsxs)("span",{children:[W("wordCount"),(0,t.jsx)("strong",{className:"text-foreground",children:ea})]}),(0,t.jsxs)("span",{className:"hidden sm:inline",children:[W("createdAt"),new Date(eo.createdAt).toLocaleDateString()]}),(0,t.jsxs)("span",{children:[W("modifiedAt"),new Date(eo.updatedAt).toLocaleTimeString()]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-foreground bg-card border border-border px-3 py-1 rounded-full font-semibold shrink-0",children:[(0,t.jsx)(j,{className:"w-3 h-3 text-emerald-500 animate-pulse"}),(0,t.jsx)("span",{children:"SAVED"})]})]})]})]})]}):(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center p-8 bg-background select-none text-center",children:[(0,t.jsx)("div",{className:"w-20 h-20 rounded-3xl bg-gradient-to-tr from-muted to-muted/80 border border-border flex items-center justify-center text-4xl mb-6 shadow-md shadow-black/10 text-muted-foreground animate-bounce",children:"📁"}),(0,t.jsx)("h2",{className:"text-xl font-bold text-foreground tracking-tight",children:W("knowledgeEditor")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground mt-1.5 max-w-[340px] leading-relaxed",children:W("emptyHint")}),(0,t.jsxs)("div",{className:"mt-8 bg-card border border-border rounded-2xl p-4 shadow-xl max-w-sm w-full",children:[(0,t.jsx)("div",{className:"text-[10px] font-bold text-muted-foreground mb-2.5 uppercase tracking-wider text-left",children:W("shortcuts")}),(0,t.jsxs)("div",{className:"space-y-1.5 font-medium text-xs text-muted-foreground",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-[11px]",children:[(0,t.jsx)("span",{children:W("globalSearch")}),(0,t.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,t.jsx)("kbd",{className:"bg-background border border-border rounded px-1.5 py-0.2 text-[9px] font-mono text-muted-foreground",children:"Ctrl"}),"+",(0,t.jsx)("kbd",{className:"bg-background border border-border rounded px-1.5 py-0.2 text-[9px] font-mono text-muted-foreground",children:"K"})]})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-[11px]",children:[(0,t.jsx)("span",{children:W("editorModeSwitch")}),(0,t.jsx)("span",{className:"text-muted-foreground/60",children:W("topRightTab")})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-[11px]",children:[(0,t.jsx)("span",{children:W("nestedArchive")}),(0,t.jsx)("span",{className:"text-muted-foreground/60",children:W("sidebarDrag")})]})]})]}),(0,t.jsxs)("button",{onClick:()=>ec(null),className:"mt-6 px-5 h-10 rounded-xl bg-muted hover:bg-muted/80 border border-border text-foreground font-semibold text-xs cursor-pointer flex items-center gap-2",children:[(0,t.jsx)(a.Plus,{className:"w-4 h-4"}),(0,t.jsx)("span",{children:W("quickCreateFirst")})]})]}),(0,t.jsx)(ed,{open:U,onOpenChange:K,versions:X,selectedVersionId:G,onSelectVersion:Q,loading:Z,error:et,workspaceId:e,activeNodeTitle:eo?.title})]})}let ec=(0,x.default)("send-horizontal",[["path",{d:"M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z",key:"117uat"}],["path",{d:"M6 12h16",key:"s4cdu5"}]]);var eu=e.i(939760),ex=e.i(293818),em=e.i(137340);let eh="floating-panel:";function ep(e,t){try{localStorage.setItem(eh+e,JSON.stringify(t))}catch{}}function ef({id:e,title:s,defaultWidth:n,defaultHeight:o,defaultPosition:a,minWidth:d=280,minHeight:i=200,onClose:c,onMinimize:u,children:x,className:h,zIndex:p=99991,headerActions:f}){let[g,b]=(0,r.useState)(!1),[j,w]=(0,r.useState)(!1),y=(0,r.useRef)(!1),v=(0,r.useRef)({x:a?.x??Math.max(20,(window.innerWidth-n)/2),y:a?.y??Math.max(40,(window.innerHeight-o)/2),w:n,h:o}),[N,k]=(0,r.useState)(()=>(function(e,t){try{let t=localStorage.getItem(eh+e);if(t){let e=JSON.parse(t);if(e.w>0&&e.h>0)return e}}catch{}return t})(e,{x:a?.x??Math.max(20,(window.innerWidth-n)/2),y:a?.y??Math.max(40,(window.innerHeight-o)/2),w:n,h:o})),M=(0,r.useRef)(null),C=(0,r.useRef)(null);(0,r.useEffect)(()=>{v.current=N,b(!0)},[N]),(0,r.useEffect)(()=>{let t=()=>{let t=v.current,r={x:Math.max(0,Math.min(t.x,window.innerWidth-t.w)),y:Math.max(0,Math.min(t.y,window.innerHeight-t.h)),w:Math.min(t.w,window.innerWidth-20),h:Math.min(t.h,window.innerHeight-20)};v.current=r,k(r),ep(e,r)};return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[e]),(0,r.useEffect)(()=>{let t=e=>{if(M.current){let t=e.clientX-M.current.mx,r=e.clientY-M.current.my;(Math.abs(t)>2||Math.abs(r)>2)&&(y.current=!0);let{mx:s,my:n,r:o}=M.current,a={...o,x:Math.max(0,Math.min(o.x+e.clientX-s,window.innerWidth-o.w)),y:Math.max(0,Math.min(o.y+e.clientY-n,window.innerHeight-o.h))};v.current=a,k(a);return}if(C.current){let{corner:t,mx:r,my:s,r:n}=C.current,o=e.clientX-r,a=e.clientY-s,{x:l,y:c,w:u,h:x}=n;if(t.includes("e"))u=Math.max(d,n.w+o);else{let e=Math.max(d,n.w-o);l=n.x+(n.w-e),u=e}if(t.includes("s"))x=Math.max(i,n.h+a);else{let e=Math.max(i,n.h-a);c=n.y+(n.h-e),x=e}let m={x:Math.max(0,l),y:Math.max(0,c),w:u,h:x};v.current=m,k(m)}},r=()=>{M.current&&(y.current?ep(e,v.current):w(e=>!e)),C.current&&ep(e,v.current),M.current=null,C.current=null};return document.addEventListener("pointermove",t),document.addEventListener("pointerup",r),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",r)}},[e,d,i]);let z=(0,r.useCallback)(e=>{e.preventDefault(),y.current=!1,M.current={mx:e.clientX,my:e.clientY,r:{...v.current}}},[]),S=(0,r.useCallback)(e=>t=>{t.preventDefault(),t.stopPropagation(),C.current={corner:e,mx:t.clientX,my:t.clientY,r:{...v.current}}},[]);if(!g)return null;let $={nw:{top:-4,left:-4,cursor:"nwse-resize"},ne:{top:-4,right:-4,cursor:"nesw-resize"},sw:{bottom:-4,left:-4,cursor:"nesw-resize"},se:{bottom:-4,right:-4,cursor:"nwse-resize"}};return(0,t.jsxs)("div",{className:`fixed flex flex-col bg-white dark:bg-zinc-900 border border-gray-200 dark:border-zinc-700 rounded-lg shadow-2xl overflow-hidden ${h??""}`,style:{left:N.x,top:N.y,width:N.w,height:j?void 0:N.h,zIndex:p},children:[(0,t.jsxs)("div",{onPointerDown:z,className:"flex items-center justify-between px-3 py-2 bg-gray-50 dark:bg-zinc-800 border-b border-gray-200 dark:border-zinc-700 cursor-move select-none shrink-0",style:{touchAction:"none"},children:[(0,t.jsx)("span",{className:"text-sm font-medium truncate text-gray-700 dark:text-gray-300",children:s}),(0,t.jsxs)("div",{className:"flex items-center gap-0.5 shrink-0",children:[f&&(0,t.jsx)("div",{onPointerDown:e=>e.stopPropagation(),className:"flex items-center",children:f}),u&&(0,t.jsx)("button",{onPointerDown:e=>e.stopPropagation(),onClick:u,className:"p-1 rounded hover:bg-gray-200 dark:hover:bg-zinc-700 transition-colors text-gray-500 dark:text-gray-400 cursor-pointer",title:"最小化为悬浮球",children:(0,t.jsx)(m,{size:13})}),(0,t.jsx)("button",{onPointerDown:e=>e.stopPropagation(),onClick:c,className:"p-1 rounded hover:bg-gray-200 dark:hover:bg-zinc-700 transition-colors text-gray-500 dark:text-gray-400 cursor-pointer",children:(0,t.jsx)(l.X,{size:14})})]})]}),!j&&(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:x}),!j&&["nw","ne","sw","se"].map(e=>(0,t.jsx)("div",{onPointerDown:S(e),className:"absolute",style:{...$[e],width:14,height:14,touchAction:"none",zIndex:10}},e))]})}var eg=e.i(588591),eb=e.i(555060),ej=e.i(996652);function ew({workspaceId:e,onClose:s,onMinimize:n}){let[o,a]=(0,r.useState)([]),[l,d]=(0,r.useState)(""),[i,c]=(0,r.useState)(!1),[u,x]=(0,r.useState)(!1),[m,h]=(0,r.useState)(!1),p=(0,r.useRef)(null);(0,r.useEffect)(()=>{p.current?.scrollTo({top:p.current.scrollHeight,behavior:"smooth"})},[o,i]);let f=(0,r.useCallback)(async()=>{let t=l.trim();if(!t||i)return;let r={id:crypto.randomUUID(),role:"user",content:t,timestamp:new Date};a(e=>[...e,r]),d(""),c(!0);try{let r=await fetch(`/api/workspaces/${e}/database/chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:t,history:o.map(({role:e,content:t})=>({role:e,content:t}))})}),s=await r.json(),n=r.ok?s.finalMessage:s.error;a(e=>[...e,{id:crypto.randomUUID(),role:"agent",content:n||"未收到有效回复。",timestamp:new Date}])}catch(e){a(t=>[...t,{id:crypto.randomUUID(),role:"agent",content:e instanceof Error?e.message:"发送失败。",timestamp:new Date}])}finally{c(!1)}},[l,o,i,e]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{children:`
25
+ @keyframes db-chat-dot {
26
+ 0%, 60%, 100% { transform: translateY(0); }
27
+ 30% { transform: translateY(-4px); }
28
+ }
29
+ .db-chat-dot { animation: db-chat-dot 1.4s infinite ease-in-out; }
30
+ `}),(0,t.jsx)(ef,{id:`database-ai-chat:${e}`,title:"",defaultWidth:420,defaultHeight:560,defaultPosition:{x:Math.max(24,window.innerWidth-420-24),y:Math.max(24,window.innerHeight-560-88)},minWidth:340,minHeight:420,onClose:s,onMinimize:n,children:(0,t.jsxs)("div",{className:"flex h-full flex-col bg-card",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 border-b px-4 py-3",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("span",{className:"flex size-9 items-center justify-center rounded-full bg-muted font-mono text-xs font-semibold text-foreground",children:"AI"}),(0,t.jsx)("span",{"aria-hidden":"true",className:"absolute -bottom-0.5 -right-0.5 size-2.5 rounded-full border-2 border-card bg-emerald-500"})]}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-sm font-semibold text-foreground",children:"Database Agent"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 truncate text-xs text-muted-foreground",children:[(0,t.jsx)("span",{className:"size-1 rounded-full bg-emerald-500","aria-hidden":"true"}),i?"typing…":"online"]})]}),(0,t.jsxs)(ej.Popover,{open:m,onOpenChange:h,children:[(0,t.jsx)(ej.PopoverTrigger,{render:(0,t.jsx)("button",{className:"p-1 rounded hover:bg-muted/50 transition-colors text-muted-foreground cursor-pointer",title:"设置",children:(0,t.jsx)(eu.Settings,{size:14})})}),(0,t.jsxs)(ej.PopoverContent,{align:"end",side:"bottom",sideOffset:6,positionerClassName:"z-[100002]",className:"w-36 gap-1 p-1",children:[(0,t.jsxs)("button",{type:"button",className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm hover:bg-accent hover:text-accent-foreground cursor-pointer",onClick:()=>{h(!1),x(!0)},children:[(0,t.jsx)(ex.SlidersHorizontal,{className:"size-3.5"}),(0,t.jsx)("span",{children:"模型设置"})]}),(0,t.jsxs)("button",{type:"button",className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-destructive hover:bg-destructive/10 cursor-pointer",onClick:()=>{h(!1),a([])},children:[(0,t.jsx)(em.Trash2,{className:"size-3.5"}),(0,t.jsx)("span",{children:"清空消息"})]})]})]})]}),(0,t.jsxs)("ol",{ref:p,className:"flex flex-1 flex-col gap-3 overflow-y-auto bg-muted/10 px-4 py-5",children:[0===o.length&&!i&&(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-xs text-muted-foreground",children:"暂无消息"}),o.map(r=>(0,t.jsx)("li",{className:(0,N.cn)("flex","user"===r.role?"justify-end":"justify-start"),children:(0,t.jsxs)("div",{className:(0,N.cn)("max-w-[85%] px-4 py-2.5 text-sm leading-relaxed rounded-2xl","user"===r.role?"rounded-br-sm bg-foreground text-background":"rounded-bl-sm bg-muted text-foreground"),children:["agent"===r.role?(0,t.jsx)(eb.Markdown,{content:r.content,workspaceId:e}):(0,t.jsx)("p",{className:"whitespace-pre-wrap break-words",children:r.content}),(0,t.jsx)("div",{className:(0,N.cn)("mt-1 text-right font-mono text-[10px]","user"===r.role?"text-background/60":"text-muted-foreground"),children:r.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1})})]})},r.id)),i&&(0,t.jsx)("li",{className:"flex justify-start","aria-label":"AI is typing",children:(0,t.jsx)("div",{className:"max-w-[85%] px-4 py-2.5 text-sm leading-relaxed rounded-2xl rounded-bl-sm bg-muted text-foreground",children:(0,t.jsxs)("div",{className:"flex items-center gap-1",role:"status","aria-label":"typing",children:[(0,t.jsx)("span",{className:"db-chat-dot size-1.5 rounded-full bg-muted-foreground/70"}),(0,t.jsx)("span",{className:"db-chat-dot size-1.5 rounded-full bg-muted-foreground/70",style:{animationDelay:"0.15s"}}),(0,t.jsx)("span",{className:"db-chat-dot size-1.5 rounded-full bg-muted-foreground/70",style:{animationDelay:"0.3s"}})]})})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 border-t px-3 py-2.5",children:[(0,t.jsx)("div",{className:"flex min-w-0 flex-1 items-center gap-2 rounded-full border bg-background px-3 py-1.5",children:(0,t.jsx)("textarea",{value:l,onChange:e=>d(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),f())},placeholder:"回复 Database Agent…",className:"min-h-6 max-h-28 flex-1 resize-none bg-transparent text-sm outline-none placeholder:text-muted-foreground",rows:1})}),(0,t.jsx)("button",{type:"button","aria-label":"发送消息",className:"flex size-9 shrink-0 items-center justify-center rounded-full bg-foreground text-background hover:bg-foreground/90 disabled:opacity-50 cursor-pointer disabled:cursor-not-allowed",disabled:!l.trim()||i,onClick:()=>void f(),children:(0,t.jsx)(ec,{className:"size-4"})})]})]})}),(0,t.jsx)(eg.AgentDialog,{open:u,onOpenChange:x,initialAgentId:"database-agent",presetBasePath:`/api/workspaces/${e}/database/agent-presets`,singleAgent:!0})]})}e.s(["default",0,function({workspaceId:e}){let{loading:a,loadedWorkspaceId:l,load:d}=(0,s.useDatabaseStore)(),[i,c]=(0,r.useState)(!1);return((0,r.useEffect)(()=>{d(e)},[d,e]),a&&l!==e)?(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:"加载中..."}):(0,t.jsxs)("div",{className:"w-full h-full bg-background font-sans text-foreground antialiased",children:[(0,t.jsx)(ei,{workspaceId:e,onSave:()=>{}}),(0,t.jsx)(o.FloatingBall,{lsKey:`database-ai-ball:${e}`,onClick:()=>c(!0),visible:!i,className:"bg-primary text-primary-foreground shadow-lg border border-primary/20",children:(0,t.jsx)(n.Bot,{className:"size-5"})}),i&&(0,t.jsx)(ew,{workspaceId:e,onClose:()=>c(!1),onMinimize:()=>c(!1)})]})}],565782)},394896,e=>{e.n(e.i(565782))}]);
@@ -0,0 +1,7 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,448303,e=>{"use strict";var t=e.i(344180),n=e.i(764556),a=e.i(129981),s=e.i(62669),i=e.i(601039),r=e.i(378371),l=e.i(212965),o=e.i(381253),c=e.i(357301),d=e.i(137340),u=e.i(650654),x=e.i(327962),h=e.i(415360),m=e.i(210),p=e.i(253307),f=e.i(953700),g=e.i(450158),j=e.i(486657),b=e.i(433721);let y=(0,b.default)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);var v=e.i(363156),C=e.i(691223),w=e.i(244073);function k({workspaceId:e,onInitialized:a}){let s=(0,w.useTranslations)("git.notInitialized"),i=(0,v.useGitStore)(e=>e.initRepo),[r,l]=(0,n.useState)(!1),o=(0,n.useCallback)(async()=>{l(!0),await i(e),l(!1),a()},[e,i,a]);return(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 p-4",children:[(0,t.jsx)(x.GitBranch,{size:32,className:"text-muted-foreground/40"}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground text-center",children:s("message")}),(0,t.jsx)("button",{onClick:o,disabled:r,className:"text-xs px-3 py-1.5 rounded bg-primary text-primary-foreground hover:bg-primary/90 disabled:opacity-50 disabled:cursor-not-allowed",children:s(r?"initializing":"initialize")})]})}var N=e.i(209988),M=e.i(260218),S=e.i(681622);function D({open:e,onOpenChange:a,onSubmit:s}){let i=(0,w.useTranslations)("git.remote"),r=(0,w.useTranslations)("common"),[l,o]=(0,n.useState)("origin"),[c,d]=(0,n.useState)(""),[u,x]=(0,n.useState)(!1),h=async()=>{if(l.trim()&&c.trim()){x(!0);try{await s(l.trim(),c.trim()),d(""),a(!1)}finally{x(!1)}}};return(0,t.jsx)(N.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:i("bindTitle")})}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground mb-1 block",children:i("nameLabel")}),(0,t.jsx)(S.Input,{value:l,onChange:e=>o(e.target.value),placeholder:i("namePlaceholder"),className:"h-8 text-xs"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground mb-1 block",children:i("urlLabel")}),(0,t.jsx)(S.Input,{value:c,onChange:e=>d(e.target.value),placeholder:i("urlPlaceholder"),className:"h-8 text-xs",onKeyDown:e=>"Enter"===e.key&&e.preventDefault()})]})]}),(0,t.jsxs)(N.DialogFooter,{children:[(0,t.jsx)(N.DialogClose,{render:(0,t.jsx)(M.Button,{variant:"outline",size:"sm"}),children:r("cancel")}),(0,t.jsx)(M.Button,{size:"sm",onClick:h,disabled:!l.trim()||!c.trim()||u,children:i(u?"adding":"addRemote")})]})]})})}var z=e.i(613812),T=e.i(964970),I=e.i(564822),O=e.i(613087),B=e.i(360112),F=e.i(441781);let P={modified:"text-yellow-600",added:"text-green-600",deleted:"text-red-600",renamed:"text-blue-600",untracked:"text-gray-500",conflicted:"text-red-500"},$={modified:"M",added:"A",deleted:"D",renamed:"R",untracked:"U",conflicted:"!"};function L(e){return e instanceof Error?e.message:String(e)}function A({open:e,onOpenChange:a,title:s,label:i,placeholder:r,onSubmit:l}){let o=(0,w.useTranslations)("common"),[c,d]=(0,n.useState)(""),u=()=>{c.trim()&&(l(c.trim()),a(!1))};return(0,t.jsx)(N.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:s})}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium",children:i}),(0,t.jsx)(S.Input,{value:c,onChange:e=>d(e.target.value),placeholder:r,autoFocus:!0,onKeyDown:e=>{"Enter"===e.key&&c.trim()&&u()}})]}),(0,t.jsxs)(N.DialogFooter,{children:[(0,t.jsx)(M.Button,{variant:"outline",onClick:()=>a(!1),children:o("cancel")}),(0,t.jsx)(M.Button,{disabled:!c.trim(),onClick:u,children:o("confirm")})]})]})})}function R({confirm:e,open:n,onOpenChange:a,onConfirm:s}){let i=(0,w.useTranslations)("common"),r=(0,w.useTranslations)("git.changes");return(0,t.jsx)(N.Dialog,{open:n,onOpenChange:a,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:r(e?.type==="all"?"discardAll":"discard")})}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:e?.type==="all"?r("confirmDiscardAll"):r("confirmDiscardFile",{file:e?.type==="single"?e.path:""})}),(0,t.jsxs)(N.DialogFooter,{children:[(0,t.jsx)(M.Button,{variant:"outline",onClick:()=>a(!1),children:i("cancel")}),(0,t.jsx)(M.Button,{variant:"destructive",onClick:s,children:r("discard")})]})]})})}var E=e.i(887836);e.i(462506);var G=e.i(950396);let H=(0,E.default)(()=>e.A(863812).then(e=>e.default),{loadableGenerated:{modules:[158480]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"flex items-center justify-center h-32 text-muted-foreground text-xs",children:"Loading editor..."})});function U({open:e,onOpenChange:n,content:a,onContentChange:s,saving:i,onSave:r}){let l=(0,w.useTranslations)("common"),{resolvedTheme:o}=(0,G.useTheme)();return(0,t.jsx)(N.Dialog,{open:e,onOpenChange:n,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-2xl",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:".gitignore"})}),(0,t.jsx)("div",{className:"h-80 border rounded overflow-hidden",children:(0,t.jsx)(H,{height:"100%",language:"plaintext",value:a,onChange:e=>s(e??""),options:{fontSize:13,minimap:{enabled:!1},scrollBeyondLastLine:!1,padding:{top:8},lineNumbers:"on"},theme:"dark"===o?"vs-dark":"vs"})}),(0,t.jsxs)(N.DialogFooter,{children:[(0,t.jsx)(N.DialogClose,{render:(0,t.jsx)(M.Button,{variant:"outline",size:"sm"}),children:l("cancel")}),(0,t.jsx)(M.Button,{size:"sm",onClick:r,disabled:i,children:l(i?"saving":"save")})]})]})})}let K=(0,b.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);function W({x:e,y:a,path:s,onAddToGitignore:i,onOpenFile:r,onDiscard:l,onClose:d}){let u=(0,n.useRef)(null),x=(0,w.useTranslations)("git.changes"),h=(0,w.useTranslations)("common");(0,n.useEffect)(()=>(document.addEventListener("click",d),()=>document.removeEventListener("click",d)),[d]);let m=s.split("/").pop(),p=s.lastIndexOf("/"),f=p>=0?s.substring(0,p+1):s;return(0,t.jsxs)("div",{ref:u,className:"fixed z-[100] bg-popover border rounded-lg shadow-md py-1 text-xs min-w-40 ring-1 ring-foreground/10",style:{left:e,top:a},children:[(0,t.jsxs)("button",{className:"flex items-center gap-2 w-full px-3 py-1.5 hover:bg-accent text-left cursor-pointer",onClick:()=>{r(s),d()},children:[(0,t.jsx)(o.FileCode,{size:13}),(0,t.jsx)("span",{children:h("open")})]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 w-full px-3 py-1.5 hover:bg-accent text-left cursor-pointer",onClick:()=>{l(s),d()},children:[(0,t.jsx)(c.RotateCcw,{size:13}),(0,t.jsx)("span",{children:x("discardAll")})]}),(0,t.jsx)("div",{className:"my-1 border-t"}),(0,t.jsxs)("button",{className:"flex items-center gap-2 w-full px-3 py-1.5 hover:bg-accent text-left cursor-pointer",onClick:()=>i(m),children:[(0,t.jsx)(K,{size:13}),(0,t.jsx)("span",{children:x("ignoreThisFile")}),(0,t.jsx)("span",{className:"ml-auto text-muted-foreground truncate max-w-24",children:m})]}),(0,t.jsxs)("button",{className:"flex items-center gap-2 w-full px-3 py-1.5 hover:bg-accent text-left cursor-pointer",onClick:()=>{f&&i(f)},children:[(0,t.jsx)(K,{size:13}),(0,t.jsx)("span",{children:x("ignoreFilePath",{path:f})})]})]})}function J({workspaceId:e,entry:a,onClose:i}){let r=(0,w.useTranslations)("git.commits"),l=(0,I.useIsMobile)(),o=(0,v.useGitStore)(e=>e.getCommitDiff),[c,d]=(0,n.useState)([]),[u,x]=(0,n.useState)(!1),[h,m]=(0,n.useState)(null),p=!!a;(0,n.useEffect)(()=>{if(!a){d([]),m(null);return}x(!0),m(null),o(e,a.hash).then(e=>{d(e),e.length>0&&m(e[0].path)}).catch(()=>d([])).finally(()=>x(!1))},[a,e,o]);let f=c.find(e=>e.path===h),g=(0,n.useCallback)(()=>{i(),d([]),m(null)},[i]);return(0,t.jsx)(N.Dialog,{open:p,onOpenChange:e=>!e&&g(),children:(0,t.jsxs)(N.DialogContent,{className:`${l?"w-[95vw] max-w-[95vw] h-[90vh]":"!max-w-none w-[80vw] h-[80vh]"} flex flex-col p-0 gap-0`,children:[(0,t.jsxs)(N.DialogHeader,{className:"px-4 py-3 border-b shrink-0",children:[(0,t.jsxs)(N.DialogTitle,{className:"text-sm font-medium flex items-center gap-2 flex-wrap",children:[(0,t.jsx)("code",{className:"font-mono text-blue-600",children:a?.hash.slice(0,7)}),(0,t.jsx)("span",{className:"truncate",children:a?.message.split("\n")[0]})]}),a&&(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-1 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{children:a.author}),(0,t.jsx)("span",{children:new Date(a.date).toLocaleString()}),c.length>0&&(0,t.jsx)("span",{children:r("detailFileCount",{count:c.length})})]})]}),(0,t.jsx)("div",{className:"flex-1 min-h-0 flex flex-col",children:u?(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,t.jsx)(s.Loader2,{className:"h-5 w-5 animate-spin text-muted-foreground"})}):l?(0,t.jsx)(X,{diffs:c,selectedFile:h,onSelect:m,selectedDiff:f}):(0,t.jsx)(V,{diffs:c,selectedFile:h,onSelect:m,selectedDiff:f})})]})})}function V({diffs:e,selectedFile:n,onSelect:a,selectedDiff:s}){return(0,t.jsxs)("div",{className:"flex-1 min-h-0 flex",children:[(0,t.jsx)("div",{className:"w-48 border-r overflow-auto shrink-0",children:e.map(e=>(0,t.jsxs)("button",{onClick:()=>a(e.path),className:`w-full text-left px-2 py-1.5 text-xs font-mono flex items-center gap-1.5 border-b hover:bg-accent cursor-pointer ${n===e.path?"bg-accent":""}`,children:[(0,t.jsx)(o.FileCode,{size:13,className:"shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:"truncate",children:e.path})]},e.path))}),(0,t.jsx)("div",{className:"flex-1 min-h-0",children:s?(0,t.jsx)(z.DiffViewer,{oldContent:s.oldContent,newContent:s.newContent,path:s.path,isBinary:s.isBinary}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-xs text-muted-foreground",children:"Select a file"})})]})}function X({diffs:e,selectedFile:n,onSelect:a,selectedDiff:s}){return(0,t.jsxs)("div",{className:"flex-1 min-h-0 flex flex-col",children:[(0,t.jsx)("div",{className:"flex overflow-x-auto border-b shrink-0 gap-0.5 px-1 py-1",children:e.map(e=>(0,t.jsx)("button",{onClick:()=>a(e.path),className:`shrink-0 text-xs font-mono px-2 py-1 rounded border ${n===e.path?"bg-accent border-accent":"border-transparent hover:bg-accent/50"} truncate max-w-[140px]`,children:e.path},e.path))}),(0,t.jsx)("div",{className:"flex-1 min-h-0",children:s?(0,t.jsx)(z.DiffViewer,{oldContent:s.oldContent,newContent:s.newContent,path:s.path,isBinary:s.isBinary}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-xs text-muted-foreground",children:"Select a file"})})]})}var Y=e.i(230902),_=e.i(562918),q=e.i(940361),Q=e.i(31807),Z=e.i(355819);function ee({workspaceId:e,entry:n,onRefreshAll:a,onOpenPrompt:s}){let i=(0,w.useTranslations)("git.commits"),{getCommitDiff:r,getRemoteUrl:l,checkout:o,checkoutDetached:c,createBranch:d,deleteBranch:u,createTag:x,cherryPick:h,getMergeBase:m}=(0,v.useGitStore)(),p=(0,C.useEditorStore)(e=>e.openCommitDiff),{activeChannelId:f,sendMessage:g}=(0,Q.useChannelStore)(),j=(0,Z.useAgentStore)(e=>e.agents),b=async()=>{try{let t=await r(e,n.hash);t.length>0&&p(e,n.hash,n.message,t)}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},y=async()=>{try{let t=await l(e);if(!t)return void B.toast.error(i("contextMenu.failed"),{description:"No remote URL"});window.open(t.replace(/\.git$/,"")+"/commit/"+n.hash,"_blank")}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},k=async()=>{try{await o(e,n.hash),B.toast.success(i("contextMenu.checkedOut")),a()}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},N=async()=>{try{await c(e,n.hash),B.toast.success(i("contextMenu.checkedOut")),a()}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},M=async()=>{try{await h(e,n.hash),B.toast.success(i("contextMenu.cherryPicked")),a()}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},S=async()=>{try{let t=await r(e,n.hash);v.useGitStore.setState({diffs:t}),B.toast.info(i("contextMenu.comparingWith",{hash:n.hash.slice(0,7)}))}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},D=async()=>{try{let t=await m(e);if(!t)return void B.toast.error(i("contextMenu.failed"),{description:"No merge base"});let a=await r(e,n.hash);v.useGitStore.setState({diffs:a}),B.toast.info(i("contextMenu.comparingWith",{hash:t.slice(0,7)}))}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}},z=async()=>{if(!f)return void B.toast.error(i("contextMenu.failed"),{description:"No active channel"});let t=j.find(e=>e.enabled&&"bot"!==e.role&&"scheduler"!==e.role),a=await r(e,n.hash).then(e=>e.map(e=>e.path).join("\n")).catch(()=>"");g(e,f,t?`@${t.name} Explain the changes in commit \`${n.hash.slice(0,7)}\`: ${n.message.split("\n")[0]}
2
+
3
+ Changed files:
4
+ ${a}`:`Explain the changes in commit \`${n.hash.slice(0,7)}\`: ${n.message.split("\n")[0]}
5
+
6
+ Changed files:
7
+ ${a}`,t?[t.id]:[])};return(0,t.jsxs)(q.ContextMenuContent,{className:"min-w-48",children:[(0,t.jsx)(q.ContextMenuItem,{onClick:b,children:i("contextMenu.openChanges")}),(0,t.jsx)(q.ContextMenuItem,{onClick:y,children:i("contextMenu.openOnGitHub")}),(0,t.jsx)(q.ContextMenuSeparator,{}),(0,t.jsx)(q.ContextMenuItem,{onClick:k,children:i("contextMenu.checkout")}),(0,t.jsx)(q.ContextMenuItem,{onClick:N,children:i("contextMenu.checkoutDetached")}),(0,t.jsx)(q.ContextMenuItem,{onClick:()=>{s(i("contextMenu.createBranch"),i("contextMenu.branchName"),"feature/...",async t=>{try{await d(e,t,n.hash),B.toast.success(i("contextMenu.branchCreated")),a()}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}})},children:i("contextMenu.createBranch")}),(0,t.jsx)(q.ContextMenuItem,{onClick:()=>{let t=v.useGitStore.getState().branches.filter(e=>!e.current);t.length?s(i("contextMenu.deleteBranch"),i("contextMenu.branchToDelete"),t.map(e=>e.name).join(", "),async t=>{try{await u(e,t),B.toast.success(i("contextMenu.branchDeleted")),a()}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}}):B.toast.error(i("contextMenu.failed"),{description:"No other branches"})},children:i("contextMenu.deleteBranch")}),(0,t.jsx)(q.ContextMenuItem,{onClick:()=>{s(i("contextMenu.createTag"),i("contextMenu.tagName"),"v1.0.0",async t=>{try{await x(e,t,n.hash),B.toast.success(i("contextMenu.tagCreated"))}catch(e){B.toast.error(i("contextMenu.failed"),{description:L(e)})}})},children:i("contextMenu.createTag")}),(0,t.jsx)(q.ContextMenuSeparator,{}),(0,t.jsx)(q.ContextMenuItem,{onClick:M,children:i("contextMenu.cherryPick")}),(0,t.jsx)(q.ContextMenuSeparator,{}),(0,t.jsxs)(q.ContextMenuSub,{children:[(0,t.jsx)(q.ContextMenuSubTrigger,{children:i("contextMenu.compareWith")}),(0,t.jsxs)(q.ContextMenuSubContent,{children:[(0,t.jsx)(q.ContextMenuItem,{onClick:S,children:i("contextMenu.compareWithRemote")}),(0,t.jsx)(q.ContextMenuItem,{onClick:D,children:i("contextMenu.compareWithMergeBase")})]})]}),(0,t.jsx)(q.ContextMenuSeparator,{}),(0,t.jsx)(q.ContextMenuItem,{onClick:()=>{navigator.clipboard.writeText(n.hash),B.toast.success(i("contextMenu.commitIdCopied"))},children:i("contextMenu.copyCommitId")}),(0,t.jsx)(q.ContextMenuItem,{onClick:()=>{navigator.clipboard.writeText(n.message),B.toast.success(i("contextMenu.commitMessageCopied"))},children:i("contextMenu.copyCommitMessage")}),(0,t.jsx)(q.ContextMenuSeparator,{}),(0,t.jsx)(q.ContextMenuItem,{onClick:z,children:i("contextMenu.explainChanges")})]})}function et({workspaceId:e,log:n,onSelectEntry:a,onRefreshAll:s,onOpenPrompt:i}){return(0,t.jsx)("div",{children:n.map(n=>{let r,{label:l,variant:o}=function(e){let t=e.split("\n")[0].match(/^(\w+)(?:\([\w-]+\))?(!)?:/);if(!t)return{label:"Other",variant:"outline"};let n=t[1].toLowerCase();if(t[2])return{label:"Breaking",variant:"destructive"};let a={feat:{label:"Feature",variant:"default"},fix:{label:"Fix",variant:"secondary"},refactor:{label:"Refactor",variant:"outline"},perf:{label:"Perf",variant:"outline"},docs:{label:"Docs",variant:"outline"},test:{label:"Test",variant:"outline"},chore:{label:"Chore",variant:"outline"},ci:{label:"CI",variant:"outline"},build:{label:"Build",variant:"outline"}}[n];return a||{label:n.charAt(0).toUpperCase()+n.slice(1),variant:"outline"}}(n.message),c=(r=n.message.split("\n")[0]).replace(/^\w+(?:\([\w-]+\))?!?:\s*/,"")||r,d=n.hash.slice(0,7);return(0,t.jsxs)(q.ContextMenu,{children:[(0,t.jsx)(q.ContextMenuTrigger,{children:(0,t.jsxs)("div",{onClick:()=>a(n),className:"flex items-center gap-3 px-4 py-2.5 transition-colors hover:bg-muted/50 border-b cursor-pointer",children:[(0,t.jsx)(_.Badge,{variant:o,className:"shrink-0 px-1.5 py-0 text-[10px]",children:l}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm",children:c}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-xs text-muted-foreground",children:d}),(0,t.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:(0,Y.format)(new Date(n.date),"MMM d")})]})}),(0,t.jsx)(ee,{workspaceId:e,entry:n,onRefreshAll:s,onOpenPrompt:i})]},n.hash)})})}let en="agent-spaces:git-layout",ea="changes",es="commits",ei={changesMin:15,changesMax:60,commitsMin:30},er={changesMin:15,changesMax:60,commitsMin:30};e.s(["GitCommitsPanel",0,function({workspaceId:e}){let b=(0,w.useTranslations)("common"),M=(0,w.useTranslations)("git.commits"),S=(0,w.useTranslations)("git.changes"),E=(0,I.useIsMobile)(),G=(0,n.useMemo)(()=>(function(e){try{let t=localStorage.getItem(en);if(!t)return;let n=JSON.parse(t),a=e?er:ei,s=n[ea],i=n[es];return"number"==typeof s&&"number"==typeof i&&s>=a.changesMin&&s<=a.changesMax&&i>=a.commitsMin?{[ea]:s,[es]:i}:void 0}catch{return}})(E),[E]),H=(0,n.useCallback)(e=>{let t,n,a;if(t=E?er:ei,n=e[ea],a=e[es],"number"==typeof n&&"number"==typeof a&&n>=t.changesMin&&n<=t.changesMax&&a>=t.commitsMin)try{localStorage.setItem(en,JSON.stringify(e))}catch{}},[E]),{log:K,loading:V,notGitRepo:X,status:Y,branches:_,diffs:q,selectedFile:Q,loadStatus:Z,loadDiffs:ee,loadLog:el,loadBranches:eo,commit:ec,discard:ed,discardAll:eu,stage:ex,unstage:eh,resolveFile:em,checkout:ep,selectFile:ef,commitMsg:eg,setCommitMsg:ej,fetchRemote:eb}=(0,v.useGitStore)(),ey=(0,C.useEditorStore)(e=>e.openFile),ev=(0,C.useEditorStore)(e=>e.openCommitDiff),[eC,ew]=(0,n.useState)(!1),[ek,eN]=(0,n.useState)(!1),[eM,eS]=(0,n.useState)(!1),[eD,ez]=(0,n.useState)({open:!1,title:"",label:"",placeholder:"",onSubmit:()=>{}}),[eT,eI]=(0,n.useState)(null),[eO,eB]=(0,n.useState)(!1),[eF,eP]=(0,n.useState)(""),[e$,eL]=(0,n.useState)(!1),[eA,eR]=(0,n.useState)(!1),[eE,eG]=(0,n.useState)(null),[eH,eU]=(0,n.useState)(null),[eK,eW]=(0,n.useState)(!1),[eJ,eV]=(0,n.useState)([]),[eX,eY]=(0,n.useState)(!1),e_=(0,n.useCallback)(async()=>{eW(!0),eY(!0);try{let t=await fetch(`/api/workspaces/${e}/git/operations`);if(!t.ok)throw Error(await t.text());eV(await t.json())}catch{eV([])}finally{eY(!1)}},[e]),eq=Y?.ahead??0,eQ=Y?.behind??0,eZ=(Y?.files.length??0)>0,e0=q.find(e=>e.path===Q),e1=(0,n.useCallback)(async()=>{await eb(e).catch(()=>{}),await Promise.all([Z(e),ee(e),el(e)])},[e,eb,Z,ee,el]),e2=(0,n.useCallback)(()=>{e1(),eo(e)},[e,e1,eo]),{syncing:e3,remoteDialogOpen:e5,setRemoteDialogOpen:e4,handleSync:e6,handleRemoteSubmit:e9,handleSyncChanges:e8}=function(e,t){let a=(0,w.useTranslations)("git.commits"),s=(0,w.useTranslations)("git.changes"),{push:i,pull:r,getRemotes:l,addRemote:o}=(0,v.useGitStore)(),[c,d]=(0,n.useState)(null),[u,x]=(0,n.useState)(!1),[h,m]=(0,n.useState)(null),p=async n=>{"push"===n?(await i(e),B.toast.success(a("pushedSuccessfully"))):(await r(e),B.toast.success(a("pulledSuccessfully"))),t()},f=async n=>{d(n);try{if(!(await l(e)).length){m(n),x(!0);return}await p(n)}catch(e){L(e)?.includes("No remote")?(m(n),x(!0)):B.toast.error("push"===n?a("pushFailed"):a("pullFailed"),{description:L(e)}),"pull"===n&&await t()}finally{d(null)}},g=async(t,n)=>{await o(e,t,n),B.toast.success(a("remoteAdded")),h&&(await p(h),m(null))},j=(0,n.useCallback)(async()=>{d("push");try{if(!(await l(e)).length)return void x(!0);await i(e),await r(e),B.toast.success(s("syncedSuccessfully")),t()}catch(e){L(e)?.includes("No remote")?x(!0):B.toast.error(s("syncFailed"),{description:L(e)}),await t()}finally{d(null)}},[e,i,r,l,t,s]);return{syncing:c,remoteDialogOpen:u,setRemoteDialogOpen:x,handleSync:f,handleRemoteSubmit:g,handleSyncChanges:j}}(e,e1);(0,n.useEffect)(()=>{e1(),eo(e)},[e,e1,eo]),(0,n.useEffect)(()=>{let t=setInterval(()=>{Z(e),ee(e)},5e3);return()=>clearInterval(t)},[e,Z,ee]);let e7=(0,n.useCallback)(async t=>{ew(!1),await ep(e,t),e1(),eo(e)},[e,ep,e1,eo]),te=(0,n.useCallback)(async()=>{eg.trim()&&(eN(!0),ef(null),await ec(e,eg.trim()),ej(""),eN(!1),e1())},[e,eg,ec,e1,ef,ej]),tt=(0,n.useCallback)(async()=>{if(!eM&&!ek){eS(!0);try{let t=await fetch(`/api/workspaces/${e}/git/generate-commit-message`,{method:"POST"});if(!t.ok){let e=await t.json().catch(()=>({error:"Failed"}));throw Error(e.error)}let n=await t.json();n.message&&ej(n.message)}catch(e){B.toast.error(L(e)||S("failedCommitMessage"))}finally{eS(!1)}}},[e,eM,ek,ej,S]),tn=(0,n.useCallback)(e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&te()},[te]),ta=(0,n.useCallback)(e=>{ef(e===Q?null:e)},[Q,ef]),ts=(0,n.useCallback)((t,n)=>{t.stopPropagation(),ey(e,n)},[e,ey]),ti=(0,n.useCallback)((e,t)=>{e.stopPropagation(),eG({type:"single",path:t})},[]),tr=(0,n.useCallback)(async(t,n,a)=>{t.stopPropagation(),a?await eh(e,n):await ex(e,n),e1()},[e,e1,ex,eh]),tl=(0,n.useCallback)(async(t,n)=>{await em(e,t,n,!0),ef(null),e1(),B.toast.success("冲突已解决并暂存")},[e,e1,em,ef]),to=(0,n.useCallback)(()=>{eG({type:"all"})},[]),tc=(0,n.useCallback)(async()=>{eE&&("single"===eE.type?await ed(e,eE.path):await eu(e),eG(null),e1())},[e,eE,ed,eu,e1]);(0,n.useCallback)(async()=>{try{let t=await fetch(`/api/workspaces/${e}/files/content?path=.gitignore`),n=await t.json();eP(n.content??"")}catch{eP("")}eB(!0)},[e]);let td=(0,n.useCallback)(async()=>{eR(!0);try{await fetch(`/api/workspaces/${e}/files/content`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:".gitignore",content:eF})}),eB(!1),e1()}finally{eR(!1)}},[e,eF,e1]),tu=(0,n.useCallback)(async t=>{eI(null);try{let n=await fetch(`/api/workspaces/${e}/files/content?path=.gitignore`),a=(await n.json()).content??"";if(a.split("\n").filter(Boolean).includes(t))return;let s=a&&!a.endsWith("\n")?a+"\n"+t+"\n":a+t+"\n";await fetch(`/api/workspaces/${e}/files/content`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:".gitignore",content:s})}),e1()}catch{}},[e,e1]);return X?(0,t.jsxs)("div",{className:"flex flex-col h-full overflow-hidden rounded-t-xl bg-background",children:[(0,t.jsx)("div",{className:"flex items-center px-2 py-1.5 border-b",children:(0,t.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:M("title")})}),(0,t.jsx)(k,{workspaceId:e,onInitialized:e1})]}):(0,t.jsxs)(F.ResizablePanelGroup,{orientation:E?"vertical":"horizontal",defaultLayout:G,onLayoutChange:H,className:"h-full overflow-hidden rounded-t-xl bg-background",children:[(0,t.jsxs)(F.ResizablePanel,{id:ea,defaultSize:E?"40%":"25%",minSize:"15%",maxSize:"60%",className:"flex flex-col bg-muted/20 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b",children:[(0,t.jsxs)("div",{className:"relative flex-1 min-w-0",children:[(0,t.jsxs)("button",{onClick:()=>ew(!eC),className:"flex items-center gap-1 text-xs font-medium text-muted-foreground hover:text-foreground active:opacity-70 transition-all duration-100 cursor-pointer w-full",children:[(0,t.jsx)(x.GitBranch,{size:13,className:"shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:Y?.branch??"..."}),Y&&eZ&&(0,t.jsxs)("span",{className:"text-muted-foreground",children:["(",Y.files.length,")"]}),(0,t.jsx)(u.ChevronDown,{size:12,className:"shrink-0"})]}),eC&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"absolute left-0 top-full z-50 mt-1 w-48 bg-popover border rounded shadow-md py-0.5 max-h-60 overflow-auto",children:[_.map(e=>(0,t.jsx)("button",{onClick:()=>e7(e.name),className:`w-full text-left px-2 py-1 text-xs hover:bg-accent active:scale-[0.98] active:bg-accent transition-all duration-100 cursor-pointer truncate ${e.current?"font-semibold text-foreground":"text-muted-foreground"}`,children:e.name},e.name)),0===_.length&&(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-muted-foreground",children:S("noBranches")})]}),(0,t.jsx)("div",{className:"fixed inset-0 z-40",onClick:()=>ew(!1)})]})]}),eZ&&(0,t.jsx)("button",{onClick:to,className:"p-1 text-muted-foreground hover:text-destructive active:scale-90 transition-all duration-100 cursor-pointer",title:S("discardAll"),children:(0,t.jsx)(d.Trash2,{size:13})}),(0,t.jsx)("button",{onClick:()=>{q.length>0&&ev(e,"unstaged",S("unstagedChanges"),q)},disabled:!eZ,className:"p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer disabled:opacity-30",title:S("viewDiff"),children:(0,t.jsx)(p.FileDiff,{size:13})}),(0,t.jsx)("button",{onClick:e1,className:"p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer",title:b("refresh"),children:(0,t.jsx)(i.RefreshCw,{size:13})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-auto",children:[Y?.files.map(e=>(0,t.jsxs)("div",{onClick:()=>ta(e.path),onContextMenu:t=>{t.preventDefault(),t.stopPropagation(),eI({x:t.clientX,y:t.clientY,path:e.path})},className:`group w-full text-left px-2 py-1 text-xs font-mono flex items-center gap-1.5 hover:bg-accent cursor-pointer ${Q===e.path?"bg-accent":""}`,children:[(0,t.jsx)("span",{className:`w-4 text-center font-bold shrink-0 ${P[e.status]}`,children:$[e.status]}),e.conflicted&&(0,t.jsx)(j.AlertTriangle,{size:12,className:"shrink-0 text-red-500"}),(0,t.jsx)("span",{className:"truncate flex-1",children:e.path}),(0,t.jsxs)("span",{className:"hidden group-hover:flex md:flex items-center gap-0.5 shrink-0",children:[(0,t.jsx)("button",{onClick:t=>tr(t,e.path,e.staged),disabled:e.conflicted,className:"p-0.5 rounded hover:bg-accent/80 active:scale-90 transition-all duration-100 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed",title:e.staged?"Unstage":"Stage",children:e.staged?(0,t.jsx)(g.Minus,{size:13}):(0,t.jsx)(f.Plus,{size:13})}),(0,t.jsx)("button",{onClick:t=>ts(t,e.path),className:"p-0.5 rounded hover:bg-accent/80 active:scale-90 transition-all duration-100 cursor-pointer",title:b("open"),children:(0,t.jsx)(o.FileCode,{size:13})}),(0,t.jsx)("button",{onClick:t=>ti(t,e.path),className:"p-0.5 rounded hover:bg-accent/80 active:scale-90 transition-all duration-100 cursor-pointer",title:S("discardAll"),children:(0,t.jsx)(c.RotateCcw,{size:13})})]})]},e.path)),Y?.clean&&(0,t.jsx)("div",{className:"p-2 text-xs text-muted-foreground",children:S("noChanges")})]}),eZ?(0,t.jsxs)("div",{className:"border-t p-2 space-y-1.5",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("textarea",{value:eg,onChange:e=>ej(e.target.value),onKeyDown:tn,placeholder:S("commitMessagePlaceholder"),rows:3,className:"w-full resize-none text-xs px-2 pt-1 pr-8 pb-7 border rounded bg-background disabled:opacity-50",disabled:ek||eM}),(0,t.jsx)("button",{type:"button",onClick:tt,disabled:eM||ek||!eZ,className:"absolute bottom-1.5 right-1.5 p-1 rounded text-muted-foreground hover:text-foreground hover:bg-accent active:scale-90 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed transition-all duration-100",title:"AI generate commit message",children:eM?(0,t.jsx)(s.Loader2,{size:14,className:"animate-spin"}):(0,t.jsx)(h.Sparkles,{size:14})})]}),(0,t.jsx)("button",{onClick:te,disabled:!eg.trim()||ek,className:"w-full text-xs px-2 py-1 rounded bg-primary text-primary-foreground active:scale-[0.98] transition-all duration-100 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed",children:ek?S("committing"):S("commit")})]}):eq>0?(0,t.jsx)("div",{className:"border-t p-2",children:(0,t.jsxs)("button",{onClick:e8,disabled:null!==e3,className:"w-full text-xs px-2 py-1 rounded bg-primary text-primary-foreground active:scale-[0.98] transition-all duration-100 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-1.5",children:[e3?(0,t.jsx)(s.Loader2,{size:13,className:"animate-spin"}):(0,t.jsx)(a.Upload,{size:13}),e3?S("syncing"):S("syncChanges")]})}):null]}),(0,t.jsx)(F.ResizableHandle,{withHandle:!0}),(0,t.jsxs)(F.ResizablePanel,{id:es,defaultSize:E?"60%":"75%",minSize:"30%",className:"flex flex-col min-w-0 overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2 py-1.5 border-b shrink-0",children:[(0,t.jsx)("span",{className:"text-xs font-medium text-muted-foreground",children:K.length>0?M("titleWithCount",{count:K.length}):M("title")}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsxs)("button",{onClick:()=>e6("push"),disabled:null!==e3,className:"relative p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer disabled:opacity-50",title:eq>0?M("pushNCommits",{count:eq}):"Push",children:["push"===e3?(0,t.jsx)(s.Loader2,{size:13,className:"animate-spin"}):(0,t.jsx)(r.ArrowUp,{size:13}),eq>0&&(0,t.jsx)("span",{className:"absolute -top-1 -right-1 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-foreground px-1 text-[9px] font-medium leading-none text-background",children:eq})]}),(0,t.jsxs)("button",{onClick:()=>e6("pull"),disabled:null!==e3,className:"relative p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer disabled:opacity-50",title:eQ>0?M("pullNCommits",{count:eQ}):"Pull",children:["pull"===e3?(0,t.jsx)(s.Loader2,{size:13,className:"animate-spin"}):(0,t.jsx)(l.ArrowDown,{size:13}),eQ>0&&(0,t.jsx)("span",{className:"absolute -top-1 -right-1 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-foreground px-1 text-[9px] font-medium leading-none text-background",children:eQ})]}),(0,t.jsx)("button",{onClick:e1,className:"p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer",children:(0,t.jsx)(i.RefreshCw,{size:13})}),(0,t.jsx)("button",{onClick:()=>eL(!0),className:"p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer",title:M("settingsTitle"),children:(0,t.jsx)(m.Settings2,{size:13})}),(0,t.jsx)("button",{onClick:e_,className:"p-1 text-muted-foreground hover:text-foreground active:scale-90 transition-all duration-100 cursor-pointer",title:M("operationLog"),children:(0,t.jsx)(y,{size:13})})]})]}),e0?(0,t.jsx)("div",{className:"flex-1 min-h-0",children:(0,t.jsx)(z.DiffViewer,{oldContent:e0.oldContent,newContent:e0.newContent,path:e0.path,isBinary:e0.isBinary,mergeMode:!!e0.isConflict,onResolve:e0.isConflict?e=>tl(e0.path,e):void 0})}):(0,t.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:[V&&!K.length&&(0,t.jsx)("div",{className:"p-2 space-y-1",children:(0,t.jsx)(O.SkeletonGroup,{count:6,children:e=>(0,t.jsxs)("div",{className:"px-2 py-1.5 border-b space-y-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(O.Skeleton,{className:"h-3 w-10 rounded"}),(0,t.jsx)(O.Skeleton,{className:"h-3 flex-1"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 pl-7",children:[(0,t.jsx)(O.Skeleton,{className:"h-3 w-20"}),(0,t.jsx)(O.Skeleton,{className:"h-3 w-16"})]})]},e)})}),(0,t.jsx)(et,{workspaceId:e,log:K,onSelectEntry:eU,onRefreshAll:e2,onOpenPrompt:(e,t,n,a)=>{ez({open:!0,title:e,label:t,placeholder:n,onSubmit:a})}}),!V&&!K.length&&(0,t.jsx)("div",{className:"p-2 text-xs text-muted-foreground",children:M("noCommits")})]})]}),eT&&(0,t.jsx)(W,{x:eT.x,y:eT.y,path:eT.path,onAddToGitignore:tu,onOpenFile:t=>ey(e,t),onDiscard:e=>eG({type:"single",path:e}),onClose:()=>eI(null)}),(0,t.jsx)(D,{open:e5,onOpenChange:e4,onSubmit:e9}),(0,t.jsx)(A,{open:eD.open,onOpenChange:e=>ez(t=>({...t,open:e})),title:eD.title,label:eD.label,placeholder:eD.placeholder,onSubmit:e=>{eD.onSubmit(e),ez(e=>({...e,open:!1}))}}),(0,t.jsx)(U,{open:eO,onOpenChange:eB,content:eF,onContentChange:eP,saving:eA,onSave:td}),(0,t.jsx)(N.Dialog,{open:e$,onOpenChange:eL,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:M("settingsTitle")})}),(0,t.jsx)(T.GitSettingsForm,{scope:"local",workspaceId:e})]})}),(0,t.jsx)(R,{confirm:eE,open:!!eE,onOpenChange:e=>!e&&eG(null),onConfirm:tc}),(0,t.jsx)(J,{workspaceId:e,entry:eH,onClose:()=>eU(null)}),(0,t.jsx)(N.Dialog,{open:eK,onOpenChange:eW,children:(0,t.jsxs)(N.DialogContent,{className:"sm:max-w-3xl max-h-[85vh] flex flex-col",children:[(0,t.jsx)(N.DialogHeader,{children:(0,t.jsx)(N.DialogTitle,{children:M("operationLogTitle",{count:eJ.length})})}),(0,t.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto",children:eX?(0,t.jsx)("div",{className:"p-4 text-center text-xs text-muted-foreground",children:b("loading")}):0===eJ.length?(0,t.jsx)("div",{className:"p-4 text-center text-xs text-muted-foreground",children:M("noOperations")}):eJ.map(e=>(0,t.jsxs)("details",{className:"group border-b",children:[(0,t.jsxs)("summary",{className:"flex items-center gap-2 px-3 py-2 text-xs cursor-pointer hover:bg-accent select-none list-none",children:[(0,t.jsx)("span",{className:`shrink-0 px-1.5 py-0.5 rounded text-[10px] font-medium ${e.error?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400"}`,children:e.error?"FAIL":"OK"}),(0,t.jsx)("span",{className:"shrink-0 font-mono font-medium text-foreground",children:e.operation}),Object.keys(e.input).length>0&&(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-muted-foreground",children:Object.entries(e.input).filter(([,e])=>null!=e&&""!==e).map(([e,t])=>`${e}=${String(t)}`).join(" ")}),(0,t.jsxs)("span",{className:"shrink-0 text-muted-foreground",children:[e.duration,"ms"]}),(0,t.jsx)("span",{className:"shrink-0 text-muted-foreground",children:new Date(e.timestamp).toLocaleTimeString()}),(0,t.jsx)("span",{className:"shrink-0 text-muted-foreground group-open:rotate-90 transition-transform",children:"▸"})]}),(0,t.jsxs)("div",{className:"px-3 pb-2 space-y-1 text-xs font-mono",children:[e.error&&(0,t.jsx)("div",{className:"text-red-600 dark:text-red-400 whitespace-pre-wrap break-all",children:e.error}),void 0!==e.output&&!e.error&&(0,t.jsx)("pre",{className:"text-muted-foreground whitespace-pre-wrap break-all max-h-40 overflow-auto",children:"string"==typeof e.output?e.output:JSON.stringify(e.output,null,2)})]})]},e.id))})]})})]})}],448303)},514669,e=>{e.n(e.i(448303))}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,250438,t=>{"use strict";var e=t.i(558680);t.s(["ChevronDownIcon",()=>e.default])},161610,321137,t=>{"use strict";function e(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function r(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function n(){}var a="\\s*([+-]?\\d+)\\s*",i="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",o="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",u=/^#([0-9a-f]{3,8})$/,s=RegExp(`^rgb\\(${a},${a},${a}\\)$`),c=RegExp(`^rgb\\(${o},${o},${o}\\)$`),l=RegExp(`^rgba\\(${a},${a},${a},${i}\\)$`),d=RegExp(`^rgba\\(${o},${o},${o},${i}\\)$`),f=RegExp(`^hsl\\(${i},${o},${o}\\)$`),h=RegExp(`^hsla\\(${i},${o},${o},${i}\\)$`),g={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function m(){return this.rgb().formatHex()}function b(){return this.rgb().formatRgb()}function w(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=u.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?x(e):3===r?new v(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?p(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?p(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=s.exec(t))?new v(e[1],e[2],e[3],1):(e=c.exec(t))?new v(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=l.exec(t))?p(e[1],e[2],e[3],e[4]):(e=d.exec(t))?p(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=f.exec(t))?O(e[1],e[2]/100,e[3]/100,1):(e=h.exec(t))?O(e[1],e[2]/100,e[3]/100,e[4]):g.hasOwnProperty(t)?x(g[t]):"transparent"===t?new v(NaN,NaN,NaN,0):null}function x(t){return new v(t>>16&255,t>>8&255,255&t,1)}function p(t,e,r,n){return n<=0&&(t=e=r=NaN),new v(t,e,r,n)}function y(t,e,r,a){var i;return 1==arguments.length?((i=t)instanceof n||(i=w(i)),i)?new v((i=i.rgb()).r,i.g,i.b,i.opacity):new v:new v(t,e,r,null==a?1:a)}function v(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function k(){return`#${D(this.r)}${D(this.g)}${D(this.b)}`}function M(){let t=N(this.opacity);return`${1===t?"rgb(":"rgba("}${$(this.r)}, ${$(this.g)}, ${$(this.b)}${1===t?")":`, ${t})`}`}function N(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function $(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function D(t){return((t=$(t))<16?"0":"")+t.toString(16)}function O(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new H(t,e,r,n)}function S(t){if(t instanceof H)return new H(t.h,t.s,t.l,t.opacity);if(t instanceof n||(t=w(t)),!t)return new H;if(t instanceof H)return t;var e=(t=t.rgb()).r/255,r=t.g/255,a=t.b/255,i=Math.min(e,r,a),o=Math.max(e,r,a),u=NaN,s=o-i,c=(o+i)/2;return s?(u=e===o?(r-a)/s+(r<a)*6:r===o?(a-e)/s+2:(e-r)/s+4,s/=c<.5?o+i:2-o-i,u*=60):s=c>0&&c<1?0:u,new H(u,s,c,t.opacity)}function H(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function T(t){return(t=(t||0)%360)<0?t+360:t}function q(t){return Math.max(0,Math.min(1,t||0))}function E(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}e(n,w,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:m,formatHex:m,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return S(this).formatHsl()},formatRgb:b,toString:b}),e(v,y,r(n,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new v(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new v(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new v($(this.r),$(this.g),$(this.b),N(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:k,formatHex:k,formatHex8:function(){return`#${D(this.r)}${D(this.g)}${D(this.b)}${D((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:M,toString:M})),e(H,function(t,e,r,n){return 1==arguments.length?S(t):new H(t,e,r,null==n?1:n)},r(n,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new H(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new H(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,a=2*r-n;return new v(E(t>=240?t-240:t+120,a,n),E(t,a,n),E(t<120?t+240:t-120,a,n),this.opacity)},clamp(){return new H(T(this.h),q(this.s),q(this.l),N(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=N(this.opacity);return`${1===t?"hsl(":"hsla("}${T(this.h)}, ${100*q(this.s)}%, ${100*q(this.l)}%${1===t?")":`, ${t})`}`}})),t.s(["default",0,w,"rgb",0,y],321137),t.s(["color",0,w],161610)},145665,181503,t=>{"use strict";var e=t.i(321137);function r(t,e,r,n,a){var i=t*t,o=i*t;return((1-3*t+3*i-o)*e+(4-6*i+3*o)*r+(1+3*t+3*i-3*o)*n+o*a)/6}let n=t=>()=>t;function a(t,e){var r=e-t;return r?function(e){return t+e*r}:n(isNaN(t)?e:t)}t.s(["default",0,n],181503);let i=function t(r){var i,o=1==(i=+r)?a:function(t,e){var r,a,o;return e-t?(r=t,a=e,r=Math.pow(r,o=i),a=Math.pow(a,o)-r,o=1/o,function(t){return Math.pow(r+t*a,o)}):n(isNaN(t)?e:t)};function u(t,r){var n=o((t=(0,e.rgb)(t)).r,(r=(0,e.rgb)(r)).r),i=o(t.g,r.g),u=o(t.b,r.b),s=a(t.opacity,r.opacity);return function(e){return t.r=n(e),t.g=i(e),t.b=u(e),t.opacity=s(e),t+""}}return u.gamma=t,u}(1);function o(t){return function(r){var n,a,i=r.length,o=Array(i),u=Array(i),s=Array(i);for(n=0;n<i;++n)a=(0,e.rgb)(r[n]),o[n]=a.r||0,u[n]=a.g||0,s[n]=a.b||0;return o=t(o),u=t(u),s=t(s),a.opacity=1,function(t){return a.r=o(t),a.g=u(t),a.b=s(t),a+""}}}o(function(t){var e=t.length-1;return function(n){var a=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[a],o=t[a+1],u=a>0?t[a-1]:2*i-o,s=a<e-1?t[a+2]:2*o-i;return r((n-a/e)*e,u,i,o,s)}}),o(function(t){var e=t.length;return function(n){var a=Math.floor(((n%=1)<0?++n:n)*e),i=t[(a+e-1)%e],o=t[a%e],u=t[(a+1)%e],s=t[(a+2)%e];return r((n-a/e)*e,i,o,u,s)}}),t.s(["default",0,i],145665)},819505,238816,97376,t=>{"use strict";t.s(["genericArray",()=>r],819505);var e=t.i(213570);function r(t,r){var n,a=r?r.length:0,i=t?Math.min(a,t.length):0,o=Array(i),u=Array(a);for(n=0;n<i;++n)o[n]=(0,e.default)(t[n],r[n]);for(;n<a;++n)u[n]=r[n];return function(t){for(n=0;n<i;++n)u[n]=o[n](t);return u}}t.s(["default",0,function(t,e){e||(e=[]);var r,n=t?Math.min(e.length,t.length):0,a=e.slice();return function(i){for(r=0;r<n;++r)a[r]=t[r]*(1-i)+e[r]*i;return a}},"isNumberArray",0,function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}],238816),t.s(["default",0,function(t,e){var r=new Date;return t*=1,e*=1,function(n){return r.setTime(t*(1-n)+e*n),r}}],97376)},842541,t=>{"use strict";t.s(["default",0,function(t,e){return t*=1,e*=1,function(r){return t*(1-r)+e*r}}])},905660,t=>{"use strict";t.s(["default",()=>r]);var e=t.i(213570);function r(t,r){var n,a={},i={};for(n in(null===t||"object"!=typeof t)&&(t={}),(null===r||"object"!=typeof r)&&(r={}),r)n in t?a[n]=(0,e.default)(t[n],r[n]):i[n]=r[n];return function(t){for(n in a)i[n]=a[n](t);return i}}},647483,t=>{"use strict";var e=t.i(842541),r=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,n=RegExp(r.source,"g");t.s(["default",0,function(t,a){var i,o,u,s,c,l=r.lastIndex=n.lastIndex=0,d=-1,f=[],h=[];for(t+="",a+="";(u=r.exec(t))&&(s=n.exec(a));)(c=s.index)>l&&(c=a.slice(l,c),f[d]?f[d]+=c:f[++d]=c),(u=u[0])===(s=s[0])?f[d]?f[d]+=s:f[++d]=s:(f[++d]=null,h.push({i:d,x:(0,e.default)(u,s)})),l=n.lastIndex;return l<a.length&&(c=a.slice(l),f[d]?f[d]+=c:f[++d]=c),f.length<2?h[0]?(i=h[0].x,function(t){return i(t)+""}):(o=a,function(){return o}):(a=h.length,function(t){for(var e,r=0;r<a;++r)f[(e=h[r]).i]=e.x(t);return f.join("")})}])},678152,213570,t=>{"use strict";t.s(["default",()=>l],213570);var e=t.i(161610),r=t.i(145665),n=t.i(819505),a=t.i(97376),i=t.i(842541),o=t.i(905660),u=t.i(647483),s=t.i(181503),c=t.i(238816);function l(t,l){var d,f=typeof l;return null==l||"boolean"===f?(0,s.default)(l):("number"===f?i.default:"string"===f?(d=(0,e.color)(l))?(l=d,r.default):u.default:l instanceof e.color?r.default:l instanceof Date?a.default:(0,c.isNumberArray)(l)?c.default:Array.isArray(l)?n.genericArray:"function"!=typeof l.valueOf&&"function"!=typeof l.toString||isNaN(l)?o.default:i.default)(t,l)}t.s(["interpolate",0,l],678152)},77075,t=>{"use strict";var e=t.i(842541);t.s(["interpolateNumber",()=>e.default])},212603,t=>{"use strict";var e=t.i(344180),r=t.i(465458);t.s(["Card",0,function({className:t,size:n="default",...a}){return(0,e.jsx)("div",{"data-slot":"card","data-size":n,className:(0,r.cn)("group/card flex flex-col gap-4 overflow-hidden rounded-xl bg-card py-4 text-sm text-card-foreground ring-1 ring-foreground/10 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",t),...a})},"CardContent",0,function({className:t,...n}){return(0,e.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-4 group-data-[size=sm]/card:px-3",t),...n})},"CardDescription",0,function({className:t,...n}){return(0,e.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",t),...n})},"CardHeader",0,function({className:t,...n}){return(0,e.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",t),...n})},"CardTitle",0,function({className:t,...n}){return(0,e.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",t),...n})}])},212965,t=>{"use strict";let e=(0,t.i(433721).default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);t.s(["ArrowDown",0,e],212965)},230902,738416,870429,921127,954259,234867,669352,44318,966625,t=>{"use strict";var e=t.i(238153),r=t.i(492421),n=t.i(632713),a=t.i(539392),i=t.i(511518),o=t.i(516467);function u(t,e){let r=(0,o.toDate)(t,e?.in);return r.setHours(0,0,0,0),r}function s(t,e,r){let[o,s]=(0,a.normalizeDates)(r?.in,t,e),c=u(o),l=u(s);return Math.round((c-(0,n.getTimezoneOffsetInMilliseconds)(c)-(l-(0,n.getTimezoneOffsetInMilliseconds)(l)))/i.millisecondsInDay)}function c(t,e){let r=(0,o.toDate)(t,e?.in);return r.setFullYear(r.getFullYear(),0,1),r.setHours(0,0,0,0),r}function l(t,e){let n=(0,r.getDefaultOptions)(),a=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=(0,o.toDate)(t,e?.in),u=i.getDay();return i.setDate(i.getDate()-(7*(u<a)+u-a)),i.setHours(0,0,0,0),i}function d(t,e){return l(t,{...e,weekStartsOn:1})}t.s(["startOfDay",0,u],738416),t.s(["differenceInCalendarDays",0,s],870429),t.s(["startOfYear",0,c],921127),t.s(["startOfWeek",0,l],954259),t.s(["startOfISOWeek",0,d],234867);var f=t.i(487122);function h(t,e){let r=(0,o.toDate)(t,e?.in),n=r.getFullYear(),a=(0,f.constructFrom)(r,0);a.setFullYear(n+1,0,4),a.setHours(0,0,0,0);let i=d(a),u=(0,f.constructFrom)(r,0);u.setFullYear(n,0,4),u.setHours(0,0,0,0);let s=d(u);return r.getTime()>=i.getTime()?n+1:r.getTime()>=s.getTime()?n:n-1}function g(t,e){let r,n,a=(0,o.toDate)(t,e?.in);return Math.round((d(a)-(r=h(a,void 0),(n=(0,f.constructFrom)(a,0)).setFullYear(r,0,4),n.setHours(0,0,0,0),d(n)))/i.millisecondsInWeek)+1}function m(t,e){let n=(0,o.toDate)(t,e?.in),a=n.getFullYear(),i=(0,r.getDefaultOptions)(),u=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,s=(0,f.constructFrom)(e?.in||t,0);s.setFullYear(a+1,0,u),s.setHours(0,0,0,0);let c=l(s,e),d=(0,f.constructFrom)(e?.in||t,0);d.setFullYear(a,0,u),d.setHours(0,0,0,0);let h=l(d,e);return+n>=+c?a+1:+n>=+h?a:a-1}function b(t,e){let n,a,u,s,c=(0,o.toDate)(t,e?.in);return Math.round((l(c,e)-(n=(0,r.getDefaultOptions)(),a=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,u=m(c,e),(s=(0,f.constructFrom)(e?.in||c,0)).setFullYear(u,0,a),s.setHours(0,0,0,0),l(s,e)))/i.millisecondsInWeek)+1}function w(t,e){let r=Math.abs(t).toString().padStart(e,"0");return(t<0?"-":"")+r}t.s(["getISOWeek",0,g],669352),t.s(["getWeek",0,b],44318);let x={y(t,e){let r=t.getFullYear(),n=r>0?r:1-r;return w("yy"===e?n%100:n,e.length)},M(t,e){let r=t.getMonth();return"M"===e?String(r+1):w(r+1,2)},d:(t,e)=>w(t.getDate(),e.length),a(t,e){let r=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(t,e)=>w(t.getHours()%12||12,e.length),H:(t,e)=>w(t.getHours(),e.length),m:(t,e)=>w(t.getMinutes(),e.length),s:(t,e)=>w(t.getSeconds(),e.length),S(t,e){let r=e.length;return w(Math.trunc(t.getMilliseconds()*Math.pow(10,r-3)),e.length)}},p={G:function(t,e,r){let n=+(t.getFullYear()>0);switch(e){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(t,e,r){if("yo"===e){let e=t.getFullYear();return r.ordinalNumber(e>0?e:1-e,{unit:"year"})}return x.y(t,e)},Y:function(t,e,r,n){let a=m(t,n),i=a>0?a:1-a;return"YY"===e?w(i%100,2):"Yo"===e?r.ordinalNumber(i,{unit:"year"}):w(i,e.length)},R:function(t,e){return w(h(t),e.length)},u:function(t,e){return w(t.getFullYear(),e.length)},Q:function(t,e,r){let n=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(n);case"QQ":return w(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(t,e,r){let n=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(n);case"qq":return w(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(t,e,r){let n=t.getMonth();switch(e){case"M":case"MM":return x.M(t,e);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(t,e,r){let n=t.getMonth();switch(e){case"L":return String(n+1);case"LL":return w(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(t,e,r,n){let a=b(t,n);return"wo"===e?r.ordinalNumber(a,{unit:"week"}):w(a,e.length)},I:function(t,e,r){let n=g(t);return"Io"===e?r.ordinalNumber(n,{unit:"week"}):w(n,e.length)},d:function(t,e,r){return"do"===e?r.ordinalNumber(t.getDate(),{unit:"date"}):x.d(t,e)},D:function(t,e,r){let n,a=s(n=(0,o.toDate)(t,void 0),c(n))+1;return"Do"===e?r.ordinalNumber(a,{unit:"dayOfYear"}):w(a,e.length)},E:function(t,e,r){let n=t.getDay();switch(e){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(t,e,r,n){let a=t.getDay(),i=(a-n.weekStartsOn+8)%7||7;switch(e){case"e":return String(i);case"ee":return w(i,2);case"eo":return r.ordinalNumber(i,{unit:"day"});case"eee":return r.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(a,{width:"short",context:"formatting"});default:return r.day(a,{width:"wide",context:"formatting"})}},c:function(t,e,r,n){let a=t.getDay(),i=(a-n.weekStartsOn+8)%7||7;switch(e){case"c":return String(i);case"cc":return w(i,e.length);case"co":return r.ordinalNumber(i,{unit:"day"});case"ccc":return r.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(a,{width:"narrow",context:"standalone"});case"cccccc":return r.day(a,{width:"short",context:"standalone"});default:return r.day(a,{width:"wide",context:"standalone"})}},i:function(t,e,r){let n=t.getDay(),a=0===n?7:n;switch(e){case"i":return String(a);case"ii":return w(a,e.length);case"io":return r.ordinalNumber(a,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(t,e,r){let n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(t,e,r){let n,a=t.getHours();switch(n=12===a?"noon":0===a?"midnight":a/12>=1?"pm":"am",e){case"b":case"bb":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},B:function(t,e,r){let n,a=t.getHours();switch(n=a>=17?"evening":a>=12?"afternoon":a>=4?"morning":"night",e){case"B":case"BB":case"BBB":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},h:function(t,e,r){if("ho"===e){let e=t.getHours()%12;return 0===e&&(e=12),r.ordinalNumber(e,{unit:"hour"})}return x.h(t,e)},H:function(t,e,r){return"Ho"===e?r.ordinalNumber(t.getHours(),{unit:"hour"}):x.H(t,e)},K:function(t,e,r){let n=t.getHours()%12;return"Ko"===e?r.ordinalNumber(n,{unit:"hour"}):w(n,e.length)},k:function(t,e,r){let n=t.getHours();return(0===n&&(n=24),"ko"===e)?r.ordinalNumber(n,{unit:"hour"}):w(n,e.length)},m:function(t,e,r){return"mo"===e?r.ordinalNumber(t.getMinutes(),{unit:"minute"}):x.m(t,e)},s:function(t,e,r){return"so"===e?r.ordinalNumber(t.getSeconds(),{unit:"second"}):x.s(t,e)},S:function(t,e){return x.S(t,e)},X:function(t,e,r){let n=t.getTimezoneOffset();if(0===n)return"Z";switch(e){case"X":return v(n);case"XXXX":case"XX":return k(n);default:return k(n,":")}},x:function(t,e,r){let n=t.getTimezoneOffset();switch(e){case"x":return v(n);case"xxxx":case"xx":return k(n);default:return k(n,":")}},O:function(t,e,r){let n=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+y(n,":");default:return"GMT"+k(n,":")}},z:function(t,e,r){let n=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+y(n,":");default:return"GMT"+k(n,":")}},t:function(t,e,r){return w(Math.trunc(t/1e3),e.length)},T:function(t,e,r){return w(+t,e.length)}};function y(t,e=""){let r=t>0?"-":"+",n=Math.abs(t),a=Math.trunc(n/60),i=n%60;return 0===i?r+String(a):r+String(a)+e+w(i,2)}function v(t,e){return t%60==0?(t>0?"-":"+")+w(Math.abs(t)/60,2):k(t,e)}function k(t,e=""){let r=Math.abs(t);return(t>0?"-":"+")+w(Math.trunc(r/60),2)+e+w(r%60,2)}let M=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},N=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},$={p:N,P:(t,e)=>{let r,n=t.match(/(P+)(p+)?/)||[],a=n[1],i=n[2];if(!i)return M(t,e);switch(a){case"P":r=e.dateTime({width:"short"});break;case"PP":r=e.dateTime({width:"medium"});break;case"PPP":r=e.dateTime({width:"long"});break;default:r=e.dateTime({width:"full"})}return r.replace("{{date}}",M(a,e)).replace("{{time}}",N(i,e))}},D=/^D+$/,O=/^Y+$/,S=["D","DD","YY","YYYY"];function H(t){return t instanceof Date||"object"==typeof t&&"[object Date]"===Object.prototype.toString.call(t)}t.s(["isDate",0,H],966625);let T=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,q=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,E=/^'([^]*?)'?$/,P=/''/g,Y=/[a-zA-Z]/;t.s(["format",0,function(t,n,a){let i=(0,r.getDefaultOptions)(),u=a?.locale??i.locale??e.defaultLocale,s=a?.firstWeekContainsDate??a?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,c=a?.weekStartsOn??a?.locale?.options?.weekStartsOn??i.weekStartsOn??i.locale?.options?.weekStartsOn??0,l=(0,o.toDate)(t,a?.in);if(!H(l)&&"number"!=typeof l||isNaN(+(0,o.toDate)(l)))throw RangeError("Invalid time value");let d=n.match(q).map(t=>{let e=t[0];return"p"===e||"P"===e?(0,$[e])(t,u.formatLong):t}).join("").match(T).map(t=>{if("''"===t)return{isToken:!1,value:"'"};let e=t[0];if("'"===e){var r;let e;return{isToken:!1,value:(e=(r=t).match(E))?e[1].replace(P,"'"):r}}if(p[e])return{isToken:!0,value:t};if(e.match(Y))throw RangeError("Format string contains an unescaped latin alphabet character `"+e+"`");return{isToken:!1,value:t}});u.localize.preprocessor&&(d=u.localize.preprocessor(l,d));let f={firstWeekContainsDate:s,weekStartsOn:c,locale:u};return d.map(e=>{if(!e.isToken)return e.value;let r=e.value;return(!a?.useAdditionalWeekYearTokens&&O.test(r)||!a?.useAdditionalDayOfYearTokens&&D.test(r))&&function(t,e,r){var n,a,i;let o,u=(n=t,a=e,i=r,o="Y"===n[0]?"years":"days of the month",`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${a}\`) for formatting ${o} to the input \`${i}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`);if(console.warn(u),S.includes(t))throw RangeError(u)}(r,n,String(t)),(0,p[r[0]])(l,r,u.localize,f)}).join("")}],230902)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,386041,t=>{"use strict";let e=(0,t.i(433721).default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);t.s(["Code2",0,e],386041)},835829,t=>{"use strict";function e(t){return`agent-spaces:inspector-history:${t}`}function a(t){try{var a;return a=JSON.parse(localStorage.getItem(e(t))||"[]"),Array.isArray(a)?a.filter(t=>t&&"object"==typeof t&&"string"==typeof t.path&&"number"==typeof t.line).map(t=>({...t,column:"number"==typeof t.column?t.column:1,timestamp:"number"==typeof t.timestamp?t.timestamp:Date.now()})).slice(0,50):[]}catch{return[]}}function s(t,a){localStorage.setItem(e(t),JSON.stringify(a.slice(0,50)))}let i=(0,t.i(816709).create)(t=>({histories:{},loadHistory:e=>{let s=a(e);t(t=>({histories:{...t.histories,[e]:s}}))},addEntry:(e,i)=>{let r={...i,id:i.id??`${i.timestamp}-${Math.random().toString(36).slice(2,8)}`,column:i.column??1,timestamp:i.timestamp??Date.now()},o=a(e).filter(t=>t.path!==r.path||t.line!==r.line||t.column!==r.column),n=[r,...o].slice(0,50);s(e,n),t(t=>({histories:{...t.histories,[e]:n}}))},setHistory:(e,a)=>{s(e,a),t(t=>({histories:{...t.histories,[e]:a}}))},clearHistory:e=>{s(e,[]),t(t=>({histories:{...t.histories,[e]:[]}}))}}));t.s(["useInspectorHistoryStore",0,i])},141889,t=>{"use strict";var e=t.i(816709),a=t.i(437122);let s=["linear-gradient(to right, #10b981, #06b6d4)","linear-gradient(to right, #ec4899, #8b5cf6)","linear-gradient(to right, #f43f5e, #f97316)","linear-gradient(to right, #1e293b, #0f172a)","linear-gradient(to right, #3b82f6, #06b6d4)","linear-gradient(to right, #f59e0b, #e11d48)","linear-gradient(to right, #475569, #1e293b)"];async function i(t,e,s){let i=await (0,a.fetchWithAuth)(`/api/workspaces/${t}/database${e}`,{headers:{"Content-Type":"application/json"},...s});if(!i.ok){let t=await i.json().catch(()=>null);throw Error(t?.error||`Database API error: ${i.status}`)}return i.json()}function r(t,e){if(!e)return t;let a=t.includes("?")?"&":"?";return`${t}${a}databaseId=${encodeURIComponent(e)}`}let o=new Map,n=(0,e.create)((t,e)=>({databases:[],activeDatabaseId:null,nodes:[],activeId:null,openTabs:[],recentIds:[],editorMode:"notion",theme:"sans",isFullWidth:!1,openFolders:{},sidebarSearch:"",vectorStats:null,vectorLoading:!1,vectorIndexing:!1,loading:!1,loaded:!1,loadedWorkspaceId:null,load:async a=>{let{loadedWorkspaceId:s}=e();if(s!==a||!e().loaded){t({loading:!0});try{let s=await i(a,"/databases"),o=e().activeDatabaseId&&s.some(t=>t.id===e().activeDatabaseId)?e().activeDatabaseId:s[0]?.id??null,n=o?await i(a,r("",o)):[],c=o?await i(a,`/databases/${o}/vector`).catch(()=>null):null,l=n.filter(t=>!t.isTrash);t({databases:s,activeDatabaseId:o,nodes:n,vectorStats:c,loading:!1,loaded:!0,loadedWorkspaceId:a,activeId:l.length>0?l[0].id:null,openTabs:[],recentIds:[]})}catch{t({loading:!1})}}},loadNodes:async(a,s)=>{t({loading:!0});try{let o=await i(a,r("",s)),n=o.filter(t=>!t.isTrash);t({nodes:o,loading:!1,activeId:n.length>0?n[0].id:null,openTabs:[],recentIds:[],openFolders:{},sidebarSearch:"",vectorStats:null}),await e().loadVectorStats(a,s)}catch{t({loading:!1})}},setActiveDatabaseId:async(a,s)=>{t({activeDatabaseId:s}),await e().loadNodes(a,s)},createDatabase:async(a,s)=>{let r=await i(a,"/databases",{method:"POST",body:JSON.stringify(s)});return t(t=>({databases:[...t.databases,r],activeDatabaseId:r.id})),await e().loadNodes(a,r.id),r},updateDatabase:async(e,a,s)=>{let r=await i(e,`/databases/${a}`,{method:"PUT",body:JSON.stringify(s)});return t(t=>({databases:t.databases.map(t=>t.id===r.id?r:t)})),r},deleteDatabase:async(a,s)=>{await i(a,`/databases/${s}`,{method:"DELETE"});let r=await i(a,"/databases"),o=r[0]?.id??null;t({databases:r,activeDatabaseId:o}),o&&await e().loadNodes(a,o)},loadVectorStats:async(e,a)=>{t({vectorLoading:!0});try{let s=await i(e,`/databases/${a}/vector`);t({vectorStats:s,vectorLoading:!1})}catch{t({vectorStats:null,vectorLoading:!1})}},bindEmbeddingModel:async(e,a,s)=>{let r=await i(e,`/databases/${a}/vector`,{method:"PUT",body:JSON.stringify({embeddingModelId:s})});t(t=>({vectorStats:r,databases:t.databases.map(t=>t.id===a?{...t,embeddingModelId:s||void 0}:t)}))},indexVectors:async(e,a)=>{t({vectorIndexing:!0});try{let s=await i(e,`/databases/${a}/vector/index`,{method:"POST"});return t({vectorStats:s,vectorIndexing:!1}),s}catch(e){throw t({vectorIndexing:!1}),e}},setActiveId:e=>{t(t=>{let a=e&&!t.openTabs.includes(e)?[...t.openTabs,e]:t.openTabs,s=e?[e,...t.recentIds.filter(t=>t!==e)].slice(0,4):t.recentIds;return{activeId:e,openTabs:a,recentIds:s}})},createNode:async(a,o,n)=>{let c=e().activeDatabaseId,l=n?"folder"===n:!o,d=s[Math.floor(Math.random()*s.length)],h=await i(a,r("",c),{method:"POST",body:JSON.stringify({title:l?"未命名文件夹":"未命名页面",icon:l?"📂":"📝",cover:d,content:l?"<h1>📂 未命名文件夹</h1><p>这是一个新建的目录夹。</p>":"<h1>新创建的文档</h1><p>点击在此处开始编写...</p>",parentId:o})});return t(t=>{let e=[...t.openTabs,h.id];return o?{nodes:[...t.nodes,h],activeId:h.id,openTabs:e,openFolders:{...t.openFolders,[o]:!0}}:{nodes:[...t.nodes,h],activeId:h.id,openTabs:e}}),h},updateContent:async(a,s,n)=>{let c=e().activeDatabaseId;t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,content:n,updatedAt:Date.now()}:t)})),function(t,e,a,s){let n=`${t}:${e??"default"}:${a}`,c=o.get(n);if(c){c.content=s;return}let l=setTimeout(()=>{let c=o.get(n);o.delete(n),i(t,r(`/${a}`,e),{method:"PUT",body:JSON.stringify({content:c?.content??s})})},3e3);o.set(n,{timer:l,content:s})}(a,c,s,n)},listNodeVersions:async(t,a)=>i(t,r(`/${a}/versions`,e().activeDatabaseId)),renameNode:async(a,s,o)=>{let n=e().activeDatabaseId;t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,title:o,updatedAt:Date.now()}:t)})),await i(a,r(`/${s}`,n),{method:"PUT",body:JSON.stringify({title:o})})},updateIcon:async(a,s,o)=>{let n=e().activeDatabaseId;t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,icon:o,updatedAt:Date.now()}:t)})),await i(a,r(`/${s}`,n),{method:"PUT",body:JSON.stringify({icon:o})})},updateCover:async(a,s,o)=>{let n=e().activeDatabaseId;t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,cover:o,updatedAt:Date.now()}:t)})),await i(a,r(`/${s}`,n),{method:"PUT",body:JSON.stringify({cover:o})})},trashNode:async(a,s)=>{let o=e().activeDatabaseId,{nodes:n,activeId:c}=e(),l=new Set([s]),d=t=>{n.filter(e=>e.parentId===t).forEach(t=>{l.add(t.id),d(t.id)})};if(d(s),t(t=>({nodes:t.nodes.map(t=>l.has(t.id)?{...t,isTrash:!0}:t)})),await i(a,r(`/${s}/trash`,o),{method:"PUT"}),l.has(c||"")){let a=e().nodes.filter(t=>!t.isTrash);t({activeId:a.length>0?a[0].id:null})}},restoreNode:async(a,s)=>{let o=e().activeDatabaseId;await i(a,r(`/${s}/restore`,o),{method:"PUT"});let{nodes:n}=e(),c=n.find(t=>t.id===s),l=c?.parentId??null;if(l){let t=n.find(t=>t.id===l);(!t||t.isTrash)&&(l=null)}t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,isTrash:!1,parentId:l}:t),activeId:s}))},deleteNode:async(a,s)=>{let o=e().activeDatabaseId,{nodes:n,activeId:c}=e(),l=new Set([s]),d=t=>{n.filter(e=>e.parentId===t).forEach(t=>{l.add(t.id),d(t.id)})};if(d(s),t(t=>({nodes:t.nodes.filter(t=>!l.has(t.id))})),await i(a,r(`/${s}`,o),{method:"DELETE"}),l.has(c||"")){let a=e().nodes.filter(t=>!t.isTrash);t({activeId:a.length>0?a[0].id:null})}},moveNode:async(a,s,o)=>{let n=e().activeDatabaseId;t(t=>({nodes:t.nodes.map(t=>t.id===s?{...t,parentId:o,updatedAt:Date.now()}:t)})),await i(a,r(`/${s}/move`,n),{method:"PUT",body:JSON.stringify({parentId:o})}),o&&t(t=>({openFolders:{...t.openFolders,[o]:!0}}))},setEditorMode:e=>t({editorMode:e}),setTheme:e=>t({theme:e}),setIsFullWidth:e=>t({isFullWidth:e}),toggleFolder:e=>t(t=>({openFolders:{...t.openFolders,[e]:!t.openFolders[e]}})),setSidebarSearch:e=>t({sidebarSearch:e}),addTab:e=>t(t=>t.openTabs.includes(e)?t:{openTabs:[...t.openTabs,e]}),closeTab:e=>t(t=>{let a=t.openTabs.filter(t=>t!==e),s=t.activeId===e?a.length>0?a[a.length-1]:null:t.activeId;return{openTabs:a,activeId:s}})}));t.s(["useDatabaseStore",0,n])},253307,t=>{"use strict";let e=(0,t.i(433721).default)("file-diff",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M9 10h6",key:"9gxzsh"}],["path",{d:"M12 13V7",key:"h0r20n"}],["path",{d:"M9 17h6",key:"r8uit2"}]]);t.s(["FileDiff",0,e],253307)},363156,t=>{"use strict";var e=t.i(816709);let a=/not a git repository/i;function s(t){return t instanceof Error&&a.test(t.message)}let i=(0,e.create)(t=>({status:null,diffs:[],selectedFile:null,log:[],branches:[],loading:!1,error:null,notGitRepo:!1,commitMsg:"",loadStatus:async e=>{try{let a=await fetch(`/api/workspaces/${e}/git/status`);if(!a.ok)throw Error(await a.text());let s=await a.json();t({status:s,notGitRepo:!1})}catch(e){t({error:e instanceof Error?e.message:String(e),notGitRepo:s(e)})}},loadDiffs:async(e,a)=>{t({loading:!0});try{let s=a?`/api/workspaces/${e}/git/diff?path=${encodeURIComponent(a)}`:`/api/workspaces/${e}/git/diff`,i=await fetch(s);if(!i.ok)throw Error(await i.text());let r=await i.json();t({diffs:r,loading:!1,notGitRepo:!1})}catch(e){t({error:e instanceof Error?e.message:String(e),loading:!1,notGitRepo:s(e)})}},loadLog:async e=>{try{let a=await fetch(`/api/workspaces/${e}/git/log`);if(!a.ok)throw Error(await a.text());let s=await a.json();t({log:s,notGitRepo:!1})}catch(e){t({error:e instanceof Error?e.message:String(e),notGitRepo:s(e)})}},loadBranches:async e=>{try{let a=await fetch(`/api/workspaces/${e}/git/branches`);if(!a.ok)throw Error(await a.text());let s=await a.json();t({branches:s,notGitRepo:!1})}catch(e){t({error:e instanceof Error?e.message:String(e),notGitRepo:s(e)})}},initRepo:async e=>{try{let a=await fetch(`/api/workspaces/${e}/git/init`,{method:"POST"});if(!a.ok)throw Error(await a.text());t({error:null,notGitRepo:!1})}catch(e){t({error:e instanceof Error?e.message:String(e)})}},commit:async(e,a)=>{try{let t=await fetch(`/api/workspaces/${e}/git/commit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:a})});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},discard:async(e,a)=>{try{let t=await fetch(`/api/workspaces/${e}/git/discard`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a})});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},discardAll:async e=>{try{let t=await fetch(`/api/workspaces/${e}/git/discard-all`,{method:"POST"});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},stage:async(e,a)=>{try{let t=await fetch(`/api/workspaces/${e}/git/stage`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a})});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},unstage:async(e,a)=>{try{let t=await fetch(`/api/workspaces/${e}/git/unstage`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a})});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},resolveFile:async(t,e,a,s=!0)=>{let i=await fetch(`/api/workspaces/${t}/git/resolve-file`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e,content:a,stage:s})});if(!i.ok)throw Error(await i.text())},checkout:async(e,a)=>{try{let t=await fetch(`/api/workspaces/${e}/git/checkout`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({branch:a})});if(!t.ok)throw Error(await t.text())}catch(e){t({error:e instanceof Error?e.message:String(e)})}},push:async t=>{let e=await fetch(`/api/workspaces/${t}/git/push`,{method:"POST"});if(!e.ok)throw Error((await e.json().catch(()=>({error:"Push failed"}))).error)},pull:async t=>{let e=await fetch(`/api/workspaces/${t}/git/pull`,{method:"POST"});if(!e.ok)throw Error((await e.json().catch(()=>({error:"Pull failed"}))).error)},fetchRemote:async t=>{let e=await fetch(`/api/workspaces/${t}/git/fetch`,{method:"POST"});if(!e.ok)throw Error((await e.json().catch(()=>({error:"Fetch failed"}))).error)},getRemotes:async t=>{let e=await fetch(`/api/workspaces/${t}/git/remotes`);if(!e.ok)throw Error(await e.text());return e.json()},addRemote:async(t,e,a)=>{let s=await fetch(`/api/workspaces/${t}/git/remotes`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,url:a})});if(!s.ok)throw Error((await s.json().catch(()=>({error:"Failed to add remote"}))).error)},selectFile:e=>t({selectedFile:e}),setCommitMsg:e=>t({commitMsg:e}),checkoutDetached:async(t,e)=>{let a=await fetch(`/api/workspaces/${t}/git/checkout-detached`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commitHash:e})});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error)},cherryPick:async(t,e)=>{let a=await fetch(`/api/workspaces/${t}/git/cherry-pick`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commitHash:e})});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error)},createBranch:async(t,e,a)=>{let s=await fetch(`/api/workspaces/${t}/git/create-branch`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,startPoint:a})});if(!s.ok)throw Error((await s.json().catch(()=>({}))).error)},deleteBranch:async(t,e,a)=>{let s=await fetch(`/api/workspaces/${t}/git/delete-branch`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,force:a})});if(!s.ok)throw Error((await s.json().catch(()=>({}))).error)},createTag:async(t,e,a)=>{let s=await fetch(`/api/workspaces/${t}/git/create-tag`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,commitHash:a})});if(!s.ok)throw Error((await s.json().catch(()=>({}))).error)},getCommitDiff:async(t,e)=>{let a=await fetch(`/api/workspaces/${t}/git/commit-diff?hash=${encodeURIComponent(e)}`);if(!a.ok)throw Error((await a.json().catch(()=>({}))).error);return a.json()},getRemoteUrl:async t=>{let e=await fetch(`/api/workspaces/${t}/git/remote-url`);if(!e.ok)throw Error((await e.json().catch(()=>({}))).error);return(await e.json()).url},getMergeBase:async t=>{let e=await fetch(`/api/workspaces/${t}/git/merge-base`);if(!e.ok)throw Error((await e.json().catch(()=>({}))).error);return(await e.json()).hash}}));t.s(["useGitStore",0,i])},524360,t=>{"use strict";var e=t.i(816709),a=t.i(360112);let s=new Map,i=(0,e.create)((t,e)=>({sessions:[],activeId:null,ws:null,workspaceId:null,_initialized:!1,_restored:!1,init:(i,r)=>{let o=e();if(o._initialized&&o.ws===i)return;let n=o.workspaceId!==i.workspaceId;n&&s.clear(),t({ws:i,workspaceId:i.workspaceId,sessions:n?[]:o.sessions,activeId:n?null:o.activeId,_initialized:!0,_restored:!1}),i.on("terminal.created",e=>{let{sessionId:a,cwd:s,shell:i}=e;t(t=>t.sessions.some(t=>t.id===a)?t:{sessions:[...t.sessions,{id:a,cwd:s,shell:i}],activeId:a})}),i.on("terminal.error",t=>{let{error:e}=t;a.toast.error(e)}),i.on("terminal.closed",e=>{let{sessionId:a}=e;t(t=>{let e=t.sessions.filter(t=>t.id!==a),s=t.activeId===a?e[0]?.id??null:t.activeId;return{sessions:e,activeId:s}})}),i.on("terminal.sessions",e=>{let{sessions:a}=e;t(t=>{let e=new Map(t.sessions.map(t=>[t.id,t])),i=a.map(t=>{let a=e.get(t.sessionId);return t.buffer&&s.set(t.sessionId,t.buffer),{...a,id:t.sessionId,cwd:t.cwd,shell:t.shell??a?.shell}}),r=!!t.activeId&&i.some(e=>e.id===t.activeId);for(let t of a)t.buffer||s.delete(t.sessionId);return{sessions:i,activeId:r?t.activeId:i[0]?.id??null,_restored:!0}}),r?.()})},createSession:(t,a)=>{let{ws:s}=e();s?.send("terminal.create",{sessionId:crypto.randomUUID?.()??crypto.getRandomValues(new Uint8Array(16)).reduce((t,e)=>t+e.toString(16).padStart(2,"0"),""),shell:t,cwd:a})},setActive:e=>t({activeId:e}),setSessionName:(e,a)=>t(t=>({sessions:t.sessions.map(t=>t.id===e?{...t,name:a}:t)})),removeSession:a=>{let{ws:s,sessions:i,activeId:r}=e();s?.send("terminal.close",{sessionId:a});let o=i.filter(t=>t.id!==a),n=r===a?o[0]?.id??null:r;t({sessions:o,activeId:n})},sendInput:(t,a)=>{e().ws?.send("terminal.input",{sessionId:t,data:a})},resize:(t,a,s)=>{e().ws?.send("terminal.resize",{sessionId:t,cols:a,rows:s})}}));t.s(["consumeSessionBuffer",0,function(t){let e=s.get(t);return s.delete(t),e},"useTerminalStore",0,i])},191441,t=>{"use strict";let e=(0,t.i(433721).default)("list-checks",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]]);t.s(["ListChecks",0,e],191441)},194228,t=>{"use strict";let e=(0,t.i(433721).default)("git-commit-horizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);t.s(["GitCommitHorizontal",0,e],194228)},404175,t=>{"use strict";var e=t.i(344180),a=t.i(227634),s=t.i(191441),i=t.i(451534),r=t.i(386041),o=t.i(426022),n=t.i(989484),c=t.i(433721);let l=(0,c.default)("square-terminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);var d=t.i(253307),h=t.i(194228),p=t.i(210),u=t.i(255742),g=t.i(943997);let m=(0,c.default)("kanban",[["path",{d:"M5 3v14",key:"9nsxs2"}],["path",{d:"M12 3v8",key:"1h2ygw"}],["path",{d:"M19 3v18",key:"1sk56x"}]]),f=[{id:"channel-list",icon:a.Hash,group:"channel"},{id:"chat",icon:o.MessageSquare,group:"channel"},{id:"issue-list",icon:s.ListChecks,group:"issue"},{id:"issue-detail",icon:d.FileDiff,group:"issue"},{id:"workfolder",icon:i.FolderOpen,group:"workfolder"},{id:"code-editor",icon:r.Code2,group:"workfolder"},{id:"terminal",icon:l,group:"tools"},{id:"git-commits",icon:h.GitCommitHorizontal,group:"git"},{id:"project-settings",icon:p.Settings2,group:"settings"},{id:"code-favorites",icon:u.Star,group:"workfolder"},{id:"database",icon:g.Database,group:"database"},{id:"database-list",icon:g.Database,group:"database"},{id:"kanban",icon:m,group:"workfolder"}],w={"channel-list":(0,e.jsx)(a.Hash,{size:16}),"issue-list":(0,e.jsx)(s.ListChecks,{size:16}),workfolder:(0,e.jsx)(i.FolderOpen,{size:16}),"code-editor":(0,e.jsx)(r.Code2,{size:16}),chat:(0,e.jsx)(o.MessageSquare,{size:16}),"issue-detail":(0,e.jsx)(n.FileText,{size:16}),terminal:(0,e.jsx)(l,{size:16}),"git-commits":(0,e.jsx)(h.GitCommitHorizontal,{size:16}),"project-settings":(0,e.jsx)(p.Settings2,{size:16}),"code-favorites":(0,e.jsx)(u.Star,{size:16}),database:(0,e.jsx)(g.Database,{size:16}),"database-list":(0,e.jsx)(g.Database,{size:16}),kanban:(0,e.jsx)(m,{size:16}),...{}};function y(t,a,s,i,r){if("git-commits"===t&&a&&!a.clean){let t=a.insertions>0||a.deletions>0,s=(0,e.jsx)("span",{className:"ml-1 text-[10px] font-medium leading-none flex items-center gap-0.5",children:t?(0,e.jsxs)(e.Fragment,{children:[a.insertions>0&&(0,e.jsxs)("span",{className:"text-green-600",children:["+",a.insertions]}),a.deletions>0&&(0,e.jsxs)("span",{className:"text-red-500",children:["-",a.deletions]})]}):(0,e.jsx)("span",{className:"text-orange-500",children:a.files.length})}),i=a.files.length;return{trailing:s,badge:i>0?(0,e.jsx)("span",{className:"absolute -top-1 -right-1.5 min-w-[14px] h-[14px] rounded-full bg-blue-500 text-white text-[9px] font-medium leading-none flex items-center justify-center px-0.5",children:i}):null}}if("terminal"===t&&s.length>0)return{trailing:null,badge:(0,e.jsx)("span",{className:"absolute -top-1 -right-1.5 min-w-[14px] h-[14px] rounded-full bg-green-500 text-white text-[9px] font-medium leading-none flex items-center justify-center px-0.5",children:s.length})};let o=(0,e.jsxs)("span",{className:"absolute -top-1 -right-1 flex h-2 w-2",children:[(0,e.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-blue-400 opacity-75"}),(0,e.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-blue-500"})]});return"channel-list"===t&&Object.values(i).some(t=>Array.isArray(t)&&t.some(t=>"streaming"===t.status||"pending"===t.status))||"issue-detail"===t&&r.some(t=>"pending"===t.status||"running"===t.status||"retrying"===t.status||"waiting_review"===t.status)?{trailing:null,badge:o}:{trailing:null,badge:null}}t.s(["RIGHT_TO_LEFT_TAB_MAP",0,{"code-editor":"workfolder",chat:"channel-list","issue-detail":"issue-list",database:"database-list"},"TAB_ITEMS",0,f,"getTabBadge",0,y,"renderTabIcon",0,function(t,a,s,i,r,o){let n=w[t];if(!n)return null;let{trailing:c,badge:l}=y(t,s,i,r,o);return(0,e.jsxs)("span",{title:a,className:"flex items-center justify-center",children:[(0,e.jsxs)("span",{className:"relative",children:[n,l]}),c]})}],404175)},202411,t=>{t.v(e=>Promise.all(["static/chunks/0k4zdm72k_bfy.js","static/chunks/0yd.m1afqg.2t.js"].map(e=>t.l(e))).then(()=>e(388576)))},136450,t=>{t.v(e=>Promise.all(["static/chunks/0xoo17yef_b8g.js","static/chunks/15hca2.5le07..js","static/chunks/0ghx3j_.-gdyd.js","static/chunks/016xz2o-hv3am.js","static/chunks/0bbmx45w_h5np.js","static/chunks/0xbaakj0dfc0..js","static/chunks/0lcc9r.o.p.sc.js","static/chunks/0ow~co9wcleka.js","static/chunks/0.006.ycpe92w.js","static/chunks/0_8dm7bxp18xo.js","static/chunks/08x85faoz58i7.js","static/chunks/0-utii~i2fncd.js","static/chunks/05psi2gtx~bev.js","static/chunks/0-~4vw4_9z_0_.js","static/chunks/0vis~lx0nxgn-.js","static/chunks/0tl6o7zu1j1r-.css","static/chunks/0ay4fv-nniykh.css","static/chunks/0pldvk5_h__t7.css","static/chunks/08.u~dmq20cak.css","static/chunks/15rf3~h7sugz4.css","static/chunks/0-wkj-hzh444r.css","static/chunks/14_y_s_5rhsd1.css","static/chunks/0z8ipjj2z-3al.css","static/chunks/06vadtvw631k5.css","static/chunks/16~udgv7eel6a.css","static/chunks/0qad.lgvtlt0b.css","static/chunks/0mt-7av8yrg0o.css","static/chunks/0brrgp3ki5w4_.css","static/chunks/16i87txo0qh0h.css","static/chunks/0ojcao3hdm36s.css"].map(e=>t.l(e))).then(()=>e(538691)))},58872,t=>{t.v(e=>Promise.all(["static/chunks/0u6h-hqc_i52e.js","static/chunks/11cchuwoupmbf.js","static/chunks/17oc2l.ekcs8b.css"].map(e=>t.l(e))).then(()=>e(608745)))},329052,t=>{t.v(e=>Promise.all(["static/chunks/0.l5e8~r7_0~p.js"].map(e=>t.l(e))).then(()=>e(878166)))},126861,t=>{t.v(e=>Promise.all(["static/chunks/02j4sr9psucf-.js","static/chunks/0.6b64sy0g5.3.js","static/chunks/12jm4gwmvq-0q.js","static/chunks/0xbaakj0dfc0..js","static/chunks/0j-l7l_k9jt45.js"].map(e=>t.l(e))).then(()=>e(773354)))},124383,t=>{t.v(e=>Promise.all(["static/chunks/0yhbr8hl09b-5.js"].map(e=>t.l(e))).then(()=>e(783481)))},318599,t=>{t.v(e=>Promise.all(["static/chunks/12oxcgyhpaxw~.js","static/chunks/033.awk90g6eh.js","static/chunks/02802taez976w.js","static/chunks/12jm4gwmvq-0q.js"].map(e=>t.l(e))).then(()=>e(706304)))},222445,t=>{t.v(e=>Promise.all(["static/chunks/0paaat8y96ayc.js","static/chunks/0t6s8of0qr6nc.js"].map(e=>t.l(e))).then(()=>e(514669)))},78906,t=>{t.v(e=>Promise.all(["static/chunks/0kbvoxla7f751.js"].map(e=>t.l(e))).then(()=>e(985646)))},857328,t=>{t.v(e=>Promise.all(["static/chunks/0xt-8wk21gs7g.js"].map(e=>t.l(e))).then(()=>e(306649)))},3725,t=>{t.v(e=>Promise.all(["static/chunks/0-f~0xmwl__u5.js"].map(e=>t.l(e))).then(()=>e(722705)))},823528,t=>{t.v(e=>Promise.all(["static/chunks/0gdwop9cnpmtu.js","static/chunks/0p3h-h3zj5ujg.js","static/chunks/0xbaakj0dfc0..js","static/chunks/12jm4gwmvq-0q.js"].map(e=>t.l(e))).then(()=>e(394896)))},173820,t=>{t.v(e=>Promise.all(["static/chunks/0-a.-hl3wv99k.js","static/chunks/0d6~~lv0-6kex.js","static/chunks/0zncg76rgtbm-.js"].map(e=>t.l(e))).then(()=>e(115133)))},903135,t=>{t.v(e=>Promise.all(["static/chunks/0-v_p6j5u3_9l.js","static/chunks/0ghx3j_.-gdyd.js"].map(e=>t.l(e))).then(()=>e(683223)))}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,940361,e=>{"use strict";var t=e.i(344180);e.s([],2365),e.i(2365);var n=e.i(764556),r=e.i(394822),a=e.i(174465),i=e.i(648224),o=e.i(35359);e.i(8890);var l=e.i(422561),s=e.i(526850),u=e.i(232449),d=e.i(410421),c=e.i(150129),f=e.i(969490),p=e.i(602453),h=e.i(817955),g=e.i(742665),m=e.i(87709);let v=n.forwardRef(function(e,t){let{render:r,className:i,style:v,...b}=e,{setAnchor:y,actionsRef:w,internalBackdropRef:x,backdropRef:S,positionerRef:z,allowMouseUpTriggerRef:C,initialCursorPointRef:M,rootId:P}=(0,a.useContextMenuRootContext)(!1),{store:k}=(0,o.useMenuRootContext)(!1),D=k.useState("open"),R=k.useState("disabled"),L=n.useRef(null),E=n.useRef(null),T=(0,u.useTimeout)(),O=(0,u.useTimeout)(),I=n.useRef(!1);function N(e,t,n){let r=n.type.startsWith("touch");M.current={x:e,y:t},y({getBoundingClientRect:()=>DOMRect.fromRect({width:10*!!r,height:10*!!r,x:e,y:t})}),I.current=!1,w.current?.setOpen(!0,(0,p.createChangeEventDetails)(g.REASONS.triggerPress,n)),O.start(500,()=>{I.current=!0})}function j(){T.clear(),E.current=null}return n.useEffect(()=>{let e=(0,s.ownerDocument)(L.current);return(0,l.addEventListener)(e,"contextmenu",function(e){if(R)return;let t=(0,d.getTarget)(e);((0,d.contains)(L.current,t)||(0,d.contains)(x.current,t)||(0,d.contains)(S.current,t))&&e.preventDefault()})},[S,R,x]),(0,f.useRenderElement)("div",e,{state:{open:D},ref:[L,t],props:[{onContextMenu:function(e){if(R)return;C.current=!0,(0,c.stopEvent)(e),N(e.clientX,e.clientY,e.nativeEvent);let t=(0,s.ownerDocument)(L.current);(0,l.addEventListener)(t,"mouseup",e=>{if(C.current=!1,!I.current)return;O.clear(),I.current=!1;let t=(0,d.getTarget)(e);(0,d.contains)(z.current,t)||P&&t&&(0,m.findRootOwnerId)(t)===P||w.current?.setOpen(!1,(0,p.createChangeEventDetails)(g.REASONS.cancelOpen,e))},{once:!0})},onTouchStart:function(e){if(!R&&(C.current=!1,1===e.touches.length)){e.stopPropagation();let t=e.touches[0];E.current={x:t.clientX,y:t.clientY},T.start(500,()=>{E.current&&N(E.current.x,E.current.y,e.nativeEvent)})}},onTouchMove:function(e){if(T.isStarted()&&E.current&&1===e.touches.length){let t=e.touches[0],n=Math.abs(t.clientX-E.current.x),r=Math.abs(t.clientY-E.current.y);(n>10||r>10)&&T.clear()}},onTouchEnd:j,onTouchCancel:j,style:{WebkitTouchCallout:"none"}},b],stateAttributesMapping:h.pressableTriggerOpenStateMapping})});var b=e.i(487455),y=e.i(293209),w=e.i(503662),x=e.i(33427),S=e.i(324573),z=e.i(582883),C=e.i(277658),M=e.i(349204),P=e.i(28051),k=e.i(597375),D=e.i(81752),R=e.i(59354),L=e.i(300637),E=e.i(281478),T=e.i(65255),O=e.i(327794),I=e.i(362962);e.s(["Arrow",()=>S.MenuArrow,"Backdrop",()=>b.MenuBackdrop,"CheckboxItem",()=>P.MenuCheckboxItem,"CheckboxItemIndicator",()=>k.MenuCheckboxItemIndicator,"Group",()=>z.MenuGroup,"GroupLabel",()=>C.MenuGroupLabel,"Item",()=>M.MenuItem,"LinkItem",()=>D.MenuLinkItem,"Popup",()=>x.MenuPopup,"Portal",()=>y.MenuPortal,"Positioner",()=>w.MenuPositioner,"RadioGroup",()=>R.MenuRadioGroup,"RadioItem",()=>L.MenuRadioItem,"RadioItemIndicator",()=>E.MenuRadioItemIndicator,"Root",0,function(e){let[l,s]=n.useState({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,x:0,y:0})}),u=n.useRef(null),d=n.useRef(null),c=n.useRef(null),f=n.useRef(null),p=n.useRef(!0),h=n.useRef(null),g=(0,r.useId)(),m=n.useMemo(()=>({anchor:l,setAnchor:s,actionsRef:c,backdropRef:u,internalBackdropRef:d,positionerRef:f,allowMouseUpTriggerRef:p,initialCursorPointRef:h,rootId:g}),[l,g]);return(0,t.jsx)(a.ContextMenuRootContext.Provider,{value:m,children:(0,t.jsx)(o.MenuRootContext.Provider,{value:void 0,children:(0,t.jsx)(i.Menu.Root,{...e})})})},"Separator",()=>I.Separator,"SubmenuRoot",()=>T.MenuSubmenuRoot,"SubmenuTrigger",()=>O.MenuSubmenuTrigger,"Trigger",0,v],912001);var N=e.i(912001),N=N,j=e.i(465458),F=e.i(932031);function G({className:e,align:n="start",alignOffset:r=4,side:a="right",sideOffset:i=0,...o}){return(0,t.jsx)(N.Portal,{children:(0,t.jsx)(N.Positioner,{className:"isolate z-50 outline-none",align:n,alignOffset:r,side:a,sideOffset:i,children:(0,t.jsx)(N.Popup,{"data-slot":"context-menu-content",className:(0,j.cn)("z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...o})})})}e.i(299648),e.s(["ContextMenu",0,function({...e}){return(0,t.jsx)(N.Root,{"data-slot":"context-menu",...e})},"ContextMenuContent",0,G,"ContextMenuItem",0,function({className:e,inset:n,variant:r="default",...a}){return(0,t.jsx)(N.Item,{"data-slot":"context-menu-item","data-inset":n,"data-variant":r,className:(0,j.cn)("group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive",e),...a})},"ContextMenuSeparator",0,function({className:e,...n}){return(0,t.jsx)(N.Separator,{"data-slot":"context-menu-separator",className:(0,j.cn)("-mx-1 my-1 h-px bg-border",e),...n})},"ContextMenuSub",0,function({...e}){return(0,t.jsx)(N.SubmenuRoot,{"data-slot":"context-menu-sub",...e})},"ContextMenuSubContent",0,function({...e}){return(0,t.jsx)(G,{"data-slot":"context-menu-sub-content",className:"shadow-lg",side:"right",...e})},"ContextMenuSubTrigger",0,function({className:e,inset:n,children:r,...a}){return(0,t.jsxs)(N.SubmenuTrigger,{"data-slot":"context-menu-sub-trigger","data-inset":n,className:(0,j.cn)("flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-7 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...a,children:[r,(0,t.jsx)(F.ChevronRightIcon,{className:"ml-auto"})]})},"ContextMenuTrigger",0,function({className:e,...n}){return(0,t.jsx)(N.Trigger,{"data-slot":"context-menu-trigger",className:(0,j.cn)("select-none",e),...n})}],940361)},486657,e=>{"use strict";let t=(0,e.i(433721).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],486657)},450158,e=>{"use strict";let t=(0,e.i(433721).default)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);e.s(["Minus",0,t],450158)},441781,e=>{"use strict";let t,n;var r=e.i(344180),a=e.i(764556);function i({groupSize:e,panelElement:t,styleProp:n}){let r,[a,o]=function(e){switch(typeof e){case"number":return[e,"px"];case"string":{let t=parseFloat(e);return e.endsWith("%")?[t,"%"]:e.endsWith("px")?[t,"px"]:e.endsWith("rem")?[t,"rem"]:e.endsWith("em")?[t,"em"]:e.endsWith("vh")?[t,"vh"]:e.endsWith("vw")?[t,"vw"]:[t,"%"]}}}(n);switch(o){case"%":r=a/100*e;break;case"px":r=a;break;case"rem":r=a*parseFloat(getComputedStyle(t.ownerDocument.body).fontSize);break;case"em":r=a*parseFloat(getComputedStyle(t).fontSize);break;case"vh":r=a/100*window.innerHeight;break;case"vw":r=a/100*window.innerWidth}return r}function o(e){return parseFloat(e.toFixed(3))}function l({group:e}){let{orientation:t,panels:n}=e;return n.reduce((e,n)=>e+="horizontal"===t?n.element.offsetWidth:n.element.offsetHeight,0)}function s(e){let{panels:t}=e,n=l({group:e});return 0===n?t.map(e=>({groupResizeBehavior:e.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:!0===e.panelConstraints.collapsible,defaultSize:void 0,disabled:e.panelConstraints.disabled,minSize:0,maxSize:100,panelId:e.id})):t.map(e=>{let t,{element:r,panelConstraints:a}=e,l=0;void 0!==a.collapsedSize&&(l=o(i({groupSize:n,panelElement:r,styleProp:a.collapsedSize})/n*100)),void 0!==a.defaultSize&&(t=o(i({groupSize:n,panelElement:r,styleProp:a.defaultSize})/n*100));let s=0;void 0!==a.minSize&&(s=o(i({groupSize:n,panelElement:r,styleProp:a.minSize})/n*100));let u=100;return void 0!==a.maxSize&&(u=o(i({groupSize:n,panelElement:r,styleProp:a.maxSize})/n*100)),{groupResizeBehavior:a.groupResizeBehavior,collapsedSize:l,collapsible:!0===a.collapsible,defaultSize:t,disabled:a.disabled,minSize:s,maxSize:u,panelId:e.id}})}function u(e,t="Assertion error"){if(!e)throw Error(t)}function d(e,t){return Array.from(t).sort("horizontal"===e?c:f)}function c(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return 0!==n?n:e.element.offsetWidth-t.element.offsetWidth}function f(e,t){let n=e.element.offsetTop-t.element.offsetTop;return 0!==n?n:e.element.offsetHeight-t.element.offsetHeight}function p(e){return null!==e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function h(e,t){return{x:e.x>=t.left&&e.x<=t.right?0:Math.min(Math.abs(e.x-t.left),Math.abs(e.x-t.right)),y:e.y>=t.top&&e.y<=t.bottom?0:Math.min(Math.abs(e.y-t.top),Math.abs(e.y-t.bottom))}}function g(e){let{element:n,orientation:r,panels:a,separators:i}=e,o=d(r,Array.from(n.children).filter(p).map(e=>({element:e}))).map(({element:e})=>e),s=[],c=!1,f=!1,g=-1,m=-1,v=0,b,y=[];{let e=-1;for(let t of o)t.hasAttribute("data-panel")&&(e++,t.hasAttribute("data-disabled")||(v++,-1===g&&(g=e),m=e))}if(v>1){let n=-1;for(let d of o)if(d.hasAttribute("data-panel")){n++;let i=a.find(e=>e.element===d);if(i){if(b){let a,o=b.element.getBoundingClientRect(),p=d.getBoundingClientRect();if(f){let e="horizontal"===r?new DOMRect(o.right,o.top,0,o.height):new DOMRect(o.left,o.bottom,o.width,0),t="horizontal"===r?new DOMRect(p.left,p.top,0,p.height):new DOMRect(p.left,p.top,p.width,0);switch(y.length){case 0:a=[e,t];break;case 1:{let n=y[0],i=function({orientation:e,rects:t,targetRect:n}){let r={x:n.x+n.width/2,y:n.y+n.height/2},a,i=Number.MAX_VALUE;for(let n of t){let{x:t,y:o}=h(r,n),l="horizontal"===e?t:o;l<i&&(i=l,a=n)}return u(a,"No rect found"),a}({orientation:r,rects:[o,p],targetRect:n.element.getBoundingClientRect()});a=[n,i===o?t:e];break}default:a=y}}else a=y.length?y:["horizontal"===r?new DOMRect(o.right,p.top,p.left-o.right,p.height):new DOMRect(p.left,o.bottom,p.width,p.top-o.bottom)];for(let r of a){let a="width"in r?r:r.element.getBoundingClientRect(),o=(void 0===t&&(t="function"==typeof matchMedia&&!!matchMedia("(pointer:coarse)").matches),t)?e.resizeTargetMinimumSize.coarse:e.resizeTargetMinimumSize.fine;if(a.width<o){let e=o-a.width;a=new DOMRect(a.x-e/2,a.y,a.width+e,a.height)}if(a.height<o){let e=o-a.height;a=new DOMRect(a.x,a.y-e/2,a.width,a.height+e)}let u=n<=g||n>m;c||u||s.push({group:e,groupSize:l({group:e}),panels:[b,i],separator:"width"in r?void 0:r,rect:a}),c=!1}}f=!1,b=i,y=[]}}else if(d.hasAttribute("data-separator")){null!==d.ariaDisabled&&(c=!0);let e=i.find(e=>e.element===d);e?y.push(e):(b=void 0,y=[])}else f=!0}return s}class m{#e={};addListener(e,t){let n=this.#e[e];return void 0===n?this.#e[e]=[t]:n.includes(t)||n.push(t),()=>{this.removeListener(e,t)}}emit(e,t){let n=this.#e[e];if(void 0!==n)if(1===n.length)n[0].call(null,t);else{let e=!1,r=null,a=Array.from(n);for(let n=0;n<a.length;n++){let i=a[n];try{i.call(null,t)}catch(t){null===r&&(e=!0,r=t)}}if(e)throw r}}removeAllListeners(){this.#e={}}removeListener(e,t){let n=this.#e[e];if(void 0!==n){let e=n.indexOf(t);e>=0&&n.splice(e,1)}}}let v=new Map,b=new m;function y(e,t){for(let[t]of v)if(t.id===e)return t}function w(e,t){for(let[t,n]of v)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function x(e,t){return b.addListener("groupChange",n=>{n.group.id===e&&t(n)})}function S(e,t){let n=v.get(e);(v=new Map(v)).set(e,t),b.emit("groupChange",{group:e,prev:n,next:t})}let z=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function C(e){let t=e.length;for(;t--;){let n=e[t];if(u(n,"Missing node"),function(e){let t,n=getComputedStyle(e);return!!("fixed"===n.position||"auto"!==n.zIndex&&("static"!==n.position||"flex"===(t=getComputedStyle(k(e)??e).display)||"inline-flex"===t)||1>+n.opacity||"transform"in n&&"none"!==n.transform||"webkitTransform"in n&&"none"!==n.webkitTransform||"mixBlendMode"in n&&"normal"!==n.mixBlendMode||"filter"in n&&"none"!==n.filter||"webkitFilter"in n&&"none"!==n.webkitFilter||"isolation"in n&&"isolate"===n.isolation||z.test(n.willChange)||"touch"===n.webkitOverflowScrolling)}(n))return n}return null}function M(e){return e&&Number(getComputedStyle(e).zIndex)||0}function P(e){let t=[];for(;e;)t.push(e),e=k(e);return t}function k(e){let{parentNode:t}=e;return null!==t&&"object"==typeof t&&"nodeType"in t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?t.host:t}function D(e,t){let n=[];return t.forEach((t,r)=>{if(r.disabled)return;let a=g(r),i=function(e,t,n){let r,a={x:1/0,y:1/0};for(let i of t){let t=h(n,i.rect);switch(e){case"horizontal":t.x<=a.x&&(r=i,a=t);break;case"vertical":t.y<=a.y&&(r=i,a=t)}}return r?{distance:a,hitRegion:r}:void 0}(r.orientation,a,{x:e.clientX,y:e.clientY});i&&i.distance.x<=0&&i.distance.y<=0&&function({groupElement:e,hitRegion:t,pointerEventTarget:n}){if(!p(n)||n.contains(e)||e.contains(n))return!0;if(function(e,t){let n;if(e===t)throw Error("Cannot compare node with itself");let r={a:P(e),b:P(t)};for(;r.a.at(-1)===r.b.at(-1);)n=r.a.pop(),r.b.pop();u(n,"Stacking order can only be calculated for elements with a common ancestor");let a={a:M(C(r.a)),b:M(C(r.b))};if(a.a===a.b){let e=n.childNodes,t={a:r.a.at(-1),b:r.b.at(-1)},a=e.length;for(;a--;){let n=e[a];if(n===t.a)return 1;if(n===t.b)return -1}}return Math.sign(a.a-a.b)}(n,e)>0){let a=n;for(;a;){var r;if(a.contains(e))break;if(r=a.getBoundingClientRect(),r.x<t.x+t.width&&r.x+r.width>t.x&&r.y<t.y+t.height&&r.y+r.height>t.y)return!1;a=a.parentElement}}return!0}({groupElement:r.element,hitRegion:i.hitRegion.rect,pointerEventTarget:e.target})&&n.push(i.hitRegion)}),n}function R(e,t,n=0){return Math.abs(o(e)-o(t))<=n}function L(e,t){return R(e,t)?0:e>t?1:-1}function E({overrideDisabledPanels:e,panelConstraints:t,prevSize:n,size:r}){let{collapsedSize:a=0,collapsible:i,disabled:l,maxSize:s=100,minSize:u=0}=t;return l&&!e?n:(0>L(r,u)&&(r=i&&0>L(r,(a+u)/2)?a:u),o(r=Math.min(s,r)))}function T({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:a,trigger:i}){if(R(e,0))return t;let o="imperative-api"===i,l=Object.values(t),s=Object.values(a),d=[...l],[c,f]=r;u(null!=c,"Invalid first pivot index"),u(null!=f,"Invalid second pivot index");let p=0;if("keyboard"===i){{let t=e<0?f:c,r=n[t];u(r,`Panel constraints not found for index ${t}`);let{collapsedSize:a=0,collapsible:i,minSize:o=0}=r;if(i){let n=l[t];if(u(null!=n,`Previous layout not found for panel index ${t}`),R(n,a)){let t=o-n;L(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?c:f,r=n[t];u(r,`No panel constraints found for index ${t}`);let{collapsedSize:a=0,collapsible:i,minSize:o=0}=r;if(i){let n=l[t];if(u(null!=n,`Previous layout not found for panel index ${t}`),R(n,o)){let t=n-a;L(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}else{let t=e<0?f:c,r=n[t];u(r,`Panel constraints not found for index ${t}`);let a=l[t],{collapsible:i,collapsedSize:o,minSize:s}=r;if(i&&0>L(a,s))if(e>0){let t=s-o;0>L(a+e,s)&&(e=0>=L(e,t/2)?0:t)}else{let t=s-o;0>L(a-e,s)&&(e=L(100+e,100-t/2)>0?0:-t)}}{let t=e<0?1:-1,r=e<0?f:c,a=0;for(;;){let e=l[r];if(u(null!=e,`Previous layout not found for panel index ${r}`),a+=E({overrideDisabledPanels:o,panelConstraints:n[r],prevSize:e,size:100})-e,(r+=t)<0||r>=n.length)break}let i=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-i:i}{let t=e<0?c:f;for(;t>=0&&t<n.length;){let r=Math.abs(e)-Math.abs(p),a=l[t];u(null!=a,`Previous layout not found for panel index ${t}`);let i=a-r,s=E({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:a,size:i});if(!R(a,s)&&(p+=a-s,d[t]=s,p.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?t--:t++}}if(function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}(s,d))return a;{let t=e<0?f:c,r=l[t];u(null!=r,`Previous layout not found for panel index ${t}`);let a=r+p,i=E({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:r,size:a});if(d[t]=i,!R(i,a)){let t=a-i,r=e<0?f:c;for(;r>=0&&r<n.length;){let a=d[r];u(null!=a,`Previous layout not found for panel index ${r}`);let i=a+t,l=E({overrideDisabledPanels:o,panelConstraints:n[r],prevSize:a,size:i});if(R(a,l)||(t-=l-a,d[r]=l),R(t,0))break;e>0?r--:r++}}}if(!R(Object.values(d).reduce((e,t)=>t+e,0),100,.1))return a;let h=Object.keys(a);return d.reduce((e,t,n)=>(e[h[n]]=t,e),{})}function O(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(void 0===t[n]||0!==L(e[n],t[n]))return!1;return!0}function I({layout:e,panelConstraints:t}){let n=Object.values(e),r=[...n],a=r.reduce((e,t)=>e+t,0);if(r.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${r.map(e=>`${e}%`).join(", ")}`);if(!R(a,100)&&r.length>0)for(let e=0;e<t.length;e++){let t=r[e];u(null!=t,`No layout data found for index ${e}`);let n=100/a*t;r[e]=n}let i=0;for(let e=0;e<t.length;e++){let a=n[e];u(null!=a,`No layout data found for index ${e}`);let o=r[e];u(null!=o,`No layout data found for index ${e}`);let l=E({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:a,size:o});o!=l&&(i+=o-l,r[e]=l)}if(!R(i,0))for(let e=0;e<t.length;e++){let n=r[e];u(null!=n,`No layout data found for index ${e}`);let a=n+i,o=E({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:n,size:a});if(n!==o&&(i-=o-n,r[e]=o,R(i,0)))break}let o=Object.keys(e);return r.reduce((e,t,n)=>(e[o[n]]=t,e),{})}function N({groupId:e,panelId:t}){let n=()=>{for(let[t,{defaultLayoutDeferred:n,derivedPanelConstraints:r,layout:a,groupSize:i,separatorToPanels:o}]of v)if(t.id===e)return{defaultLayoutDeferred:n,derivedPanelConstraints:r,group:t,groupSize:i,layout:a,separatorToPanels:o};throw Error(`Group ${e} not found`)},r=()=>{let e=n().derivedPanelConstraints.find(e=>e.panelId===t);if(void 0!==e)return e;throw Error(`Panel constraints not found for Panel ${t}`)},a=()=>{let e=n().group.panels.find(e=>e.id===t);if(void 0!==e)return e;throw Error(`Layout not found for Panel ${t}`)},s=()=>{let e=n().layout[t];if(void 0!==e)return e;throw Error(`Layout not found for Panel ${t}`)},u=e=>{if(e===s())return;let{defaultLayoutDeferred:r,derivedPanelConstraints:a,group:i,groupSize:l,layout:u,separatorToPanels:d}=n(),c=I({layout:(({nextSize:e,panels:n,prevLayout:r,derivedPanelConstraints:a})=>{let i=s(),l=n.findIndex(e=>e.id===t),u=0===l,d=l===n.length-1;if(d&&e<i&&(u||n.slice(0,l).every((e,t)=>{let n=a[t];return n?.collapsible&&R(n.collapsedSize,r[n.panelId])}))){let e=n.slice(0,l).reduce((e,t)=>e+r[t.id],0);return{...r,[t]:o(100-e)}}return T({delta:d?i-e:e-i,initialLayout:r,panelConstraints:a,pivotIndices:d?[l-1,l]:[l,l+1],prevLayout:r,trigger:"imperative-api"})})({nextSize:e,panels:i.panels,prevLayout:u,derivedPanelConstraints:a}),panelConstraints:a});O(u,c)||S(i,{defaultLayoutDeferred:r,derivedPanelConstraints:a,groupSize:l,layout:c,separatorToPanels:d})};return{collapse:()=>{let{collapsible:e,collapsedSize:t}=r(),{mutableValues:n}=a(),i=s();e&&i!==t&&(n.expandToSize=i,u(t))},expand:()=>{let{collapsible:e,collapsedSize:t,minSize:n}=r(),{mutableValues:i}=a(),o=s();if(e&&o===t){let e=i.expandToSize??n;0===e&&(e=1),u(e)}},getSize:()=>{let{group:e}=n(),t=s(),{element:r}=a();return{asPercentage:t,inPixels:"horizontal"===e.orientation?r.offsetWidth:r.offsetHeight}},isCollapsed:()=>{let{collapsible:e,collapsedSize:t}=r(),n=s();return e&&R(t,n)},resize:e=>{let{group:t}=n(),{element:r}=a(),s=l({group:t});u(o(i({groupSize:s,panelElement:r,styleProp:e})/s*100))}}}function j(e){e.defaultPrevented||D(e,v).forEach(t=>{if(t.separator&&!t.separator.disableDoubleClick){let n=t.panels.find(e=>void 0!==e.panelConstraints.defaultSize);if(n){let r=n.panelConstraints.defaultSize,a=N({groupId:t.group.id,panelId:n.id});a&&void 0!==r&&(a.resize(r),e.preventDefault())}}})}function F(e){for(let[t]of v)if(t.separators.some(t=>t.element===e))return t;throw Error("Could not find parent Group for separator element")}function G({groupId:e}){let t=()=>{for(let[t,n]of v)if(t.id===e)return{group:t,...n};throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){let{defaultLayoutDeferred:e,layout:n}=t();return e?{}:n},setLayout(e){let{defaultLayoutDeferred:n,derivedPanelConstraints:r,group:a,groupSize:i,layout:o,separatorToPanels:l}=t(),s=I({layout:e,panelConstraints:r});return n?o:(O(o,s)||S(a,{defaultLayoutDeferred:n,derivedPanelConstraints:r,groupSize:i,layout:s,separatorToPanels:l}),s)}}}function A(e,t){let n=F(e),r=w(n.id,!0),a=n.separators.find(t=>t.element===e);u(a,"Matching separator not found");let i=r.separatorToPanels.get(a);u(i,"Matching panels not found");let o=i.map(e=>n.panels.indexOf(e)),l=G({groupId:n.id}).getLayout(),s=I({layout:T({delta:t,initialLayout:l,panelConstraints:r.derivedPanelConstraints,pivotIndices:o,prevLayout:l,trigger:"keyboard"}),panelConstraints:r.derivedPanelConstraints});O(l,s)||S(n,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedPanelConstraints:r.derivedPanelConstraints,groupSize:r.groupSize,layout:s,separatorToPanels:r.separatorToPanels})}function W(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=F(t);if(!n.disabled)switch(e.key){case"ArrowDown":e.preventDefault(),"vertical"===n.orientation&&A(t,5);break;case"ArrowLeft":e.preventDefault(),"horizontal"===n.orientation&&A(t,-5);break;case"ArrowRight":e.preventDefault(),"horizontal"===n.orientation&&A(t,5);break;case"ArrowUp":e.preventDefault(),"vertical"===n.orientation&&A(t,-5);break;case"End":e.preventDefault(),A(t,100);break;case"Enter":{e.preventDefault();let n=F(t),{derivedPanelConstraints:r,layout:a,separatorToPanels:i}=w(n.id,!0),o=n.separators.find(e=>e.element===t);u(o,"Matching separator not found");let l=i.get(o);u(l,"Matching panels not found");let s=l[0],d=r.find(e=>e.panelId===s.id);if(u(d,"Panel metadata not found"),d.collapsible){let e=a[s.id];A(t,(d.collapsedSize===e?n.mutableState.expandedPanelSizes[s.id]??d.minSize:d.collapsedSize)-e)}break}case"F6":{e.preventDefault();let n=F(t).separators.map(e=>e.element),r=Array.from(n).findIndex(t=>t===e.currentTarget);u(null!==r,"Index not found");let a=e.shiftKey?r>0?r-1:n.length-1:r+1<n.length?r+1:0;n[a].focus({preventScroll:!0});break}case"Home":e.preventDefault(),A(t,-100)}}let Y={cursorFlags:0,state:"inactive"},B=new m;function H(e){let t=Y;Y=e,B.emit("change",{prev:t,next:e})}function $(e){if(e.defaultPrevented||"mouse"===e.pointerType&&e.button>0)return;let t=v,n=D(e,t),r=new Map,a=!1;n.forEach(e=>{e.separator&&(a||(a=!0,e.separator.element.focus({focusVisible:!1,preventScroll:!0})));let n=t.get(e.group);n&&r.set(e.group,n.layout)}),H({cursorFlags:0,hitRegions:n,initialLayoutMap:r,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:"active"}),n.length&&e.preventDefault()}let q=e=>e,X=()=>{};function Q(){return void 0===n&&(n=!1,"u">typeof window&&(window.navigator.userAgent.includes("Chrome")||window.navigator.userAgent.includes("Firefox"))&&(n=!0)),n}let V=new WeakMap;function _(e){if(null===e.defaultView||void 0===e.defaultView)return;let{prevStyle:t,styleSheet:n}=V.get(e)??{};void 0===n&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&(Object.isExtensible(e.adoptedStyleSheets)?e.adoptedStyleSheets.push(n):e.adoptedStyleSheets=[...e.adoptedStyleSheets,n]));let r=Y;switch(r.state){case"active":case"hover":{let e=function({cursorFlags:e,groups:t,state:n}){let r=0,a=0;switch(n){case"active":case"hover":t.forEach(e=>{if(!e.mutableState.disableCursor)switch(e.orientation){case"horizontal":r++;break;case"vertical":a++}})}if(0!==r||0!==a){if("active"===n&&e&&Q()){let t=(4&e)!=0,n=(8&e)!=0;if((1&e)!=0)return t?"se-resize":n?"ne-resize":"e-resize";if((2&e)!=0)return t?"sw-resize":n?"nw-resize":"w-resize";if(t)return"s-resize";if(n)return"n-resize"}return Q()?r>0&&a>0?"move":r>0?"ew-resize":"ns-resize":r>0&&a>0?"grab":r>0?"col-resize":"row-resize"}}({cursorFlags:r.cursorFlags,groups:r.hitRegions.map(e=>e.group),state:r.state}),a=`*, *:hover {cursor: ${e} !important; }`;if(t===a)return;t=a,e?0===n.cssRules.length?n.insertRule(a):n.replaceSync(a):1===n.cssRules.length&&n.deleteRule(0);break}case"inactive":t=void 0,1===n.cssRules.length&&n.deleteRule(0)}V.set(e,{prevStyle:t,styleSheet:n})}function U({document:e,event:t,hitRegions:n,initialLayoutMap:r,mountedGroups:a,pointerDownAtPoint:i,prevCursorFlags:o}){var l;let s,u,d=0;n.forEach(e=>{let{group:n,groupSize:o}=e,{orientation:l,panels:s}=n,{disableCursor:u}=n.mutableState,c=0;c=i?"horizontal"===l?(t.clientX-i.x)/o*100:(t.clientY-i.y)/o*100:"horizontal"===l?t.clientX<0?-100:100:t.clientY<0?-100:100;let f=r.get(n),p=a.get(n);if(!f||!p)return;let{defaultLayoutDeferred:h,derivedPanelConstraints:g,groupSize:m,layout:v,separatorToPanels:b}=p;if(g&&v&&b){let t=T({delta:c,initialLayout:f,panelConstraints:g,pivotIndices:e.panels.map(e=>s.indexOf(e)),prevLayout:v,trigger:"mouse-or-touch"});if(O(t,v)){if(0!==c&&!u)switch(l){case"horizontal":d|=c<0?1:2;break;case"vertical":d|=c<0?4:8}}else S(e.group,{defaultLayoutDeferred:h,derivedPanelConstraints:g,groupSize:m,layout:t,separatorToPanels:b})}});let c=0;0===t.movementX?c|=3&o:c|=3&d,0===t.movementY?c|=12&o:c|=12&d,l=c,s=Y,(u={...Y}).cursorFlags=l,Y=u,B.emit("change",{prev:s,next:u}),_(e)}function K(e){let t=v,n=Y;"active"===n.state&&U({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,prevCursorFlags:n.cursorFlags})}function J(e){if(e.defaultPrevented)return;let t=Y,n=v;if("active"===t.state){if(0===e.buttons){H({cursorFlags:0,state:"inactive"}),t.hitRegions.forEach(e=>{let t=w(e.group.id,!0);S(e.group,t)});return}for(let n of t.hitRegions)if(n.separator){let{element:t}=n.separator;t.hasPointerCapture?.(e.pointerId)||t.setPointerCapture?.(e.pointerId)}U({document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedGroups:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags})}else{let r=D(e,n);0===r.length?"inactive"!==t.state&&H({cursorFlags:0,state:"inactive"}):H({cursorFlags:0,hitRegions:r,state:"hover"}),_(e.currentTarget)}}function Z(e){e.relatedTarget instanceof HTMLIFrameElement&&"hover"===Y.state&&H({cursorFlags:0,state:"inactive"})}function ee(e){if(e.defaultPrevented||"mouse"===e.pointerType&&e.button>0)return;let t=Y;"active"===t.state&&(H({cursorFlags:0,state:"inactive"}),t.hitRegions.length>0&&(_(e.currentTarget),t.hitRegions.forEach(e=>{let t=w(e.group.id,!0);S(e.group,t)}),e.preventDefault()))}function et(e){let t=0,n=0,r={};for(let a of e)if(void 0!==a.defaultSize){t++;let e=o(a.defaultSize);n+=e,r[a.panelId]=e}else r[a.panelId]=void 0;let a=e.length-t;if(0!==a){let t=o((100-n)/a);for(let n of e)void 0===n.defaultSize&&(r[n.panelId]=t)}return r}let en=new Map;function er(e){let t=(0,a.useId)();return`${e??t}`}let ea="u">typeof window?a.useLayoutEffect:a.useEffect;function ei(e){let t=(0,a.useRef)(e);return ea(()=>{t.current=e},[e]),(0,a.useCallback)((...e)=>t.current?.(...e),[t])}function eo(...e){return ei(t=>{e.forEach(e=>{if(e)switch(typeof e){case"function":e(t);break;case"object":e.current=t}})})}function el(e){let t=(0,a.useRef)({...e});return ea(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}let es=(0,a.createContext)(null);function eu({children:e,className:t,defaultLayout:n,disableCursor:i,disabled:c,elementRef:f,groupRef:p,id:h,onLayoutChange:m,onLayoutChanged:b,orientation:z="horizontal",resizeTargetMinimumSize:C={coarse:20,fine:10},style:M,...P}){let k,D=(0,a.useRef)({onLayoutChange:{},onLayoutChanged:{}}),L=ei(e=>{O(D.current.onLayoutChange,e)||(D.current.onLayoutChange=e,m?.(e))}),E=ei(e=>{O(D.current.onLayoutChanged,e)||(D.current.onLayoutChanged=e,b?.(e))}),T=er(h),N=(0,a.useRef)(null),[F,A]=function(){let[e,t]=(0,a.useState)({});return[e,(0,a.useCallback)(()=>t({}),[])]}(),B=(0,a.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:C,separators:[]}),H=eo(N,f);k=(0,a.useRef)({getLayout:()=>({}),setLayout:q}),(0,a.useImperativeHandle)(p,()=>k.current,[]),ea(()=>{Object.assign(k.current,G({groupId:T}))});let X=ei((e,t)=>{let r=Y,a=y(e),i=w(e);if(i){let e=!1;return"active"===r.state&&(e=r.hitRegions.some(e=>e.group===a)),{flexGrow:i.layout[t]??1,pointerEvents:e?"none":void 0}}if(n?.[t])return{flexGrow:n?.[t]}}),Q=el({defaultLayout:n,disableCursor:i}),V=(0,a.useMemo)(()=>({get disableCursor(){return!!Q.disableCursor},getPanelStyles:X,id:T,orientation:z,registerPanel:e=>{let t=B.current;return t.panels=d(z,[...t.panels,e]),A(),()=>{t.panels=t.panels.filter(t=>t!==e),A()}},registerSeparator:e=>{let t=B.current;return t.separators=d(z,[...t.separators,e]),A(),()=>{t.separators=t.separators.filter(t=>t!==e),A()}},updatePanelProps:(e,{disabled:t})=>{let n=B.current.panels.find(t=>t.id===e);n&&(n.panelConstraints.disabled=t);let r=y(T),a=w(T);r&&a&&S(r,{...a,derivedPanelConstraints:s(r)})},updateSeparatorProps:(e,{disabled:t,disableDoubleClick:n})=>{let r=B.current.separators.find(t=>t.id===e);r&&(r.disabled=t,r.disableDoubleClick=n)}}),[X,T,A,z,Q]),_=(0,a.useRef)(null);return ea(()=>{let e,t,n,r,a,i,d,f,p,h,m,b,y,C=N.current;if(null===C)return;let M=B.current;if(void 0!==Q.defaultLayout&&Object.keys(Q.defaultLayout).length===M.panels.length)for(let t of(e={},M.panels)){let n=Q.defaultLayout[t.id];void 0!==n&&(e[t.id]=n)}let P={disabled:!!c,element:C,id:T,mutableState:{defaultLayout:e,disableCursor:!!Q.disableCursor,expandedPanelSizes:B.current.lastExpandedPanelSizes,layouts:B.current.layouts},orientation:z,panels:M.panels,resizeTargetMinimumSize:M.resizeTargetMinimumSize,separators:M.separators};_.current=P;let k=(t=!0,u(P.element.ownerDocument.defaultView,"Cannot register an unmounted Group"),n=P.element.ownerDocument.defaultView.ResizeObserver,r=new Set,a=new Set,(i=new n(e=>{for(let n of e){let{borderBoxSize:e,target:r}=n;if(r===P.element){if(t){let e=l({group:P});if(0===e)return;let t=w(P.id);if(!t)return;let n=s(P),r=t.defaultLayoutDeferred?et(n):t.layout,a=I({layout:function({group:e,nextGroupSize:t,prevGroupSize:n,prevLayout:r}){if(n<=0||t<=0||n===t)return r;let a=0,i=0,l=!1,s=new Map,u=[];for(let d of e.panels){let e=r[d.id]??0;if("preserve-pixel-size"===d.panelConstraints.groupResizeBehavior){l=!0;let r=o(e/100*n/t*100);s.set(d.id,r),a+=r}else u.push(d.id),i+=e}if(!l||0===u.length)return r;let d=100-a,c={...r};if(s.forEach((e,t)=>{c[t]=e}),i>0)for(let e of u){let t=r[e]??0;c[e]=o(t/i*d)}else{let e=o(d/u.length);for(let t of u)c[t]=e}return c}({group:P,nextGroupSize:e,prevGroupSize:t.groupSize,prevLayout:r}),panelConstraints:n});if(!t.defaultLayoutDeferred&&O(t.layout,a)&&function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}(t.derivedPanelConstraints,n)&&t.groupSize===e)return;S(P,{defaultLayoutDeferred:!1,derivedPanelConstraints:n,groupSize:e,layout:a,separatorToPanels:t.separatorToPanels})}}else!function(e,t,n){if(!n[0])return;let r=e.panels.find(e=>e.element===t);if(!r||!r.onResize)return;let a=l({group:e}),i="horizontal"===e.orientation?r.element.offsetWidth:r.element.offsetHeight,s=r.mutableValues.prevSize,u={asPercentage:o(i/a*100),inPixels:i};r.mutableValues.prevSize=u,r.onResize(u,r.id,s)}(P,r,e)}})).observe(P.element),P.panels.forEach(e=>{u(!r.has(e.id),`Panel ids must be unique; id "${e.id}" was used more than once`),r.add(e.id),e.onResize&&i.observe(e.element)}),d=l({group:P}),f=s(P),p=P.panels.map(({id:e})=>e).join(","),(h=P.mutableState.defaultLayout)&&(function(e,t){let n=e.map(e=>e.id),r=Object.keys(t);if(n.length!==r.length)return!1;for(let e of n)if(!r.includes(e))return!1;return!0}(P.panels,h)||(h=void 0)),m=I({layout:P.mutableState.layouts[p]??h??et(f),panelConstraints:f}),b=P.element.ownerDocument,en.set(b,(en.get(b)??0)+1),y=new Map,g(P).forEach(e=>{e.separator&&y.set(e.separator,e.panels)}),S(P,{defaultLayoutDeferred:0===d,derivedPanelConstraints:f,groupSize:d,layout:m,separatorToPanels:y}),P.separators.forEach(e=>{u(!a.has(e.id),`Separator ids must be unique; id "${e.id}" was used more than once`),a.add(e.id),e.element.addEventListener("keydown",W)}),1===en.get(b)&&(b.addEventListener("dblclick",j,!0),b.addEventListener("pointerdown",$,!0),b.addEventListener("pointerleave",K),b.addEventListener("pointermove",J),b.addEventListener("pointerout",Z),b.addEventListener("pointerup",ee,!0)),function(){t=!1,en.set(b,Math.max(0,(en.get(b)??0)-1)),(v=new Map(v)).delete(P),P.separators.forEach(e=>{e.element.removeEventListener("keydown",W)}),en.get(b)||(b.removeEventListener("dblclick",j,!0),b.removeEventListener("pointerdown",$,!0),b.removeEventListener("pointerleave",K),b.removeEventListener("pointermove",J),b.removeEventListener("pointerout",Z),b.removeEventListener("pointerup",ee,!0)),i.disconnect()}),{defaultLayoutDeferred:D,derivedPanelConstraints:F,layout:G}=w(P.id,!0);!D&&F.length>0&&(L(G),E(G));let A=x(T,e=>{let{defaultLayoutDeferred:t,derivedPanelConstraints:n,layout:r}=e.next;if(t||0===n.length)return;let a=P.panels.map(({id:e})=>e).join(",");P.mutableState.layouts[a]=r,n.forEach(t=>{if(t.collapsible){let{layout:n}=e.prev??{};if(n){let e=R(t.collapsedSize,r[t.panelId]),a=R(t.collapsedSize,n[t.panelId]);e&&!a&&(P.mutableState.expandedPanelSizes[t.panelId]=n[t.panelId])}}});let i="active"!==Y.state;L(r),i&&E(r)});return()=>{_.current=null,k(),A()}},[c,T,E,L,z,F,Q]),(0,a.useEffect)(()=>{let e=_.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!i)}),(0,r.jsx)(es.Provider,{value:V,children:(0,r.jsx)("div",{...P,className:t,"data-group":!0,"data-testid":T,id:T,ref:H,style:{height:"100%",width:"100%",overflow:"hidden",...M,display:"flex",flexDirection:"horizontal"===z?"row":"column",flexWrap:"nowrap",touchAction:"horizontal"===z?"pan-y":"pan-x"},children:e})})}function ed(){let e=(0,a.useContext)(es);return u(e,"Group Context not found; did you render a Panel or Separator outside of a Group?"),e}function ec({children:e,className:t,collapsedSize:n="0%",collapsible:i=!1,defaultSize:o,disabled:l,elementRef:s,groupResizeBehavior:u="preserve-relative-size",id:d,maxSize:c="100%",minSize:f="0%",onResize:p,panelRef:h,style:g,...m}){let v,b=!!d,y=er(d),w=el({disabled:l}),S=(0,a.useRef)(null),z=eo(S,s),{getPanelStyles:C,id:M,orientation:P,registerPanel:k,updatePanelProps:D}=ed(),R=null!==p,L=ei((e,t,n)=>{p?.(e,d,n)});ea(()=>{let e=S.current;if(null!==e)return k({element:e,id:y,idIsStable:b,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:R?L:void 0,panelConstraints:{groupResizeBehavior:u,collapsedSize:n,collapsible:i,defaultSize:o,disabled:w.disabled,maxSize:c,minSize:f}})},[u,n,i,o,R,y,b,c,f,L,k,w]),(0,a.useEffect)(()=>{D(y,{disabled:l})},[l,y,D]),function(e,t){let{id:n}=ed(),r=(0,a.useRef)({collapse:X,expand:X,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:X});(0,a.useImperativeHandle)(t,()=>r.current,[]),ea(()=>{Object.assign(r.current,N({groupId:n,panelId:e}))})}(y,h);let E=()=>{let e=C(M,y);if(e)return JSON.stringify(e)},T=(0,a.useSyncExternalStore)(e=>x(M,e),E,E);return v=T?JSON.parse(T):void 0!==o?{flexGrow:void 0,flexShrink:void 0,flexBasis:o}:{flexGrow:1},(0,r.jsx)("div",{...m,"data-disabled":l||void 0,"data-panel":!0,"data-testid":y,id:y,ref:z,style:{...ef,display:"flex",flexBasis:0,flexShrink:1,overflow:"visible",...v},children:(0,r.jsx)("div",{className:t,style:{maxHeight:"100%",maxWidth:"100%",flexGrow:1,overflow:"auto",...g,touchAction:"horizontal"===P?"pan-y":"pan-x"},children:e})})}eu.displayName="Group",ec.displayName="Panel";let ef={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function ep({children:e,className:t,disabled:n,disableDoubleClick:i,elementRef:o,id:l,style:s,...u}){let d,c,f=er(l),p=el({disabled:n,disableDoubleClick:i}),[h,g]=(0,a.useState)({}),[m,v]=(0,a.useState)("inactive"),[b,y]=(0,a.useState)(!1),w=(0,a.useRef)(null),S=eo(w,o),{disableCursor:z,id:C,orientation:M,registerSeparator:P,updateSeparatorProps:k}=ed();return ea(()=>{let e=w.current;if(null!==e){var t;let n={disabled:p.disabled,disableDoubleClick:p.disableDoubleClick,element:e,id:f},r=P(n),a=(t=e=>{v("inactive"!==e.next.state&&e.next.hitRegions.some(e=>e.separator===n)?e.next.state:"inactive")},B.addListener("change",t)),i=x(C,e=>{let{derivedPanelConstraints:t,layout:r,separatorToPanels:a}=e.next,i=a.get(n);if(i){let e=i[0],n=i.indexOf(e);g(function({layout:e,panelConstraints:t,panelId:n,panelIndex:r}){let a,i,o=e[n],l=t.find(e=>e.panelId===n);if(l){let s=l.maxSize,u=l.collapsible?l.collapsedSize:l.minSize,d=[r,r+1];i=I({layout:T({delta:u-o,initialLayout:e,panelConstraints:t,pivotIndices:d,prevLayout:e}),panelConstraints:t})[n],a=I({layout:T({delta:s-o,initialLayout:e,panelConstraints:t,pivotIndices:d,prevLayout:e}),panelConstraints:t})[n]}return{valueControls:n,valueMax:a,valueMin:i,valueNow:o}}({layout:r,panelConstraints:t,panelId:e.id,panelIndex:n}))}});return()=>{a(),i(),r()}}},[C,f,P,p]),(0,a.useEffect)(()=>{k(f,{disabled:n,disableDoubleClick:i})},[n,i,f,k]),n&&!z&&(d="not-allowed"),c=n?"disabled":"active"===m?"active":b?"focus":m,(0,r.jsx)("div",{...u,"aria-controls":h.valueControls,"aria-disabled":n||void 0,"aria-orientation":"horizontal"===M?"vertical":"horizontal","aria-valuemax":h.valueMax,"aria-valuemin":h.valueMin,"aria-valuenow":h.valueNow,children:e,className:t,"data-separator":c,"data-testid":f,id:f,onBlur:()=>y(!1),onFocus:()=>y(!0),ref:S,role:"separator",style:{flexBasis:"auto",cursor:d,...s,flexGrow:0,flexShrink:0,touchAction:"none"},tabIndex:n?void 0:0})}ep.displayName="Separator";var eh=e.i(465458);e.s(["ResizableHandle",0,function({withHandle:e,className:t,...n}){return(0,r.jsx)(ep,{"data-slot":"resizable-handle",className:(0,eh.cn)("relative flex w-px items-center justify-center bg-border ring-offset-background after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-hidden aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full aria-[orientation=horizontal]:after:left-0 aria-[orientation=horizontal]:after:h-1 aria-[orientation=horizontal]:after:w-full aria-[orientation=horizontal]:after:translate-x-0 aria-[orientation=horizontal]:after:-translate-y-1/2 [&[aria-orientation=horizontal]>div]:rotate-90",t),...n,children:e&&(0,r.jsx)("div",{className:"z-10 flex h-6 w-1 shrink-0 rounded-lg bg-border"})})},"ResizablePanel",0,function({...e}){return(0,r.jsx)(ec,{"data-slot":"resizable-panel",...e})},"ResizablePanelGroup",0,function({className:e,...t}){return(0,r.jsx)(eu,{"data-slot":"resizable-panel-group",className:(0,eh.cn)("flex h-full w-full aria-[orientation=vertical]:flex-col",e),...t})}],441781)},212965,e=>{"use strict";let t=(0,e.i(433721).default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);e.s(["ArrowDown",0,t],212965)},230902,738416,870429,921127,954259,234867,669352,44318,966625,e=>{"use strict";var t=e.i(238153),n=e.i(492421),r=e.i(632713),a=e.i(539392),i=e.i(511518),o=e.i(516467);function l(e,t){let n=(0,o.toDate)(e,t?.in);return n.setHours(0,0,0,0),n}function s(e,t,n){let[o,s]=(0,a.normalizeDates)(n?.in,e,t),u=l(o),d=l(s);return Math.round((u-(0,r.getTimezoneOffsetInMilliseconds)(u)-(d-(0,r.getTimezoneOffsetInMilliseconds)(d)))/i.millisecondsInDay)}function u(e,t){let n=(0,o.toDate)(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function d(e,t){let r=(0,n.getDefaultOptions)(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=(0,o.toDate)(e,t?.in),l=i.getDay();return i.setDate(i.getDate()-(7*(l<a)+l-a)),i.setHours(0,0,0,0),i}function c(e,t){return d(e,{...t,weekStartsOn:1})}e.s(["startOfDay",0,l],738416),e.s(["differenceInCalendarDays",0,s],870429),e.s(["startOfYear",0,u],921127),e.s(["startOfWeek",0,d],954259),e.s(["startOfISOWeek",0,c],234867);var f=e.i(487122);function p(e,t){let n=(0,o.toDate)(e,t?.in),r=n.getFullYear(),a=(0,f.constructFrom)(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);let i=c(a),l=(0,f.constructFrom)(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);let s=c(l);return n.getTime()>=i.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function h(e,t){let n,r,a=(0,o.toDate)(e,t?.in);return Math.round((c(a)-(n=p(a,void 0),(r=(0,f.constructFrom)(a,0)).setFullYear(n,0,4),r.setHours(0,0,0,0),c(r)))/i.millisecondsInWeek)+1}function g(e,t){let r=(0,o.toDate)(e,t?.in),a=r.getFullYear(),i=(0,n.getDefaultOptions)(),l=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,s=(0,f.constructFrom)(t?.in||e,0);s.setFullYear(a+1,0,l),s.setHours(0,0,0,0);let u=d(s,t),c=(0,f.constructFrom)(t?.in||e,0);c.setFullYear(a,0,l),c.setHours(0,0,0,0);let p=d(c,t);return+r>=+u?a+1:+r>=+p?a:a-1}function m(e,t){let r,a,l,s,u=(0,o.toDate)(e,t?.in);return Math.round((d(u,t)-(r=(0,n.getDefaultOptions)(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=g(u,t),(s=(0,f.constructFrom)(t?.in||u,0)).setFullYear(l,0,a),s.setHours(0,0,0,0),d(s,t)))/i.millisecondsInWeek)+1}function v(e,t){let n=Math.abs(e).toString().padStart(t,"0");return(e<0?"-":"")+n}e.s(["getISOWeek",0,h],669352),e.s(["getWeek",0,m],44318);let b={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return v("yy"===t?r%100:r,t.length)},M(e,t){let n=e.getMonth();return"M"===t?String(n+1):v(n+1,2)},d:(e,t)=>v(e.getDate(),t.length),a(e,t){let n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return"am"===n?"a.m.":"p.m."}},h:(e,t)=>v(e.getHours()%12||12,t.length),H:(e,t)=>v(e.getHours(),t.length),m:(e,t)=>v(e.getMinutes(),t.length),s:(e,t)=>v(e.getSeconds(),t.length),S(e,t){let n=t.length;return v(Math.trunc(e.getMilliseconds()*Math.pow(10,n-3)),t.length)}},y={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){let t=e.getFullYear();return n.ordinalNumber(t>0?t:1-t,{unit:"year"})}return b.y(e,t)},Y:function(e,t,n,r){let a=g(e,r),i=a>0?a:1-a;return"YY"===t?v(i%100,2):"Yo"===t?n.ordinalNumber(i,{unit:"year"}):v(i,t.length)},R:function(e,t){return v(p(e),t.length)},u:function(e,t){return v(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return v(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return v(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){let r=e.getMonth();switch(t){case"M":case"MM":return b.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){let r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return v(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){let a=m(e,r);return"wo"===t?n.ordinalNumber(a,{unit:"week"}):v(a,t.length)},I:function(e,t,n){let r=h(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):v(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getDate(),{unit:"date"}):b.d(e,t)},D:function(e,t,n){let r,a=s(r=(0,o.toDate)(e,void 0),u(r))+1;return"Do"===t?n.ordinalNumber(a,{unit:"dayOfYear"}):v(a,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){let a=e.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(i);case"ee":return v(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){let a=e.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(i);case"cc":return v(i,t.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(e,t,n){let r=e.getDay(),a=0===r?7:r;switch(t){case"i":return String(a);case"ii":return v(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){let r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){let r,a=e.getHours();switch(r=12===a?"noon":0===a?"midnight":a/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){let r,a=e.getHours();switch(r=a>=17?"evening":a>=12?"afternoon":a>=4?"morning":"night",t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),n.ordinalNumber(t,{unit:"hour"})}return b.h(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getHours(),{unit:"hour"}):b.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):v(r,t.length)},k:function(e,t,n){let r=e.getHours();return(0===r&&(r=24),"ko"===t)?n.ordinalNumber(r,{unit:"hour"}):v(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):b.m(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getSeconds(),{unit:"second"}):b.s(e,t)},S:function(e,t){return b.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(0===r)return"Z";switch(t){case"X":return x(r);case"XXXX":case"XX":return S(r);default:return S(r,":")}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case"x":return x(r);case"xxxx":case"xx":return S(r);default:return S(r,":")}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+w(r,":");default:return"GMT"+S(r,":")}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+w(r,":");default:return"GMT"+S(r,":")}},t:function(e,t,n){return v(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return v(+e,t.length)}};function w(e,t=""){let n=e>0?"-":"+",r=Math.abs(e),a=Math.trunc(r/60),i=r%60;return 0===i?n+String(a):n+String(a)+t+v(i,2)}function x(e,t){return e%60==0?(e>0?"-":"+")+v(Math.abs(e)/60,2):S(e,t)}function S(e,t=""){let n=Math.abs(e);return(e>0?"-":"+")+v(Math.trunc(n/60),2)+t+v(n%60,2)}let z=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},C=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},M={p:C,P:(e,t)=>{let n,r=e.match(/(P+)(p+)?/)||[],a=r[1],i=r[2];if(!i)return z(e,t);switch(a){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;default:n=t.dateTime({width:"full"})}return n.replace("{{date}}",z(a,t)).replace("{{time}}",C(i,t))}},P=/^D+$/,k=/^Y+$/,D=["D","DD","YY","YYYY"];function R(e){return e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e)}e.s(["isDate",0,R],966625);let L=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,E=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,T=/^'([^]*?)'?$/,O=/''/g,I=/[a-zA-Z]/;e.s(["format",0,function(e,r,a){let i=(0,n.getDefaultOptions)(),l=a?.locale??i.locale??t.defaultLocale,s=a?.firstWeekContainsDate??a?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,u=a?.weekStartsOn??a?.locale?.options?.weekStartsOn??i.weekStartsOn??i.locale?.options?.weekStartsOn??0,d=(0,o.toDate)(e,a?.in);if(!R(d)&&"number"!=typeof d||isNaN(+(0,o.toDate)(d)))throw RangeError("Invalid time value");let c=r.match(E).map(e=>{let t=e[0];return"p"===t||"P"===t?(0,M[t])(e,l.formatLong):e}).join("").match(L).map(e=>{if("''"===e)return{isToken:!1,value:"'"};let t=e[0];if("'"===t){var n;let t;return{isToken:!1,value:(t=(n=e).match(T))?t[1].replace(O,"'"):n}}if(y[t])return{isToken:!0,value:e};if(t.match(I))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});l.localize.preprocessor&&(c=l.localize.preprocessor(d,c));let f={firstWeekContainsDate:s,weekStartsOn:u,locale:l};return c.map(t=>{if(!t.isToken)return t.value;let n=t.value;return(!a?.useAdditionalWeekYearTokens&&k.test(n)||!a?.useAdditionalDayOfYearTokens&&P.test(n))&&function(e,t,n){var r,a,i;let o,l=(r=e,a=t,i=n,o="Y"===r[0]?"years":"days of the month",`Use \`${r.toLowerCase()}\` instead of \`${r}\` (in \`${a}\`) for formatting ${o} to the input \`${i}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`);if(console.warn(l),D.includes(e))throw RangeError(l)}(n,r,String(e)),(0,y[n[0]])(d,n,l.localize,f)}).join("")}],230902)}]);