prime-dev-cli 1.0.18 → 1.0.19

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 (247) hide show
  1. package/bin/cli.mjs +6 -1
  2. package/dist/server/.next/BUILD_ID +1 -1
  3. package/dist/server/.next/app-build-manifest.json +8 -8
  4. package/dist/server/.next/app-path-routes-manifest.json +4 -0
  5. package/dist/server/.next/build-manifest.json +6 -6
  6. package/dist/server/.next/cache/.rscinfo +1 -1
  7. package/dist/server/.next/cache/.tsbuildinfo +1 -1
  8. package/dist/server/.next/cache/eslint/.cache_1qa5vxt +1 -1
  9. package/dist/server/.next/fallback-build-manifest.json +6 -6
  10. package/dist/server/.next/next-minimal-server.js.nft.json +1 -1
  11. package/dist/server/.next/next-server.js.nft.json +1 -1
  12. package/dist/server/.next/prerender-manifest.json +9 -9
  13. package/dist/server/.next/required-server-files.json +1 -0
  14. package/dist/server/.next/server/app/_not-found/page/app-build-manifest.json +1 -1
  15. package/dist/server/.next/server/app/_not-found/page.js +1 -1
  16. package/dist/server/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/dist/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/dist/server/.next/server/app/_not-found.html +1 -1
  19. package/dist/server/.next/server/app/_not-found.rsc +2 -2
  20. package/dist/server/.next/server/app/api/admin-status/route/app-build-manifest.json +10 -0
  21. package/dist/server/.next/server/app/api/admin-status/route/app-paths-manifest.json +3 -0
  22. package/dist/server/.next/server/app/api/admin-status/route/build-manifest.json +16 -0
  23. package/dist/server/.next/server/app/api/admin-status/route/next-font-manifest.json +6 -0
  24. package/dist/server/.next/server/app/api/admin-status/route/react-loadable-manifest.json +1 -0
  25. package/dist/server/.next/server/app/api/admin-status/route/server-reference-manifest.json +4 -0
  26. package/dist/server/.next/server/app/api/admin-status/route.js +8 -0
  27. package/dist/server/.next/server/app/api/admin-status/route.js.map +5 -0
  28. package/dist/server/.next/server/app/api/admin-status/route.js.nft.json +1 -0
  29. package/dist/server/.next/server/app/api/admin-status/route_client-reference-manifest.js +2 -0
  30. package/dist/server/.next/server/app/api/all-projects-envs/route.js +1 -1
  31. package/dist/server/.next/server/app/api/all-projects-envs/route.js.nft.json +1 -1
  32. package/dist/server/.next/server/app/api/check-mock-intercept/route.js +1 -1
  33. package/dist/server/.next/server/app/api/check-mock-intercept/route.js.nft.json +1 -1
  34. package/dist/server/.next/server/app/api/check-workspace/route.js +1 -1
  35. package/dist/server/.next/server/app/api/check-workspace/route.js.nft.json +1 -1
  36. package/dist/server/.next/server/app/api/cleanup-mock/route.js +1 -1
  37. package/dist/server/.next/server/app/api/cleanup-mock/route.js.nft.json +1 -1
  38. package/dist/server/.next/server/app/api/cleanup-project/route.js +1 -1
  39. package/dist/server/.next/server/app/api/cleanup-project/route.js.nft.json +1 -1
  40. package/dist/server/.next/server/app/api/current-branch/route.js +1 -1
  41. package/dist/server/.next/server/app/api/current-branch/route.js.nft.json +1 -1
  42. package/dist/server/.next/server/app/api/delete-mock-api/route.js +1 -1
  43. package/dist/server/.next/server/app/api/delete-mock-api/route.js.nft.json +1 -1
  44. package/dist/server/.next/server/app/api/get-mock-data/route.js +1 -1
  45. package/dist/server/.next/server/app/api/get-mock-data/route.js.nft.json +1 -1
  46. package/dist/server/.next/server/app/api/initialize-workspace/route.js +1 -1
  47. package/dist/server/.next/server/app/api/initialize-workspace/route.js.nft.json +1 -1
  48. package/dist/server/.next/server/app/api/memory-status/route.js +1 -1
  49. package/dist/server/.next/server/app/api/memory-status/route.js.nft.json +1 -1
  50. package/dist/server/.next/server/app/api/microapp-proxy-change-stream/route.js +1 -1
  51. package/dist/server/.next/server/app/api/microapp-proxy-change-stream/route.js.nft.json +1 -1
  52. package/dist/server/.next/server/app/api/microapp-proxy-config/route.js +1 -1
  53. package/dist/server/.next/server/app/api/microapp-proxy-config/route.js.nft.json +1 -1
  54. package/dist/server/.next/server/app/api/mock-file/route.js +1 -1
  55. package/dist/server/.next/server/app/api/mock-file/route.js.nft.json +1 -1
  56. package/dist/server/.next/server/app/api/mock-file-content/route.js +1 -1
  57. package/dist/server/.next/server/app/api/mock-file-content/route.js.nft.json +1 -1
  58. package/dist/server/.next/server/app/api/mock-open-status/route.js +1 -1
  59. package/dist/server/.next/server/app/api/mock-open-status/route.js.nft.json +1 -1
  60. package/dist/server/.next/server/app/api/mock-setting/route.js +1 -1
  61. package/dist/server/.next/server/app/api/mock-setting/route.js.nft.json +1 -1
  62. package/dist/server/.next/server/app/api/open-all-mock/route.js +1 -1
  63. package/dist/server/.next/server/app/api/open-all-mock/route.js.nft.json +1 -1
  64. package/dist/server/.next/server/app/api/open-project/route.js +1 -1
  65. package/dist/server/.next/server/app/api/open-project/route.js.nft.json +1 -1
  66. package/dist/server/.next/server/app/api/process/logs/route.js +1 -1
  67. package/dist/server/.next/server/app/api/process/logs/route.js.nft.json +1 -1
  68. package/dist/server/.next/server/app/api/process/logs/stream/route.js +1 -1
  69. package/dist/server/.next/server/app/api/process/logs/stream/route.js.nft.json +1 -1
  70. package/dist/server/.next/server/app/api/process/start/route.js +1 -1
  71. package/dist/server/.next/server/app/api/process/start/route.js.nft.json +1 -1
  72. package/dist/server/.next/server/app/api/process/status/route.js +1 -1
  73. package/dist/server/.next/server/app/api/process/status/route.js.nft.json +1 -1
  74. package/dist/server/.next/server/app/api/project-config/route.js +1 -1
  75. package/dist/server/.next/server/app/api/project-config/route.js.nft.json +1 -1
  76. package/dist/server/.next/server/app/api/retry-project/route.js +1 -1
  77. package/dist/server/.next/server/app/api/retry-project/route.js.nft.json +1 -1
  78. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/app-build-manifest.json +10 -0
  79. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/app-paths-manifest.json +3 -0
  80. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/build-manifest.json +16 -0
  81. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/next-font-manifest.json +6 -0
  82. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/react-loadable-manifest.json +1 -0
  83. package/dist/server/.next/server/app/api/uat-git-flow/abort/route/server-reference-manifest.json +4 -0
  84. package/dist/server/.next/server/app/api/uat-git-flow/abort/route.js +8 -0
  85. package/dist/server/.next/server/app/api/uat-git-flow/abort/route.js.map +5 -0
  86. package/dist/server/.next/server/app/api/uat-git-flow/abort/route.js.nft.json +1 -0
  87. package/dist/server/.next/server/app/api/uat-git-flow/abort/route_client-reference-manifest.js +2 -0
  88. package/dist/server/.next/server/app/api/uat-git-flow/route/app-build-manifest.json +10 -0
  89. package/dist/server/.next/server/app/api/uat-git-flow/route/app-paths-manifest.json +3 -0
  90. package/dist/server/.next/server/app/api/uat-git-flow/route/build-manifest.json +16 -0
  91. package/dist/server/.next/server/app/api/uat-git-flow/route/next-font-manifest.json +6 -0
  92. package/dist/server/.next/server/app/api/uat-git-flow/route/react-loadable-manifest.json +1 -0
  93. package/dist/server/.next/server/app/api/uat-git-flow/route/server-reference-manifest.json +4 -0
  94. package/dist/server/.next/server/app/api/uat-git-flow/route.js +9 -0
  95. package/dist/server/.next/server/app/api/uat-git-flow/route.js.map +5 -0
  96. package/dist/server/.next/server/app/api/uat-git-flow/route.js.nft.json +1 -0
  97. package/dist/server/.next/server/app/api/uat-git-flow/route_client-reference-manifest.js +2 -0
  98. package/dist/server/.next/server/app/api/uat-git-flow/step/route/app-build-manifest.json +10 -0
  99. package/dist/server/.next/server/app/api/uat-git-flow/step/route/app-paths-manifest.json +3 -0
  100. package/dist/server/.next/server/app/api/uat-git-flow/step/route/build-manifest.json +16 -0
  101. package/dist/server/.next/server/app/api/uat-git-flow/step/route/next-font-manifest.json +6 -0
  102. package/dist/server/.next/server/app/api/uat-git-flow/step/route/react-loadable-manifest.json +1 -0
  103. package/dist/server/.next/server/app/api/uat-git-flow/step/route/server-reference-manifest.json +4 -0
  104. package/dist/server/.next/server/app/api/uat-git-flow/step/route.js +9 -0
  105. package/dist/server/.next/server/app/api/uat-git-flow/step/route.js.map +5 -0
  106. package/dist/server/.next/server/app/api/uat-git-flow/step/route.js.nft.json +1 -0
  107. package/dist/server/.next/server/app/api/uat-git-flow/step/route_client-reference-manifest.js +2 -0
  108. package/dist/server/.next/server/app/api/workspace/create/route.js +1 -1
  109. package/dist/server/.next/server/app/api/workspace/create/route.js.nft.json +1 -1
  110. package/dist/server/.next/server/app/configuration/page/app-build-manifest.json +3 -3
  111. package/dist/server/.next/server/app/configuration/page.js +1 -1
  112. package/dist/server/.next/server/app/configuration/page.js.nft.json +1 -1
  113. package/dist/server/.next/server/app/configuration/page_client-reference-manifest.js +1 -1
  114. package/dist/server/.next/server/app/configuration.html +1 -1
  115. package/dist/server/.next/server/app/configuration.rsc +3 -3
  116. package/dist/server/.next/server/app/index.html +1 -1
  117. package/dist/server/.next/server/app/index.rsc +2 -2
  118. package/dist/server/.next/server/app/initialization/page/app-build-manifest.json +3 -3
  119. package/dist/server/.next/server/app/initialization/page.js +1 -1
  120. package/dist/server/.next/server/app/initialization/page.js.nft.json +1 -1
  121. package/dist/server/.next/server/app/initialization/page_client-reference-manifest.js +1 -1
  122. package/dist/server/.next/server/app/initialization.html +1 -1
  123. package/dist/server/.next/server/app/initialization.rsc +3 -3
  124. package/dist/server/.next/server/app/page/app-build-manifest.json +1 -1
  125. package/dist/server/.next/server/app/page.js +1 -1
  126. package/dist/server/.next/server/app/page.js.nft.json +1 -1
  127. package/dist/server/.next/server/app/page_client-reference-manifest.js +1 -1
  128. package/dist/server/.next/server/app-paths-manifest.json +4 -0
  129. package/dist/server/.next/server/chunks/{[root-of-the-server]__8fcbb2f0._.js → [root-of-the-server]__0879b2d6._.js} +2 -2
  130. package/dist/server/.next/server/chunks/[root-of-the-server]__0d56f35b._.js +3 -0
  131. package/dist/server/.next/server/chunks/[root-of-the-server]__0d56f35b._.js.map +1 -0
  132. package/dist/server/.next/server/chunks/{[root-of-the-server]__771e8133._.js → [root-of-the-server]__0e8a08fc._.js} +2 -2
  133. package/dist/server/.next/server/chunks/{[root-of-the-server]__21616bf9._.js → [root-of-the-server]__1e792460._.js} +2 -2
  134. package/dist/server/.next/server/chunks/{[root-of-the-server]__03c2b225._.js → [root-of-the-server]__2a29597f._.js} +2 -2
  135. package/dist/server/.next/server/chunks/{[root-of-the-server]__5348b4aa._.js → [root-of-the-server]__2a78acef._.js} +2 -2
  136. package/dist/server/.next/server/chunks/{[root-of-the-server]__5100a0c5._.js → [root-of-the-server]__2f8b52da._.js} +2 -2
  137. package/dist/server/.next/server/chunks/{[root-of-the-server]__3dfc0dc4._.js → [root-of-the-server]__2ffbf0d3._.js} +2 -2
  138. package/dist/server/.next/server/chunks/{[root-of-the-server]__899d82eb._.js → [root-of-the-server]__452b5f9c._.js} +2 -2
  139. package/dist/server/.next/server/chunks/[root-of-the-server]__4ab3dd83._.js +16 -0
  140. package/dist/server/.next/server/chunks/[root-of-the-server]__4ab3dd83._.js.map +1 -0
  141. package/dist/server/.next/server/chunks/{[root-of-the-server]__2fcc7175._.js → [root-of-the-server]__4b595942._.js} +2 -2
  142. package/dist/server/.next/server/chunks/{[root-of-the-server]__973c48a6._.js → [root-of-the-server]__4ec3205b._.js} +2 -2
  143. package/dist/server/.next/server/chunks/{[root-of-the-server]__072f5c45._.js → [root-of-the-server]__4fd52ac1._.js} +2 -2
  144. package/dist/server/.next/server/chunks/{[root-of-the-server]__6e5dc117._.js → [root-of-the-server]__5c9f62f9._.js} +2 -2
  145. package/dist/server/.next/server/chunks/[root-of-the-server]__6cbd50e9._.js +16 -0
  146. package/dist/server/.next/server/chunks/[root-of-the-server]__6cbd50e9._.js.map +1 -0
  147. package/dist/server/.next/server/chunks/[root-of-the-server]__703c317f._.js +3 -0
  148. package/dist/server/.next/server/chunks/[root-of-the-server]__703c317f._.js.map +1 -0
  149. package/dist/server/.next/server/chunks/{[root-of-the-server]__7500acb0._.js → [root-of-the-server]__8637b7f1._.js} +2 -2
  150. package/dist/server/.next/server/chunks/[root-of-the-server]__98088bea._.js +3 -0
  151. package/dist/server/.next/server/chunks/[root-of-the-server]__98088bea._.js.map +1 -0
  152. package/dist/server/.next/server/chunks/{[root-of-the-server]__94e10604._.js → [root-of-the-server]__a6fbefc6._.js} +2 -2
  153. package/dist/server/.next/server/chunks/{[root-of-the-server]__31a13318._.js → [root-of-the-server]__a74239fc._.js} +2 -2
  154. package/dist/server/.next/server/chunks/{[root-of-the-server]__388e6150._.js → [root-of-the-server]__aaa3fe74._.js} +2 -2
  155. package/dist/server/.next/server/chunks/{[root-of-the-server]__7fc974c9._.js → [root-of-the-server]__b176e8df._.js} +2 -2
  156. package/dist/server/.next/server/chunks/{[root-of-the-server]__a292866b._.js → [root-of-the-server]__be14bdb6._.js} +2 -2
  157. package/dist/server/.next/server/chunks/{[root-of-the-server]__f815ea40._.js → [root-of-the-server]__c18498ef._.js} +2 -2
  158. package/dist/server/.next/server/chunks/{[root-of-the-server]__c8b26634._.js → [root-of-the-server]__c9627539._.js} +2 -2
  159. package/dist/server/.next/server/chunks/{[root-of-the-server]__5355b75a._.js → [root-of-the-server]__dda45cac._.js} +2 -2
  160. package/dist/server/.next/server/chunks/{[root-of-the-server]__d0112f7b._.js → [root-of-the-server]__de18efbd._.js} +3 -3
  161. package/dist/server/.next/server/chunks/{[root-of-the-server]__d0112f7b._.js.map → [root-of-the-server]__de18efbd._.js.map} +1 -1
  162. package/dist/server/.next/server/chunks/{[root-of-the-server]__2ba93285._.js → [root-of-the-server]__e0b7050d._.js} +2 -2
  163. package/dist/server/.next/server/chunks/{[root-of-the-server]__419d3b16._.js → [root-of-the-server]__ec681197._.js} +2 -2
  164. package/dist/server/.next/server/chunks/_24087f66._.js +3 -0
  165. package/dist/server/.next/server/chunks/_24087f66._.js.map +1 -0
  166. package/dist/server/.next/server/chunks/_61c263b3._.js +3 -0
  167. package/dist/server/.next/server/chunks/_61c263b3._.js.map +1 -0
  168. package/dist/server/.next/server/chunks/ssr/[root-of-the-server]__2e9964e3._.js +3 -0
  169. package/dist/server/.next/server/chunks/ssr/{[root-of-the-server]__63c188bd._.js → [root-of-the-server]__b8a5c1ab._.js} +2 -2
  170. package/dist/server/.next/server/chunks/ssr/_5579d68f._.js +57 -0
  171. package/dist/server/.next/server/chunks/ssr/_5579d68f._.js.map +1 -0
  172. package/dist/server/.next/server/chunks/ssr/{_a1cb0beb._.js → _a1ab1c09._.js} +6 -2
  173. package/dist/server/.next/server/chunks/ssr/_a1ab1c09._.js.map +1 -0
  174. package/dist/server/.next/server/chunks/ssr/_ee0c9da0._.js +8 -0
  175. package/dist/server/.next/server/chunks/ssr/_ee0c9da0._.js.map +1 -0
  176. package/dist/server/.next/server/chunks/ssr/packages_server_src_7cef6dbd._.js +1 -1
  177. package/dist/server/.next/server/chunks/ssr/packages_server_src_7cef6dbd._.js.map +1 -1
  178. package/dist/server/.next/server/middleware-build-manifest.js +4 -4
  179. package/dist/server/.next/server/pages/404.html +1 -1
  180. package/dist/server/.next/server/pages/500.html +1 -1
  181. package/dist/server/.next/server/pages/_app/build-manifest.json +2 -2
  182. package/dist/server/.next/server/pages/_document.js +1 -1
  183. package/dist/server/.next/server/pages/_document.js.nft.json +1 -1
  184. package/dist/server/.next/server/pages/_error/build-manifest.json +2 -2
  185. package/dist/server/.next/server/pages/_error.js +1 -1
  186. package/dist/server/.next/server/pages/_error.js.nft.json +1 -1
  187. package/dist/server/.next/server/server-reference-manifest.js +1 -1
  188. package/dist/server/.next/server/server-reference-manifest.json +1 -1
  189. package/dist/server/.next/static/chunks/{d65b8ba84ba3d819.js → 1091ba2f3c451a47.js} +1 -1
  190. package/dist/server/.next/static/chunks/{294d677a4838a994.js → 1154a499e8e3867b.js} +1 -1
  191. package/dist/server/.next/static/chunks/{f9ef1d12f3c1646a.js → 1aa036ed62a506c8.js} +2 -2
  192. package/dist/server/.next/static/chunks/205cbae70a6c50e1.js.map +1 -0
  193. package/dist/server/.next/static/chunks/{479d60165927b286.js.map → 2602bf706e977560.js.map} +1 -1
  194. package/dist/server/.next/static/chunks/2d2322acba49236a.js +57 -0
  195. package/dist/server/.next/static/chunks/{dcfeeb80bf779e48.js → 43c514797c454939.js} +6 -2
  196. package/dist/server/.next/static/chunks/511924c894f8e3de.css.map +1 -0
  197. package/dist/server/.next/static/chunks/861aac2fba8d4e28.css +3 -0
  198. package/dist/server/.next/static/chunks/888146b3e75fe817.js.map +1 -0
  199. package/dist/server/.next/static/chunks/9148331cad3a934e.js +7 -0
  200. package/dist/server/.next/static/chunks/99154153690ad580.js.map +1 -0
  201. package/dist/server/.next/static/chunks/9bc1bbb3fe6e5eb3.js +3 -0
  202. package/dist/server/.next/static/chunks/e70508cc9f59709d.js.map +1 -0
  203. package/dist/server/.next/static/chunks/pages/_app.js +2 -2
  204. package/dist/server/.next/static/chunks/pages/_error.js +2 -2
  205. package/dist/server/.next/trace +1 -1
  206. package/package.json +1 -1
  207. package/dist/server/.next/server/chunks/[root-of-the-server]__629e6d6a._.js +0 -3
  208. package/dist/server/.next/server/chunks/[root-of-the-server]__629e6d6a._.js.map +0 -1
  209. package/dist/server/.next/server/chunks/ssr/[root-of-the-server]__e3a2aebd._.js +0 -3
  210. package/dist/server/.next/server/chunks/ssr/_a1cb0beb._.js.map +0 -1
  211. package/dist/server/.next/server/chunks/ssr/_bee8e6b2._.js +0 -61
  212. package/dist/server/.next/server/chunks/ssr/_bee8e6b2._.js.map +0 -1
  213. package/dist/server/.next/static/chunks/1e69de6d92e0d593.js.map +0 -1
  214. package/dist/server/.next/static/chunks/249ab5825a2160c6.js.map +0 -1
  215. package/dist/server/.next/static/chunks/37783149158d61fd.css +0 -3
  216. package/dist/server/.next/static/chunks/851593de9d497459.css.map +0 -1
  217. package/dist/server/.next/static/chunks/a4de3104c17624f9.js.map +0 -1
  218. package/dist/server/.next/static/chunks/bb95e2f817926795.js +0 -3
  219. package/dist/server/.next/static/chunks/f90a10be5908d5fa.js +0 -61
  220. /package/dist/server/.next/server/chunks/{[root-of-the-server]__8fcbb2f0._.js.map → [root-of-the-server]__0879b2d6._.js.map} +0 -0
  221. /package/dist/server/.next/server/chunks/{[root-of-the-server]__771e8133._.js.map → [root-of-the-server]__0e8a08fc._.js.map} +0 -0
  222. /package/dist/server/.next/server/chunks/{[root-of-the-server]__21616bf9._.js.map → [root-of-the-server]__1e792460._.js.map} +0 -0
  223. /package/dist/server/.next/server/chunks/{[root-of-the-server]__03c2b225._.js.map → [root-of-the-server]__2a29597f._.js.map} +0 -0
  224. /package/dist/server/.next/server/chunks/{[root-of-the-server]__5348b4aa._.js.map → [root-of-the-server]__2a78acef._.js.map} +0 -0
  225. /package/dist/server/.next/server/chunks/{[root-of-the-server]__5100a0c5._.js.map → [root-of-the-server]__2f8b52da._.js.map} +0 -0
  226. /package/dist/server/.next/server/chunks/{[root-of-the-server]__3dfc0dc4._.js.map → [root-of-the-server]__2ffbf0d3._.js.map} +0 -0
  227. /package/dist/server/.next/server/chunks/{[root-of-the-server]__899d82eb._.js.map → [root-of-the-server]__452b5f9c._.js.map} +0 -0
  228. /package/dist/server/.next/server/chunks/{[root-of-the-server]__2fcc7175._.js.map → [root-of-the-server]__4b595942._.js.map} +0 -0
  229. /package/dist/server/.next/server/chunks/{[root-of-the-server]__973c48a6._.js.map → [root-of-the-server]__4ec3205b._.js.map} +0 -0
  230. /package/dist/server/.next/server/chunks/{[root-of-the-server]__072f5c45._.js.map → [root-of-the-server]__4fd52ac1._.js.map} +0 -0
  231. /package/dist/server/.next/server/chunks/{[root-of-the-server]__6e5dc117._.js.map → [root-of-the-server]__5c9f62f9._.js.map} +0 -0
  232. /package/dist/server/.next/server/chunks/{[root-of-the-server]__7500acb0._.js.map → [root-of-the-server]__8637b7f1._.js.map} +0 -0
  233. /package/dist/server/.next/server/chunks/{[root-of-the-server]__94e10604._.js.map → [root-of-the-server]__a6fbefc6._.js.map} +0 -0
  234. /package/dist/server/.next/server/chunks/{[root-of-the-server]__31a13318._.js.map → [root-of-the-server]__a74239fc._.js.map} +0 -0
  235. /package/dist/server/.next/server/chunks/{[root-of-the-server]__388e6150._.js.map → [root-of-the-server]__aaa3fe74._.js.map} +0 -0
  236. /package/dist/server/.next/server/chunks/{[root-of-the-server]__7fc974c9._.js.map → [root-of-the-server]__b176e8df._.js.map} +0 -0
  237. /package/dist/server/.next/server/chunks/{[root-of-the-server]__a292866b._.js.map → [root-of-the-server]__be14bdb6._.js.map} +0 -0
  238. /package/dist/server/.next/server/chunks/{[root-of-the-server]__f815ea40._.js.map → [root-of-the-server]__c18498ef._.js.map} +0 -0
  239. /package/dist/server/.next/server/chunks/{[root-of-the-server]__c8b26634._.js.map → [root-of-the-server]__c9627539._.js.map} +0 -0
  240. /package/dist/server/.next/server/chunks/{[root-of-the-server]__5355b75a._.js.map → [root-of-the-server]__dda45cac._.js.map} +0 -0
  241. /package/dist/server/.next/server/chunks/{[root-of-the-server]__2ba93285._.js.map → [root-of-the-server]__e0b7050d._.js.map} +0 -0
  242. /package/dist/server/.next/server/chunks/{[root-of-the-server]__419d3b16._.js.map → [root-of-the-server]__ec681197._.js.map} +0 -0
  243. /package/dist/server/.next/server/chunks/ssr/{[root-of-the-server]__e3a2aebd._.js.map → [root-of-the-server]__2e9964e3._.js.map} +0 -0
  244. /package/dist/server/.next/server/chunks/ssr/{[root-of-the-server]__63c188bd._.js.map → [root-of-the-server]__b8a5c1ab._.js.map} +0 -0
  245. /package/dist/server/.next/static/{rBe6tUwudOthfNpVSim6S → tz_bf3MbzRijrx8XdXPWA}/_buildManifest.js +0 -0
  246. /package/dist/server/.next/static/{rBe6tUwudOthfNpVSim6S → tz_bf3MbzRijrx8XdXPWA}/_clientMiddlewareManifest.json +0 -0
  247. /package/dist/server/.next/static/{rBe6tUwudOthfNpVSim6S → tz_bf3MbzRijrx8XdXPWA}/_ssgManifest.js +0 -0
@@ -1,61 +0,0 @@
1
- module.exports={94491:a=>{"use strict";var{g:b,__dirname:c}=a;function d(a,b,{checkForDefaultPrevented:c=!0}={}){return function(d){if(a?.(d),!1===c||!d.defaultPrevented)return b?.(d)}}a.s({composeEventHandlers:()=>d})},504:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Item:()=>F,Root:()=>E,RovingFocusGroup:()=>y,RovingFocusGroupItem:()=>B,createRovingFocusGroupScope:()=>v});var d=a.i(57560),e=a.i(94491),f=a.i(69552),g=a.i(18982),h=a.i(14625),i=a.i(54004),j=a.i(63657),k=a.i(35607),l=a.i(75654),m=a.i(33774),n=a.i(99559),o="rovingFocusGroup.onEntryFocus",p={bubbles:!1,cancelable:!0},q="RovingFocusGroup",[r,s,t]=(0,f.createCollection)(q),[u,v]=(0,h.createContextScope)(q,[t]),[w,x]=u(q),y=(0,d.forwardRef)((a,b)=>(0,n.jsx)(r.Provider,{scope:a.__scopeRovingFocusGroup,children:(0,n.jsx)(r.Slot,{scope:a.__scopeRovingFocusGroup,children:(0,n.jsx)(z,{...a,ref:b})})}));y.displayName=q;var z=(0,d.forwardRef)((a,b)=>{let{__scopeRovingFocusGroup:c,orientation:f,loop:h=!1,dir:i,currentTabStopId:r,defaultCurrentTabStopId:t,onCurrentTabStopIdChange:u,onEntryFocus:v,preventScrollOnEntryFocus:x=!1,...y}=a,z=(0,d.useRef)(null),A=(0,g.useComposedRefs)(b,z),B=(0,m.useDirection)(i),[C,E]=(0,l.useControllableState)({prop:r,defaultProp:t??null,onChange:u,caller:q}),[F,G]=(0,d.useState)(!1),H=(0,k.useCallbackRef)(v),I=s(c),J=(0,d.useRef)(!1),[K,L]=(0,d.useState)(0);return(0,d.useEffect)(()=>{let a=z.current;if(a)return a.addEventListener(o,H),()=>a.removeEventListener(o,H)},[H]),(0,n.jsx)(w,{scope:c,orientation:f,dir:B,loop:h,currentTabStopId:C,onItemFocus:(0,d.useCallback)(a=>E(a),[E]),onItemShiftTab:(0,d.useCallback)(()=>G(!0),[]),onFocusableItemAdd:(0,d.useCallback)(()=>L(a=>a+1),[]),onFocusableItemRemove:(0,d.useCallback)(()=>L(a=>a-1),[]),children:(0,n.jsx)(j.Primitive.div,{tabIndex:F||0===K?-1:0,"data-orientation":f,...y,ref:A,style:{outline:"none",...a.style},onMouseDown:(0,e.composeEventHandlers)(a.onMouseDown,()=>{J.current=!0}),onFocus:(0,e.composeEventHandlers)(a.onFocus,a=>{let b=!J.current;if(a.target===a.currentTarget&&b&&!F){let b=new CustomEvent(o,p);if(a.currentTarget.dispatchEvent(b),!b.defaultPrevented){let a=I().filter(a=>a.focusable);D([a.find(a=>a.active),a.find(a=>a.id===C),...a].filter(Boolean).map(a=>a.ref.current),x)}}J.current=!1}),onBlur:(0,e.composeEventHandlers)(a.onBlur,()=>G(!1))})})}),A="RovingFocusGroupItem",B=(0,d.forwardRef)((a,b)=>{let{__scopeRovingFocusGroup:c,focusable:f=!0,active:g=!1,tabStopId:h,children:k,...l}=a,m=(0,i.useId)(),o=h||m,p=x(A,c),q=p.currentTabStopId===o,t=s(c),{onFocusableItemAdd:u,onFocusableItemRemove:v,currentTabStopId:w}=p;return(0,d.useEffect)(()=>{if(f)return u(),()=>v()},[f,u,v]),(0,n.jsx)(r.ItemSlot,{scope:c,id:o,focusable:f,active:g,children:(0,n.jsx)(j.Primitive.span,{tabIndex:q?0:-1,"data-orientation":p.orientation,...l,ref:b,onMouseDown:(0,e.composeEventHandlers)(a.onMouseDown,a=>{f?p.onItemFocus(o):a.preventDefault()}),onFocus:(0,e.composeEventHandlers)(a.onFocus,()=>p.onItemFocus(o)),onKeyDown:(0,e.composeEventHandlers)(a.onKeyDown,a=>{if("Tab"===a.key&&a.shiftKey)return void p.onItemShiftTab();if(a.target!==a.currentTarget)return;let b=function(a,b,c){var d;let e=(d=a.key,"rtl"!==c?d:"ArrowLeft"===d?"ArrowRight":"ArrowRight"===d?"ArrowLeft":d);if(!("vertical"===b&&["ArrowLeft","ArrowRight"].includes(e))&&!("horizontal"===b&&["ArrowUp","ArrowDown"].includes(e)))return C[e]}(a,p.orientation,p.dir);if(void 0!==b){if(a.metaKey||a.ctrlKey||a.altKey||a.shiftKey)return;a.preventDefault();let c=t().filter(a=>a.focusable).map(a=>a.ref.current);if("last"===b)c.reverse();else if("prev"===b||"next"===b){"prev"===b&&c.reverse();let d=c.indexOf(a.currentTarget);c=p.loop?function(a,b){return a.map((c,d)=>a[(b+d)%a.length])}(c,d+1):c.slice(d+1)}setTimeout(()=>D(c))}}),children:"function"==typeof k?k({isCurrentTabStop:q,hasTabStop:null!=w}):k})})});B.displayName=A;var C={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function D(a,b=!1){let c=document.activeElement;for(let d of a)if(d===c||(d.focus({preventScroll:b}),document.activeElement!==c))return}var E=y,F=B},67046:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Presence:()=>g,Root:()=>i});var d=a.i(57560),e=a.i(18982),f=a.i(73639),g=a=>{let{present:b,children:c}=a,g=function(a){var b,c;let[e,g]=(0,d.useState)(),i=(0,d.useRef)(null),j=(0,d.useRef)(a),k=(0,d.useRef)("none"),[l,m]=(b=a?"mounted":"unmounted",c={mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}},(0,d.useReducer)((a,b)=>c[a][b]??a,b));return(0,d.useEffect)(()=>{let a=h(i.current);k.current="mounted"===l?a:"none"},[l]),(0,f.useLayoutEffect)(()=>{let b=i.current,c=j.current;if(c!==a){let d=k.current,e=h(b);a?m("MOUNT"):"none"===e||b?.display==="none"?m("UNMOUNT"):c&&d!==e?m("ANIMATION_OUT"):m("UNMOUNT"),j.current=a}},[a,m]),(0,f.useLayoutEffect)(()=>{if(e){let a,b=e.ownerDocument.defaultView??window,c=c=>{let d=h(i.current).includes(c.animationName);if(c.target===e&&d&&(m("ANIMATION_END"),!j.current)){let c=e.style.animationFillMode;e.style.animationFillMode="forwards",a=b.setTimeout(()=>{"forwards"===e.style.animationFillMode&&(e.style.animationFillMode=c)})}},d=a=>{a.target===e&&(k.current=h(i.current))};return e.addEventListener("animationstart",d),e.addEventListener("animationcancel",c),e.addEventListener("animationend",c),()=>{b.clearTimeout(a),e.removeEventListener("animationstart",d),e.removeEventListener("animationcancel",c),e.removeEventListener("animationend",c)}}m("ANIMATION_END")},[e,m]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:(0,d.useCallback)(a=>{i.current=a?getComputedStyle(a):null,g(a)},[])}}(b),i="function"==typeof c?c({present:g.isPresent}):d.Children.only(c),j=(0,e.useComposedRefs)(g.ref,function(a){let b=Object.getOwnPropertyDescriptor(a.props,"ref")?.get,c=b&&"isReactWarning"in b&&b.isReactWarning;return c?a.ref:(c=(b=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in b&&b.isReactWarning)?a.props.ref:a.props.ref||a.ref}(i));return"function"==typeof c||g.isPresent?(0,d.cloneElement)(i,{ref:j}):null};function h(a){return a?.animationName||"none"}g.displayName="Presence";var i=g},80253:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Content:()=>F,List:()=>D,Root:()=>C,Tabs:()=>t,TabsContent:()=>z,TabsList:()=>v,TabsTrigger:()=>x,Trigger:()=>E,createTabsScope:()=>p});var d=a.i(57560),e=a.i(94491),f=a.i(14625),g=a.i(504),h=a.i(67046),i=a.i(63657),j=a.i(33774),k=a.i(75654),l=a.i(54004),m=a.i(99559),n="Tabs",[o,p]=(0,f.createContextScope)(n,[g.createRovingFocusGroupScope]),q=(0,g.createRovingFocusGroupScope)(),[r,s]=o(n),t=(0,d.forwardRef)((a,b)=>{let{__scopeTabs:c,value:d,onValueChange:e,defaultValue:f,orientation:g="horizontal",dir:h,activationMode:o="automatic",...p}=a,q=(0,j.useDirection)(h),[s,t]=(0,k.useControllableState)({prop:d,onChange:e,defaultProp:f??"",caller:n});return(0,m.jsx)(r,{scope:c,baseId:(0,l.useId)(),value:s,onValueChange:t,orientation:g,dir:q,activationMode:o,children:(0,m.jsx)(i.Primitive.div,{dir:q,"data-orientation":g,...p,ref:b})})});t.displayName=n;var u="TabsList",v=(0,d.forwardRef)((a,b)=>{let{__scopeTabs:c,loop:d=!0,...e}=a,f=s(u,c),h=q(c);return(0,m.jsx)(g.Root,{asChild:!0,...h,orientation:f.orientation,dir:f.dir,loop:d,children:(0,m.jsx)(i.Primitive.div,{role:"tablist","aria-orientation":f.orientation,...e,ref:b})})});v.displayName=u;var w="TabsTrigger",x=(0,d.forwardRef)((a,b)=>{let{__scopeTabs:c,value:d,disabled:f=!1,...h}=a,j=s(w,c),k=q(c),l=A(j.baseId,d),n=B(j.baseId,d),o=d===j.value;return(0,m.jsx)(g.Item,{asChild:!0,...k,focusable:!f,active:o,children:(0,m.jsx)(i.Primitive.button,{type:"button",role:"tab","aria-selected":o,"aria-controls":n,"data-state":o?"active":"inactive","data-disabled":f?"":void 0,disabled:f,id:l,...h,ref:b,onMouseDown:(0,e.composeEventHandlers)(a.onMouseDown,a=>{f||0!==a.button||!1!==a.ctrlKey?a.preventDefault():j.onValueChange(d)}),onKeyDown:(0,e.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&j.onValueChange(d)}),onFocus:(0,e.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==j.activationMode;o||f||!a||j.onValueChange(d)})})})});x.displayName=w;var y="TabsContent",z=(0,d.forwardRef)((a,b)=>{let{__scopeTabs:c,value:e,forceMount:f,children:g,...j}=a,k=s(y,c),l=A(k.baseId,e),n=B(k.baseId,e),o=e===k.value,p=(0,d.useRef)(o);return(0,d.useEffect)(()=>{let a=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,m.jsx)(h.Presence,{present:f||o,children:({present:c})=>(0,m.jsx)(i.Primitive.div,{"data-state":o?"active":"inactive","data-orientation":k.orientation,role:"tabpanel","aria-labelledby":l,hidden:!c,id:n,tabIndex:0,...j,ref:b,style:{...a.style,animationDuration:p.current?"0s":void 0},children:c&&g})})});function A(a,b){return`${a}-trigger-${b}`}function B(a,b){return`${a}-content-${b}`}z.displayName=y;var C=t,D=v,E=x,F=z},74939:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Tabs:()=>g,TabsContent:()=>j,TabsList:()=>h,TabsTrigger:()=>i});var d=a.i(99559),e=a.i(80253),f=a.i(61073);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"tabs",className:(0,f.cn)("flex flex-col gap-2",a),...b})}function h({className:a,...b}){return(0,d.jsx)(e.List,{"data-slot":"tabs-list",className:(0,f.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",a),...b})}function i({className:a,...b}){return(0,d.jsx)(e.Trigger,{"data-slot":"tabs-trigger",className:(0,f.cn)("data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",a),...b})}function j({className:a,...b}){return(0,d.jsx)(e.Content,{"data-slot":"tabs-content",className:(0,f.cn)("flex-1 outline-none",a),...b})}},67116:a=>{"use strict";var{g:b,__dirname:c}=a;function d(a,[b,c]){return Math.min(c,Math.max(b,a))}a.s({clamp:()=>d})},21651:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Branch:()=>s,DismissableLayer:()=>n,DismissableLayerBranch:()=>o,Root:()=>r});var d,e=a.i(57560),f=a.i(94491),g=a.i(63657),h=a.i(18982),i=a.i(35607),j=a.i(39104),k=a.i(99559),l="dismissableLayer.update",m=(0,e.createContext)({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),n=(0,e.forwardRef)((a,b)=>{let{disableOutsidePointerEvents:c=!1,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:r,onInteractOutside:s,onDismiss:t,...u}=a,v=(0,e.useContext)(m),[w,x]=(0,e.useState)(null),y=w?.ownerDocument??globalThis?.document,[,z]=(0,e.useState)({}),A=(0,h.useComposedRefs)(b,a=>x(a)),B=Array.from(v.layers),[C]=[...v.layersWithOutsidePointerEventsDisabled].slice(-1),D=B.indexOf(C),E=w?B.indexOf(w):-1,F=v.layersWithOutsidePointerEventsDisabled.size>0,G=E>=D,H=function(a,b=globalThis?.document){let c=(0,i.useCallbackRef)(a),d=(0,e.useRef)(!1),f=(0,e.useRef)(()=>{});return(0,e.useEffect)(()=>{let a=a=>{if(a.target&&!d.current){let d=function(){q("dismissableLayer.pointerDownOutside",c,e,{discrete:!0})},e={originalEvent:a};"touch"===a.pointerType?(b.removeEventListener("click",f.current),f.current=d,b.addEventListener("click",f.current,{once:!0})):d()}else b.removeEventListener("click",f.current);d.current=!1},e=window.setTimeout(()=>{b.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(e),b.removeEventListener("pointerdown",a),b.removeEventListener("click",f.current)}},[b,c]),{onPointerDownCapture:()=>d.current=!0}}(a=>{let b=a.target,c=[...v.branches].some(a=>a.contains(b));G&&!c&&(o?.(a),s?.(a),a.defaultPrevented||t?.())},y),I=function(a,b=globalThis?.document){let c=(0,i.useCallbackRef)(a),d=(0,e.useRef)(!1);return(0,e.useEffect)(()=>{let a=a=>{a.target&&!d.current&&q("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})};return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:()=>d.current=!0,onBlurCapture:()=>d.current=!1}}(a=>{let b=a.target;![...v.branches].some(a=>a.contains(b))&&(r?.(a),s?.(a),a.defaultPrevented||t?.())},y);return(0,j.useEscapeKeydown)(a=>{E===v.layers.size-1&&(n?.(a),!a.defaultPrevented&&t&&(a.preventDefault(),t()))},y),(0,e.useEffect)(()=>{if(w)return c&&(0===v.layersWithOutsidePointerEventsDisabled.size&&(d=y.body.style.pointerEvents,y.body.style.pointerEvents="none"),v.layersWithOutsidePointerEventsDisabled.add(w)),v.layers.add(w),p(),()=>{c&&1===v.layersWithOutsidePointerEventsDisabled.size&&(y.body.style.pointerEvents=d)}},[w,y,c,v]),(0,e.useEffect)(()=>()=>{w&&(v.layers.delete(w),v.layersWithOutsidePointerEventsDisabled.delete(w),p())},[w,v]),(0,e.useEffect)(()=>{let a=()=>z({});return document.addEventListener(l,a),()=>document.removeEventListener(l,a)},[]),(0,k.jsx)(g.Primitive.div,{...u,ref:A,style:{pointerEvents:F?G?"auto":"none":void 0,...a.style},onFocusCapture:(0,f.composeEventHandlers)(a.onFocusCapture,I.onFocusCapture),onBlurCapture:(0,f.composeEventHandlers)(a.onBlurCapture,I.onBlurCapture),onPointerDownCapture:(0,f.composeEventHandlers)(a.onPointerDownCapture,H.onPointerDownCapture)})});n.displayName="DismissableLayer";var o=(0,e.forwardRef)((a,b)=>{let c=(0,e.useContext)(m),d=(0,e.useRef)(null),f=(0,h.useComposedRefs)(b,d);return(0,e.useEffect)(()=>{let a=d.current;if(a)return c.branches.add(a),()=>{c.branches.delete(a)}},[c.branches]),(0,k.jsx)(g.Primitive.div,{...a,ref:f})});function p(){let a=new CustomEvent(l);document.dispatchEvent(a)}function q(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});b&&e.addEventListener(a,b,{once:!0}),d?(0,g.dispatchDiscreteCustomEvent)(e,f):e.dispatchEvent(f)}o.displayName="DismissableLayerBranch";var r=n,s=o},58991:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({FocusGuards:()=>f,Root:()=>i,useFocusGuards:()=>g});var d=a.i(57560),e=0;function f(a){return g(),a.children}function g(){(0,d.useEffect)(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??h()),document.body.insertAdjacentElement("beforeend",a[1]??h()),e++,()=>{1===e&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),e--}},[])}function h(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var i=f},71784:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({ALIGN_OPTIONS:()=>p,Anchor:()=>J,Arrow:()=>L,Content:()=>K,Popper:()=>v,PopperAnchor:()=>x,PopperArrow:()=>E,PopperContent:()=>B,Root:()=>I,SIDE_OPTIONS:()=>o,createPopperScope:()=>s});var d=a.i(57560),e=a.i(34698),f=a.i(81908),g=a.i(88364),h=a.i(18982),i=a.i(14625),j=a.i(63657),k=a.i(35607),l=a.i(73639),m=a.i(85091),n=a.i(99559),o=["top","right","bottom","left"],p=["start","center","end"],q="Popper",[r,s]=(0,i.createContextScope)(q),[t,u]=r(q),v=a=>{let{__scopePopper:b,children:c}=a,[e,f]=(0,d.useState)(null);return(0,n.jsx)(t,{scope:b,anchor:e,onAnchorChange:f,children:c})};v.displayName=q;var w="PopperAnchor",x=(0,d.forwardRef)((a,b)=>{let{__scopePopper:c,virtualRef:e,...f}=a,g=u(w,c),i=(0,d.useRef)(null),k=(0,h.useComposedRefs)(b,i);return(0,d.useEffect)(()=>{g.onAnchorChange(e?.current||i.current)}),e?null:(0,n.jsx)(j.Primitive.div,{...f,ref:k})});x.displayName=w;var y="PopperContent",[z,A]=r(y),B=(0,d.forwardRef)((a,b)=>{let{__scopePopper:c,side:g="bottom",sideOffset:i=0,align:o="center",alignOffset:p=0,arrowPadding:q=0,avoidCollisions:r=!0,collisionBoundary:s=[],collisionPadding:t=0,sticky:v="partial",hideWhenDetached:w=!1,updatePositionStrategy:x="optimized",onPlaced:A,...B}=a,C=u(y,c),[D,E]=(0,d.useState)(null),I=(0,h.useComposedRefs)(b,a=>E(a)),[J,K]=(0,d.useState)(null),L=(0,m.useSize)(J),M=L?.width??0,N=L?.height??0,O="number"==typeof t?t:{top:0,right:0,bottom:0,left:0,...t},P=Array.isArray(s)?s:[s],Q=P.length>0,R={padding:O,boundary:P.filter(F),altBoundary:Q},{refs:S,floatingStyles:T,placement:U,isPositioned:V,middlewareData:W}=(0,e.useFloating)({strategy:"fixed",placement:g+("center"!==o?"-"+o:""),whileElementsMounted:(...a)=>(0,f.autoUpdate)(...a,{animationFrame:"always"===x}),elements:{reference:C.anchor},middleware:[(0,e.offset)({mainAxis:i+N,alignmentAxis:p}),r&&(0,e.shift)({mainAxis:!0,crossAxis:!1,limiter:"partial"===v?(0,e.limitShift)():void 0,...R}),r&&(0,e.flip)({...R}),(0,e.size)({...R,apply:({elements:a,rects:b,availableWidth:c,availableHeight:d})=>{let{width:e,height:f}=b.reference,g=a.floating.style;g.setProperty("--radix-popper-available-width",`${c}px`),g.setProperty("--radix-popper-available-height",`${d}px`),g.setProperty("--radix-popper-anchor-width",`${e}px`),g.setProperty("--radix-popper-anchor-height",`${f}px`)}}),J&&(0,e.arrow)({element:J,padding:q}),G({arrowWidth:M,arrowHeight:N}),w&&(0,e.hide)({strategy:"referenceHidden",...R})]}),[X,Y]=H(U),Z=(0,k.useCallbackRef)(A);(0,l.useLayoutEffect)(()=>{V&&Z?.()},[V,Z]);let $=W.arrow?.x,_=W.arrow?.y,aa=W.arrow?.centerOffset!==0,[ab,ac]=(0,d.useState)();return(0,l.useLayoutEffect)(()=>{D&&ac(window.getComputedStyle(D).zIndex)},[D]),(0,n.jsx)("div",{ref:S.setFloating,"data-radix-popper-content-wrapper":"",style:{...T,transform:V?T.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ab,"--radix-popper-transform-origin":[W.transformOrigin?.x,W.transformOrigin?.y].join(" "),...W.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:(0,n.jsx)(z,{scope:c,placedSide:X,onArrowChange:K,arrowX:$,arrowY:_,shouldHideArrow:aa,children:(0,n.jsx)(j.Primitive.div,{"data-side":X,"data-align":Y,...B,ref:I,style:{...B.style,animation:V?void 0:"none"}})})})});B.displayName=y;var C="PopperArrow",D={top:"bottom",right:"left",bottom:"top",left:"right"},E=(0,d.forwardRef)(function(a,b){let{__scopePopper:c,...d}=a,e=A(C,c),f=D[e.placedSide];return(0,n.jsx)("span",{ref:e.onArrowChange,style:{position:"absolute",left:e.arrowX,top:e.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[e.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[e.placedSide],visibility:e.shouldHideArrow?"hidden":void 0},children:(0,n.jsx)(g.Root,{...d,ref:b,style:{...d.style,display:"block"}})})});function F(a){return null!==a}E.displayName=C;var G=a=>({name:"transformOrigin",options:a,fn(b){let{placement:c,rects:d,middlewareData:e}=b,f=e.arrow?.centerOffset!==0,g=f?0:a.arrowWidth,h=f?0:a.arrowHeight,[i,j]=H(c),k={start:"0%",center:"50%",end:"100%"}[j],l=(e.arrow?.x??0)+g/2,m=(e.arrow?.y??0)+h/2,n="",o="";return"bottom"===i?(n=f?k:`${l}px`,o=`${-h}px`):"top"===i?(n=f?k:`${l}px`,o=`${d.floating.height+h}px`):"right"===i?(n=`${-h}px`,o=f?k:`${m}px`):"left"===i&&(n=`${d.floating.width+h}px`,o=f?k:`${m}px`),{data:{x:n,y:o}}}});function H(a){let[b,c="center"]=a.split("-");return[b,c]}var I=v,J=x,K=B,L=E},40811:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({usePrevious:()=>e});var d=a.i(57560);function e(a){let b=(0,d.useRef)({value:a,previous:a});return(0,d.useMemo)(()=>(b.current.value!==a&&(b.current.previous=b.current.value,b.current.value=a),b.current.previous),[a])}},57055:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Root:()=>i,VISUALLY_HIDDEN_STYLES:()=>g,VisuallyHidden:()=>h});var d=a.i(57560),e=a.i(63657),f=a.i(99559),g=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),h=(0,d.forwardRef)((a,b)=>(0,f.jsx)(e.Primitive.span,{...a,ref:b,style:{...g,...a.style}}));h.displayName="VisuallyHidden";var i=h},38970:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Arrow:()=>aU,Content:()=>aK,Group:()=>aM,Icon:()=>aI,Item:()=>aO,ItemIndicator:()=>aQ,ItemText:()=>aP,Label:()=>aN,Portal:()=>aJ,Root:()=>aF,ScrollDownButton:()=>aS,ScrollUpButton:()=>aR,Select:()=>O,SelectArrow:()=>aA,SelectContent:()=>W,SelectGroup:()=>ai,SelectIcon:()=>T,SelectItem:()=>ao,SelectItemIndicator:()=>as,SelectItemText:()=>aq,SelectLabel:()=>ak,SelectPortal:()=>U,SelectScrollDownButton:()=>aw,SelectScrollUpButton:()=>au,SelectSeparator:()=>ay,SelectTrigger:()=>Q,SelectValue:()=>S,SelectViewport:()=>ae,Separator:()=>aT,Trigger:()=>aG,Value:()=>aH,Viewport:()=>aL,createSelectScope:()=>I});var d=a.i(57560),e=a.i(16280),f=a.i(67116),g=a.i(94491),h=a.i(69552),i=a.i(18982),j=a.i(14625),k=a.i(33774),l=a.i(21651),m=a.i(58991),n=a.i(33469),o=a.i(54004),p=a.i(71784),q=a.i(91295),r=a.i(63657),s=a.i(16766),t=a.i(35607),u=a.i(75654),v=a.i(73639),w=a.i(40811),x=a.i(57055),y=a.i(73956),z=a.i(59286),A=a.i(99559),B=[" ","Enter","ArrowUp","ArrowDown"],C=[" ","Enter"],D="Select",[E,F,G]=(0,h.createCollection)(D),[H,I]=(0,j.createContextScope)(D,[G,p.createPopperScope]),J=(0,p.createPopperScope)(),[K,L]=H(D),[M,N]=H(D),O=a=>{let{__scopeSelect:b,children:c,open:e,defaultOpen:f,onOpenChange:g,value:h,defaultValue:i,onValueChange:j,dir:l,name:m,autoComplete:n,disabled:q,required:r,form:s}=a,t=J(b),[v,w]=(0,d.useState)(null),[x,y]=(0,d.useState)(null),[z,B]=(0,d.useState)(!1),C=(0,k.useDirection)(l),[F,G]=(0,u.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:D}),[H,I]=(0,u.useControllableState)({prop:h,defaultProp:i,onChange:j,caller:D}),L=(0,d.useRef)(null),N=!v||s||!!v.closest("form"),[O,P]=(0,d.useState)(new Set),Q=Array.from(O).map(a=>a.props.value).join(";");return(0,A.jsx)(p.Root,{...t,children:(0,A.jsxs)(K,{required:r,scope:b,trigger:v,onTriggerChange:w,valueNode:x,onValueNodeChange:y,valueNodeHasChildren:z,onValueNodeHasChildrenChange:B,contentId:(0,o.useId)(),value:H,onValueChange:I,open:F,onOpenChange:G,dir:C,triggerPointerDownPosRef:L,disabled:q,children:[(0,A.jsx)(E.Provider,{scope:b,children:(0,A.jsx)(M,{scope:a.__scopeSelect,onNativeOptionAdd:(0,d.useCallback)(a=>{P(b=>new Set(b).add(a))},[]),onNativeOptionRemove:(0,d.useCallback)(a=>{P(b=>{let c=new Set(b);return c.delete(a),c})},[]),children:c})}),N?(0,A.jsxs)(aB,{"aria-hidden":!0,required:r,tabIndex:-1,name:m,autoComplete:n,value:H,onChange:a=>I(a.target.value),disabled:q,form:s,children:[void 0===H?(0,A.jsx)("option",{value:""}):null,Array.from(O)]},Q):null]})})};O.displayName=D;var P="SelectTrigger",Q=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,disabled:e=!1,...f}=a,h=J(c),j=L(P,c),k=j.disabled||e,l=(0,i.useComposedRefs)(b,j.onTriggerChange),m=F(c),n=(0,d.useRef)("touch"),[o,q,s]=aD(a=>{let b=m().filter(a=>!a.disabled),c=b.find(a=>a.value===j.value),d=aE(b,a,c);void 0!==d&&j.onValueChange(d.value)}),t=a=>{k||(j.onOpenChange(!0),s()),a&&(j.triggerPointerDownPosRef.current={x:Math.round(a.pageX),y:Math.round(a.pageY)})};return(0,A.jsx)(p.Anchor,{asChild:!0,...h,children:(0,A.jsx)(r.Primitive.button,{type:"button",role:"combobox","aria-controls":j.contentId,"aria-expanded":j.open,"aria-required":j.required,"aria-autocomplete":"none",dir:j.dir,"data-state":j.open?"open":"closed",disabled:k,"data-disabled":k?"":void 0,"data-placeholder":aC(j.value)?"":void 0,...f,ref:l,onClick:(0,g.composeEventHandlers)(f.onClick,a=>{a.currentTarget.focus(),"mouse"!==n.current&&t(a)}),onPointerDown:(0,g.composeEventHandlers)(f.onPointerDown,a=>{n.current=a.pointerType;let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),0===a.button&&!1===a.ctrlKey&&"mouse"===a.pointerType&&(t(a),a.preventDefault())}),onKeyDown:(0,g.composeEventHandlers)(f.onKeyDown,a=>{let b=""!==o.current;a.ctrlKey||a.altKey||a.metaKey||1!==a.key.length||q(a.key),(!b||" "!==a.key)&&B.includes(a.key)&&(t(),a.preventDefault())})})})});Q.displayName=P;var R="SelectValue",S=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,className:d,style:e,children:f,placeholder:g="",...h}=a,j=L(R,c),{onValueNodeHasChildrenChange:k}=j,l=void 0!==f,m=(0,i.useComposedRefs)(b,j.onValueNodeChange);return(0,v.useLayoutEffect)(()=>{k(l)},[k,l]),(0,A.jsx)(r.Primitive.span,{...h,ref:m,style:{pointerEvents:"none"},children:aC(j.value)?(0,A.jsx)(A.Fragment,{children:g}):f})});S.displayName=R;var T=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,children:d,...e}=a;return(0,A.jsx)(r.Primitive.span,{"aria-hidden":!0,...e,ref:b,children:d||"▼"})});T.displayName="SelectIcon";var U=a=>(0,A.jsx)(q.Portal,{asChild:!0,...a});U.displayName="SelectPortal";var V="SelectContent",W=(0,d.forwardRef)((a,b)=>{let c=L(V,a.__scopeSelect),[f,g]=(0,d.useState)();return((0,v.useLayoutEffect)(()=>{g(new DocumentFragment)},[]),c.open)?(0,A.jsx)($,{...a,ref:b}):f?(0,e.createPortal)((0,A.jsx)(X,{scope:a.__scopeSelect,children:(0,A.jsx)(E.Slot,{scope:a.__scopeSelect,children:(0,A.jsx)("div",{children:a.children})})}),f):null});W.displayName=V;var[X,Y]=H(V),Z=(0,s.createSlot)("SelectContent.RemoveScroll"),$=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,position:e="item-aligned",onCloseAutoFocus:f,onEscapeKeyDown:h,onPointerDownOutside:j,side:k,sideOffset:o,align:p,alignOffset:q,arrowPadding:r,collisionBoundary:s,collisionPadding:t,sticky:u,hideWhenDetached:v,avoidCollisions:w,...x}=a,B=L(V,c),[C,D]=(0,d.useState)(null),[E,G]=(0,d.useState)(null),H=(0,i.useComposedRefs)(b,a=>D(a)),[I,J]=(0,d.useState)(null),[K,M]=(0,d.useState)(null),N=F(c),[O,P]=(0,d.useState)(!1),Q=(0,d.useRef)(!1);(0,d.useEffect)(()=>{if(C)return(0,y.hideOthers)(C)},[C]),(0,m.useFocusGuards)();let R=(0,d.useCallback)(a=>{let[b,...c]=N().map(a=>a.ref.current),[d]=c.slice(-1),e=document.activeElement;for(let c of a)if(c===e||(c?.scrollIntoView({block:"nearest"}),c===b&&E&&(E.scrollTop=0),c===d&&E&&(E.scrollTop=E.scrollHeight),c?.focus(),document.activeElement!==e))return},[N,E]),S=(0,d.useCallback)(()=>R([I,C]),[R,I,C]);(0,d.useEffect)(()=>{O&&S()},[O,S]);let{onOpenChange:T,triggerPointerDownPosRef:U}=B;(0,d.useEffect)(()=>{if(C){let a={x:0,y:0},b=b=>{a={x:Math.abs(Math.round(b.pageX)-(U.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(U.current?.y??0))}},c=c=>{a.x<=10&&a.y<=10?c.preventDefault():C.contains(c.target)||T(!1),document.removeEventListener("pointermove",b),U.current=null};return null!==U.current&&(document.addEventListener("pointermove",b),document.addEventListener("pointerup",c,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",c,{capture:!0})}}},[C,T,U]),(0,d.useEffect)(()=>{let a=()=>T(!1);return window.addEventListener("blur",a),window.addEventListener("resize",a),()=>{window.removeEventListener("blur",a),window.removeEventListener("resize",a)}},[T]);let[W,Y]=aD(a=>{let b=N().filter(a=>!a.disabled),c=b.find(a=>a.ref.current===document.activeElement),d=aE(b,a,c);d&&setTimeout(()=>d.ref.current.focus())}),$=(0,d.useCallback)((a,b,c)=>{let d=!Q.current&&!c;(void 0!==B.value&&B.value===b||d)&&(J(a),d&&(Q.current=!0))},[B.value]),ab=(0,d.useCallback)(()=>C?.focus(),[C]),ac=(0,d.useCallback)((a,b,c)=>{let d=!Q.current&&!c;(void 0!==B.value&&B.value===b||d)&&M(a)},[B.value]),ad="popper"===e?aa:_,ae=ad===aa?{side:k,sideOffset:o,align:p,alignOffset:q,arrowPadding:r,collisionBoundary:s,collisionPadding:t,sticky:u,hideWhenDetached:v,avoidCollisions:w}:{};return(0,A.jsx)(X,{scope:c,content:C,viewport:E,onViewportChange:G,itemRefCallback:$,selectedItem:I,onItemLeave:ab,itemTextRefCallback:ac,focusSelectedItem:S,selectedItemText:K,position:e,isPositioned:O,searchRef:W,children:(0,A.jsx)(z.RemoveScroll,{as:Z,allowPinchZoom:!0,children:(0,A.jsx)(n.FocusScope,{asChild:!0,trapped:B.open,onMountAutoFocus:a=>{a.preventDefault()},onUnmountAutoFocus:(0,g.composeEventHandlers)(f,a=>{B.trigger?.focus({preventScroll:!0}),a.preventDefault()}),children:(0,A.jsx)(l.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:h,onPointerDownOutside:j,onFocusOutside:a=>a.preventDefault(),onDismiss:()=>B.onOpenChange(!1),children:(0,A.jsx)(ad,{role:"listbox",id:B.contentId,"data-state":B.open?"open":"closed",dir:B.dir,onContextMenu:a=>a.preventDefault(),...x,...ae,onPlaced:()=>P(!0),ref:H,style:{display:"flex",flexDirection:"column",outline:"none",...x.style},onKeyDown:(0,g.composeEventHandlers)(x.onKeyDown,a=>{let b=a.ctrlKey||a.altKey||a.metaKey;if("Tab"===a.key&&a.preventDefault(),b||1!==a.key.length||Y(a.key),["ArrowUp","ArrowDown","Home","End"].includes(a.key)){let b=N().filter(a=>!a.disabled).map(a=>a.ref.current);if(["ArrowUp","End"].includes(a.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(a.key)){let c=a.target,d=b.indexOf(c);b=b.slice(d+1)}setTimeout(()=>R(b)),a.preventDefault()}})})})})})})});$.displayName="SelectContentImpl";var _=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,onPlaced:e,...g}=a,h=L(V,c),j=Y(V,c),[k,l]=(0,d.useState)(null),[m,n]=(0,d.useState)(null),o=(0,i.useComposedRefs)(b,a=>n(a)),p=F(c),q=(0,d.useRef)(!1),s=(0,d.useRef)(!0),{viewport:t,selectedItem:u,selectedItemText:w,focusSelectedItem:x}=j,y=(0,d.useCallback)(()=>{if(h.trigger&&h.valueNode&&k&&m&&t&&u&&w){let a=h.trigger.getBoundingClientRect(),b=m.getBoundingClientRect(),c=h.valueNode.getBoundingClientRect(),d=w.getBoundingClientRect();if("rtl"!==h.dir){let e=d.left-b.left,g=c.left-e,h=a.left-g,i=a.width+h,j=Math.max(i,b.width),l=window.innerWidth-10,m=(0,f.clamp)(g,[10,Math.max(10,l-j)]);k.style.minWidth=i+"px",k.style.left=m+"px"}else{let e=b.right-d.right,g=window.innerWidth-c.right-e,h=window.innerWidth-a.right-g,i=a.width+h,j=Math.max(i,b.width),l=window.innerWidth-10,m=(0,f.clamp)(g,[10,Math.max(10,l-j)]);k.style.minWidth=i+"px",k.style.right=m+"px"}let g=p(),i=window.innerHeight-20,j=t.scrollHeight,l=window.getComputedStyle(m),n=parseInt(l.borderTopWidth,10),o=parseInt(l.paddingTop,10),r=parseInt(l.borderBottomWidth,10),s=n+o+j+parseInt(l.paddingBottom,10)+r,v=Math.min(5*u.offsetHeight,s),x=window.getComputedStyle(t),y=parseInt(x.paddingTop,10),z=parseInt(x.paddingBottom,10),A=a.top+a.height/2-10,B=u.offsetHeight/2,C=n+o+(u.offsetTop+B);if(C<=A){let a=g.length>0&&u===g[g.length-1].ref.current;k.style.bottom="0px";let b=Math.max(i-A,B+(a?z:0)+(m.clientHeight-t.offsetTop-t.offsetHeight)+r);k.style.height=C+b+"px"}else{let a=g.length>0&&u===g[0].ref.current;k.style.top="0px";let b=Math.max(A,n+t.offsetTop+(a?y:0)+B);k.style.height=b+(s-C)+"px",t.scrollTop=C-A+t.offsetTop}k.style.margin="10px 0",k.style.minHeight=v+"px",k.style.maxHeight=i+"px",e?.(),requestAnimationFrame(()=>q.current=!0)}},[p,h.trigger,h.valueNode,k,m,t,u,w,h.dir,e]);(0,v.useLayoutEffect)(()=>y(),[y]);let[z,B]=(0,d.useState)();(0,v.useLayoutEffect)(()=>{m&&B(window.getComputedStyle(m).zIndex)},[m]);let C=(0,d.useCallback)(a=>{a&&!0===s.current&&(y(),x?.(),s.current=!1)},[y,x]);return(0,A.jsx)(ab,{scope:c,contentWrapper:k,shouldExpandOnScrollRef:q,onScrollButtonChange:C,children:(0,A.jsx)("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:z},children:(0,A.jsx)(r.Primitive.div,{...g,ref:o,style:{boxSizing:"border-box",maxHeight:"100%",...g.style}})})})});_.displayName="SelectItemAlignedPosition";var aa=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,align:d="start",collisionPadding:e=10,...f}=a,g=J(c);return(0,A.jsx)(p.Content,{...g,...f,ref:b,align:d,collisionPadding:e,style:{boxSizing:"border-box",...f.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});aa.displayName="SelectPopperPosition";var[ab,ac]=H(V,{}),ad="SelectViewport",ae=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,nonce:e,...f}=a,h=Y(ad,c),j=ac(ad,c),k=(0,i.useComposedRefs)(b,h.onViewportChange),l=(0,d.useRef)(0);return(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:e}),(0,A.jsx)(E.Slot,{scope:c,children:(0,A.jsx)(r.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...f,ref:k,style:{position:"relative",flex:1,overflow:"hidden auto",...f.style},onScroll:(0,g.composeEventHandlers)(f.onScroll,a=>{let b=a.currentTarget,{contentWrapper:c,shouldExpandOnScrollRef:d}=j;if(d?.current&&c){let a=Math.abs(l.current-b.scrollTop);if(a>0){let d=window.innerHeight-20,e=Math.max(parseFloat(c.style.minHeight),parseFloat(c.style.height));if(e<d){let f=e+a,g=Math.min(d,f),h=f-g;c.style.height=g+"px","0px"===c.style.bottom&&(b.scrollTop=h>0?h:0,c.style.justifyContent="flex-end")}}}l.current=b.scrollTop})})})]})});ae.displayName=ad;var af="SelectGroup",[ag,ah]=H(af),ai=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,...d}=a,e=(0,o.useId)();return(0,A.jsx)(ag,{scope:c,id:e,children:(0,A.jsx)(r.Primitive.div,{role:"group","aria-labelledby":e,...d,ref:b})})});ai.displayName=af;var aj="SelectLabel",ak=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,...d}=a,e=ah(aj,c);return(0,A.jsx)(r.Primitive.div,{id:e.id,...d,ref:b})});ak.displayName=aj;var al="SelectItem",[am,an]=H(al),ao=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,value:e,disabled:f=!1,textValue:h,...j}=a,k=L(al,c),l=Y(al,c),m=k.value===e,[n,p]=(0,d.useState)(h??""),[q,s]=(0,d.useState)(!1),t=(0,i.useComposedRefs)(b,a=>l.itemRefCallback?.(a,e,f)),u=(0,o.useId)(),v=(0,d.useRef)("touch"),w=()=>{f||(k.onValueChange(e),k.onOpenChange(!1))};if(""===e)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,A.jsx)(am,{scope:c,value:e,disabled:f,textId:u,isSelected:m,onItemTextChange:(0,d.useCallback)(a=>{p(b=>b||(a?.textContent??"").trim())},[]),children:(0,A.jsx)(E.ItemSlot,{scope:c,value:e,disabled:f,textValue:n,children:(0,A.jsx)(r.Primitive.div,{role:"option","aria-labelledby":u,"data-highlighted":q?"":void 0,"aria-selected":m&&q,"data-state":m?"checked":"unchecked","aria-disabled":f||void 0,"data-disabled":f?"":void 0,tabIndex:f?void 0:-1,...j,ref:t,onFocus:(0,g.composeEventHandlers)(j.onFocus,()=>s(!0)),onBlur:(0,g.composeEventHandlers)(j.onBlur,()=>s(!1)),onClick:(0,g.composeEventHandlers)(j.onClick,()=>{"mouse"!==v.current&&w()}),onPointerUp:(0,g.composeEventHandlers)(j.onPointerUp,()=>{"mouse"===v.current&&w()}),onPointerDown:(0,g.composeEventHandlers)(j.onPointerDown,a=>{v.current=a.pointerType}),onPointerMove:(0,g.composeEventHandlers)(j.onPointerMove,a=>{v.current=a.pointerType,f?l.onItemLeave?.():"mouse"===v.current&&a.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,g.composeEventHandlers)(j.onPointerLeave,a=>{a.currentTarget===document.activeElement&&l.onItemLeave?.()}),onKeyDown:(0,g.composeEventHandlers)(j.onKeyDown,a=>{(l.searchRef?.current===""||" "!==a.key)&&(C.includes(a.key)&&w()," "===a.key&&a.preventDefault())})})})})});ao.displayName=al;var ap="SelectItemText",aq=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,className:f,style:g,...h}=a,j=L(ap,c),k=Y(ap,c),l=an(ap,c),m=N(ap,c),[n,o]=(0,d.useState)(null),p=(0,i.useComposedRefs)(b,a=>o(a),l.onItemTextChange,a=>k.itemTextRefCallback?.(a,l.value,l.disabled)),q=n?.textContent,s=(0,d.useMemo)(()=>(0,A.jsx)("option",{value:l.value,disabled:l.disabled,children:q},l.value),[l.disabled,l.value,q]),{onNativeOptionAdd:t,onNativeOptionRemove:u}=m;return(0,v.useLayoutEffect)(()=>(t(s),()=>u(s)),[t,u,s]),(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(r.Primitive.span,{id:l.textId,...h,ref:p}),l.isSelected&&j.valueNode&&!j.valueNodeHasChildren?(0,e.createPortal)(h.children,j.valueNode):null]})});aq.displayName=ap;var ar="SelectItemIndicator",as=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,...d}=a;return an(ar,c).isSelected?(0,A.jsx)(r.Primitive.span,{"aria-hidden":!0,...d,ref:b}):null});as.displayName=ar;var at="SelectScrollUpButton",au=(0,d.forwardRef)((a,b)=>{let c=Y(at,a.__scopeSelect),e=ac(at,a.__scopeSelect),[f,g]=(0,d.useState)(!1),h=(0,i.useComposedRefs)(b,e.onScrollButtonChange);return(0,v.useLayoutEffect)(()=>{if(c.viewport&&c.isPositioned){let a=function(){g(b.scrollTop>0)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),f?(0,A.jsx)(ax,{...a,ref:h,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop-b.offsetHeight)}}):null});au.displayName=at;var av="SelectScrollDownButton",aw=(0,d.forwardRef)((a,b)=>{let c=Y(av,a.__scopeSelect),e=ac(av,a.__scopeSelect),[f,g]=(0,d.useState)(!1),h=(0,i.useComposedRefs)(b,e.onScrollButtonChange);return(0,v.useLayoutEffect)(()=>{if(c.viewport&&c.isPositioned){let a=function(){let a=b.scrollHeight-b.clientHeight;g(Math.ceil(b.scrollTop)<a)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),f?(0,A.jsx)(ax,{...a,ref:h,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop+b.offsetHeight)}}):null});aw.displayName=av;var ax=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,onAutoScroll:e,...f}=a,h=Y("SelectScrollButton",c),i=(0,d.useRef)(null),j=F(c),k=(0,d.useCallback)(()=>{null!==i.current&&(window.clearInterval(i.current),i.current=null)},[]);return(0,d.useEffect)(()=>()=>k(),[k]),(0,v.useLayoutEffect)(()=>{let a=j().find(a=>a.ref.current===document.activeElement);a?.ref.current?.scrollIntoView({block:"nearest"})},[j]),(0,A.jsx)(r.Primitive.div,{"aria-hidden":!0,...f,ref:b,style:{flexShrink:0,...f.style},onPointerDown:(0,g.composeEventHandlers)(f.onPointerDown,()=>{null===i.current&&(i.current=window.setInterval(e,50))}),onPointerMove:(0,g.composeEventHandlers)(f.onPointerMove,()=>{h.onItemLeave?.(),null===i.current&&(i.current=window.setInterval(e,50))}),onPointerLeave:(0,g.composeEventHandlers)(f.onPointerLeave,()=>{k()})})}),ay=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,...d}=a;return(0,A.jsx)(r.Primitive.div,{"aria-hidden":!0,...d,ref:b})});ay.displayName="SelectSeparator";var az="SelectArrow",aA=(0,d.forwardRef)((a,b)=>{let{__scopeSelect:c,...d}=a,e=J(c),f=L(az,c),g=Y(az,c);return f.open&&"popper"===g.position?(0,A.jsx)(p.Arrow,{...e,...d,ref:b}):null});aA.displayName=az;var aB=(0,d.forwardRef)(({__scopeSelect:a,value:b,...c},e)=>{let f=(0,d.useRef)(null),g=(0,i.useComposedRefs)(e,f),h=(0,w.usePrevious)(b);return(0,d.useEffect)(()=>{let a=f.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(h!==b&&c){let d=new Event("change",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[h,b]),(0,A.jsx)(r.Primitive.select,{...c,style:{...x.VISUALLY_HIDDEN_STYLES,...c.style},ref:g,defaultValue:b})});function aC(a){return""===a||void 0===a}function aD(a){let b=(0,t.useCallbackRef)(a),c=(0,d.useRef)(""),e=(0,d.useRef)(0),f=(0,d.useCallback)(a=>{let d=c.current+a;b(d),function a(b){c.current=b,window.clearTimeout(e.current),""!==b&&(e.current=window.setTimeout(()=>a(""),1e3))}(d)},[b]),g=(0,d.useCallback)(()=>{c.current="",window.clearTimeout(e.current)},[]);return(0,d.useEffect)(()=>()=>window.clearTimeout(e.current),[]),[c,f,g]}function aE(a,b,c){var d,e;let f=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,g=c?a.indexOf(c):-1,h=(d=a,e=Math.max(g,0),d.map((a,b)=>d[(e+b)%d.length]));1===f.length&&(h=h.filter(a=>a!==c));let i=h.find(a=>a.textValue.toLowerCase().startsWith(f.toLowerCase()));return i!==c?i:void 0}aB.displayName="SelectBubbleInput";var aF=O,aG=Q,aH=S,aI=T,aJ=U,aK=W,aL=ae,aM=ai,aN=ak,aO=ao,aP=aq,aQ=as,aR=au,aS=aw,aT=ay,aU=aA},88194:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({__iconNode:()=>b,default:()=>c});var d=a.i(49756);let b=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],c=(0,d.default)("chevron-up",b)}},64687:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({ChevronUpIcon:()=>d.default});var d=a.i(88194)},49566:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Select:()=>j,SelectContent:()=>n,SelectGroup:()=>k,SelectItem:()=>p,SelectLabel:()=>o,SelectScrollDownButton:()=>s,SelectScrollUpButton:()=>r,SelectSeparator:()=>q,SelectTrigger:()=>m,SelectValue:()=>l});var d=a.i(99559),e=a.i(38970),f=a.i(72408),g=a.i(37897),h=a.i(64687),i=a.i(61073);function j({...a}){return(0,d.jsx)(e.Root,{"data-slot":"select",...a})}function k({...a}){return(0,d.jsx)(e.Group,{"data-slot":"select-group",...a})}function l({...a}){return(0,d.jsx)(e.Value,{"data-slot":"select-value",...a})}function m({className:a,size:b="default",children:c,...f}){return(0,d.jsxs)(e.Trigger,{"data-slot":"select-trigger","data-size":b,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",a),...f,children:[c,(0,d.jsx)(e.Icon,{asChild:!0,children:(0,d.jsx)(g.ChevronDownIcon,{className:"size-4 opacity-50"})})]})}function n({className:a,children:b,position:c="popper",...f}){return(0,d.jsx)(e.Portal,{children:(0,d.jsxs)(e.Content,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...f,children:[(0,d.jsx)(r,{}),(0,d.jsx)(e.Viewport,{className:(0,i.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:b}),(0,d.jsx)(s,{})]})})}function o({className:a,...b}){return(0,d.jsx)(e.Label,{"data-slot":"select-label",className:(0,i.cn)("text-muted-foreground px-2 py-1.5 text-xs",a),...b})}function p({className:a,children:b,...c}){return(0,d.jsxs)(e.Item,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...c,children:[(0,d.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,d.jsx)(e.ItemIndicator,{children:(0,d.jsx)(f.CheckIcon,{className:"size-4"})})}),(0,d.jsx)(e.ItemText,{children:b})]})}function q({className:a,...b}){return(0,d.jsx)(e.Separator,{"data-slot":"select-separator",className:(0,i.cn)("bg-border pointer-events-none -mx-1 my-1 h-px",a),...b})}function r({className:a,...b}){return(0,d.jsx)(e.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(h.ChevronUpIcon,{className:"size-4"})})}function s({className:a,...b}){return(0,d.jsx)(e.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(g.ChevronDownIcon,{className:"size-4"})})}},94688:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Input:()=>f});var d=a.i(99559),e=a.i(61073);function f({className:a,type:b,...c}){return(0,d.jsx)("input",{type:b,"data-slot":"input",className:(0,e.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a),...c})}},76260:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Label:()=>g,Root:()=>h});var d=a.i(57560),e=a.i(63657),f=a.i(99559),g=(0,d.forwardRef)((a,b)=>(0,f.jsx)(e.Primitive.label,{...a,ref:b,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));g.displayName="Label";var h=g},58413:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Label:()=>g});var d=a.i(99559),e=a.i(76260),f=a.i(61073);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...b})}},20822:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Root:()=>w,Switch:()=>r,SwitchThumb:()=>t,Thumb:()=>x,createSwitchScope:()=>o});var d=a.i(57560),e=a.i(94491),f=a.i(18982),g=a.i(14625),h=a.i(75654),i=a.i(40811),j=a.i(85091),k=a.i(63657),l=a.i(99559),m="Switch",[n,o]=(0,g.createContextScope)(m),[p,q]=n(m),r=(0,d.forwardRef)((a,b)=>{let{__scopeSwitch:c,name:g,checked:i,defaultChecked:j,required:n,disabled:o,value:q="on",onCheckedChange:r,form:s,...t}=a,[w,x]=(0,d.useState)(null),y=(0,f.useComposedRefs)(b,a=>x(a)),z=(0,d.useRef)(!1),A=!w||s||!!w.closest("form"),[B,C]=(0,h.useControllableState)({prop:i,defaultProp:j??!1,onChange:r,caller:m});return(0,l.jsxs)(p,{scope:c,checked:B,disabled:o,children:[(0,l.jsx)(k.Primitive.button,{type:"button",role:"switch","aria-checked":B,"aria-required":n,"data-state":v(B),"data-disabled":o?"":void 0,disabled:o,value:q,...t,ref:y,onClick:(0,e.composeEventHandlers)(a.onClick,a=>{C(a=>!a),A&&(z.current=a.isPropagationStopped(),z.current||a.stopPropagation())})}),A&&(0,l.jsx)(u,{control:w,bubbles:!z.current,name:g,value:q,checked:B,required:n,disabled:o,form:s,style:{transform:"translateX(-100%)"}})]})});r.displayName=m;var s="SwitchThumb",t=(0,d.forwardRef)((a,b)=>{let{__scopeSwitch:c,...d}=a,e=q(s,c);return(0,l.jsx)(k.Primitive.span,{"data-state":v(e.checked),"data-disabled":e.disabled?"":void 0,...d,ref:b})});t.displayName=s;var u=(0,d.forwardRef)(({__scopeSwitch:a,control:b,checked:c,bubbles:e=!0,...g},h)=>{let k=(0,d.useRef)(null),m=(0,f.useComposedRefs)(k,h),n=(0,i.usePrevious)(c),o=(0,j.useSize)(b);return(0,d.useEffect)(()=>{let a=k.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(n!==c&&b){let d=new Event("click",{bubbles:e});b.call(a,c),a.dispatchEvent(d)}},[n,c,e]),(0,l.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:c,...g,tabIndex:-1,ref:m,style:{...g.style,...o,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function v(a){return a?"checked":"unchecked"}u.displayName="SwitchBubbleInput";var w=r,x=t},67252:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Switch:()=>g});var d=a.i(99559),e=a.i(20822),f=a.i(61073);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"switch",className:(0,f.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(e.Thumb,{"data-slot":"switch-thumb",className:(0,f.cn)("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}},60284:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Table:()=>f,TableBody:()=>h,TableCaption:()=>m,TableCell:()=>l,TableFooter:()=>i,TableHead:()=>k,TableHeader:()=>g,TableRow:()=>j});var d=a.i(99559),e=a.i(61073);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,d.jsx)("table",{"data-slot":"table",className:(0,e.cn)("w-full caption-bottom text-sm",a),...b})})}function g({className:a,...b}){return(0,d.jsx)("thead",{"data-slot":"table-header",className:(0,e.cn)("[&_tr]:border-b",a),...b})}function h({className:a,...b}){return(0,d.jsx)("tbody",{"data-slot":"table-body",className:(0,e.cn)("[&_tr:last-child]:border-0",a),...b})}function i({className:a,...b}){return(0,d.jsx)("tfoot",{"data-slot":"table-footer",className:(0,e.cn)("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",a),...b})}function j({className:a,...b}){return(0,d.jsx)("tr",{"data-slot":"table-row",className:(0,e.cn)("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",a),...b})}function k({className:a,...b}){return(0,d.jsx)("th",{"data-slot":"table-head",className:(0,e.cn)("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...b})}function l({className:a,...b}){return(0,d.jsx)("td",{"data-slot":"table-cell",className:(0,e.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...b})}function m({className:a,...b}){return(0,d.jsx)("caption",{"data-slot":"table-caption",className:(0,e.cn)("text-muted-foreground mt-4 text-sm",a),...b})}},38047:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Close:()=>af,Content:()=>ac,Description:()=>ae,Dialog:()=>y,DialogClose:()=>T,DialogContent:()=>K,DialogDescription:()=>R,DialogOverlay:()=>G,DialogPortal:()=>E,DialogTitle:()=>P,DialogTrigger:()=>A,Overlay:()=>ab,Portal:()=>aa,Root:()=>$,Title:()=>ad,Trigger:()=>_,WarningProvider:()=>W,createDialogScope:()=>v});var d=a.i(57560),e=a.i(94491),f=a.i(18982),g=a.i(14625),h=a.i(54004),i=a.i(75654),j=a.i(21651),k=a.i(33469),l=a.i(91295),m=a.i(67046),n=a.i(63657),o=a.i(58991),p=a.i(59286),q=a.i(73956),r=a.i(16766),s=a.i(99559),t="Dialog",[u,v]=(0,g.createContextScope)(t),[w,x]=u(t),y=a=>{let{__scopeDialog:b,children:c,open:e,defaultOpen:f,onOpenChange:g,modal:j=!0}=a,k=(0,d.useRef)(null),l=(0,d.useRef)(null),[m,n]=(0,i.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:t});return(0,s.jsx)(w,{scope:b,triggerRef:k,contentRef:l,contentId:(0,h.useId)(),titleId:(0,h.useId)(),descriptionId:(0,h.useId)(),open:m,onOpenChange:n,onOpenToggle:(0,d.useCallback)(()=>n(a=>!a),[n]),modal:j,children:c})};y.displayName=t;var z="DialogTrigger",A=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,...d}=a,g=x(z,c),h=(0,f.useComposedRefs)(b,g.triggerRef);return(0,s.jsx)(n.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":g.open,"aria-controls":g.contentId,"data-state":U(g.open),...d,ref:h,onClick:(0,e.composeEventHandlers)(a.onClick,g.onOpenToggle)})});A.displayName=z;var B="DialogPortal",[C,D]=u(B,{forceMount:void 0}),E=a=>{let{__scopeDialog:b,forceMount:c,children:e,container:f}=a,g=x(B,b);return(0,s.jsx)(C,{scope:b,forceMount:c,children:d.Children.map(e,a=>(0,s.jsx)(m.Presence,{present:c||g.open,children:(0,s.jsx)(l.Portal,{asChild:!0,container:f,children:a})}))})};E.displayName=B;var F="DialogOverlay",G=(0,d.forwardRef)((a,b)=>{let c=D(F,a.__scopeDialog),{forceMount:d=c.forceMount,...e}=a,f=x(F,a.__scopeDialog);return f.modal?(0,s.jsx)(m.Presence,{present:d||f.open,children:(0,s.jsx)(I,{...e,ref:b})}):null});G.displayName=F;var H=(0,r.createSlot)("DialogOverlay.RemoveScroll"),I=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,...d}=a,e=x(F,c);return(0,s.jsx)(p.RemoveScroll,{as:H,allowPinchZoom:!0,shards:[e.contentRef],children:(0,s.jsx)(n.Primitive.div,{"data-state":U(e.open),...d,ref:b,style:{pointerEvents:"auto",...d.style}})})}),J="DialogContent",K=(0,d.forwardRef)((a,b)=>{let c=D(J,a.__scopeDialog),{forceMount:d=c.forceMount,...e}=a,f=x(J,a.__scopeDialog);return(0,s.jsx)(m.Presence,{present:d||f.open,children:f.modal?(0,s.jsx)(L,{...e,ref:b}):(0,s.jsx)(M,{...e,ref:b})})});K.displayName=J;var L=(0,d.forwardRef)((a,b)=>{let c=x(J,a.__scopeDialog),g=(0,d.useRef)(null),h=(0,f.useComposedRefs)(b,c.contentRef,g);return(0,d.useEffect)(()=>{let a=g.current;if(a)return(0,q.hideOthers)(a)},[]),(0,s.jsx)(N,{...a,ref:h,trapFocus:c.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,e.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),c.triggerRef.current?.focus()}),onPointerDownOutside:(0,e.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;(2===b.button||c)&&a.preventDefault()}),onFocusOutside:(0,e.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault())})}),M=(0,d.forwardRef)((a,b)=>{let c=x(J,a.__scopeDialog),e=(0,d.useRef)(!1),f=(0,d.useRef)(!1);return(0,s.jsx)(N,{...a,ref:b,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(e.current||c.triggerRef.current?.focus(),b.preventDefault()),e.current=!1,f.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(e.current=!0,"pointerdown"===b.detail.originalEvent.type&&(f.current=!0));let d=b.target;c.triggerRef.current?.contains(d)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&f.current&&b.preventDefault()}})}),N=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,trapFocus:e,onOpenAutoFocus:g,onCloseAutoFocus:h,...i}=a,l=x(J,c),m=(0,d.useRef)(null),n=(0,f.useComposedRefs)(b,m);return(0,o.useFocusGuards)(),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(k.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:g,onUnmountAutoFocus:h,children:(0,s.jsx)(j.DismissableLayer,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":U(l.open),...i,ref:n,onDismiss:()=>l.onOpenChange(!1)})}),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(Y,{titleId:l.titleId}),(0,s.jsx)(Z,{contentRef:m,descriptionId:l.descriptionId})]})]})}),O="DialogTitle",P=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,...d}=a,e=x(O,c);return(0,s.jsx)(n.Primitive.h2,{id:e.titleId,...d,ref:b})});P.displayName=O;var Q="DialogDescription",R=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,...d}=a,e=x(Q,c);return(0,s.jsx)(n.Primitive.p,{id:e.descriptionId,...d,ref:b})});R.displayName=Q;var S="DialogClose",T=(0,d.forwardRef)((a,b)=>{let{__scopeDialog:c,...d}=a,f=x(S,c);return(0,s.jsx)(n.Primitive.button,{type:"button",...d,ref:b,onClick:(0,e.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})});function U(a){return a?"open":"closed"}T.displayName=S;var V="DialogTitleWarning",[W,X]=(0,g.createContext)(V,{contentName:J,titleName:O,docsSlug:"dialog"}),Y=({titleId:a})=>{let b=X(V),c=`\`${b.contentName}\` requires a \`${b.titleName}\` for the component to be accessible for screen reader users.
2
-
3
- If you want to hide the \`${b.titleName}\`, you can wrap it with our VisuallyHidden component.
4
-
5
- For more information, see https://radix-ui.com/primitives/docs/components/${b.docsSlug}`;return(0,d.useEffect)(()=>{a&&(document.getElementById(a)||console.error(c))},[c,a]),null},Z=({contentRef:a,descriptionId:b})=>{let c=X("DialogDescriptionWarning"),e=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${c.contentName}}.`;return(0,d.useEffect)(()=>{let c=a.current?.getAttribute("aria-describedby");b&&c&&(document.getElementById(b)||console.warn(e))},[e,a,b]),null},$=y,_=A,aa=E,ab=G,ac=K,ad=P,ae=R,af=T},76315:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({__iconNode:()=>b,default:()=>c});var d=a.i(49756);let b=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],c=(0,d.default)("x",b)}},97231:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({XIcon:()=>d.default});var d=a.i(76315)},22529:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Dialog:()=>h,DialogClose:()=>k,DialogContent:()=>m,DialogDescription:()=>q,DialogFooter:()=>o,DialogHeader:()=>n,DialogOverlay:()=>l,DialogPortal:()=>j,DialogTitle:()=>p,DialogTrigger:()=>i});var d=a.i(99559),e=a.i(38047),f=a.i(97231),g=a.i(61073);function h({...a}){return(0,d.jsx)(e.Root,{"data-slot":"dialog",...a})}function i({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"dialog-trigger",...a})}function j({...a}){return(0,d.jsx)(e.Portal,{"data-slot":"dialog-portal",...a})}function k({...a}){return(0,d.jsx)(e.Close,{"data-slot":"dialog-close",...a})}function l({className:a,...b}){return(0,d.jsx)(e.Overlay,{"data-slot":"dialog-overlay",className:(0,g.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",a),...b})}function m({className:a,children:b,showCloseButton:c=!0,...h}){return(0,d.jsxs)(j,{"data-slot":"dialog-portal",children:[(0,d.jsx)(l,{}),(0,d.jsxs)(e.Content,{"data-slot":"dialog-content",className:(0,g.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200",a),...h,children:[b,c&&(0,d.jsxs)(e.Close,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,d.jsx)(f.XIcon,{}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function n({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"dialog-header",className:(0,g.cn)("flex flex-col gap-2 text-center sm:text-left",a),...b})}function o({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"dialog-footer",className:(0,g.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",a),...b})}function p({className:a,...b}){return(0,d.jsx)(e.Title,{"data-slot":"dialog-title",className:(0,g.cn)("text-lg leading-none font-semibold",a),...b})}function q({className:a,...b}){return(0,d.jsx)(e.Description,{"data-slot":"dialog-description",className:(0,g.cn)("text-muted-foreground text-sm",a),...b})}},28189:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Checkbox:()=>v,CheckboxIndicator:()=>x,Indicator:()=>x,Root:()=>v,createCheckboxScope:()=>p,unstable_BubbleInput:()=>z,unstable_CheckboxBubbleInput:()=>z,unstable_CheckboxProvider:()=>s,unstable_CheckboxTrigger:()=>u,unstable_Provider:()=>s,unstable_Trigger:()=>u});var d=a.i(57560),e=a.i(18982),f=a.i(14625),g=a.i(63180),h=a.i(75654),i=a.i(40811),j=a.i(85091),k=a.i(1427),l=a.i(63657),m=a.i(99559),n="Checkbox",[o,p]=(0,f.createContextScope)(n),[q,r]=o(n);function s(a){let{__scopeCheckbox:b,checked:c,children:e,defaultChecked:f,disabled:g,form:i,name:j,onCheckedChange:k,required:l,value:o="on",internal_do_not_use_render:p}=a,[r,s]=(0,h.useControllableState)({prop:c,defaultProp:f??!1,onChange:k,caller:n}),[t,u]=(0,d.useState)(null),[v,w]=(0,d.useState)(null),x=(0,d.useRef)(!1),y=!t||!!i||!!t.closest("form"),z={checked:r,disabled:g,setChecked:s,control:t,setControl:u,name:j,form:i,value:o,hasConsumerStoppedPropagationRef:x,required:l,defaultChecked:!A(f)&&f,isFormControl:y,bubbleInput:v,setBubbleInput:w};return(0,m.jsx)(q,{scope:b,...z,children:"function"==typeof p?p(z):e})}var t="CheckboxTrigger",u=(0,d.forwardRef)(({__scopeCheckbox:a,onKeyDown:b,onClick:c,...f},h)=>{let{control:i,value:j,disabled:k,checked:n,required:o,setControl:p,setChecked:q,hasConsumerStoppedPropagationRef:s,isFormControl:u,bubbleInput:v}=r(t,a),w=(0,e.useComposedRefs)(h,p),x=(0,d.useRef)(n);return(0,d.useEffect)(()=>{let a=i?.form;if(a){let b=()=>q(x.current);return a.addEventListener("reset",b),()=>a.removeEventListener("reset",b)}},[i,q]),(0,m.jsx)(l.Primitive.button,{type:"button",role:"checkbox","aria-checked":A(n)?"mixed":n,"aria-required":o,"data-state":B(n),"data-disabled":k?"":void 0,disabled:k,value:j,...f,ref:w,onKeyDown:(0,g.composeEventHandlers)(b,a=>{"Enter"===a.key&&a.preventDefault()}),onClick:(0,g.composeEventHandlers)(c,a=>{q(a=>!!A(a)||!a),v&&u&&(s.current=a.isPropagationStopped(),s.current||a.stopPropagation())})})});u.displayName=t;var v=(0,d.forwardRef)((a,b)=>{let{__scopeCheckbox:c,name:d,checked:e,defaultChecked:f,required:g,disabled:h,value:i,onCheckedChange:j,form:k,...l}=a;return(0,m.jsx)(s,{__scopeCheckbox:c,checked:e,defaultChecked:f,disabled:h,required:g,onCheckedChange:j,name:d,form:k,value:i,internal_do_not_use_render:({isFormControl:a})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(u,{...l,ref:b,__scopeCheckbox:c}),a&&(0,m.jsx)(z,{__scopeCheckbox:c})]})})});v.displayName=n;var w="CheckboxIndicator",x=(0,d.forwardRef)((a,b)=>{let{__scopeCheckbox:c,forceMount:d,...e}=a,f=r(w,c);return(0,m.jsx)(k.Presence,{present:d||A(f.checked)||!0===f.checked,children:(0,m.jsx)(l.Primitive.span,{"data-state":B(f.checked),"data-disabled":f.disabled?"":void 0,...e,ref:b,style:{pointerEvents:"none",...a.style}})})});x.displayName=w;var y="CheckboxBubbleInput",z=(0,d.forwardRef)(({__scopeCheckbox:a,...b},c)=>{let{control:f,hasConsumerStoppedPropagationRef:g,checked:h,defaultChecked:k,required:n,disabled:o,name:p,value:q,form:s,bubbleInput:t,setBubbleInput:u}=r(y,a),v=(0,e.useComposedRefs)(c,u),w=(0,i.usePrevious)(h),x=(0,j.useSize)(f);(0,d.useEffect)(()=>{if(!t)return;let a=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,b=!g.current;if(w!==h&&a){let c=new Event("click",{bubbles:b});t.indeterminate=A(h),a.call(t,!A(h)&&h),t.dispatchEvent(c)}},[t,w,h,g]);let z=(0,d.useRef)(!A(h)&&h);return(0,m.jsx)(l.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:k??z.current,required:n,disabled:o,name:p,value:q,form:s,...b,tabIndex:-1,ref:v,style:{...b.style,...x,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function A(a){return"indeterminate"===a}function B(a){return A(a)?"indeterminate":a?"checked":"unchecked"}z.displayName=y},97937:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({Check:()=>d.default});var d=a.i(76174)},34983:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({Checkbox:()=>b});var d=a.i(99559),e=a.i(57560),f=a.i(28189),g=a.i(97937),h=a.i(61073);let b=(0,e.forwardRef)(({className:a,...b},c)=>(0,d.jsx)(f.Root,{ref:c,className:(0,h.cn)("peer h-4 w-4 shrink-0 rounded-sm border border-gray-300 ring-offset-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-950 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-gray-900 data-[state=checked]:text-white dark:border-gray-800 dark:ring-offset-gray-950 dark:focus-visible:ring-gray-300 dark:data-[state=checked]:bg-gray-50 dark:data-[state=checked]:text-gray-900",a),...b,children:(0,d.jsx)(f.Indicator,{className:(0,h.cn)("flex items-center justify-center text-current"),children:(0,d.jsx)(g.Check,{className:"h-4 w-4"})})}));b.displayName=f.Root.displayName}},84172:a=>{"use strict";var{g:b,__dirname:c}=a;function d(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function e(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function f(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?e(Object(c),!0).forEach(function(b){d(a,b,c[b])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):e(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function g(a,b){if(null==a)return{};var c,d,e={},f=Object.keys(a);for(d=0;d<f.length;d++)c=f[d],b.indexOf(c)>=0||(e[c]=a[c]);return e}function h(a,b){if(null==a)return{};var c,d,e=g(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],!(b.indexOf(c)>=0)&&Object.prototype.propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}function i(a,b){return j(a)||k(a,b)||l(a,b)||n()}function j(a){if(Array.isArray(a))return a}function k(a,b){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(a)){var c=[],d=!0,e=!1,f=void 0;try{for(var g,h=a[Symbol.iterator]();!(d=(g=h.next()).done)&&(c.push(g.value),!b||c.length!==b);d=!0);}catch(a){e=!0,f=a}finally{try{d||null==h.return||h.return()}finally{if(e)throw f}}return c}}function l(a,b){if(a){if("string"==typeof a)return m(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);if("Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c)return Array.from(a);if("Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c))return m(a,b)}}function m(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function n(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}a.s({arrayLikeToArray:()=>m,arrayWithHoles:()=>j,defineProperty:()=>d,iterableToArrayLimit:()=>k,nonIterableRest:()=>n,objectSpread2:()=>f,objectWithoutProperties:()=>h,objectWithoutPropertiesLoose:()=>g,slicedToArray:()=>i,unsupportedIterableToArray:()=>l})},21782:a=>{"use strict";var{g:b,__dirname:c}=a;{function d(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function e(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?d(Object(c),!0).forEach(function(b){var d;d=c[b],b in a?Object.defineProperty(a,b,{value:d,enumerable:!0,configurable:!0,writable:!0}):a[b]=d}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):d(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function f(a){return function b(){for(var c=this,d=arguments.length,e=Array(d),f=0;f<d;f++)e[f]=arguments[f];return e.length>=a.length?a.apply(this,e):function(){for(var a=arguments.length,d=Array(a),f=0;f<a;f++)d[f]=arguments[f];return b.apply(c,[].concat(e,d))}}}function g(a){return({}).toString.call(a).includes("Object")}function h(a){return"function"==typeof a}a.s({default:()=>b});var i=f(function(a,b){throw Error(a[b]||a.default)})({initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"}),j={changes:function(a,b){return g(b)||i("changeType"),Object.keys(b).some(function(b){return!Object.prototype.hasOwnProperty.call(a,b)})&&i("changeField"),b},selector:function(a){h(a)||i("selectorType")},handler:function(a){h(a)||g(a)||i("handlerType"),g(a)&&Object.values(a).some(function(a){return!h(a)})&&i("handlersType")},initial:function(a){a||i("initialIsRequired"),g(a)||i("initialType"),Object.keys(a).length||i("initialContent")}};function k(a,b){return h(b)?b(a.current):b}function l(a,b){return a.current=e(e({},a.current),b),b}function m(a,b,c){return h(b)?b(a.current):Object.keys(c).forEach(function(c){var d;return null==(d=b[c])?void 0:d.call(b,a.current[c])}),c}let b={create:function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};j.initial(a),j.handler(b);var c={current:a},d=f(m)(c,b),e=f(l)(c),g=f(j.changes)(a),h=f(k)(c);return[function(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(a){return a};return j.selector(a),a(c.current)},function(a){(function(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return function(a){return b.reduceRight(function(a,b){return b(a)},a)}})(d,e,g,h)(a)}]}}}},14260:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});let b={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}}}},45287:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});let b=function(a){return function b(){for(var c=this,d=arguments.length,e=Array(d),f=0;f<d;f++)e[f]=arguments[f];return e.length>=a.length?a.apply(this,e):function(){for(var a=arguments.length,d=Array(a),f=0;f<a;f++)d[f]=arguments[f];return b.apply(c,[].concat(e,d))}}}}},82863:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});let b=function(a){return({}).toString.call(a).includes("Object")}}},72859:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b,errorHandler:()=>g,errorMessages:()=>f});var d=a.i(45287),e=a.i(82863),f={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:"Deprecation warning!\n You are using deprecated way of configuration.\n\n Instead of using\n monaco.config({ urls: { monacoBase: '...' } })\n use\n monaco.config({ paths: { vs: '...' } })\n\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\n "},g=(0,d.default)(function(a,b){throw Error(a[b]||a.default)})(f);let b={config:function(a){return(a||g("configIsRequired"),(0,e.default)(a)||g("configType"),a.urls)?(console.warn(f.deprecation),{paths:{vs:a.urls.monacoBase}}):a}}}},87871:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});let b=function(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return function(a){return b.reduceRight(function(a,b){return b(a)},a)}}}},28251:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});var d=a.i(84172);let b=function a(b,c){return Object.keys(c).forEach(function(d){c[d]instanceof Object&&b[d]&&Object.assign(c[d],a(b[d],c[d]))}),(0,d.objectSpread2)((0,d.objectSpread2)({},b),c)}}},83021:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({CANCELATION_MESSAGE:()=>d,default:()=>b});var d={type:"cancelation",msg:"operation is manually canceled"};let b=function(a){var b=!1,c=new Promise(function(c,e){a.then(function(a){return b?e(d):c(a)}),a.catch(e)});return c.cancel=function(){return b=!0},c}}},75092:a=>{"use strict";var{g:b,__dirname:c}=a;{a.s({default:()=>b});var d=a.i(84172),e=a.i(21782),f=a.i(14260),g=a.i(72859),h=a.i(87871),i=a.i(28251),j=a.i(83021),k=e.default.create({config:f.default,isInitialized:!1,resolve:null,reject:null,monaco:null}),l=(0,d.slicedToArray)(k,2),m=l[0],n=l[1];function o(a){return document.body.appendChild(a)}function p(a){var b,c,d=m(function(a){return{config:a.config,reject:a.reject}}),e=(b="".concat(d.config.paths.vs,"/loader.js"),c=document.createElement("script"),b&&(c.src=b),c);return e.onload=function(){return a()},e.onerror=d.reject,e}function q(){var a=m(function(a){return{config:a.config,resolve:a.resolve,reject:a.reject}}),b=window.require;b.config(a.config),b(["vs/editor/editor.main"],function(b){r(b),a.resolve(b)},function(b){a.reject(b)})}function r(a){m().monaco||n({monaco:a})}var s=new Promise(function(a,b){return n({resolve:a,reject:b})});let b={config:function(a){var b=g.default.config(a),c=b.monaco,e=(0,d.objectWithoutProperties)(b,["monaco"]);n(function(a){return{config:(0,i.default)(a.config,e),monaco:c}})},init:function(){var a=m(function(a){return{monaco:a.monaco,isInitialized:a.isInitialized,resolve:a.resolve}});if(!a.isInitialized){if(n({isInitialized:!0}),a.monaco)return a.resolve(a.monaco),(0,j.default)(s);if(window.monaco&&window.monaco.editor)return r(window.monaco),a.resolve(window.monaco),(0,j.default)(s);(0,h.default)(o,p)(q)}return(0,j.default)(s)},__getMonacoInstance:function(){return m(function(a){return a.monaco})}}}},74403:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({}),a.i(75092)},30132:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({}),a.i(75092),a.i(74403)},22027:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({DiffEditor:()=>o,Editor:()=>s,default:()=>t,useMonaco:()=>p}),a.i(30132);var d=a.i(57560),e=a.i(75092),f={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},g={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},h=function({children:a}){return d.default.createElement("div",{style:g.container},a)},i=(0,d.memo)(function({width:a,height:b,isEditorReady:c,loading:e,_ref:g,className:i,wrapperProps:j}){return d.default.createElement("section",{style:{...f.wrapper,width:a,height:b},...j},!c&&d.default.createElement(h,null,e),d.default.createElement("div",{ref:g,style:{...f.fullWidth,...!c&&f.hide},className:i}))}),j=function(a){(0,d.useEffect)(a,[])},k=function(a,b,c=!0){let e=(0,d.useRef)(!0);(0,d.useEffect)(e.current||!c?()=>{e.current=!1}:a,b)};function l(){}function m(a,b,c,d){var e,f,g,h,i,j;return e=a,f=d,e.editor.getModel(n(e,f))||(g=a,h=b,i=c,j=d,g.editor.createModel(h,i,j?n(g,j):void 0))}function n(a,b){return a.Uri.parse(b)}var o=(0,d.memo)(function({original:a,modified:b,language:c,originalLanguage:f,modifiedLanguage:g,originalModelPath:h,modifiedModelPath:n,keepCurrentOriginalModel:o=!1,keepCurrentModifiedModel:p=!1,theme:q="light",loading:r="Loading...",options:s={},height:t="100%",width:u="100%",className:v,wrapperProps:w={},beforeMount:x=l,onMount:y=l}){let[z,A]=(0,d.useState)(!1),[B,C]=(0,d.useState)(!0),D=(0,d.useRef)(null),E=(0,d.useRef)(null),F=(0,d.useRef)(null),G=(0,d.useRef)(y),H=(0,d.useRef)(x),I=(0,d.useRef)(!1);j(()=>{let a=e.default.init();return a.then(a=>(E.current=a)&&C(!1)).catch(a=>a?.type!=="cancelation"&&console.error("Monaco initialization: error:",a)),()=>{let b;return D.current?(b=D.current?.getModel(),void(o||b?.original?.dispose(),p||b?.modified?.dispose(),D.current?.dispose())):a.cancel()}}),k(()=>{if(D.current&&E.current){let b=D.current.getOriginalEditor(),d=m(E.current,a||"",f||c||"text",h||"");d!==b.getModel()&&b.setModel(d)}},[h],z),k(()=>{if(D.current&&E.current){let a=D.current.getModifiedEditor(),d=m(E.current,b||"",g||c||"text",n||"");d!==a.getModel()&&a.setModel(d)}},[n],z),k(()=>{let a=D.current.getModifiedEditor();a.getOption(E.current.editor.EditorOption.readOnly)?a.setValue(b||""):b!==a.getValue()&&(a.executeEdits("",[{range:a.getModel().getFullModelRange(),text:b||"",forceMoveMarkers:!0}]),a.pushUndoStop())},[b],z),k(()=>{D.current?.getModel()?.original.setValue(a||"")},[a],z),k(()=>{let{original:a,modified:b}=D.current.getModel();E.current.editor.setModelLanguage(a,f||c||"text"),E.current.editor.setModelLanguage(b,g||c||"text")},[c,f,g],z),k(()=>{E.current?.editor.setTheme(q)},[q],z),k(()=>{D.current?.updateOptions(s)},[s],z);let J=(0,d.useCallback)(()=>{if(!E.current)return;H.current(E.current);let d=m(E.current,a||"",f||c||"text",h||""),e=m(E.current,b||"",g||c||"text",n||"");D.current?.setModel({original:d,modified:e})},[c,b,g,a,f,h,n]),K=(0,d.useCallback)(()=>{!I.current&&F.current&&(D.current=E.current.editor.createDiffEditor(F.current,{automaticLayout:!0,...s}),J(),E.current?.editor.setTheme(q),A(!0),I.current=!0)},[s,q,J]);return(0,d.useEffect)(()=>{z&&G.current(D.current,E.current)},[z]),(0,d.useEffect)(()=>{B||z||K()},[B,z,K]),d.default.createElement(i,{width:u,height:t,isEditorReady:z,loading:r,_ref:F,className:v,wrapperProps:w})}),p=function(){let[a,b]=(0,d.useState)(e.default.__getMonacoInstance());return j(()=>{let c;return a||(c=e.default.init()).then(a=>{b(a)}),()=>c?.cancel()}),a},q=function(a){let b=(0,d.useRef)();return(0,d.useEffect)(()=>{b.current=a},[a]),b.current},r=new Map,s=(0,d.memo)(function({defaultValue:a,defaultLanguage:b,defaultPath:c,value:f,language:g,path:h,theme:n="light",line:o,loading:p="Loading...",options:s={},overrideServices:t={},saveViewState:u=!0,keepCurrentModel:v=!1,width:w="100%",height:x="100%",className:y,wrapperProps:z={},beforeMount:A=l,onMount:B=l,onChange:C,onValidate:D=l}){let[E,F]=(0,d.useState)(!1),[G,H]=(0,d.useState)(!0),I=(0,d.useRef)(null),J=(0,d.useRef)(null),K=(0,d.useRef)(null),L=(0,d.useRef)(B),M=(0,d.useRef)(A),N=(0,d.useRef)(),O=(0,d.useRef)(f),P=q(h),Q=(0,d.useRef)(!1),R=(0,d.useRef)(!1);j(()=>{let a=e.default.init();return a.then(a=>(I.current=a)&&H(!1)).catch(a=>a?.type!=="cancelation"&&console.error("Monaco initialization: error:",a)),()=>J.current?void(N.current?.dispose(),v?u&&r.set(h,J.current.saveViewState()):J.current.getModel()?.dispose(),J.current.dispose()):a.cancel()}),k(()=>{let d=m(I.current,a||f||"",b||g||"",h||c||"");d!==J.current?.getModel()&&(u&&r.set(P,J.current?.saveViewState()),J.current?.setModel(d),u&&J.current?.restoreViewState(r.get(h)))},[h],E),k(()=>{J.current?.updateOptions(s)},[s],E),k(()=>{J.current&&void 0!==f&&(J.current.getOption(I.current.editor.EditorOption.readOnly)?J.current.setValue(f):f!==J.current.getValue()&&(R.current=!0,J.current.executeEdits("",[{range:J.current.getModel().getFullModelRange(),text:f,forceMoveMarkers:!0}]),J.current.pushUndoStop(),R.current=!1))},[f],E),k(()=>{let a=J.current?.getModel();a&&g&&I.current?.editor.setModelLanguage(a,g)},[g],E),k(()=>{void 0!==o&&J.current?.revealLine(o)},[o],E),k(()=>{I.current?.editor.setTheme(n)},[n],E);let S=(0,d.useCallback)(()=>{if(!(!K.current||!I.current)&&!Q.current){M.current(I.current);let d=h||c,e=m(I.current,f||a||"",b||g||"",d||"");J.current=I.current?.editor.create(K.current,{model:e,automaticLayout:!0,...s},t),u&&J.current.restoreViewState(r.get(d)),I.current.editor.setTheme(n),void 0!==o&&J.current.revealLine(o),F(!0),Q.current=!0}},[a,b,c,f,g,h,s,t,u,n,o]);return(0,d.useEffect)(()=>{E&&L.current(J.current,I.current)},[E]),(0,d.useEffect)(()=>{G||E||S()},[G,E,S]),O.current=f,(0,d.useEffect)(()=>{E&&C&&(N.current?.dispose(),N.current=J.current?.onDidChangeModelContent(a=>{R.current||C(J.current.getValue(),a)}))},[E,C]),(0,d.useEffect)(()=>{if(E){let a=I.current.editor.onDidChangeMarkers(a=>{let b=J.current.getModel()?.uri;if(b&&a.find(a=>a.path===b.path)){let a=I.current.editor.getModelMarkers({resource:b});D?.(a)}});return()=>{a?.dispose()}}return()=>{}},[E,D]),d.default.createElement(i,{width:w,height:x,isEditorReady:E,loading:p,_ref:K,className:y,wrapperProps:z})}),t=s},28783:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({}),a.i(30132),a.i(57560),a.i(22027)},82587:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({default:()=>i});var d=a.i(99559),e=a.i(57560),f=a.i(60284),g=a.i(94688),h=a.i(50923);function i({className:a,currentProjectName:b,currentEnvName:c}){let[i,j]=(0,e.useState)([]),[k,l]=(0,e.useState)(!0),[m,n]=(0,e.useState)(null),[o,p]=(0,e.useState)(new Set),[q,r]=(0,e.useState)(""),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(""),[w,x]=(0,e.useState)(!1),[y,z]=(0,e.useState)(null),A=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(i.length>0){let a=i.find(a=>a.projectName===b&&a.envName===c);if(a&&a.subApps.length>0){let b=new Set;a.subApps.forEach(a=>{i.forEach(c=>{c.envName===a&&b.add(F(c))})}),p(b)}}},[i,b,c]);let B=async()=>{l(!0),n(null);try{let a=await fetch("/api/all-projects-envs"),b=await a.json();b.success?j(b.data):n(b.error||"获取项目环境信息失败")}catch(a){console.error("获取项目环境信息失败:",a),n("获取项目环境信息失败: 网络错误")}finally{l(!1)}};(0,e.useEffect)(()=>(B(),C(),()=>{D()}),[c]);let C=()=>{A.current&&D();let a=`microapp-table-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,b=`/api/microapp-proxy-change-stream?env=${encodeURIComponent(c)}&clientId=${encodeURIComponent(a)}`;console.log(`[SSE] 建立连接到: ${b}`),z(null);try{let a=new EventSource(b);A.current=a,a.onopen=()=>{console.log(`[SSE] 连接已建立,环境: ${c}`),x(!0),z(null)},a.onmessage=a=>{try{let b=JSON.parse(a.data);E(b)}catch(a){console.error("[SSE] 解析消息失败:",a)}},a.onerror=()=>{console.error(`[SSE] 连接错误,环境: ${c}`),x(!1),z("实时推送连接断开"),setTimeout(()=>{A.current&&A.current.readyState!==EventSource.CLOSED||(console.log("[SSE] 尝试重新连接..."),C())},3e3)}}catch(a){console.error("[SSE] 建立连接失败:",a),z("无法建立实时推送连接")}},D=()=>{A.current&&(console.log("[SSE] 关闭连接"),A.current.close(),A.current=null,x(!1))},E=a=>{switch(console.log("[SSE] 收到消息:",a),a.type){case"connection-established":console.log(`[SSE] 连接确认: ${a.message}`),x(!0),z(null);break;case"microapp-proxy-config-change":if(console.log(`[SSE] 配置变化通知: 环境=${a.envName}`),console.log(`[SSE] 变化详情:`,a.changes),a.changes){let{added:b,removed:c}=a.changes,d="";b.length>0&&(d+=`新增: ${b.join(", ")}`),c.length>0&&(d&&(d+="; "),d+=`移除: ${c.join(", ")}`),v(`配置已更新 (${d})`)}else v("配置已更新");B(),setTimeout(()=>v(""),3e3);break;case"heartbeat":x(!0),z(null);break;default:console.log("[SSE] 未知消息类型:",a.type)}},F=a=>`${a.projectName}-${a.envName}`,G=q.trim()?i.filter(a=>a.projectName.toLowerCase().includes(q.toLowerCase())||a.envName.toLowerCase().includes(q.toLowerCase())||a.host.toLowerCase().includes(q.toLowerCase())):i,H=(a,b)=>{let c=new Set(o);b?c.add(a):c.delete(a),p(c)},I=a=>{a?p(new Set(G.map(a=>F(a)))):p(new Set)},J=async()=>{t(!0),v("");try{let a=Array.from(o).map(a=>{let b=i.find(b=>F(b)===a);return b?b.envName:""}).filter(a=>""!==a),d=[...new Set(a)],e=await fetch("/api/microapp-proxy-config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:b,envName:c,selectedItems:d})}),f=await e.json();f.success?(v(f.message||"保存成功"),await B()):v(`保存失败: ${f.error}`)}catch(a){console.error("保存MicroApp代理配置失败:",a),v("保存失败: 网络错误")}finally{t(!1),setTimeout(()=>{v("")},5e3)}},K=o.size,L=G.length>0&&G.every(a=>o.has(F(a))),M=G.some(a=>o.has(F(a)));return k?(0,d.jsxs)("div",{className:`p-6 bg-gray-50 rounded-lg ${a}`,children:[(0,d.jsx)("h4",{className:"text-md font-medium mb-4",children:"MicroApp代理配置"}),(0,d.jsx)("div",{className:"text-center py-8",children:(0,d.jsx)("p",{className:"text-gray-500",children:"加载中..."})})]}):m?(0,d.jsxs)("div",{className:`p-6 bg-gray-50 rounded-lg ${a}`,children:[(0,d.jsx)("h4",{className:"text-md font-medium mb-4",children:"MicroApp代理配置"}),(0,d.jsxs)("div",{className:"text-center py-8",children:[(0,d.jsx)("p",{className:"text-red-500",children:m}),(0,d.jsx)(h.Button,{variant:"outline",size:"sm",onClick:B,className:"mt-2",children:"重试"})]})]}):(0,d.jsxs)("div",{className:`p-6 bg-gray-50 rounded-lg ${a}`,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h4",{className:"text-md font-medium",children:"MicroApp代理配置"}),(0,d.jsxs)("p",{className:"text-xs text-gray-500 mt-1",children:["为 ",b," - ",c," 环境配置微应用代理"]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsx)("div",{className:`w-2 h-2 rounded-full ${w?"bg-green-500":"bg-red-500"}`,title:w?"实时推送已连接":"实时推送断开"}),(0,d.jsx)("span",{className:"text-xs text-gray-500",children:w?"实时":"离线"})]}),(u||y)&&(0,d.jsx)("span",{className:`text-sm max-w-xs ${u&&u.includes("失败")||y?"text-red-600":u&&u.includes("但有")?"text-yellow-600":"text-green-600"}`,title:u||y||"",children:u||y}),(0,d.jsx)(h.Button,{variant:"outline",size:"sm",onClick:B,disabled:s,children:"刷新"}),(0,d.jsx)(h.Button,{variant:"default",size:"sm",onClick:J,disabled:s,children:s?"保存中...":"保存配置"})]})]}),(0,d.jsxs)("div",{className:"space-y-3 mb-4",children:[(0,d.jsx)("div",{className:"flex items-center gap-2",children:(0,d.jsxs)("div",{className:"relative flex-1 max-w-md",children:[(0,d.jsx)(g.Input,{placeholder:"搜索项目名称、环境名称或Host...",value:q,onChange:a=>r(a.target.value),className:"pr-8"}),q&&(0,d.jsx)(h.Button,{variant:"ghost",size:"sm",onClick:()=>{r("")},className:"absolute right-1 top-1/2 transform -translate-y-1/2 h-6 w-6 p-0 hover:bg-gray-100",children:"×"})]})}),(0,d.jsxs)("div",{className:"flex items-center justify-between text-sm text-gray-600",children:[(0,d.jsxs)("div",{className:"flex items-center gap-4",children:[(0,d.jsxs)("span",{children:["显示 ",G.length," 个环境配置",q&&` (搜索: "${q}")`]}),K>0&&(0,d.jsxs)("span",{className:"text-blue-600 font-medium",children:["已选择 ",K," 项"]})]}),K>0&&(0,d.jsx)(h.Button,{variant:"outline",size:"sm",onClick:()=>{p(new Set)},children:"清空选择"})]})]}),G.length>0?(0,d.jsx)("div",{className:"border rounded-md",children:(0,d.jsxs)(f.Table,{children:[(0,d.jsx)(f.TableHeader,{children:(0,d.jsxs)(f.TableRow,{children:[(0,d.jsx)(f.TableHead,{className:"w-12",children:(0,d.jsx)("input",{type:"checkbox",checked:L,onChange:a=>I(a.target.checked),ref:a=>{a&&(a.indeterminate=M&&!L)},className:"rounded border-gray-300"})}),(0,d.jsx)(f.TableHead,{children:"环境名称"}),(0,d.jsx)(f.TableHead,{children:"项目名称"}),(0,d.jsx)(f.TableHead,{children:"Host地址"}),(0,d.jsx)(f.TableHead,{children:"当前代理"})]})}),(0,d.jsx)(f.TableBody,{children:G.map(a=>{let b=F(a),c=o.has(b);return(0,d.jsxs)(f.TableRow,{children:[(0,d.jsx)(f.TableCell,{children:(0,d.jsx)("input",{type:"checkbox",checked:c,onChange:a=>H(b,a.target.checked),className:"rounded border-gray-300"})}),(0,d.jsx)(f.TableCell,{children:(0,d.jsx)("span",{className:"px-2 py-1 rounded text-xs font-medium bg-blue-100 text-blue-800",children:a.envName})}),(0,d.jsx)(f.TableCell,{className:"font-medium",children:a.projectName}),(0,d.jsx)(f.TableCell,{className:"font-mono text-sm",children:a.host}),(0,d.jsxs)(f.TableCell,{className:"text-sm text-gray-600",children:[a.currentProxy,a.proxyEnv[a.currentProxy]&&(0,d.jsx)("div",{className:"text-xs text-gray-500",children:a.proxyEnv[a.currentProxy]})]})]},b)})})]})}):(0,d.jsx)("div",{className:"text-center py-8",children:(0,d.jsx)("p",{className:"text-gray-500",children:q?"没有找到匹配的环境配置":"暂无环境配置"})}),K>0&&(0,d.jsx)("div",{className:"mt-4 p-3 bg-blue-50 rounded-md",children:(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("span",{className:"text-sm text-blue-700",children:["已选择 ",K," 个环境配置将作为微应用代理"]}),(0,d.jsx)("span",{className:"text-xs text-blue-600",children:"点击上方“保存配置”按钮保存设置"})]})})]})}},23936:function(a){var{g:b,__dirname:c,m:d,e:e}=a},22842:function(a){var{g:b,__dirname:c,m:d,e:e}=a;a.r(23936);var f=a.r(57560),g=f&&"object"==typeof f&&"default"in f?f:{default:f},h="undefined"!=typeof process&&process.env&&!0,i=function(a){return"[object String]"===Object.prototype.toString.call(a)},j=function(){function a(a){var b=void 0===a?{}:a,c=b.name,d=void 0===c?"stylesheet":c,e=b.optimizeForSpeed,f=void 0===e?h:e;k(i(d),"`name` must be a string"),this._name=d,this._deletedRulePlaceholder="#"+d+"-deleted-rule____{}",k("boolean"==typeof f,"`optimizeForSpeed` must be a boolean"),this._optimizeForSpeed=f,this._serverSheet=void 0,this._tags=[],this._injected=!1,this._rulesCount=0;var g="undefined"!=typeof window&&document.querySelector('meta[property="csp-nonce"]');this._nonce=g?g.getAttribute("content"):null}var b,c=a.prototype;return c.setOptimizeForSpeed=function(a){k("boolean"==typeof a,"`setOptimizeForSpeed` accepts a boolean"),k(0===this._rulesCount,"optimizeForSpeed cannot be when rules have already been inserted"),this.flush(),this._optimizeForSpeed=a,this.inject()},c.isOptimizeForSpeed=function(){return this._optimizeForSpeed},c.inject=function(){var a=this;if(k(!this._injected,"sheet already injected"),this._injected=!0,"undefined"!=typeof window&&this._optimizeForSpeed){this._tags[0]=this.makeStyleTag(this._name),this._optimizeForSpeed="insertRule"in this.getSheet(),this._optimizeForSpeed||(h||console.warn("StyleSheet: optimizeForSpeed mode not supported falling back to standard mode."),this.flush(),this._injected=!0);return}this._serverSheet={cssRules:[],insertRule:function(b,c){return"number"==typeof c?a._serverSheet.cssRules[c]={cssText:b}:a._serverSheet.cssRules.push({cssText:b}),c},deleteRule:function(b){a._serverSheet.cssRules[b]=null}}},c.getSheetForTag=function(a){if(a.sheet)return a.sheet;for(var b=0;b<document.styleSheets.length;b++)if(document.styleSheets[b].ownerNode===a)return document.styleSheets[b]},c.getSheet=function(){return this.getSheetForTag(this._tags[this._tags.length-1])},c.insertRule=function(a,b){if(k(i(a),"`insertRule` accepts only strings"),"undefined"==typeof window)return"number"!=typeof b&&(b=this._serverSheet.cssRules.length),this._serverSheet.insertRule(a,b),this._rulesCount++;if(this._optimizeForSpeed){var c=this.getSheet();"number"!=typeof b&&(b=c.cssRules.length);try{c.insertRule(a,b)}catch(b){return h||console.warn("StyleSheet: illegal rule: \n\n"+a+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),-1}}else{var d=this._tags[b];this._tags.push(this.makeStyleTag(this._name,a,d))}return this._rulesCount++},c.replaceRule=function(a,b){if(this._optimizeForSpeed||"undefined"==typeof window){var c="undefined"!=typeof window?this.getSheet():this._serverSheet;if(b.trim()||(b=this._deletedRulePlaceholder),!c.cssRules[a])return a;c.deleteRule(a);try{c.insertRule(b,a)}catch(d){h||console.warn("StyleSheet: illegal rule: \n\n"+b+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),c.insertRule(this._deletedRulePlaceholder,a)}}else{var d=this._tags[a];k(d,"old rule at index `"+a+"` not found"),d.textContent=b}return a},c.deleteRule=function(a){if("undefined"==typeof window)return void this._serverSheet.deleteRule(a);if(this._optimizeForSpeed)this.replaceRule(a,"");else{var b=this._tags[a];k(b,"rule at index `"+a+"` not found"),b.parentNode.removeChild(b),this._tags[a]=null}},c.flush=function(){this._injected=!1,this._rulesCount=0,"undefined"!=typeof window?(this._tags.forEach(function(a){return a&&a.parentNode.removeChild(a)}),this._tags=[]):this._serverSheet.cssRules=[]},c.cssRules=function(){var a=this;return"undefined"==typeof window?this._serverSheet.cssRules:this._tags.reduce(function(b,c){return c?b=b.concat(Array.prototype.map.call(a.getSheetForTag(c).cssRules,function(b){return b.cssText===a._deletedRulePlaceholder?null:b})):b.push(null),b},[])},c.makeStyleTag=function(a,b,c){b&&k(i(b),"makeStyleTag accepts only strings as second parameter");var d=document.createElement("style");this._nonce&&d.setAttribute("nonce",this._nonce),d.type="text/css",d.setAttribute("data-"+a,""),b&&d.appendChild(document.createTextNode(b));var e=document.head||document.getElementsByTagName("head")[0];return c?e.insertBefore(d,c):e.appendChild(d),d},b=[{key:"length",get:function(){return this._rulesCount}}],function(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}(a.prototype,b),a}();function k(a,b){if(!a)throw Error("StyleSheet: "+b+".")}var l=function(a){for(var b=5381,c=a.length;c;)b=33*b^a.charCodeAt(--c);return b>>>0},m={};function n(a,b){if(!b)return"jsx-"+a;var c=String(b),d=a+c;return m[d]||(m[d]="jsx-"+l(a+"-"+c)),m[d]}function o(a,b){"undefined"==typeof window&&(b=b.replace(/\/style/gi,"\\/style"));var c=a+b;return m[c]||(m[c]=b.replace(/__jsx-style-dynamic-selector/g,a)),m[c]}var p=function(){function a(a){var b=void 0===a?{}:a,c=b.styleSheet,d=void 0===c?null:c,e=b.optimizeForSpeed,f=void 0!==e&&e;this._sheet=d||new j({name:"styled-jsx",optimizeForSpeed:f}),this._sheet.inject(),d&&"boolean"==typeof f&&(this._sheet.setOptimizeForSpeed(f),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer=void 0,this._indices={},this._instancesCounts={}}var b=a.prototype;return b.add=function(a){var b=this;void 0===this._optimizeForSpeed&&(this._optimizeForSpeed=Array.isArray(a.children),this._sheet.setOptimizeForSpeed(this._optimizeForSpeed),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),"undefined"==typeof window||this._fromServer||(this._fromServer=this.selectFromServer(),this._instancesCounts=Object.keys(this._fromServer).reduce(function(a,b){return a[b]=0,a},{}));var c=this.getIdAndRules(a),d=c.styleId,e=c.rules;if(d in this._instancesCounts){this._instancesCounts[d]+=1;return}var f=e.map(function(a){return b._sheet.insertRule(a)}).filter(function(a){return -1!==a});this._indices[d]=f,this._instancesCounts[d]=1},b.remove=function(a){var b=this,c=this.getIdAndRules(a).styleId;if(function(a,b){if(!a)throw Error("StyleSheetRegistry: "+b+".")}(c in this._instancesCounts,"styleId: `"+c+"` not found"),this._instancesCounts[c]-=1,this._instancesCounts[c]<1){var d=this._fromServer&&this._fromServer[c];d?(d.parentNode.removeChild(d),delete this._fromServer[c]):(this._indices[c].forEach(function(a){return b._sheet.deleteRule(a)}),delete this._indices[c]),delete this._instancesCounts[c]}},b.update=function(a,b){this.add(b),this.remove(a)},b.flush=function(){this._sheet.flush(),this._sheet.inject(),this._fromServer=void 0,this._indices={},this._instancesCounts={}},b.cssRules=function(){var a=this,b=this._fromServer?Object.keys(this._fromServer).map(function(b){return[b,a._fromServer[b]]}):[],c=this._sheet.cssRules();return b.concat(Object.keys(this._indices).map(function(b){return[b,a._indices[b].map(function(a){return c[a].cssText}).join(a._optimizeForSpeed?"":"\n")]}).filter(function(a){return!!a[1]}))},b.styles=function(a){var b,c;return b=this.cssRules(),void 0===(c=a)&&(c={}),b.map(function(a){var b=a[0],d=a[1];return g.default.createElement("style",{id:"__"+b,key:"__"+b,nonce:c.nonce?c.nonce:void 0,dangerouslySetInnerHTML:{__html:d}})})},b.getIdAndRules=function(a){var b=a.children,c=a.dynamic,d=a.id;if(c){var e=n(d,c);return{styleId:e,rules:Array.isArray(b)?b.map(function(a){return o(e,a)}):[o(e,b)]}}return{styleId:n(d),rules:Array.isArray(b)?b:[b]}},b.selectFromServer=function(){return Array.prototype.slice.call(document.querySelectorAll('[id^="__jsx-"]')).reduce(function(a,b){return a[b.id.slice(2)]=b,a},{})},a}(),q=f.createContext(null);function r(){return new p}function s(){return f.useContext(q)}q.displayName="StyleSheetContext";var t=g.default.useInsertionEffect||g.default.useLayoutEffect,u="undefined"!=typeof window?r():void 0;function v(a){var b=u||s();return b&&("undefined"==typeof window?b.add(a):t(function(){return b.add(a),function(){b.remove(a)}},[a.id,String(a.dynamic)])),null}v.dynamic=function(a){return a.map(function(a){return n(a[0],a[1])}).join(" ")},e.StyleRegistry=function(a){var b=a.registry,c=a.children,d=f.useContext(q),e=f.useState(function(){return d||b||r()})[0];return g.default.createElement(q.Provider,{value:e},c)},e.createStyleRegistry=r,e.style=v,e.useStyleRegistry=s},62012:function(a){var{g:b,__dirname:c,m:d,e:e}=a;d.exports=a.r(22842).style},55441:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({default:()=>g});var d=a.i(99559),e=a.i(62012),f=a.i(57560);function g({logs:a}){let b=(0,f.useRef)(null),c=(0,f.useRef)(!0),g=a=>a.replace(/\x1b\[[0-9;]*m/g,"").replace(/\x1b\[[0-9]*[A-Z]/g,"").replace(/\x1b\[K/g,"").replace(/\x1b\[2K/g,"").replace(/\x1b\[G/g,"").replace(/\x1b\[\d+A/g,"").replace(/\x1b\[\d+B/g,"").replace(/\x1b\[\d+C/g,"").replace(/\x1b\[\d+D/g,"").replace(/\[2K\[1A\[2K\[G/g,"").replace(/\[\d+[A-Z]/g,"").replace(/\[STDOUT\]/g,"[OUT]").replace(/\[STDERR\]/g,"[ERR]"),h=()=>{if(!b.current)return!0;let{scrollTop:a,scrollHeight:c,clientHeight:d}=b.current;return c-a-d<100},i=()=>{b.current&&c.current&&(b.current.scrollTop=b.current.scrollHeight)};return(0,f.useEffect)(()=>{setTimeout(i,10)},[a]),(0,d.jsxs)("div",{ref:b,onScroll:()=>{c.current=h()},style:{scrollBehavior:"smooth",maxHeight:"100%"},className:"jsx-b464fb0f479e34f5 h-full w-full overflow-y-auto overflow-x-hidden p-4 custom-scrollbar",children:[(0,d.jsx)(e.default,{id:"b464fb0f479e34f5",children:".custom-scrollbar.jsx-b464fb0f479e34f5{scrollbar-width:thin;scrollbar-color:#fff3 #0000001a}.custom-scrollbar.jsx-b464fb0f479e34f5::-webkit-scrollbar{width:10px;height:10px}.custom-scrollbar.jsx-b464fb0f479e34f5::-webkit-scrollbar-track{background:#0000001a;border-radius:5px}.custom-scrollbar.jsx-b464fb0f479e34f5::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}.custom-scrollbar.jsx-b464fb0f479e34f5.jsx-b464fb0f479e34f5::-webkit-scrollbar-thumb:hover{background:#fff6}"}),(0,d.jsx)("div",{className:"jsx-b464fb0f479e34f5 space-y-0.5",children:a.length>0?a.map((a,b)=>{let c=g(a);if(!c.trim())return null;let e=a.includes("[STDERR]"),f=a.includes("[SYSTEM]"),h=c.match(/^\[([\d-T:.Z]+)\]/)?.[1],i=c.replace(/^\[[\d-T:.Z]+\]\s*/,"");return(0,d.jsxs)("div",{className:`jsx-b464fb0f479e34f5 font-mono text-xs leading-5 ${e?"text-red-400":f?"text-yellow-400":"text-gray-100"}`,children:[h&&(0,d.jsxs)("span",{className:"jsx-b464fb0f479e34f5 text-gray-500 mr-2",children:["[",new Date(h).toLocaleTimeString("zh-CN"),"]"]}),(0,d.jsx)("span",{className:"jsx-b464fb0f479e34f5 whitespace-pre-wrap break-all",children:i})]},b)}):(0,d.jsx)("div",{className:"jsx-b464fb0f479e34f5 text-center text-gray-500 mt-8",children:"等待日志输出..."})})]})}},64708:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({default:()=>g});var d=a.i(99559),e=a.i(57560),f=a.i(50923);function g({projectName:a,className:b="",compact:c=!1}){let[g,h]=(0,e.useState)(null),[i,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(null),[m,n]=(0,e.useState)(""),o=(0,e.useCallback)(async()=>{if(a){j(!0),l(null);try{let b=await fetch(`/api/current-branch?project=${encodeURIComponent(a)}`),c=await b.json();c.success?(h(c.data),n(new Date().toLocaleTimeString("zh-CN",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}))):l(c.error||"获取分支信息失败")}catch(a){l("网络请求失败"),console.error("获取分支信息失败:",a)}finally{j(!1)}}},[a]);(0,e.useEffect)(()=>{o()},[o]),(0,e.useEffect)(()=>{if(!a)return;let b=setInterval(()=>{o()},c?15e3:3e4);return()=>clearInterval(b)},[a,o,c]);let p=a=>0===a?"text-gray-500":"text-orange-600",q=()=>{if(!g)return null;let{ahead:a,behind:b}=g.status;return a>0&&b>0?(0,d.jsx)("span",{className:"text-yellow-500 text-xs",children:"↕"}):a>0?(0,d.jsx)("span",{className:"text-green-500 text-xs",children:"↑"}):b>0?(0,d.jsx)("span",{className:"text-red-500 text-xs",children:"↓"}):(0,d.jsx)("span",{className:"text-gray-400 text-xs",children:"✓"})};return i&&!g?c?(0,d.jsxs)("div",{className:`flex items-center gap-2 px-3 py-1 bg-gray-50 rounded-md ${b}`,children:[(0,d.jsx)("div",{className:"animate-spin w-3 h-3 border-2 border-blue-500 border-t-transparent rounded-full"}),(0,d.jsx)("span",{className:"text-xs text-gray-500",children:"加载中..."})]}):(0,d.jsxs)("div",{className:`bg-white rounded-lg shadow-sm border p-4 ${b}`,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Git 分支信息"}),(0,d.jsx)("div",{className:"animate-spin w-4 h-4 border-2 border-blue-500 border-t-transparent rounded-full"})]}),(0,d.jsx)("div",{className:"text-sm text-gray-500",children:"正在加载分支信息..."})]}):k?c?(0,d.jsxs)("div",{className:`flex items-center gap-2 px-3 py-1 bg-red-50 rounded-md ${b}`,children:[(0,d.jsx)("span",{className:"text-xs text-red-500",children:"分支信息错误"}),(0,d.jsx)(f.Button,{variant:"ghost",size:"sm",onClick:o,disabled:i,className:"h-5 w-5 p-0 text-red-500 hover:bg-red-100",children:"↻"})]}):(0,d.jsxs)("div",{className:`bg-white rounded-lg shadow-sm border p-4 ${b}`,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Git 分支信息"}),(0,d.jsx)(f.Button,{variant:"outline",size:"sm",onClick:o,disabled:i,className:"h-6 px-2 text-xs",children:i?"刷新中...":"重试"})]}),(0,d.jsx)("div",{className:"text-sm text-red-500 bg-red-50 p-2 rounded",children:k})]}):g?c?(0,d.jsxs)("div",{className:`flex items-center gap-2 px-3 py-1 bg-blue-50 border border-blue-200 rounded-md ${b}`,children:[(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-blue-600",children:[(0,d.jsx)("polyline",{points:"6,3 6,15"}),(0,d.jsx)("circle",{cx:"18",cy:"6",r:"3"}),(0,d.jsx)("circle",{cx:"6",cy:"18",r:"3"}),(0,d.jsx)("path",{d:"m18,9a9,9 0 0,1-9,9"})]}),(0,d.jsx)("span",{className:"text-sm font-medium text-blue-800",children:g.currentBranch}),q(),(0,d.jsx)(f.Button,{variant:"ghost",size:"sm",onClick:o,disabled:i,className:"h-5 w-5 p-0 text-blue-600 hover:bg-blue-100",title:"刷新分支信息",children:i?(0,d.jsx)("div",{className:"animate-spin w-3 h-3 border-2 border-blue-600 border-t-transparent rounded-full"}):"↻"})]}):(0,d.jsxs)("div",{className:`bg-white rounded-lg shadow-sm border p-4 ${b}`,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Git 分支信息"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[m&&(0,d.jsx)("span",{className:"text-xs text-gray-400",children:m}),(0,d.jsx)(f.Button,{variant:"outline",size:"sm",onClick:o,disabled:i,className:"h-6 px-2 text-xs",children:i?"刷新中...":"刷新"})]})]}),(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)("div",{className:"flex items-center gap-2",children:(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsx)("span",{className:"text-xs text-gray-500",children:"分支:"}),(0,d.jsx)("span",{className:"text-sm font-medium text-blue-600 bg-blue-50 px-2 py-1 rounded",children:g.currentBranch}),q()]})}),(0,d.jsxs)("div",{className:"bg-gray-50 p-3 rounded text-xs space-y-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"提交:"}),(0,d.jsx)("code",{className:"bg-gray-200 px-1 rounded font-mono text-xs",children:g.lastCommit.hash})]}),(0,d.jsx)("div",{className:"text-gray-700 font-medium line-clamp-2",children:g.lastCommit.message}),(0,d.jsxs)("div",{className:"flex items-center justify-between text-gray-500",children:[(0,d.jsx)("span",{children:g.lastCommit.author}),(0,d.jsx)("span",{children:g.lastCommit.date})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-2 gap-2 text-xs",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"领先:"}),(0,d.jsx)("span",{className:p(g.status.ahead),children:g.status.ahead})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"落后:"}),(0,d.jsx)("span",{className:p(g.status.behind),children:g.status.behind})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"已修改:"}),(0,d.jsx)("span",{className:p(g.status.modified),children:g.status.modified})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"已暂存:"}),(0,d.jsx)("span",{className:p(g.status.staged),children:g.status.staged})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between col-span-2",children:[(0,d.jsx)("span",{className:"text-gray-500",children:"未跟踪:"}),(0,d.jsx)("span",{className:p(g.status.untracked),children:g.status.untracked})]})]}),(g.status.ahead>0||g.status.behind>0)&&(0,d.jsxs)("div",{className:"text-xs p-2 rounded bg-yellow-50 border border-yellow-200",children:[g.status.ahead>0&&g.status.behind>0&&(0,d.jsxs)("span",{className:"text-yellow-700",children:["分支与远程不同步,有 ",g.status.ahead," 个本地提交,",g.status.behind," 个远程提交"]}),g.status.ahead>0&&0===g.status.behind&&(0,d.jsxs)("span",{className:"text-green-700",children:["本地领先远程 ",g.status.ahead," 个提交"]}),0===g.status.ahead&&g.status.behind>0&&(0,d.jsxs)("span",{className:"text-red-700",children:["本地落后远程 ",g.status.behind," 个提交"]})]})]})]}):c?(0,d.jsx)("div",{className:`flex items-center gap-2 px-3 py-1 bg-gray-50 rounded-md ${b}`,children:(0,d.jsx)("span",{className:"text-xs text-gray-500",children:"暂无分支信息"})}):(0,d.jsxs)("div",{className:`bg-white rounded-lg shadow-sm border p-4 ${b}`,children:[(0,d.jsx)("div",{className:"flex items-center justify-between mb-3",children:(0,d.jsx)("h3",{className:"text-sm font-semibold text-gray-700",children:"Git 分支信息"})}),(0,d.jsx)("div",{className:"text-sm text-gray-500",children:"暂无分支信息"})]})}},73426:a=>{"use strict";var{g:b,__dirname:c}=a;a.s({default:()=>w});var d=a.i(99559),e=a.i(57560),f=a.i(40490),g=a.i(50923),h=a.i(27405),i=a.i(74939),j=a.i(49566),k=a.i(94688),l=a.i(58413),m=a.i(67252),n=a.i(60284),o=a.i(22529),p=a.i(34983);a.i(28783);var q=a.i(22027),r=a.i(82587),s=a.i(55441),t=a.i(64708),u=function(a){return a.PENDING="pending",a.EXISTING="existing",a.CLONING="cloning",a.SUCCESS="success",a.FAILED="failed",a.RETRYING="retrying",a}(u||{});function v(){let a=(0,f.useSearchParams)(),b=(0,f.useRouter)(),c=a.get("project"),[u,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(!0),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)({}),[C,D]=(0,e.useState)({mockingIntercept:!1,mockOpen:!1}),[E,F]=(0,e.useState)(!1),[G,H]=(0,e.useState)(null),[I,J]=(0,e.useState)(!1),[K,L]=(0,e.useState)(1),[M]=(0,e.useState)(10),[N,O]=(0,e.useState)(""),[P,Q]=(0,e.useState)(null),[R,S]=(0,e.useState)(!1),[T,U]=(0,e.useState)(!1),[V,W]=(0,e.useState)(!1),[X,Y]=(0,e.useState)(!0),[Z,$]=(0,e.useState)(null),[_,aa]=(0,e.useState)([]),[ab,ac]=(0,e.useState)(!1),[ad,ae]=(0,e.useState)(!1),[af,ag]=(0,e.useState)(!1),[ah,ai]=(0,e.useState)({apiPath:"",method:"GET",siteName:"默认场景",mockOpen:!0}),[aj,ak]=(0,e.useState)(null),[al,am]=(0,e.useState)(!1),[an,ao]=(0,e.useState)({open:!1,apiName:"",method:"",siteName:""}),[ap,aq]=(0,e.useState)({open:!1,apiName:"",apiPath:""}),[ar,as]=(0,e.useState)({open:!1,type:"success",message:""}),[at,au]=(0,e.useState)(!1),[av,aw]=(0,e.useState)([]),[ax,ay]=(0,e.useState)(!1),[az,aA]=(0,e.useState)(""),aB=(0,e.useRef)(null),[aC,aD]=(0,e.useState)({}),[aE,aF]=(0,e.useState)(!1),[aG,aH]=(0,e.useState)(""),[aI,aJ]=(0,e.useState)([]),aK=(0,e.useCallback)(async()=>{Z&&await aM(Z)},[Z]),aL=(0,e.useCallback)(async a=>{R&&(a.metaKey||a.ctrlKey)&&"s"===a.key&&(a.preventDefault(),await aK())},[R,aK]);(0,e.useEffect)(()=>{if(R)return document.addEventListener("keydown",aL),()=>{document.removeEventListener("keydown",aL)}},[R,Z,aL]);let aM=async a=>{try{await new Promise(a=>setTimeout(a,200));let b=a.getModel();if(b){await a.getAction("editor.action.formatDocument")?.run();let c=b.getValue();if(c&&!c.includes("\n")&&c.length>50){let d=c.replace(/\{\s*/g,"{\n ").replace(/\}\s*/g,"\n}").replace(/;\s*/g,";\n ").replace(/,\s*/g,",\n ").replace(/\n\s*\n/g,"\n").trim();d!==c&&(b.setValue(d),setTimeout(()=>{a.getAction("editor.action.formatDocument")?.run()},100))}}}catch(a){console.log("自动格式化失败:",a)}},aN=()=>{b.push("/initialization")},aO=async()=>{ac(!0);try{let a=await fetch("/api/check-workspace"),b=await a.json();if(b.success&&b.projects){let a=b.projects.map(a=>({name:a.name,status:a.status,message:a.message}));aa(a)}else console.error("获取项目列表失败:",b.error),aa([])}catch(a){console.error("获取项目列表失败:",a),aa([])}finally{ac(!1)}},aP=async(a="cursor")=>{if(c){F(!0);try{let b=await fetch("/api/open-project",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,editor:a})}),d=await b.json();if(d.success&&d.editorUrl){let a=document.createElement("a");a.href=d.editorUrl,a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)}else console.error("打开项目失败:",d.error),bj("error",`打开项目失败: ${d.error}`)}catch(a){console.error("打开项目失败:",a),bj("error","打开项目失败: 网络错误")}finally{F(!1)}}},aQ=async()=>{if(0===av.length)return void bj("error","请至少选择一个项目");ay(!0);try{let a=await fetch("/api/workspace/create",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projects:av})}),b=await a.json();b.success?(bj("success",b.message||"工作区已在 Cursor 中打开"),au(!1),aw([])):bj("error",`创建工作区失败: ${b.error}`)}catch(a){console.error("创建工作区失败:",a),bj("error","创建工作区失败: 网络错误")}finally{ay(!1)}},aR=a=>{aw(b=>b.includes(a)?b.filter(b=>b!==a):[...b,a])};(0,e.useEffect)(()=>{if(!c){z("项目名称缺失"),x(!1);return}(async()=>{try{let a=await fetch(`/api/project-config?project=${encodeURIComponent(c)}`),b=await a.json();if(b.success){v(b.data);let a={};Object.keys(b.data.envs).forEach(c=>{let d=b.data.envs[c],e="";e=d.proxyEnv[d.currentProxy]?d.proxyEnv[d.currentProxy]:d.currentProxy;let f="";f=d.proxyEnv[d.currentProxy]?d.currentProxy:"custom",a[c]={selectedProxy:e||"",selectedOption:f}}),B(a),D({mockingIntercept:b.data.mockingIntercept||!1,mockOpen:b.data.mockOpen||!1})}else z(b.error)}catch(a){z("获取项目配置失败"),console.error("获取项目配置失败:",a)}finally{x(!1)}})()},[c]);let aS=(0,e.useCallback)(async()=>{if(c){J(!0);try{let a=await fetch(`/api/mock-file?project=${encodeURIComponent(c)}`),b=await a.json();b.success?H(b.data):console.error("获取Mock数据失败:",b.error)}catch(a){console.error("获取Mock数据失败:",a)}finally{J(!1)}}},[c]);(0,e.useEffect)(()=>{if(u&&c){let a=null!==aB.current&&aB.current!==c;a&&(aA(""),L(1),H(null)),aB.current=c;let b=Object.keys(u.envs),d=new URLSearchParams(window.location.search).get("tab"),e="";(e=N&&("mock"===N||b.includes(N))?N:d&&("mock"===d||b.includes(d))?d:b.length>0?b[0]:"mock")!==N?(O(e),"mock"===e&&aS()):a&&"mock"===N&&aS()}},[u,c,N,aS]),(0,e.useEffect)(()=>{aO()},[]);let aT=(0,e.useCallback)(async()=>{if(!c||!u)return;let a={};for(let b of Object.keys(u.envs))a[`${b}`]={loading:!0,running:!1};aD(a);let b=Object.keys(u.envs).map(async a=>{try{let b=await fetch(`/api/process/status?projectName=${encodeURIComponent(c)}&envName=${encodeURIComponent(a)}`),d=await b.json();if(d.success&&d.data)return{envName:a,status:d.data}}catch(b){console.error(`获取环境 ${a} 状态失败:`,b)}return{envName:a,status:{running:!1}}}),d=await Promise.all(b),e={};d.forEach(({envName:a,status:b})=>{e[a]={running:b.running||!1,pid:b.pid,startTime:b.startTime,port:b.port,loading:!1}}),aD(e)},[c,u]),aU=async a=>{if(!c||!u)return;let b=u.envs[a];if(!b.startCommand)return void bj("error","该环境未配置启动命令");aD(b=>({...b,[a]:{...b[a],loading:!0}}));try{let d=await fetch("/api/process/start",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,envName:a,startCommand:b.startCommand})}),e=await d.json();if(e.success)aD(b=>({...b,[a]:{running:!0,pid:e.data.pid,startTime:e.data.startTime,port:e.data.port,loading:!1}}));else throw Error(e.error||"启动失败")}catch(b){console.error("启动进程失败:",b),bj("error",`启动失败: ${b instanceof Error?b.message:"未知错误"}`),aD(b=>({...b,[a]:{...b[a],loading:!1}}))}},aV=async a=>{if(c){aD(b=>({...b,[a]:{...b[a],loading:!0}}));try{let b=await fetch(`/api/process/start?projectName=${encodeURIComponent(c)}&envName=${encodeURIComponent(a)}`,{method:"DELETE"}),d=await b.json();if(d.success)aD(b=>({...b,[a]:{running:!1,loading:!1}}));else throw Error(d.error||"停止失败")}catch(b){console.error("停止进程失败:",b),bj("error",`停止失败: ${b instanceof Error?b.message:"未知错误"}`),aD(b=>({...b,[a]:{...b[a],loading:!1}}))}}},[aW,aX]=(0,e.useState)(null),aY=a=>{if(!c)return;aW&&aW.close(),aJ([]);let b=new EventSource(`/api/process/logs/stream?projectName=${encodeURIComponent(c)}&envName=${encodeURIComponent(a)}`);b.onmessage=a=>{try{let b=JSON.parse(a.data);"log"===b.type?aJ(a=>{let c=[...a,b.content];return c.length>1e3?c.slice(-1e3):c}):"init"===b.type?aJ([b.message]):"end"===b.type&&aJ(a=>[...a,`[系统] ${b.message}`])}catch(a){console.error("解析日志数据失败:",a)}},b.onerror=a=>{console.error("日志流错误:",a),b.close(),aX(null)},aX(b)},aZ=()=>{aW&&(aW.close(),aX(null))},a$=a=>{aH(a),aF(!0),aY(a)},a_=()=>{aF(!1),aJ([]),aH(""),aZ()};(0,e.useEffect)(()=>{if(u&&c){aT();let a=setInterval(()=>{aT()},5e3);return()=>clearInterval(a)}},[u,c,aT]);let a0=(a,b)=>{if(!u)return;let c=u.envs[a],d="";d="custom"===b?A[a]?.selectedOption==="custom"?A[a]?.selectedProxy||"":c.proxyEnv.custom||"":c.proxyEnv[b]||"",B(c=>({...c,[a]:{...c[a],selectedProxy:d,selectedOption:b,saveMessage:""}}))},a1=(a,b)=>{B(c=>({...c,[a]:{...c[a],selectedProxy:b,saveMessage:""}}))},a2=async a=>{D(b=>({...b,mockingIntercept:a,saving:!0,saveMessage:""}));try{let b=await fetch("/api/project-config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,projectConfig:{mockingIntercept:a,mockOpen:C.mockOpen}})}),d=await b.json();if(d.success)v(b=>b?{...b,mockingIntercept:a}:b),D(a=>({...a,saving:!1,saveMessage:"Mock拦截配置已保存"})),setTimeout(()=>{D(a=>({...a,saveMessage:""}))},2e3);else throw Error(d.error||"保存失败")}catch(b){console.error("保存Mock拦截配置失败:",b),D(c=>({...c,mockingIntercept:!a,saving:!1,saveMessage:`保存失败: ${b instanceof Error?b.message:"未知错误"}`})),setTimeout(()=>{D(a=>({...a,saveMessage:""}))},3e3)}},a3=async a=>{D(b=>({...b,mockOpen:a,saving:!0,saveMessage:""}));try{let b=await fetch("/api/project-config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,projectConfig:{mockingIntercept:C.mockingIntercept,mockOpen:a}})}),d=await b.json();if(d.success)v(b=>b?{...b,mockOpen:a}:b),D(a=>({...a,saving:!1,saveMessage:"Mock开启配置已保存"})),setTimeout(()=>{D(a=>({...a,saveMessage:""}))},2e3);else throw Error(d.error||"保存失败")}catch(b){console.error("保存Mock开启配置失败:",b),D(c=>({...c,mockOpen:!a,saving:!1,saveMessage:`保存失败: ${b instanceof Error?b.message:"未知错误"}`})),setTimeout(()=>{D(a=>({...a,saveMessage:""}))},3e3)}},a4=async a=>{if(!u||!c)return;let b=A[a]?.selectedProxy?.trim();if(!b)return void B(b=>({...b,[a]:{...b[a],saveMessage:"请先选择或填写代理地址"}}));let d=A[a]?.selectedOption,e="custom"===d;B(b=>({...b,[a]:{...b[a],saving:!0,saveMessage:""}}));try{let f={projectName:c,envName:a,newProxy:e?"custom":d||""};e&&(f.customProxyUrl=b);let g=await fetch("/api/project-config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)}),h=await g.json();h.success?(v(c=>{if(!c)return c;let d={...c.envs};return d[a]={...d[a],currentProxy:h.data.currentProxy},"custom"===h.data.currentProxy&&(d[a].proxyEnv={...d[a].proxyEnv,custom:b}),{...c,envs:d}}),B(b=>({...b,[a]:{...b[a],saving:!1,saveMessage:"保存成功"}}))):B(b=>({...b,[a]:{...b[a],saving:!1,saveMessage:`保存失败: ${h.error}`}}))}catch(b){console.error("保存配置失败:",b),B(b=>({...b,[a]:{...b[a],saving:!1,saveMessage:"保存失败: 网络错误"}}))}},a5=async()=>{if(window.confirm("确定要一键关闭所有Mock吗?"))try{let a=await fetch("/api/cleanup-mock",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c})});(await a.json()).success&&await aS()}catch(a){console.error("清空Mock配置失败:",a)}},a6=async()=>{if(window.confirm("确定要一键开启所有Mock吗?"))try{let a=await fetch("/api/open-all-mock",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c})});(await a.json()).success&&await aS()}catch(a){console.error("清空Mock配置失败:",a)}},a7=async(a,b,d)=>{if(c)try{let e=await fetch("/api/mock-setting",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,apiName:a,method:b,currentSite:d})}),f=await e.json();f.success?H(c=>c?{...c,mockFiles:c.mockFiles.map(c=>c.apiName===a?{...c,methods:c.methods.map(a=>a.method===b?{...a,setting:{...a.setting,currentSite:d}}:a)}:c)}:c):(console.error("更新场景失败:",f.error),bj("error",`更新场景失败: ${f.error}`))}catch(a){console.error("更新场景失败:",a),bj("error","更新场景失败: 网络错误")}},a8=async(a,b,d)=>{if(c){U(!0),Y(!0);try{let e=await fetch(`/api/mock-file-content?project=${encodeURIComponent(c)}&apiName=${encodeURIComponent(a)}&method=${encodeURIComponent(b)}&siteName=${encodeURIComponent(d)}`),f=await e.json();f.success?(Q({projectName:c,apiName:a,method:b,siteName:d,content:f.data.content}),S(!0)):(console.error("获取文件内容失败:",f.error),bj("error",`获取文件内容失败: ${f.error}`))}catch(a){console.error("获取文件内容失败:",a),bj("error","获取文件内容失败: 网络错误")}finally{U(!1)}}},a9=async()=>{if(P){W(!0);try{let a=await fetch("/api/mock-file-content",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)}),b=await a.json();b.success?(S(!1),Q(null)):(console.error("保存文件失败:",b.error),bj("error",`保存文件失败: ${b.error}`))}catch(a){console.error("保存文件失败:",a),bj("error","保存文件失败: 网络错误")}finally{W(!1)}}},ba=()=>{S(!1),Q(null),Y(!0)},bb=(a,b)=>{"siteName"===a&&ad||ai(c=>({...c,[a]:b}))},bc=(a,b)=>{let c=a.toUpperCase(),d=b.replace(/\//g,"_").replace(/^_/,"");switch(c){case"GET":return`const Mock = require('mockjs');
6
-
7
- module.exports = Mock.mock({
8
- "code": 200,
9
- "message": "获取${d}成功",
10
- "data": {
11
- "id|1-100": 1,
12
- "name": "@cname",
13
- "email": "@email",
14
- "phone": /^1[3-9]\\d{9}$/,
15
- "status|1": ["active", "inactive", "pending"],
16
- "createTime": "@datetime('yyyy-MM-dd HH:mm:ss')",
17
- "updateTime": "@now('yyyy-MM-dd HH:mm:ss')",
18
- "avatar": "@image('200x200', '@color', '@cname')",
19
- "address": "@county(true)"
20
- }
21
- });`;case"POST":return`const Mock = require('mockjs');
22
-
23
- module.exports = Mock.mock({
24
- "code": 200,
25
- "message": "创建${d}成功",
26
- "data": {
27
- "id|1-100": 1,
28
- "result": "success",
29
- "createTime": "@now('yyyy-MM-dd HH:mm:ss')"
30
- }
31
- });`;case"PUT":return`const Mock = require('mockjs');
32
-
33
- module.exports = Mock.mock({
34
- "code": 200,
35
- "message": "更新${d}成功",
36
- "data": {
37
- "id|1-100": 1,
38
- "result": "success",
39
- "updateTime": "@now('yyyy-MM-dd HH:mm:ss')"
40
- }
41
- });`;case"DELETE":return`const Mock = require('mockjs');
42
-
43
- module.exports = Mock.mock({
44
- "code": 200,
45
- "message": "删除${d}成功",
46
- "data": {
47
- "result": "success",
48
- "deleteTime": "@now('yyyy-MM-dd HH:mm:ss')"
49
- }
50
- });`;default:return`const Mock = require('mockjs');
51
-
52
- module.exports = Mock.mock({
53
- "code": 200,
54
- "message": "操作成功",
55
- "data": {
56
- "id|1-100": 1,
57
- "timestamp": "@now('yyyy-MM-dd HH:mm:ss')"
58
- }
59
- });`}},bd=(a,b,c)=>{if(!G)return!1;let d=a.replace(/\//g,"_").replace(/^_/,""),e=G.mockFiles.find(a=>a.apiName===d);if(!e)return!1;let f=e.methods.find(a=>a.method.toLowerCase()===b.toLowerCase());return!!f&&!!f.files.find(a=>a.siteName===c)},be=async()=>{if(!ah.apiPath.trim())return void bj("error","请输入接口地址");if(bd(ah.apiPath,ah.method,ah.siteName))return void bj("error",`接口 ${ah.apiPath} [${ah.method.toUpperCase()}] 的场景 "${ah.siteName}" 已存在,不能重复创建`);am(!0);try{let a=ah.apiPath.replace(/\//g,"_").replace(/^_/,""),b=P?.content??bc(ah.method,ah.apiPath),d=await fetch("/api/mock-file",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,apiName:a,method:ah.method.toLowerCase(),siteName:ah.siteName,content:b})}),e=await d.json();if(e.success)ah.mockOpen&&await bi(a,ah.method.toLowerCase(),ah.siteName,!0),ai({apiPath:"",method:"GET",siteName:"默认场景",mockOpen:!0}),ae(!1),await aS(),bj("success","Mock文件创建成功");else throw Error(e.error||"创建失败")}catch(a){console.error("创建Mock文件失败:",a),bj("error",`创建Mock文件失败: ${a instanceof Error?a.message:"未知错误"}`)}finally{am(!1)}},bf=(a,b,d)=>{console.log("新增场景点击:",{apiName:a,method:b,apiPath:d}),ak({apiName:a,method:b,apiPath:d});let e={apiPath:d,method:b.toUpperCase(),siteName:"",mockOpen:!0};console.log("设置表单数据:",e),ai(e),ag(!0);let f=bc(e.method,e.apiPath);Q({projectName:c||"",apiName:a,method:b.toLowerCase(),siteName:"",content:f||""})},bg=(a,b,c)=>{if(!G)return!1;let d=G.mockFiles.find(b=>b.apiName===a);if(!d)return!1;let e=d.methods.find(a=>a.method.toLowerCase()===b.toLowerCase());return!!e&&!!e.files.find(a=>a.siteName===c)},bh=async()=>{if(!aj||!ah.siteName.trim())return void bj("error","请输入场景名称");if(bg(aj.apiName,aj.method,ah.siteName))return void bj("error",`接口 ${aj.apiPath} [${aj.method.toUpperCase()}] 的场景 "${ah.siteName}" 已存在`);am(!0);try{let a=P?.content??bc(aj.method,aj.apiPath);console.log("defaultContent",a,P);let b=await fetch("/api/mock-file",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:c,apiName:aj.apiName,method:aj.method.toLowerCase(),siteName:ah.siteName,content:a})}),d=await b.json();if(d.success){if(ah.mockOpen&&await bi(aj.apiName,aj.method,ah.siteName,!0),ai({apiPath:"",method:"GET",siteName:"默认场景",mockOpen:!0}),u)try{let a=await fetch("/api/mock-setting",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:u.projectName,apiName:aj.apiName,method:aj.method,currentSite:ah.siteName})}),b=await a.json();b.success||console.warn("切换到新场景失败:",b.error)}catch(a){console.warn("切换到新场景失败:",a)}try{await bi(aj.apiName,aj.method,ah.siteName,!0)}catch(a){console.warn("自动开启新场景失败:",a)}ag(!1),ak(null),await aS(),bj("success","场景创建成功")}else throw Error(d.error||"创建失败")}catch(a){console.error("创建场景失败:",a),bj("error",`创建场景失败: ${a instanceof Error?a.message:"未知错误"}`)}finally{am(!1)}},bi=async(a,b,c,d)=>{if(u)try{let e=await fetch("/api/mock-open-status",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectName:u.projectName,apiName:a,method:b,siteName:c,isOpen:d})}),f=await e.json();f.success?await aS():console.error("更新Mock开启状态失败:",f.error)}catch(a){console.error("更新Mock开启状态失败:",a)}},bj=(a,b)=>{as({open:!0,type:a,message:b}),setTimeout(()=>{as({open:!1,type:"success",message:""})},3e3)},bk=(a,b,c)=>{ao({open:!0,apiName:a,method:b,siteName:c})},bl=async()=>{if(!u)return;let{apiName:a,method:b,siteName:c}=an;try{let d=await fetch(`/api/mock-file?project=${encodeURIComponent(u.projectName)}&apiName=${encodeURIComponent(a)}&method=${encodeURIComponent(b)}&siteName=${encodeURIComponent(c)}`,{method:"DELETE"}),e=await d.json();if(e.success){let a=window.scrollY;await aS(),window.scrollTo(0,a),bj("success","场景删除成功")}else console.error("删除场景失败:",e.error),bj("error",`删除场景失败: ${e.error}`)}catch(a){console.error("删除场景失败:",a),bj("error","删除场景失败: 网络错误")}finally{ao({open:!1,apiName:"",method:"",siteName:""})}},bm=(a,b)=>{aq({open:!0,apiName:a,apiPath:b})},bn=async()=>{if(!u)return;let{apiName:a}=ap;try{let b=await fetch(`/api/delete-mock-api?project=${encodeURIComponent(u.projectName)}&apiName=${encodeURIComponent(a)}`,{method:"DELETE"}),c=await b.json();if(c.success){let a=window.scrollY;await aS(),window.scrollTo(0,a),bj("success","接口删除成功")}else console.error("删除接口失败:",c.error),bj("error",`删除接口失败: ${c.error}`)}catch(a){console.error("删除接口失败:",a),bj("error","删除接口失败: 网络错误")}finally{aq({open:!1,apiName:"",apiPath:""})}},bo=a=>{aA(a),L(1)};if(w)return(0,d.jsx)("main",{className:"container mx-auto p-4 sm:p-6 md:p-8",children:(0,d.jsx)("div",{className:"text-center py-8",children:(0,d.jsx)("p",{children:"加载中..."})})});if(y||!u)return(0,d.jsxs)("main",{className:"container mx-auto p-4 sm:p-6 md:p-8",children:[(0,d.jsxs)("div",{className:"flex justify-between items-center mb-6",children:[(0,d.jsx)("h1",{className:"text-2xl font-bold",children:"项目配置"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[c&&(0,d.jsx)(h.SplitButton,{mainLabel:E?"打开中...":"在 Cursor 中打开",mainOnClick:()=>aP("cursor"),options:[{label:"在 WebStorm 中打开",onClick:()=>aP("webstorm")}],disabled:E,variant:"default"}),(0,d.jsx)(g.Button,{variant:"outline",onClick:aN,children:"返回初始化页面"})]})]}),(0,d.jsx)("div",{className:"text-center text-red-500 py-8",children:(0,d.jsx)("p",{children:y||"未找到项目配置"})})]});let bp=Object.keys(u.envs);return(0,d.jsxs)("main",{className:"container mx-auto p-4 sm:p-6 md:p-8",children:[(0,d.jsxs)("div",{className:"flex justify-between items-center mb-6",children:[(0,d.jsxs)("div",{className:"flex items-center gap-4",children:[(0,d.jsxs)("h1",{className:"text-2xl font-bold",children:[u.projectName," - 项目配置"]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(l.Label,{className:"text-sm font-medium text-gray-600",children:"切换项目:"}),(0,d.jsxs)(j.Select,{value:c||"",onValueChange:d=>{if(d===c)return;aA(""),L(1),H(null);let e=a.get("tab"),f=`/configuration?project=${encodeURIComponent(d)}${e?`&tab=${e}`:""}`;b.push(f)},disabled:ab,children:[(0,d.jsx)(j.SelectTrigger,{className:"w-40",children:(0,d.jsx)(j.SelectValue,{placeholder:ab?"加载中...":"选择项目"})}),(0,d.jsx)(j.SelectContent,{children:_.map(a=>(0,d.jsx)(j.SelectItem,{value:a.name,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`w-2 h-2 rounded-full ${"existing"===a.status?"bg-green-500":"failed"===a.status?"bg-red-500":"bg-yellow-500"}`}),(0,d.jsx)("span",{children:a.name})]})},a.name))})]})]}),(0,d.jsx)("div",{className:"ml-4",children:(0,d.jsx)(t.default,{projectName:c||"",compact:!0})})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>au(!0),children:"创建工作区"}),(0,d.jsx)(h.SplitButton,{mainLabel:E?"打开中...":"在 Cursor 中打开",mainOnClick:()=>aP("cursor"),options:[{label:"在 WebStorm 中打开",onClick:()=>aP("webstorm")}],disabled:E,variant:"default"}),(0,d.jsx)(g.Button,{variant:"outline",onClick:aN,children:"返回初始化页面"})]})]}),bp.length>0?(0,d.jsxs)(i.Tabs,{value:N||bp[0],onValueChange:a=>{O(a),"mock"===a&&aS()},className:"w-full",children:[(0,d.jsxs)(i.TabsList,{className:"grid w-full",style:{gridTemplateColumns:`repeat(${bp.length+1}, 1fr)`},children:[bp.map(a=>(0,d.jsx)(i.TabsTrigger,{value:a,className:"capitalize relative",children:(0,d.jsxs)("span",{className:"flex items-center gap-2",children:[a,aC[a]?.running&&(0,d.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full animate-pulse",title:"运行中"})]})},a)),(0,d.jsx)(i.TabsTrigger,{value:"mock",className:"capitalize",children:"Mock配置"})]}),bp.map(a=>{let b=u.envs[a],c=Object.entries(b.proxyEnv),e=A[a]?.selectedProxy||"",f=A[a]?.selectedOption||"",h=b.currentProxy,m=b.proxyEnv[h]||h,n=b.proxyEnv[h]?h:"custom";return(0,d.jsxs)(i.TabsContent,{value:a,className:"space-y-6",children:[(0,d.jsxs)("div",{className:"p-6 bg-gray-50 rounded-lg",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,d.jsx)("h3",{className:"text-lg font-semibold",children:"开发服务器控制"}),(0,d.jsx)("div",{className:"flex items-center gap-4",children:aC[a]?.running?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm text-green-600",children:[(0,d.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full animate-pulse"}),"运行中 (PID: ",aC[a]?.pid,")"]}),(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>a$(a),children:"查看日志"}),(0,d.jsx)(g.Button,{variant:"destructive",size:"sm",onClick:()=>aV(a),disabled:aC[a]?.loading,children:aC[a]?.loading?"处理中...":"停止"})]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm text-gray-500",children:[(0,d.jsx)("span",{className:"w-2 h-2 bg-gray-400 rounded-full"}),"未运行"]}),(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>a$(a),children:"查看日志"}),(0,d.jsx)(g.Button,{variant:"default",size:"sm",onClick:()=>aU(a),disabled:aC[a]?.loading||!b.startCommand,children:aC[a]?.loading?"处理中...":"启动"})]})})]}),b.startCommand?(0,d.jsxs)("div",{className:"text-sm text-gray-600",children:[(0,d.jsx)("span",{className:"font-medium",children:"启动命令:"})," ",(0,d.jsx)("code",{className:"px-2 py-1 bg-gray-200 rounded",children:b.startCommand})]}):(0,d.jsx)("div",{className:"text-sm text-yellow-600",children:"⚠️ 该环境未配置启动命令"}),b.host&&(0,d.jsxs)("div",{className:"text-sm text-gray-600 mt-2",children:[(0,d.jsx)("span",{className:"font-medium",children:"访问地址:"}),aC[a]?.running?(0,d.jsx)("a",{href:b.host,target:"_blank",rel:"noopener noreferrer",className:"ml-2 text-blue-600 hover:underline",children:b.host}):(0,d.jsx)("span",{className:"ml-2",children:b.host})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,d.jsxs)("div",{className:"p-6 bg-gray-50 rounded-lg",children:[(0,d.jsxs)("h3",{className:"text-lg font-semibold mb-4",children:[a," 环境配置"]}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)(l.Label,{className:"block text-sm font-medium mb-2",children:"接口代理环境切换"}),(0,d.jsxs)(j.Select,{value:f,onValueChange:b=>a0(a,b),children:[(0,d.jsx)(j.SelectTrigger,{className:"w-full",children:(0,d.jsx)(j.SelectValue,{placeholder:"选择代理环境"})}),(0,d.jsx)(j.SelectContent,{children:c.map(([a,b])=>(0,d.jsxs)(j.SelectItem,{value:a,children:[a,"(",b,")"]},a))})]})]}),m&&(0,d.jsxs)("div",{className:"p-3 bg-blue-50 rounded-md",children:[(0,d.jsxs)("p",{className:"text-sm text-blue-700",children:["当前项目接口已代理至:",n," 环境"]}),(0,d.jsxs)("p",{className:"text-sm text-blue-600",children:["代理地址为:",m]})]}),"custom"===f&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.Label,{className:"block text-sm font-medium",children:"自定义代理地址"}),(0,d.jsx)(k.Input,{type:"url",placeholder:"请输入自定义代理地址 (如: http://localhost:52741)",value:e,onChange:b=>a1(a,b.target.value),className:"w-full"}),(0,d.jsx)("p",{className:"text-xs text-gray-500",children:"请输入完整的代理地址,包括协议 (http:// 或 https://)"})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)(g.Button,{onClick:()=>a4(a),disabled:A[a]?.saving,className:"w-full sm:w-auto",children:A[a]?.saving?"保存中...":"保存配置"}),A[a]?.saveMessage&&(0,d.jsx)("span",{className:`text-sm ml-3 ${A[a]?.saveMessage==="保存成功"?"text-green-600":"text-red-600"}`,children:A[a]?.saveMessage})]})]})]}),(0,d.jsx)(r.default,{currentProjectName:u.projectName,currentEnvName:a})]})]},a)}),(0,d.jsx)(i.TabsContent,{value:"mock",className:"space-y-6",children:(0,d.jsxs)("div",{className:"p-6 bg-gray-50 rounded-lg",children:[(0,d.jsx)("h3",{className:"text-lg font-semibold mb-4",children:"Mock配置"}),(0,d.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 mb-6",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(l.Label,{className:"text-sm font-medium",children:"Mock拦截"}),(0,d.jsx)("p",{className:"text-xs text-gray-500",children:"启用或禁用Mock拦截功能"})]}),(0,d.jsx)(m.Switch,{checked:C.mockingIntercept,onCheckedChange:a2})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(l.Label,{className:"text-sm font-medium",children:"Mock开启"}),(0,d.jsx)("p",{className:"text-xs text-gray-500",children:"启用或禁用Mock功能"})]}),(0,d.jsx)(m.Switch,{checked:C.mockOpen,onCheckedChange:a3})]})]}),C.saveMessage&&(0,d.jsx)("div",{className:"mb-6",children:(0,d.jsx)("span",{className:`text-sm ${C.saveMessage.includes("已保存")?"text-green-600":"text-red-600"}`,children:C.saveMessage})}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("h4",{className:"text-md font-medium",children:"Mock接口列表"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(g.Button,{onClick:()=>{ae(!0);let a=bc(ah.method,ah.apiPath);Q({projectName:c||"",apiName:ah.apiPath,method:ah.method.toLowerCase(),siteName:"",content:a||""})},variant:"default",size:"sm",children:"新建"}),(0,d.jsx)(g.Button,{onClick:aS,disabled:I,variant:"outline",size:"sm",children:I?"加载中...":"刷新"}),(0,d.jsx)(g.Button,{onClick:a5,variant:"outline",size:"sm",children:"一键关闭"}),(0,d.jsx)(g.Button,{onClick:a6,variant:"outline",size:"sm",children:"一键开启"})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsxs)("div",{className:"relative flex-1 max-w-md",children:[(0,d.jsx)(k.Input,{placeholder:"搜索接口地址...",value:az,onChange:a=>bo(a.target.value),className:"pr-8"}),az&&(0,d.jsx)(g.Button,{variant:"ghost",size:"sm",onClick:()=>{aA(""),L(1)},className:"absolute right-1 top-1/2 transform -translate-y-1/2 h-6 w-6 p-0 hover:bg-gray-100",children:"×"})]}),az&&(0,d.jsxs)("span",{className:"text-sm text-gray-500",children:['搜索关键词: "',az,'"']})]}),I?(0,d.jsx)("div",{className:"text-center py-8",children:(0,d.jsx)("p",{className:"text-gray-500",children:"加载Mock数据中..."})}):G&&G.mockFiles.length>0?(()=>{let a=[];G.mockFiles.forEach(b=>{b.methods.forEach(c=>{let d=b.apiName.replace(/_/g,"/"),e=c.files.map(a=>a.siteName),f=c.setting?.currentSite||e[0]||"",g=c.setting?.open||[],h=g.includes(f);a.push({apiPath:d,method:c.method.toUpperCase(),currentSite:f,availableSites:e,apiName:b.apiName,isOpen:h,openSites:g})})});let b=az.trim()?a.filter(a=>a.apiPath.toLowerCase().includes(az.toLowerCase())):a,c=b.length,e=Math.ceil(c/M),f=(K-1)*M,h=f+M,i=b.slice(f,h);return(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)(n.Table,{children:[(0,d.jsx)(n.TableHeader,{children:(0,d.jsxs)(n.TableRow,{children:[(0,d.jsx)(n.TableHead,{children:"接口地址"}),(0,d.jsx)(n.TableHead,{children:"请求方法"}),(0,d.jsx)(n.TableHead,{children:"当前场景"}),(0,d.jsx)(n.TableHead,{children:"开启mock"}),(0,d.jsx)(n.TableHead,{children:"操作"})]})}),(0,d.jsx)(n.TableBody,{children:i.map((a,b)=>(0,d.jsxs)(n.TableRow,{children:[(0,d.jsx)(n.TableCell,{className:"font-medium",children:a.apiPath}),(0,d.jsx)(n.TableCell,{children:(0,d.jsx)("span",{className:`px-2 py-1 rounded text-xs font-medium ${"GET"===a.method?"bg-green-100 text-green-800":"POST"===a.method?"bg-blue-100 text-blue-800":"PUT"===a.method?"bg-yellow-100 text-yellow-800":"DELETE"===a.method?"bg-red-100 text-red-800":"bg-gray-100 text-gray-800"}`,children:a.method})}),(0,d.jsx)(n.TableCell,{children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsxs)(j.Select,{value:a.currentSite,onValueChange:b=>a7(a.apiName,a.method.toLowerCase(),b),children:[(0,d.jsx)(j.SelectTrigger,{className:"w-32",children:(0,d.jsx)(j.SelectValue,{})}),(0,d.jsx)(j.SelectContent,{children:a.availableSites.map(a=>(0,d.jsx)(j.SelectItem,{value:a,children:a},a))})]}),a.availableSites.length>1&&(0,d.jsx)(g.Button,{variant:"ghost",size:"sm",onClick:()=>bk(a.apiName,a.method.toLowerCase(),a.currentSite),className:"h-8 w-8 p-0 text-red-500 hover:text-red-700 hover:bg-red-50",title:"删除当前场景",children:(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M3 6h18"}),(0,d.jsx)("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),(0,d.jsx)("path",{d:"M8 6V4c0-1 1-2 2-2h4c0 1 1 2 2 2v2"})]})})]})}),(0,d.jsx)(n.TableCell,{children:(0,d.jsx)(m.Switch,{checked:a.isOpen,onCheckedChange:b=>bi(a.apiName,a.method.toLowerCase(),a.currentSite,b)})}),(0,d.jsx)(n.TableCell,{children:(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>a8(a.apiName,a.method.toLowerCase(),a.currentSite),disabled:T,children:T?"加载中...":"编辑"}),(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>bf(a.apiName,a.method.toLowerCase(),a.apiPath),disabled:al,children:"新增场景"}),(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>bm(a.apiName,a.apiPath),className:"text-red-500 hover:text-red-700 hover:border-red-300",children:"删除接口"})]})})]},`${a.apiName}-${a.method}-${b}`))})]}),e>1&&(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"text-sm text-gray-500",children:["显示 ",f+1,"-",Math.min(h,c)," 条,共 ",c," 条"]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>L(a=>Math.max(1,a-1)),disabled:1===K,children:"上一页"}),(0,d.jsxs)("span",{className:"text-sm",children:[K," / ",e]}),(0,d.jsx)(g.Button,{variant:"outline",size:"sm",onClick:()=>L(a=>Math.min(e,a+1)),disabled:K===e,children:"下一页"})]})]})]})})():(0,d.jsxs)("div",{className:"text-center py-8",children:[(0,d.jsx)("p",{className:"text-gray-500",children:"暂无Mock接口数据"}),(0,d.jsx)("p",{className:"text-xs text-gray-400 mt-1",children:"请先创建Mock文件"})]})]})]})})]}):(0,d.jsx)("div",{className:"text-center text-gray-500 py-8",children:(0,d.jsx)("p",{children:"该项目没有配置环境信息"})}),(0,d.jsx)(o.Dialog,{open:R||ad||af,onOpenChange:a=>{a||(S(!1),ae(!1),ag(!1),ak(null))},children:(0,d.jsxs)(o.DialogContent,{className:"w-screen h-screen max-w-none max-h-none m-0 rounded-none overflow-hidden flex flex-col",children:[(0,d.jsxs)(o.DialogHeader,{className:"flex-shrink-0 border-b pb-4",children:[(0,d.jsx)(o.DialogTitle,{children:ad?"新建Mock文件":af?"新增场景":"编辑Mock文件"}),(0,d.jsx)(o.DialogDescription,{children:ad?"创建一个新的Mock接口文件":af&&aj?(0,d.jsxs)(d.Fragment,{children:["为接口 ",aj.apiPath," [",aj.method.toUpperCase(),"] 新增场景"]}):P?(0,d.jsxs)(d.Fragment,{children:["编辑 ",P.apiName.replace(/_/g,"/")," - ",P.method.toUpperCase()," - ",P.siteName,".cjs"]}):null})]}),(ad||af)&&(0,d.jsxs)("div",{className:"flex-shrink-0 border-b pb-4",children:[(0,d.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.Label,{htmlFor:"apiPath",className:"text-sm font-medium",children:"接口地址"}),af?(0,d.jsx)("div",{className:"px-3 py-2 bg-gray-50 border border-gray-200 rounded-md text-sm text-gray-600",children:ah.apiPath}):(0,d.jsx)(k.Input,{id:"apiPath",placeholder:"/api/user/info",value:ah.apiPath,onChange:a=>bb("apiPath",a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.Label,{htmlFor:"method",className:"text-sm font-medium",children:"请求方法"}),af?(0,d.jsx)("div",{className:"px-3 py-2 bg-gray-50 border border-gray-200 rounded-md text-sm text-gray-600",children:ah.method}):(0,d.jsxs)(j.Select,{value:ah.method,onValueChange:a=>bb("method",a),children:[(0,d.jsx)(j.SelectTrigger,{children:(0,d.jsx)(j.SelectValue,{})}),(0,d.jsxs)(j.SelectContent,{children:[(0,d.jsx)(j.SelectItem,{value:"GET",children:"GET"}),(0,d.jsx)(j.SelectItem,{value:"POST",children:"POST"}),(0,d.jsx)(j.SelectItem,{value:"PUT",children:"PUT"}),(0,d.jsx)(j.SelectItem,{value:"DELETE",children:"DELETE"}),(0,d.jsx)(j.SelectItem,{value:"PATCH",children:"PATCH"})]})]})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.Label,{htmlFor:"siteName",className:"text-sm font-medium",children:"场景名称"}),ad?(0,d.jsx)("div",{className:"px-3 py-2 bg-gray-50 border border-gray-200 rounded-md text-sm text-gray-600",children:"默认场景"}):(0,d.jsx)(k.Input,{id:"siteName",placeholder:"请输入场景名称",value:ah.siteName,onChange:a=>bb("siteName",a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.Label,{htmlFor:"mockOpen",className:"text-sm font-medium",children:"开启Mock"}),(0,d.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,d.jsx)(m.Switch,{id:"mockOpen",checked:ah.mockOpen,onCheckedChange:a=>bb("mockOpen",a)}),(0,d.jsx)("span",{className:"text-sm text-gray-600",children:ah.mockOpen?"开启":"关闭"})]})]})]}),ad&&ah.apiPath.trim()&&ah.siteName.trim()&&bd(ah.apiPath,ah.method,ah.siteName)&&(0,d.jsx)("div",{className:"mt-4 p-3 bg-red-50 border border-red-200 rounded-md",children:(0,d.jsx)("div",{className:"flex items-center",children:(0,d.jsxs)("span",{className:"text-red-600 text-sm",children:["⚠️ 接口 ",ah.apiPath," [",ah.method.toUpperCase(),'] 的场景 "',ah.siteName,'" 已存在']})})}),af&&aj&&ah.siteName.trim()&&bg(aj.apiName,aj.method,ah.siteName)&&(0,d.jsx)("div",{className:"mt-4 p-3 bg-red-50 border border-red-200 rounded-md",children:(0,d.jsx)("div",{className:"flex items-center",children:(0,d.jsxs)("span",{className:"text-red-600 text-sm",children:['⚠️ 场景 "',ah.siteName,'" 已存在']})})})]}),(0,d.jsx)("div",{className:"flex-1 flex flex-col space-y-4 py-4",children:(0,d.jsxs)("div",{className:"flex-1 flex flex-col",children:[(0,d.jsx)(l.Label,{className:"text-sm font-medium mb-2",children:"文件内容"}),(0,d.jsxs)("div",{className:"flex-1 border rounded-md overflow-hidden relative",children:[X&&(0,d.jsx)("div",{className:"absolute inset-0 bg-gray-50 flex items-center justify-center z-10",children:(0,d.jsx)("p",{className:"text-gray-500",children:"编辑器加载中..."})}),(0,d.jsx)(q.default,{height:"100%",defaultLanguage:"javascript",value:P?.content||"",onChange:a=>{Q(b=>b?{...b,content:a||""}:null)},onMount:async a=>{console.log("编辑器挂载,模式:",{isCreateMode:ad,isAddSceneMode:af,createFormData:ah}),$(a),Y(!1),setTimeout(()=>aM(a),500)},loading:(0,d.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,d.jsx)("p",{className:"text-gray-500",children:"编辑器加载中..."})}),options:{minimap:{enabled:!1},fontSize:14,lineNumbers:"on",roundedSelection:!1,scrollBeyondLastLine:!1,automaticLayout:!0,tabSize:2,insertSpaces:!0,wordWrap:"on",theme:"vs-dark",bracketPairColorization:{enabled:!0},quickSuggestions:{other:!0,comments:!0,strings:!0},formatOnPaste:!0,formatOnType:!0,readOnly:!1}},ad?"create":af?"addscene":"edit")]})]})}),(0,d.jsxs)(o.DialogFooter,{className:"flex justify-between flex-shrink-0 border-t pt-4",children:[(0,d.jsx)(g.Button,{variant:"secondary",onClick:aK,disabled:!Z||X,children:"格式化代码"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>{ad?(ae(!1),ai({apiPath:"",method:"GET",siteName:"默认场景",mockOpen:!0})):af?(ag(!1),ak(null),ai({apiPath:"",method:"GET",siteName:"默认场景",mockOpen:!0})):ba()},children:"取消"}),ad?(0,d.jsx)(g.Button,{onClick:be,disabled:al||!ah.apiPath.trim()||!ah.siteName.trim()||bd(ah.apiPath,ah.method,ah.siteName),children:al?"创建中...":"创建"}):af?(0,d.jsx)(g.Button,{onClick:bh,disabled:al||!ah.siteName.trim()||!!aj&&bg(aj.apiName,aj.method,ah.siteName),children:al?"创建中...":"创建"}):(0,d.jsx)(g.Button,{onClick:a9,disabled:V,children:V?"保存中...":"保存"})]})]})]})}),(0,d.jsx)(o.Dialog,{open:aE,onOpenChange:a=>{a||a_()},children:(0,d.jsxs)(o.DialogContent,{className:"max-w-5xl h-[85vh] max-h-[85vh] flex flex-col p-0",children:[(0,d.jsxs)(o.DialogHeader,{className:"px-6 pt-6 pb-4",children:[(0,d.jsxs)(o.DialogTitle,{className:"flex items-center justify-between",children:[(0,d.jsxs)("span",{children:["进程日志 - ",c," - ",aG]}),(0,d.jsx)("span",{className:"flex items-center gap-2 text-sm font-normal",children:aW&&(0,d.jsxs)("span",{className:"flex items-center gap-1 text-green-600",children:[(0,d.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full animate-pulse"}),"实时连接"]})})]}),(0,d.jsx)(o.DialogDescription,{children:"实时显示进程输出日志"})]}),(0,d.jsx)("div",{className:"flex-1 min-h-0 bg-gray-900 mx-6 rounded-md overflow-hidden",children:(0,d.jsx)(s.default,{logs:aI})}),(0,d.jsxs)(o.DialogFooter,{className:"flex items-center justify-between px-6 pb-6 pt-4",children:[(0,d.jsxs)("div",{className:"text-sm text-gray-500",children:["共 ",aI.length," 条日志"]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>{aG&&(aZ(),aY(aG))},disabled:!!aW,children:"重新连接"}),(0,d.jsx)(g.Button,{variant:"default",onClick:a_,children:"关闭"})]})]})]})}),(0,d.jsx)(o.Dialog,{open:an.open,onOpenChange:a=>{a||ao({open:!1,apiName:"",method:"",siteName:""})},children:(0,d.jsxs)(o.DialogContent,{className:"max-w-md",children:[(0,d.jsxs)(o.DialogHeader,{children:[(0,d.jsxs)(o.DialogTitle,{className:"flex items-center gap-2 text-red-600",children:[(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M3 6h18"}),(0,d.jsx)("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),(0,d.jsx)("path",{d:"M8 6V4c0-1 1-2 2-2h4c0 1 1 2 2 2v2"})]}),"确认删除场景"]}),(0,d.jsxs)(o.DialogDescription,{children:["确定要删除场景 ",(0,d.jsxs)("span",{className:"font-medium text-gray-900",children:['"',an.siteName,'"']})," 吗?",(0,d.jsx)("br",{}),(0,d.jsx)("span",{className:"text-red-500 text-sm mt-2 block",children:"此操作不可撤销"})]})]}),(0,d.jsxs)(o.DialogFooter,{className:"flex gap-2 justify-end",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>ao({open:!1,apiName:"",method:"",siteName:""}),children:"取消"}),(0,d.jsx)(g.Button,{variant:"destructive",onClick:bl,children:"删除"})]})]})}),(0,d.jsx)(o.Dialog,{open:ap.open,onOpenChange:a=>{a||aq({open:!1,apiName:"",apiPath:""})},children:(0,d.jsxs)(o.DialogContent,{className:"max-w-md",children:[(0,d.jsxs)(o.DialogHeader,{children:[(0,d.jsxs)(o.DialogTitle,{className:"flex items-center gap-2 text-red-600",children:[(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M3 6h18"}),(0,d.jsx)("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),(0,d.jsx)("path",{d:"M8 6V4c0-1 1-2 2-2h4c0 1 1 2 2 2v2"})]}),"确认删除接口"]}),(0,d.jsxs)(o.DialogDescription,{children:["确定要删除整个接口 ",(0,d.jsxs)("span",{className:"font-medium text-gray-900",children:['"',ap.apiPath,'"']})," 吗?",(0,d.jsx)("br",{}),(0,d.jsx)("span",{className:"text-red-500 text-sm mt-2 block font-medium",children:"⚠️ 这将删除该接口的所有场景和相关文件,此操作不可撤销"})]})]}),(0,d.jsxs)(o.DialogFooter,{className:"flex gap-2 justify-end",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>aq({open:!1,apiName:"",apiPath:""}),children:"取消"}),(0,d.jsx)(g.Button,{variant:"destructive",onClick:bn,children:"删除整个接口"})]})]})}),(0,d.jsx)(o.Dialog,{open:at,onOpenChange:au,children:(0,d.jsxs)(o.DialogContent,{className:"max-w-md",children:[(0,d.jsxs)(o.DialogHeader,{children:[(0,d.jsx)(o.DialogTitle,{children:"创建工作区"}),(0,d.jsx)(o.DialogDescription,{children:"选择要包含在工作区中的项目"})]}),(0,d.jsxs)("div",{className:"py-4 max-h-96 overflow-y-auto",children:[(0,d.jsx)("div",{className:"space-y-3",children:_.filter(a=>"existing"===a.status).map(a=>(0,d.jsxs)("div",{className:"flex items-center space-x-3 p-3 rounded-lg border border-gray-200 hover:bg-gray-50 transition-colors",children:[(0,d.jsx)(p.Checkbox,{id:`workspace-${a.name}`,checked:av.includes(a.name),onCheckedChange:()=>aR(a.name)}),(0,d.jsx)("label",{htmlFor:`workspace-${a.name}`,className:"flex-1 cursor-pointer text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:a.name})]},a.name))}),0===_.filter(a=>"existing"===a.status).length&&(0,d.jsx)("div",{className:"text-center py-8 text-gray-500",children:"没有可用的项目"})]}),(0,d.jsxs)(o.DialogFooter,{className:"flex gap-2 justify-end",children:[(0,d.jsx)(g.Button,{variant:"outline",onClick:()=>{au(!1),aw([])},children:"取消"}),(0,d.jsx)(g.Button,{variant:"default",onClick:aQ,disabled:ax||0===av.length,children:ax?"创建中...":"确认创建"})]})]})}),ar.open&&(0,d.jsx)("div",{className:"fixed top-4 right-4 z-50 animate-in slide-in-from-top-2 duration-300",children:(0,d.jsxs)("div",{className:`flex items-center gap-3 px-4 py-3 rounded-lg shadow-lg border max-w-sm ${"success"===ar.type?"bg-green-50 border-green-200 text-green-800":"bg-red-50 border-red-200 text-red-800"}`,children:[(0,d.jsx)("div",{className:"flex-shrink-0",children:"success"===ar.type?(0,d.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-green-600",children:(0,d.jsx)("path",{d:"M20 6L9 17l-5-5"})}):(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-red-600",children:[(0,d.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,d.jsx)("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),(0,d.jsx)("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]})}),(0,d.jsx)("p",{className:"text-sm font-medium",children:ar.message}),(0,d.jsx)("button",{onClick:()=>as({open:!1,type:"success",message:""}),className:"flex-shrink-0 ml-auto",children:(0,d.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"opacity-60 hover:opacity-100",children:[(0,d.jsx)("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),(0,d.jsx)("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]})})]})}function w(){return(0,d.jsx)(e.Suspense,{fallback:(0,d.jsx)("div",{className:"min-h-screen bg-gray-50 flex items-center justify-center",children:(0,d.jsxs)("div",{className:"text-center space-y-4",children:[(0,d.jsx)("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600 mx-auto"}),(0,d.jsx)("p",{className:"text-gray-600",children:"正在加载配置页面..."})]})}),children:(0,d.jsx)(v,{})})}}};
60
-
61
- //# sourceMappingURL=_bee8e6b2._.js.map