@auto-ai/agent 2.1.113 → 2.1.119

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 (81) hide show
  1. package/dist/404.html +1 -1
  2. package/dist/_next/static/chunks/17e79ae7309781d6.js +1 -0
  3. package/dist/_next/static/chunks/249606605eed1993.js +1 -0
  4. package/dist/_next/static/chunks/424d3f3f176d43d7.js +1 -0
  5. package/dist/_next/static/chunks/4302af16b34bf750.js +1 -0
  6. package/dist/_next/static/chunks/4a073924e062c459.css +1 -0
  7. package/dist/_next/static/chunks/53977130ef33592f.js +1 -0
  8. package/dist/_next/static/chunks/67acc15b8a448e1a.js +1 -0
  9. package/dist/_next/static/chunks/{84694f69e82cbdaf.js → 76a71d344cc15a9f.js} +1 -1
  10. package/dist/_next/static/chunks/{ecac6101bc7f0ad9.css → 83bf6e4bc0aad48b.css} +1 -1
  11. package/dist/_next/static/chunks/8ff90e49e2cee068.js +1 -0
  12. package/dist/_next/static/chunks/904ad158fd721117.js +1 -0
  13. package/dist/_next/static/chunks/99063f8d79783308.js +1 -0
  14. package/dist/_next/static/chunks/9dc241c9b2aa0f91.js +1 -0
  15. package/dist/_next/static/chunks/b2551aa7f9471897.js +1 -0
  16. package/dist/_next/static/chunks/c1cfc60c17638a73.js +1 -0
  17. package/dist/_next/static/chunks/d01957b1055b357a.js +1 -0
  18. package/dist/_next/static/chunks/d3e2070a86378cfb.js +1 -0
  19. package/dist/_next/static/chunks/d9a278a2a26e8ee5.js +1 -0
  20. package/dist/_next/static/chunks/dacc94cf10289334.js +1 -0
  21. package/dist/_next/static/chunks/eb3458cb1f6c22c4.js +1 -0
  22. package/dist/_next/static/chunks/eba0719a42605421.js +1 -0
  23. package/dist/_next/static/chunks/f0d4a7a9c6a1e349.js +1 -0
  24. package/dist/_next/static/chunks/f2a87f0c7c1ec9f4.js +1 -0
  25. package/dist/_next/static/chunks/fff9d250e482f00e.js +1 -0
  26. package/dist/_next/static/chunks/{turbopack-fd992622892ef26f.js → turbopack-e0c7780a155d0f38.js} +1 -1
  27. package/dist/index.html +1 -1
  28. package/dist/index.txt +27 -26
  29. package/dist/manage/about.html +2 -2
  30. package/dist/manage/about.txt +29 -33
  31. package/dist/manage/add-account/basic.html +2 -2
  32. package/dist/manage/add-account/basic.txt +32 -31
  33. package/dist/manage/add-account.html +2 -2
  34. package/dist/manage/add-account.txt +32 -37
  35. package/dist/manage/agent-teams.html +2 -2
  36. package/dist/manage/agent-teams.txt +32 -37
  37. package/dist/manage/env.html +2 -2
  38. package/dist/manage/env.txt +32 -36
  39. package/dist/manage/general.html +2 -2
  40. package/dist/manage/general.txt +29 -34
  41. package/dist/manage/mcp.html +2 -2
  42. package/dist/manage/mcp.txt +32 -36
  43. package/dist/manage/permissions.html +2 -2
  44. package/dist/manage/permissions.txt +29 -34
  45. package/dist/manage/skills.html +2 -2
  46. package/dist/manage/skills.txt +32 -36
  47. package/dist/manage/task.html +2 -2
  48. package/dist/manage/task.txt +30 -34
  49. package/dist/manage/teams.html +2 -1
  50. package/dist/manage/teams.txt +30 -33
  51. package/dist/manage/tools.html +2 -2
  52. package/dist/manage/tools.txt +32 -36
  53. package/dist/manage.html +1 -1
  54. package/dist/manage.txt +26 -30
  55. package/package.json +6 -6
  56. package/dist/_next/static/chunks/144582c34365b4a3.js +0 -1
  57. package/dist/_next/static/chunks/28e0ccfb90ce8236.js +0 -1
  58. package/dist/_next/static/chunks/32f1e2403e2f19ad.js +0 -1
  59. package/dist/_next/static/chunks/3e9de8191bf84a21.js +0 -1
  60. package/dist/_next/static/chunks/44cc31591bdf5683.js +0 -1
  61. package/dist/_next/static/chunks/52464e6ba324e8ed.js +0 -1
  62. package/dist/_next/static/chunks/69c7407ef6f8340c.js +0 -1
  63. package/dist/_next/static/chunks/8c0da143ceae2767.js +0 -1
  64. package/dist/_next/static/chunks/8fe28f6505d26d57.js +0 -1
  65. package/dist/_next/static/chunks/91c478c455e6fe7d.js +0 -1
  66. package/dist/_next/static/chunks/b0c54f44d770ac39.js +0 -1
  67. package/dist/_next/static/chunks/b23f3d1216dcec54.js +0 -1
  68. package/dist/_next/static/chunks/b5241f9943854a05.js +0 -1
  69. package/dist/_next/static/chunks/bb79d02feaef9576.js +0 -1
  70. package/dist/_next/static/chunks/cc5b7f377dc3de45.css +0 -1
  71. package/dist/_next/static/chunks/cd622961f697016c.js +0 -1
  72. package/dist/_next/static/chunks/da9e5c89b442680d.js +0 -1
  73. package/dist/_next/static/chunks/e3cd46a9e9e97850.js +0 -1
  74. package/dist/_next/static/chunks/ef1e3e3691ffdba4.js +0 -1
  75. package/dist/_next/static/chunks/f2835908a39a5ecd.js +0 -1
  76. package/dist/_next/static/chunks/fedb1cd789e83a36.js +0 -1
  77. package/dist/manage/add-account/prompt.html +0 -2
  78. package/dist/manage/add-account/prompt.txt +0 -37
  79. /package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → kzRG8tzx_5RKQY30npuiX}/_buildManifest.js +0 -0
  80. /package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → kzRG8tzx_5RKQY30npuiX}/_clientMiddlewareManifest.json +0 -0
  81. /package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → kzRG8tzx_5RKQY30npuiX}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 transparent;--tw-ring-shadow:0 0 transparent;--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.theme{--font-heading:var(--font-display);--font-sans:var(--font-body);--font-mono:var(--font-mono)}:root{--background:#fff;--foreground:#0a0a0a;--card:#fff;--card-foreground:#0a0a0a;--popover:#fff;--popover-foreground:#0a0a0a;--primary:#171717;--primary-foreground:#fafafa;--secondary:#f5f5f5;--secondary-foreground:#171717;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#e40014;--destructive-foreground:#fafafa;--border:#e5e5e5;--input:#e5e5e5;--ring:#a1a1a1;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--radius:.625rem;--sidebar:#fafafa;--sidebar-foreground:#0a0a0a;--sidebar-primary:#171717;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f5f5f5;--sidebar-accent-foreground:#171717;--sidebar-border:#e5e5e5;--sidebar-ring:#a1a1a1}@supports (color:color(display-p3 0 0 0)){:root{--background:color(display-p3 1 1 1);--foreground:color(display-p3 .0393882 .0393882 .0393882);--card:color(display-p3 1 1 1);--card-foreground:color(display-p3 .0393882 .0393882 .0393882);--popover:color(display-p3 1 1 1);--popover-foreground:color(display-p3 .0393882 .0393882 .0393882);--primary:color(display-p3 .0905274 .0905274 .0905274);--primary-foreground:color(display-p3 .980256 .980256 .980256);--secondary:color(display-p3 .960587 .960587 .960587);--secondary-foreground:color(display-p3 .0905274 .0905274 .0905274);--muted:color(display-p3 .960587 .960587 .960587);--muted-foreground:color(display-p3 .451519 .451519 .451519);--accent:color(display-p3 .960587 .960587 .960587);--accent-foreground:color(display-p3 .0905274 .0905274 .0905274);--destructive:color(display-p3 .830323 .140383 .133196);--destructive-foreground:color(display-p3 .980256 .980256 .980256);--border:color(display-p3 .898161 .898161 .898161);--input:color(display-p3 .898161 .898161 .898161);--ring:color(display-p3 .630163 .630163 .630163);--chart-1:color(display-p3 .831444 .831444 .831444);--chart-2:color(display-p3 .451519 .451519 .451519);--chart-3:color(display-p3 .321993 .321993 .321993);--chart-4:color(display-p3 .250471 .250471 .250471);--chart-5:color(display-p3 .149382 .149382 .149382);--sidebar:color(display-p3 .980256 .980256 .980256);--sidebar-foreground:color(display-p3 .0393882 .0393882 .0393882);--sidebar-primary:color(display-p3 .0905274 .0905274 .0905274);--sidebar-primary-foreground:color(display-p3 .980256 .980256 .980256);--sidebar-accent:color(display-p3 .960587 .960587 .960587);--sidebar-accent-foreground:color(display-p3 .0905274 .0905274 .0905274);--sidebar-border:color(display-p3 .898161 .898161 .898161);--sidebar-ring:color(display-p3 .630163 .630163 .630163)}}@supports (color:lab(0% 0 0)){:root{--background:lab(100% 0 0);--foreground:lab(2.75381% 0 0);--card:lab(100% 0 0);--card-foreground:lab(2.75381% 0 0);--popover:lab(100% 0 0);--popover-foreground:lab(2.75381% 0 0);--primary:lab(7.78201% -.0000149012 0);--primary-foreground:lab(98.26% 0 0);--secondary:lab(96.52% -.0000298023 .0000119209);--secondary-foreground:lab(7.78201% -.0000149012 0);--muted:lab(96.52% -.0000298023 .0000119209);--muted-foreground:lab(48.496% 0 0);--accent:lab(96.52% -.0000298023 .0000119209);--accent-foreground:lab(7.78201% -.0000149012 0);--destructive:lab(48.4493% 77.4328 61.5452);--destructive-foreground:lab(98.26% 0 0);--border:lab(90.952% 0 -.0000119209);--input:lab(90.952% 0 -.0000119209);--ring:lab(66.128% -.0000298023 .0000119209);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(98.26% 0 0);--sidebar-foreground:lab(2.75381% 0 0);--sidebar-primary:lab(7.78201% -.0000149012 0);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(96.52% -.0000298023 .0000119209);--sidebar-accent-foreground:lab(7.78201% -.0000149012 0);--sidebar-border:lab(90.952% 0 -.0000119209);--sidebar-ring:lab(66.128% -.0000298023 .0000119209)}}.dark{--background:#0a0a0a;--foreground:#fafafa;--card:#171717;--card-foreground:#fafafa;--popover:#171717;--popover-foreground:#fafafa;--primary:#e5e5e5;--primary-foreground:#171717;--secondary:#262626;--secondary-foreground:#fafafa;--muted:#262626;--muted-foreground:#a1a1a1;--accent:#00c37b;--accent-foreground:#fafafa;--destructive:#ff6568;--destructive-foreground:#fafafa;--border:rgba(255,255,255,.1);--input:rgba(255,255,255,.15);--ring:#737373;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--sidebar:#171717;--sidebar-foreground:#fafafa;--sidebar-primary:#1447e6;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#262626;--sidebar-accent-foreground:#fafafa;--sidebar-border:rgba(255,255,255,.1);--sidebar-ring:#737373}@supports (color:color(display-p3 0 0 0)){.dark{--background:color(display-p3 .0393882 .0393882 .0393882);--foreground:color(display-p3 .980256 .980256 .980256);--card:color(display-p3 .0905274 .0905274 .0905274);--card-foreground:color(display-p3 .980256 .980256 .980256);--popover:color(display-p3 .0905274 .0905274 .0905274);--popover-foreground:color(display-p3 .980256 .980256 .980256);--primary:color(display-p3 .898161 .898161 .898161);--primary-foreground:color(display-p3 .0905274 .0905274 .0905274);--secondary:color(display-p3 .149382 .149382 .149382);--secondary-foreground:color(display-p3 .980256 .980256 .980256);--muted:color(display-p3 .149382 .149382 .149382);--muted-foreground:color(display-p3 .630163 .630163 .630163);--accent:color(display-p3 .339841 .754462 .503519);--accent-foreground:color(display-p3 .980256 .980256 .980256);--destructive:color(display-p3 .933534 .431676 .423491);--destructive-foreground:color(display-p3 .980256 .980256 .980256);--border:color(display-p3 1 1 1/.1);--input:color(display-p3 1 1 1/.15);--ring:color(display-p3 .451519 .451519 .451519);--chart-1:color(display-p3 .831444 .831444 .831444);--chart-2:color(display-p3 .451519 .451519 .451519);--chart-3:color(display-p3 .321993 .321993 .321993);--chart-4:color(display-p3 .250471 .250471 .250471);--chart-5:color(display-p3 .149382 .149382 .149382);--sidebar:color(display-p3 .0905274 .0905274 .0905274);--sidebar-foreground:color(display-p3 .980256 .980256 .980256);--sidebar-primary:color(display-p3 .1379 .274983 .867624);--sidebar-primary-foreground:color(display-p3 .980256 .980256 .980256);--sidebar-accent:color(display-p3 .149382 .149382 .149382);--sidebar-accent-foreground:color(display-p3 .980256 .980256 .980256);--sidebar-border:color(display-p3 1 1 1/.1);--sidebar-ring:color(display-p3 .451519 .451519 .451519)}}@supports (color:lab(0% 0 0)){.dark{--background:lab(2.75381% 0 0);--foreground:lab(98.26% 0 0);--card:lab(7.78201% -.0000149012 0);--card-foreground:lab(98.26% 0 0);--popover:lab(7.78201% -.0000149012 0);--popover-foreground:lab(98.26% 0 0);--primary:lab(90.952% 0 -.0000119209);--primary-foreground:lab(7.78201% -.0000149012 0);--secondary:lab(15.204% 0 -.00000596046);--secondary-foreground:lab(98.26% 0 0);--muted:lab(15.204% 0 -.00000596046);--muted-foreground:lab(66.128% -.0000298023 .0000119209);--accent:lab(69.7395% -56.1647 24.7025);--accent-foreground:lab(98.26% 0 0);--destructive:lab(63.7053% 60.745 31.3109);--destructive-foreground:lab(98.26% 0 0);--border:lab(100% 0 0/.1);--input:lab(100% 0 0/.15);--ring:lab(48.496% 0 0);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(7.78201% -.0000149012 0);--sidebar-foreground:lab(98.26% 0 0);--sidebar-primary:lab(36.9089% 35.0961 -85.6872);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(15.204% 0 -.00000596046);--sidebar-accent-foreground:lab(98.26% 0 0);--sidebar-border:lab(100% 0 0/.1);--sidebar-ring:lab(48.496% 0 0)}}*{border-color:var(--border)}body{background-color:var(--background);color:var(--foreground)}html{font-family:var(--font-body),ui-sans-serif,system-ui,sans-serif}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;bottom:0;left:0;right:0}.-left-\[22px\]{left:-22px}.-left-\[24px\]{left:-24px}.-left-\[39px\]{left:-39px}.-left-\[40px\]{left:-40px}.-top-0\.5{top:-.125rem}.bottom-1{bottom:.25rem}.bottom-2{bottom:.5rem}.bottom-full{bottom:100%}.left-0{left:0}.left-2{left:.5rem}.left-full{left:100%}.right-2{right:.5rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1{top:.25rem}.top-6{top:1.5rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[10001\]{z-index:10001}.z-\[60\]{z-index:60}.m-0{margin:0}.m-3{margin:.75rem}.m-\[\.15rem_\.35rem_0\]{margin:.15rem .35rem 0}.m-\[\.35rem_\.35rem_0\]{margin:.35rem .35rem 0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.\!mr-1{margin-right:.25rem!important}.\!mt-\[1\.25rem\]{margin-top:1.25rem!important}.-ml-2{margin-left:-.5rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-\[-2px\]{margin-bottom:-2px}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-\[12px\]{margin-right:12px}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-8{margin-top:2rem}.mt-\[0\.75rem\]{margin-top:.75rem}.mt-auto{margin-top:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-10{width:2.5rem;height:2.5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[14px\]{height:14px}.h-\[calc\(100\%-2px\)\]{height:calc(100% - 2px)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-0{max-height:0}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-96{max-height:24rem}.max-h-\[2000px\]{max-height:2000px}.max-h-\[6000px\]{max-height:6000px}.max-h-\[92vh\]{max-height:92vh}.max-h-\[min\(50vh\,22rem\)\]{max-height:min(50vh,22rem)}.max-h-\[min\(68vh\,640px\)\]{max-height:min(68vh,640px)}.max-h-dvh{max-height:100dvh}.\!min-h-\[--min-h\]{min-height:var(--min-h)!important}.min-h-0{min-height:0}.min-h-20{min-height:5rem}.min-h-5{min-height:1.25rem}.min-h-\[110px\]{min-height:110px}.min-h-\[120px\]{min-height:120px}.min-h-\[124px\]{min-height:124px}.min-h-\[180px\]{min-height:180px}.min-h-\[200px\]{min-height:200px}.min-h-\[220px\]{min-height:220px}.min-h-\[260px\]{min-height:260px}.min-h-\[320px\]{min-height:320px}.min-h-\[40vh\]{min-height:40vh}.min-h-\[80px\]{min-height:80px}.\!w-fit{width:-moz-fit-content!important;width:fit-content!important}.w-14{width:3.5rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[112px\]{width:112px}.w-\[116px\]{width:116px}.w-\[120px\]{width:120px}.w-\[128px\]{width:128px}.w-\[140px\]{width:140px}.w-\[14px\]{width:14px}.w-\[160px\]{width:160px}.w-\[172px\]{width:172px}.w-\[260px\]{width:260px}.w-\[288px\]{width:288px}.w-\[72px\]{width:72px}.w-\[80px\]{width:80px}.w-\[88px\]{width:88px}.w-\[96px\]{width:96px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.\!min-w-0{min-width:0!important}.min-w-0{min-width:0}.min-w-24{min-width:6rem}.min-w-32{min-width:8rem}.min-w-\[172px\]{min-width:172px}.min-w-\[220px\]{min-width:220px}.min-w-\[6\.5rem\]{min-width:6.5rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[96px\]{min-width:96px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.\!max-w-\[400px\]{max-width:400px!important}.max-w-36{max-width:9rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[220px\]{max-width:220px}.max-w-\[240px\]{max-width:240px}.max-w-\[280px\]{max-width:280px}.max-w-\[300px\]{max-width:300px}.max-w-\[460px\]{max-width:460px}.max-w-\[520px\]{max-width:520px}.max-w-\[560px\]{max-width:560px}.max-w-\[720px\]{max-width:720px}.max-w-\[760px\]{max-width:760px}.max-w-\[840px\]{max-width:840px}.max-w-\[min\(100vw-24px\,260px\)\]{max-width:min(100vw - 24px,260px)}.max-w-\[min\(100vw-24px\,288px\)\]{max-width:min(100vw - 24px,288px)}.max-w-\[min\(540px\,100\%\)\]{max-width:min(540px,100%)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.\!flex-none{flex:none!important}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.animate-\[backdropIn_0\.2s_ease-out\]{animation:.2s ease-out backdropIn}.animate-\[modalIn_0\.2s_ease-out\]{animation:.2s ease-out modalIn}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.resize{resize:both}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[10px\]{gap:10px}.gap-\[12px\]{gap:12px}.gap-\[var\(--space-4\)\]{gap:var(--space-4)}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-4{row-gap:1rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-\[var\(--ds-border\)\]>:not([hidden])~:not([hidden]){border-color:var(--ds-border)}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overscroll-contain{overscroll-behavior:contain}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.\!rounded{border-radius:.25rem!important}.\!rounded-md{border-radius:calc(var(--radius) - 2px)!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[4px\]{border-radius:4px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md),10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md),12px)}.rounded-\[min\(var\(--radius-md\)\,14px\)\]{border-radius:min(var(--radius-md),14px)}.rounded-\[var\(--ds-radius-sm\)\]{border-radius:var(--ds-radius-sm)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.\!border{border-width:1px!important}.\!border-0{border-width:0!important}.border{border-width:1px}.border-0{border-width:0}.border-x-0{border-left-width:0;border-right-width:0}.border-b{border-bottom-width:1px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0}.\!border-solid{border-style:solid!important}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.\!border-none{border-style:none!important}.border-none{border-style:none}.\!border-\[\#1677FF\]{--tw-border-opacity:1!important;border-color:rgba(22,119,255,var(--tw-border-opacity,1))!important}.\!border-\[\#52C51A\]{--tw-border-opacity:1!important;border-color:rgba(82,197,26,var(--tw-border-opacity,1))!important}.\!border-\[\#FAAD14\]{--tw-border-opacity:1!important;border-color:rgba(250,173,20,var(--tw-border-opacity,1))!important}.\!border-\[\#FF4D50\]{--tw-border-opacity:1!important;border-color:rgba(255,77,80,var(--tw-border-opacity,1))!important}.\!border-\[\#e5e5e5\]{--tw-border-opacity:1!important;border-color:rgba(229,229,229,var(--tw-border-opacity,1))!important}.\!border-\[var\(--border-default\)\]{border-color:var(--border-default)!important}.\!border-\[var\(--ds-accent\)\]{border-color:var(--ds-accent)!important}.\!border-\[var\(--green-dark\)\]{border-color:var(--green-dark)!important}.border-\[\#000000\]{--tw-border-opacity:1;border-color:rgba(0,0,0,var(--tw-border-opacity,1))}.border-\[\#223044\]{--tw-border-opacity:1;border-color:rgba(34,48,68,var(--tw-border-opacity,1))}.border-\[\#e2e6ee\]{--tw-border-opacity:1;border-color:rgba(226,230,238,var(--tw-border-opacity,1))}.border-\[\#e4dfc8\]{--tw-border-opacity:1;border-color:rgba(228,223,200,var(--tw-border-opacity,1))}.border-\[\#efefef\]{--tw-border-opacity:1;border-color:rgba(239,239,239,var(--tw-border-opacity,1))}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.border-\[var\(--ds-accent\)\]{border-color:var(--ds-accent)}.border-\[var\(--ds-border\)\]{border-color:var(--ds-border)}.border-\[var\(--ds-border\,var\(--input\)\)\]{border-color:var(--ds-border,var(--input))}.border-\[var\(--green-dark\)\]{border-color:var(--green-dark)}.border-amber-500\/40{border-color:rgba(245,158,11,.4)}.border-black\/5{border-color:rgba(0,0,0,.05)}.border-black\/\[0\.06\]{border-color:rgba(0,0,0,.06)}.border-border{border-color:var(--border)}.border-emerald-500\/40{border-color:rgba(16,185,129,.4)}.border-red-200{--tw-border-opacity:1;border-color:rgba(254,202,202,var(--tw-border-opacity,1))}.border-red-500\/40{border-color:rgba(239,68,68,.4)}.border-transparent{border-color:transparent}.border-white\/5{border-color:rgba(255,255,255,.05)}.\!bg-\[\#E7F4FF\]{--tw-bg-opacity:1!important;background-color:rgba(231,244,255,var(--tw-bg-opacity,1))!important}.\!bg-\[\#F6FFED\]{--tw-bg-opacity:1!important;background-color:rgba(246,255,237,var(--tw-bg-opacity,1))!important}.\!bg-\[\#FFF3F1\]{--tw-bg-opacity:1!important;background-color:rgba(255,243,241,var(--tw-bg-opacity,1))!important}.\!bg-\[\#FFFBE6\]{--tw-bg-opacity:1!important;background-color:rgba(255,251,230,var(--tw-bg-opacity,1))!important}.\!bg-\[\#fbfbfc\]{--tw-bg-opacity:1!important;background-color:rgba(251,251,252,var(--tw-bg-opacity,1))!important}.\!bg-transparent{background-color:transparent!important}.bg-\[\#e9e9e9\]{--tw-bg-opacity:1;background-color:rgba(233,233,233,var(--tw-bg-opacity,1))}.bg-\[\#efefef\]{--tw-bg-opacity:1;background-color:rgba(239,239,239,var(--tw-bg-opacity,1))}.bg-\[\#f6f7fa\]{--tw-bg-opacity:1;background-color:rgba(246,247,250,var(--tw-bg-opacity,1))}.bg-\[\#f9f9f7\]{--tw-bg-opacity:1;background-color:rgba(249,249,247,var(--tw-bg-opacity,1))}.bg-\[\#f9f9f9\]{--tw-bg-opacity:1;background-color:rgba(249,249,249,var(--tw-bg-opacity,1))}.bg-\[\#fbfbfc\]{--tw-bg-opacity:1;background-color:rgba(251,251,252,var(--tw-bg-opacity,1))}.bg-\[\#fef2f2\]{--tw-bg-opacity:1;background-color:rgba(254,242,242,var(--tw-bg-opacity,1))}.bg-\[\#fff\]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity,1))}.bg-\[rgba\(120\,30\,30\,\.07\)\]{background-color:rgba(120,30,30,.07)}.bg-\[rgba\(50\,100\,180\,\.07\)\]{background-color:rgba(50,100,180,.07)}.bg-\[var\(--border-hover\)\]{background-color:var(--border-hover)}.bg-\[var\(--ds-accent\)\]{background-color:var(--ds-accent)}.bg-\[var\(--ds-bg\)\]{background-color:var(--ds-bg)}.bg-\[var\(--ds-border\)\]{background-color:var(--ds-border)}.bg-\[var\(--ds-item-active\)\]{background-color:var(--ds-item-active)}.bg-\[var\(--ds-item-hover\)\]{background-color:var(--ds-item-hover)}.bg-\[var\(--ds-log-bg\)\]{background-color:var(--ds-log-bg)}.bg-\[var\(--ds-main-tint\)\]{background-color:var(--ds-main-tint)}.bg-\[var\(--ds-sidebar\)\]{background-color:var(--ds-sidebar)}.bg-\[var\(--green-light\)\]{background-color:var(--green-light)}.bg-\[var\(--surface-1\)\]{background-color:var(--surface-1)}.bg-\[var\(--surface-2\)\]{background-color:var(--surface-2)}.bg-amber-500\/15{background-color:rgba(245,158,11,.15)}.bg-amber-500\/5{background-color:rgba(245,158,11,.05)}.bg-background{background-color:var(--background)}.bg-black\/45{background-color:rgba(0,0,0,.45)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-border{background-color:var(--border)}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-500\/15{background-color:rgba(16,185,129,.15)}.bg-emerald-500\/5{background-color:rgba(16,185,129,.05)}.bg-gray-800{--tw-bg-opacity:1;background-color:rgba(31,41,55,var(--tw-bg-opacity,1))}.bg-input{background-color:var(--input)}.bg-popover{background-color:var(--popover)}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254,242,242,var(--tw-bg-opacity,1))}.bg-red-500\/10{background-color:rgba(239,68,68,.1)}.bg-red-500\/15{background-color:rgba(239,68,68,.15)}.bg-red-500\/5{background-color:rgba(239,68,68,.05)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity,1))}.bg-white\/\[\.012\]{background-color:rgba(255,255,255,.01)}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-3{padding:.75rem!important}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-\[\.45rem_\.75rem\]{padding:.45rem .75rem}.p-\[1rem_\.75rem\]{padding:1rem .75rem}.p-\[24px\]{padding:24px}.p-\[var\(--space-1\)\]{padding:var(--space-1)}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!px-4{padding-left:1rem!important;padding-right:1rem!important}.\!px-5{padding-left:1.25rem!important;padding-right:1.25rem!important}.\!py-3{padding-top:.75rem!important;padding-bottom:.75rem!important}.\!py-4{padding-top:1rem!important;padding-bottom:1rem!important}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[\.85rem\]{padding-top:.85rem;padding-bottom:.85rem}.\!pl-\[16px\]{padding-left:16px!important}.\!pr-\[16px\]{padding-right:16px!important}.\!pt-2{padding-top:.5rem!important}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-\[1px\]{padding-bottom:1px}.pb-\[var\(--space-4\)\]{padding-bottom:var(--space-4)}.pl-1{padding-left:.25rem}.pl-1\.5{padding-left:.375rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pl-9{padding-left:2.25rem}.pl-\[0\]{padding-left:0}.pr-1{padding-right:.25rem}.pr-3{padding-right:.75rem}.pr-8{padding-right:2rem}.pr-\[0\]{padding-right:0}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono),ui-monospace,monospace}.font-sans{font-family:var(--font-body),ui-sans-serif,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[9\.5px\]{font-size:9.5px}.text-base{font-size:var(--text-base);line-height:1.5}.text-lg{font-size:var(--text-lg);line-height:1.4}.text-sm{font-size:var(--text-sm);line-height:1.4}.text-xl{font-size:var(--text-xl);line-height:1.3}.text-xs{font-size:var(--text-xs);line-height:1.4}.\!font-normal{font-weight:400!important}.font-\[600\]{font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\[1\.6\]{line-height:1.6}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.\!text-\[\#1677FF\]{--tw-text-opacity:1!important;color:rgba(22,119,255,var(--tw-text-opacity,1))!important}.\!text-\[\#1C1E1F\]{--tw-text-opacity:1!important;color:rgba(28,30,31,var(--tw-text-opacity,1))!important}.\!text-\[\#52C51A\]{--tw-text-opacity:1!important;color:rgba(82,197,26,var(--tw-text-opacity,1))!important}.\!text-\[\#6e6e6e\]{--tw-text-opacity:1!important;color:rgba(110,110,110,var(--tw-text-opacity,1))!important}.\!text-\[\#A32D2D\]{--tw-text-opacity:1!important;color:rgba(163,45,45,var(--tw-text-opacity,1))!important}.\!text-\[\#FAAD14\]{--tw-text-opacity:1!important;color:rgba(250,173,20,var(--tw-text-opacity,1))!important}.\!text-\[\#FF4D50\]{--tw-text-opacity:1!important;color:rgba(255,77,80,var(--tw-text-opacity,1))!important}.\!text-\[\#e6e6e6\]{--tw-text-opacity:1!important;color:rgba(230,230,230,var(--tw-text-opacity,1))!important}.\!text-\[var\(--ds-text\)\]{color:var(--ds-text)!important}.\!text-zinc-500{--tw-text-opacity:1!important;color:rgba(113,113,122,var(--tw-text-opacity,1))!important}.text-\[\#252e3e\]{--tw-text-opacity:1;color:rgba(37,46,62,var(--tw-text-opacity,1))}.text-\[\#2e5a38\]{--tw-text-opacity:1;color:rgba(46,90,56,var(--tw-text-opacity,1))}.text-\[\#303a4a\]{--tw-text-opacity:1;color:rgba(48,58,74,var(--tw-text-opacity,1))}.text-\[\#343d52\]{--tw-text-opacity:1;color:rgba(52,61,82,var(--tw-text-opacity,1))}.text-\[\#353f52\]{--tw-text-opacity:1;color:rgba(53,63,82,var(--tw-text-opacity,1))}.text-\[\#3B6D11\]{--tw-text-opacity:1;color:rgba(59,109,17,var(--tw-text-opacity,1))}.text-\[\#4d80c4\]{--tw-text-opacity:1;color:rgba(77,128,196,var(--tw-text-opacity,1))}.text-\[\#535353\]{--tw-text-opacity:1;color:rgba(83,83,83,var(--tw-text-opacity,1))}.text-\[\#5a8ec4\]{--tw-text-opacity:1;color:rgba(90,142,196,var(--tw-text-opacity,1))}.text-\[\#626a77\]{--tw-text-opacity:1;color:rgba(98,106,119,var(--tw-text-opacity,1))}.text-\[\#6e2828\]{--tw-text-opacity:1;color:rgba(110,40,40,var(--tw-text-opacity,1))}.text-\[\#6e6e6e\]{--tw-text-opacity:1;color:rgba(110,110,110,var(--tw-text-opacity,1))}.text-\[\#8A8985\]{--tw-text-opacity:1;color:rgba(138,137,133,var(--tw-text-opacity,1))}.text-\[\#A32D2D\]{--tw-text-opacity:1;color:rgba(163,45,45,var(--tw-text-opacity,1))}.text-\[\#b0bac8\]{--tw-text-opacity:1;color:rgba(176,186,200,var(--tw-text-opacity,1))}.text-\[\#b4c4b9\]{--tw-text-opacity:1;color:rgba(180,196,185,var(--tw-text-opacity,1))}.text-\[var\(--ds-accent\)\]{color:var(--ds-accent)}.text-\[var\(--ds-danger\)\]{color:var(--ds-danger)}.text-\[var\(--ds-muted\)\]{color:var(--ds-muted)}.text-\[var\(--ds-ok\)\]{color:var(--ds-ok)}.text-\[var\(--ds-text\)\]{color:var(--ds-text)}.text-\[var\(--green-dark\)\]{color:var(--green-dark)}.text-\[var\(--icon-color\)\]{color:var(--icon-color)}.text-\[var\(--surface-1\)\]{color:var(--surface-1)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--text-tertiary\)\]{color:var(--text-tertiary)}.text-amber-600{--tw-text-opacity:1;color:rgba(217,119,6,var(--tw-text-opacity,1))}.text-destructive{color:var(--destructive)}.text-emerald-600{--tw-text-opacity:1;color:rgba(5,150,105,var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgba(4,120,87,var(--tw-text-opacity,1))}.text-foreground{color:var(--foreground)}.text-gray-500{--tw-text-opacity:1;color:rgba(107,114,128,var(--tw-text-opacity,1))}.text-muted-foreground{color:var(--muted-foreground)}.text-orange-600{--tw-text-opacity:1;color:rgba(234,88,12,var(--tw-text-opacity,1))}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-red-500{--tw-text-opacity:1;color:rgba(239,68,68,var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgba(220,38,38,var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgba(185,28,28,var(--tw-text-opacity,1))}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity,1))}.text-zinc-400{--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity,1))}.text-zinc-500{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity,1))}.text-zinc-700{--tw-text-opacity:1;color:rgba(63,63,70,var(--tw-text-opacity,1))}.text-zinc-900{--tw-text-opacity:1;color:rgba(24,24,27,var(--tw-text-opacity,1))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.accent-\[var\(--green-dark\)\]{accent-color:var(--green-dark)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-90{opacity:.9}.\!shadow-none{--tw-shadow:0 0 transparent!important;--tw-shadow-colored:0 0 transparent!important;box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)!important}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 transparent;--tw-shadow-colored:0 0 transparent;box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.shadow-\[var\(--shadow-float\)\]{--tw-shadow-color:var(--shadow-float);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--shadow-lg\)\]{--tw-shadow-color:var(--shadow-lg);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--shadow-md\)\]{--tw-shadow-color:var(--shadow-md);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--shadow-sm\)\]{--tw-shadow-color:var(--shadow-sm);--tw-shadow:var(--tw-shadow-colored)}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.filter{filter:var(--tw-blur)var(--tw-brightness)var(--tw-contrast)var(--tw-grayscale)var(--tw-hue-rotate)var(--tw-invert)var(--tw-saturate)var(--tw-sepia)var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[border-color\,box-shadow\,background-color\]{transition-property:border-color,box-shadow,background-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[color\,box-shadow\,border-color\,background-color\]{transition-property:color,box-shadow,border-color,background-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[color\,box-shadow\,border-color\]{transition-property:color,box-shadow,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.will-change-transform{will-change:transform}.ds-soft-shadow{box-shadow:var(--shadow-sm)}.ds-soft-shadow:hover,.ds-soft-shadow:focus-within{box-shadow:var(--shadow-composer)}:root{--font-body:"DM Sans","PingFang SC","Microsoft YaHei",sans-serif;--font-sans:var(--font-body);--font-anthropic-sans:"Anthropic Sans",system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-anthropic-serif:"Anthropic Serif",Georgia,"Arial Hebrew","Noto Sans Hebrew","Times New Roman",Times,"Hiragino Sans","Yu Gothic",Meiryo,"Noto Sans CJK JP","PingFang TC","Microsoft JhengHei","Noto Sans CJK TC","PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Apple SD Gothic Neo","Malgun Gothic","Noto Sans CJK KR",serif;--font-anthropic-mono:"Anthropic Mono",ui-monospace,monospace;--font-open-dyslexic:"OpenDyslexic","Comic Sans MS",ui-serif,serif;--accent:#1db887}.outline-none{outline-offset:0;outline:none}ul,li{margin:0;padding:0;list-style:none}[data-slot=tabs-list][data-variant=line] [data-slot=tabs-trigger][data-state=active],[data-slot=tabs-list][data-variant=line] [data-slot=tabs-trigger][data-active]:not([data-active=false]),[data-slot=tabs-list][data-variant=line] [data-slot=tabs-trigger][aria-selected=true]{color:var(--ds-main,#1db887);border-bottom:2px solid var(--ds-main,#1db887)}.placeholder\:text-\[var\(--text-placeholder\)\]::placeholder{color:var(--text-placeholder)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.hover\:\!border-\[\#e5e5e5\]:hover{--tw-border-opacity:1!important;border-color:rgba(229,229,229,var(--tw-border-opacity,1))!important}.hover\:\!border-\[var\(--ds-accent\)\]:hover{border-color:var(--ds-accent)!important}.hover\:border-\[\#e0e0e0\]:hover{--tw-border-opacity:1;border-color:rgba(224,224,224,var(--tw-border-opacity,1))}.hover\:border-\[var\(--border-hover\)\]:hover{border-color:var(--border-hover)}.hover\:border-\[var\(--ds-accent-hover\)\]:hover{border-color:var(--ds-accent-hover)}.hover\:border-\[var\(--ds-border-hover\)\]:hover{border-color:var(--ds-border-hover)}.hover\:border-\[var\(--green-dark\)\]:hover{border-color:var(--green-dark)}.hover\:bg-\[\#fff1f1\]:hover{--tw-bg-opacity:1;background-color:rgba(255,241,241,var(--tw-bg-opacity,1))}.hover\:bg-\[var\(--ds-accent-hover\)\]:hover{background-color:var(--ds-accent-hover)}.hover\:bg-\[var\(--ds-item-active\)\]:hover{background-color:var(--ds-item-active)}.hover\:bg-\[var\(--ds-item-bg-hover\)\]:hover{background-color:var(--ds-item-bg-hover)}.hover\:bg-\[var\(--ds-item-hover\)\]:hover{background-color:var(--ds-item-hover)}.hover\:bg-\[var\(--ds-main-tint\)\]:hover{background-color:var(--ds-main-tint)}.hover\:bg-\[var\(--surface-1\)\]:hover{background-color:var(--surface-1)}.hover\:bg-\[var\(--surface-2\)\]:hover{background-color:var(--surface-2)}.hover\:bg-\[var\(--surface-3\)\]:hover{background-color:var(--surface-3)}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white\/70:hover{background-color:rgba(255,255,255,.7)}.hover\:\!text-\[\#cfcfcf\]:hover{--tw-text-opacity:1!important;color:rgba(207,207,207,var(--tw-text-opacity,1))!important}.hover\:text-\[\#343d52\]:hover{--tw-text-opacity:1;color:rgba(52,61,82,var(--tw-text-opacity,1))}.hover\:text-\[var\(--ds-accent\)\]:hover{color:var(--ds-accent)}.hover\:text-\[var\(--ds-accent-hover\)\]:hover{color:var(--ds-accent-hover)}.hover\:text-\[var\(--ds-text\)\]:hover{color:var(--ds-text)}.hover\:text-\[var\(--surface-1\)\]:hover{color:var(--surface-1)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-red-800:hover{--tw-text-opacity:1;color:rgba(153,27,27,var(--tw-text-opacity,1))}.hover\:text-zinc-600:hover{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity,1))}.hover\:text-zinc-700:hover{--tw-text-opacity:1;color:rgba(63,63,70,var(--tw-text-opacity,1))}.hover\:text-zinc-900:hover{--tw-text-opacity:1;color:rgba(24,24,27,var(--tw-text-opacity,1))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:shadow-\[var\(--shadow-sm\)\]:hover{--tw-shadow-color:var(--shadow-sm);--tw-shadow:var(--tw-shadow-colored)}.focus\:bg-\[\#fff1f1\]:focus{--tw-bg-opacity:1;background-color:rgba(255,241,241,var(--tw-bg-opacity,1))}.focus\:bg-\[var\(--ds-item-hover\)\]:focus{background-color:var(--ds-item-hover)}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid transparent}.focus-visible\:border-0:focus-visible{border-width:0}.focus-visible\:\!border-\[\#e5e5e5\]:focus-visible{--tw-border-opacity:1!important;border-color:rgba(229,229,229,var(--tw-border-opacity,1))!important}.focus-visible\:border-\[var\(--border-focus\)\]:focus-visible{border-color:var(--border-focus)}.focus-visible\:border-\[var\(--green-dark\)\]:focus-visible{border-color:var(--green-dark)}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid transparent}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent)}.focus-visible\:ring-\[var\(--ds-accent\)\]:focus-visible{--tw-ring-color:var(--ds-accent)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:\[box-shadow\:var\(--ring-focus-sm\)\]:focus-visible{box-shadow:var(--ring-focus-sm)}.read-only\:focus-visible\:border-border:focus-visible:-moz-read-only{border-color:var(--border)}.read-only\:focus-visible\:border-border:focus-visible:read-only{border-color:var(--border)}.read-only\:focus-visible\:\[box-shadow\:none\]:focus-visible:-moz-read-only{box-shadow:none}.read-only\:focus-visible\:\[box-shadow\:none\]:focus-visible:read-only{box-shadow:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:focus-visible\:border-\[var\(--ds-border\,var\(--input\)\)\]:focus-visible:disabled{border-color:var(--ds-border,var(--input))}.disabled\:focus-visible\:border-border:focus-visible:disabled{border-color:var(--border)}.disabled\:focus-visible\:\[box-shadow\:none\]:focus-visible:disabled{box-shadow:none}.group:focus-within .group-focus-within\:pointer-events-auto{pointer-events:auto}.group:focus-within .group-focus-within\:visible{visibility:visible}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:pointer-events-auto{pointer-events:auto}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:opacity-100{opacity:1}.group\/dropdown-menu-item:focus .group-focus\/dropdown-menu-item\:text-accent-foreground{color:var(--accent-foreground)}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\:disabled\]\:cursor-not-allowed:has(:disabled){cursor:not-allowed}.has-\[\:focus-visible\]\:border-\[var\(--border-focus\)\]:has(:focus-visible){border-color:var(--border-focus)}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[\:focus-visible\]\:\[box-shadow\:var\(--ring-focus-sm\)\]:has(:focus-visible){box-shadow:var(--ring-focus-sm)}.group\/table-row:has(td:hover) .group-has-\[td\:hover\]\/table-row\:\!bg-\[var\(--ds-item-hover\)\]{background-color:var(--ds-item-hover)!important}.aria-expanded\:border-\[var\(--ds-accent-hover\)\][aria-expanded=true]{border-color:var(--ds-accent-hover)}.aria-expanded\:bg-\[var\(--surface-1\)\][aria-expanded=true]{background-color:var(--surface-1)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-\[var\(--ds-accent-hover\)\][aria-expanded=true]{color:var(--ds-accent-hover)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[size\=default\]\:size-4[data-size=default]{width:1rem;height:1rem}.data-\[size\=sm\]\:size-3\.5[data-size=sm]{width:.875rem;height:.875rem}.data-\[size\=default\]\:h-8[data-size=default]{height:2rem}.data-\[size\=lg\]\:h-10[data-size=lg]{height:2.5rem}.data-\[size\=sm\]\:h-7[data-size=sm]{height:1.75rem}.data-\[checked\]\:translate-x-4[data-checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.data-\[unchecked\]\:translate-x-0\.5[data-unchecked]{--tw-translate-x:.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.data-\[checked\]\:border-\[var\(--ds-accent\)\][data-checked]{border-color:var(--ds-accent)}.data-\[state\=open\]\:border-\[var\(--border-focus\)\][data-state=open]{border-color:var(--border-focus)}.data-\[checked\]\:bg-\[var\(--ds-accent\)\][data-checked]{background-color:var(--ds-accent)}.data-\[checked\]\:bg-primary[data-checked]{background-color:var(--primary)}.data-\[checked\]\:bg-primary-foreground[data-checked]{background-color:var(--primary-foreground)}.data-\[checked\]\:bg-white[data-checked]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity,1))}.data-\[active\]\:font-medium[data-active]{font-weight:500}.data-\[active\]\:text-\[var\(--ds-accent\)\][data-active]{color:var(--ds-accent)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:\[box-shadow\:var\(--ring-focus-sm\)\][data-state=open]{box-shadow:var(--ring-focus-sm)}.data-\[active\]\:after\:absolute[data-active]:after{content:var(--tw-content);position:absolute}.data-\[active\]\:after\:bottom-\[-1px\][data-active]:after{content:var(--tw-content);bottom:-1px}.data-\[active\]\:after\:left-0[data-active]:after{content:var(--tw-content);left:0}.data-\[active\]\:after\:right-0[data-active]:after{content:var(--tw-content);right:0}.data-\[active\]\:after\:h-\[2px\][data-active]:after{content:var(--tw-content);height:2px}.data-\[active\]\:after\:bg-\[var\(--ds-accent\)\][data-active]:after{content:var(--tw-content);background-color:var(--ds-accent)}.data-\[active\]\:after\:content-\[\"\"\][data-active]:after{--tw-content:"";content:var(--tw-content)}.data-\[variant\=destructive\]\:focus\:text-destructive:focus[data-variant=destructive]{color:var(--destructive)}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:mb-0{margin-bottom:0}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:mr-0{margin-right:0}.group\/tabs-list[data-variant=default] .group-data-\[variant\=default\]\/tabs-list\:h-8{height:2rem}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:h-9{height:2.25rem}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:rounded-full{border-radius:9999px}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:px-5{padding-left:1.25rem;padding-right:1.25rem}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:pb-0{padding-bottom:0}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:text-sm{font-size:var(--text-sm);line-height:1.4}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:font-semibold{font-weight:600}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:text-\[\#828282\]{--tw-text-opacity:1;color:rgba(130,130,130,var(--tw-text-opacity,1))}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:data-\[active\]\:bg-\[\#fff\][data-active]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity,1))}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:data-\[active\]\:font-bold[data-active]{font-weight:700}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:data-\[active\]\:text-\[\#333333\][data-active]{--tw-text-opacity:1;color:rgba(51,51,51,var(--tw-text-opacity,1))}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:data-\[active\]\:shadow-\[0_2px_10px_rgba\(15\,23\,42\,0\.08\)\][data-active]{--tw-shadow:0 2px 10px rgba(15,23,42,.08);--tw-shadow-colored:0 2px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow)}.group\/tabs-list[data-variant=pill] .group-data-\[variant\=pill\]\/tabs-list\:data-\[active\]\:after\:\[content\:none\][data-active]:after{content:none}@media (min-width:640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:pl-2\.5{padding-left:.625rem}.sm\:pr-2\.5{padding-right:.625rem}}@media (prefers-color-scheme:dark){.dark\:border-input{border-color:var(--input)}}.\[\&\>td\]\:transition-colors>td{transition-property:color,background-color,border-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.data-\[state\=selected\]\:\[\&\>td\]\:\!bg-\[var\(--ds-item-active\)\]>td[data-state=selected]{background-color:var(--ds-item-active)!important}.\[\&_path\]\:\!fill-none path{fill:none!important}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:.875rem;height:.875rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-5 svg{width:1.25rem;height:1.25rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\]\:stroke-current svg{stroke:currentColor}.\[\&_svg\]\:align-middle svg{vertical-align:middle}.\[\&_svg\]\:\!text-red-600 svg{--tw-text-opacity:1!important;color:rgba(220,38,38,var(--tw-text-opacity,1))!important}.hover\:\[\&_svg\]\:\!text-red-800 svg:hover{--tw-text-opacity:1!important;color:rgba(153,27,27,var(--tw-text-opacity,1))!important}.\[\&_svg_path\]\:\!fill-current svg path{fill:currentColor!important}.\[\&_svg_path\]\:\!fill-none svg path{fill:none!important}.\[\&_tr\:last-child\]\:border-b-0 tr:last-child,.\[\&_tr\:last-child_td\]\:border-b-0 tr:last-child td{border-bottom-width:0}.\[\&_tr\]\:table tr{display:table}.\[\&_tr\]\:w-full tr{width:100%}.\[\&_tr\]\:table-fixed tr{table-layout:fixed}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,53925,e=>{"use strict";e.s(["ResourceImportDialog",()=>u],53925);var t=e.i(18050),a=e.i(71645),r=e.i(72064),l=e.i(75157),s=e.i(19455);function i(e){return e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB")}function n(e){let{uploadUrl:n,accept:o,disabled:c=!1,multiple:d=!1,maxFileSize:u=0x3200000,autoUpload:m=!1,method:p="POST",transport:f="xhr",fieldName:v="file",headers:b,extraFormData:x,autoRetryTimes:h=0,autoRetryDelayMs:g=800,selectionOnly:y=!1,className:w,emptyTitle:j="点击或拖拽文件到此处",emptyHint:C="支持上传文件",onFilesChange:N,onUploadSuccess:k,onUploadError:R,onValidationError:T}=e,S=a.useId(),M=a.useRef(null),E=a.useRef(new Map),A=a.useRef(new Map),O=a.useRef([]),[D,P]=a.useState(!1),[U,z]=a.useState([]),B=a.useMemo(()=>o?o.split(",").map(e=>e.trim().toLowerCase()).filter(Boolean):[],[o]);a.useEffect(()=>{O.current=U,null==N||N(U)},[U,N]),a.useEffect(()=>()=>{for(let e of E.current.values())e.abort();for(let e of A.current.values())e.abort();for(let e of O.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl)},[]);let L=a.useCallback((e,t)=>{z(a=>a.map(a=>a.id===e?{...a,...t}:a))},[]),I=a.useCallback(async(e,t)=>{let a=O.current.find(t=>t.id===e);if(!a||c)return;L(e,{status:t>0?"retrying":"uploading",progress:0,error:"",retryCount:t});let r=new FormData;if(x)for(let[e,t]of Object.entries(x))r.append(e,t);r.append(v,a.file);try{let t="";if("fetch"===f){let a=new AbortController;A.current.set(e,a);let l=await fetch(n,{method:p,headers:b,body:r,signal:a.signal}),s=await l.text();try{t=s?JSON.parse(s):""}catch(e){t=s}if(!l.ok)throw Error("上传失败:".concat(l.status," ").concat(l.statusText))}else t=await new Promise((t,a)=>{let l=new XMLHttpRequest;if(E.current.set(e,l),l.open(p,n,!0),b)for(let[e,t]of Object.entries(b))l.setRequestHeader(e,t);l.upload.onprogress=t=>{if(!t.lengthComputable)return;let a=Math.min(100,Math.round(t.loaded/t.total*100));L(e,{progress:a})},l.onerror=()=>a(Error("网络异常,上传失败")),l.onabort=()=>a(Error("__ABORTED__")),l.onload=()=>{l.status>=200&&l.status<300?t(function(e){let t=e.responseText||"";try{return JSON.parse(t)}catch(e){return t}}(l)):a(Error("上传失败:".concat(l.status," ").concat(l.statusText)))},l.send(r)});L(e,{status:"success",progress:100,error:""});let a=O.current.find(t=>t.id===e);a&&(null==k||k(a,t))}catch(l){let a=l instanceof Error?l.message:String(l);if("__ABORTED__"===a)return void L(e,{status:"selected",progress:0,error:""});if(t<h){L(e,{status:"retrying",error:"重试中(".concat(t+1,"/").concat(h,")")}),await new Promise(e=>window.setTimeout(e,g)),await I(e,t+1);return}L(e,{status:"error",error:a});let r=O.current.find(t=>t.id===e);r&&(null==R||R(r,a))}finally{E.current.delete(e),A.current.delete(e)}},[g,h,c,x,v,b,p,R,k,f,L,n]),_=a.useCallback(e=>{I(e,0)},[I]),F=a.useCallback(e=>{var t,a;null==(t=E.current.get(e))||t.abort(),null==(a=A.current.get(e))||a.abort()},[]),V=a.useCallback(()=>{for(let e of O.current)("selected"===e.status||"error"===e.status)&&_(e.id)},[_]),H=a.useCallback(e=>{if(c||!e.length)return;let t=new Set(O.current.map(e=>"".concat(e.file.name,"::").concat(e.file.size))),a=[];for(let r of e){let e="".concat(r.name,"::").concat(r.size);if(!t.has(e)){if(!function(e,t){if(!t.length)return!0;let a=e.name.toLowerCase(),r=(e.type||"").toLowerCase();return t.some(e=>e.startsWith(".")?a.endsWith(e):e.endsWith("/*")?r.startsWith("".concat(e.slice(0,-1))):r===e)}(r,B)){null==T||T("文件类型不支持:".concat(r.name));continue}if(r.size>u){null==T||T("文件过大(最大 ".concat(i(u),"):").concat(r.name));continue}t.add(e),a.push({id:"".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,8)),file:r,status:"selected",progress:0,error:"",retryCount:0,previewUrl:r.type.startsWith("image/")?URL.createObjectURL(r):""})}}if(!a.length)return;let r=d?[...O.current,...a]:[a[a.length-1]];if(!d)for(let e of O.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl);if(z(r),m&&!y)for(let e of a)_(e.id)},[B,m,c,u,d,T,y,_]),J=a.useCallback(e=>{let t=e.target.files;t&&(H(Array.from(t)),e.target.value="")},[H]),K=a.useCallback(e=>{var t;e.preventDefault(),e.stopPropagation(),P(!1),c||H(Array.from(null!=(t=e.dataTransfer.files)?t:[]))},[H,c]);return(0,t.jsxs)("div",{className:(0,l.cn)("flex min-h-0 w-full flex-col gap-3",w),children:[(0,t.jsx)("input",{ref:M,id:S,type:"file",hidden:!0,accept:o,multiple:d,disabled:c,onChange:J}),(0,t.jsxs)("label",{htmlFor:S,onDragOver:e=>{e.preventDefault(),c||P(!0)},onDragLeave:e=>{e.preventDefault(),P(!1)},onDrop:K,className:(0,l.cn)("flex min-h-[124px] cursor-pointer flex-col items-center justify-center gap-1 rounded-lg border border-dashed border-[var(--ds-border)] px-4 py-6 text-center transition-colors hover:border-[var(--ds-border-hover)] hover:bg-[var(--ds-main-tint)]",D&&"bg-[var(--ds-accent)]/5 border-[var(--ds-accent)]",c&&"cursor-not-allowed opacity-60"),children:[(0,t.jsx)(r.default,{name:"Upload",size:20,className:"text-[var(--ds-muted)]"}),(0,t.jsx)("div",{className:"text-base text-[var(--ds-text)]",children:j}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:C})]}),U.length?(0,t.jsx)("div",{className:"space-y-2",children:U.map(e=>(0,t.jsx)("div",{className:"rounded-md border border-[var(--ds-border)] p-2.5",children:(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-base text-[var(--ds-text)]",children:e.file.name}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:i(e.file.size)}),e.previewUrl?(0,t.jsx)("img",{src:e.previewUrl,alt:e.file.name,className:"mt-2 h-14 w-14 rounded object-cover"}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsx)("div",{className:"mt-2 h-1.5 w-full overflow-hidden rounded bg-[var(--ds-main-tint)]",children:(0,t.jsx)("div",{className:"h-full bg-[var(--ds-accent)] transition-all",style:{width:"".concat(e.progress,"%")}})}):null,"error"===e.status?(0,t.jsx)("div",{className:"mt-1 text-sm text-[var(--ds-danger)]",children:e.error||"上传失败"}):null]}),y?null:(0,t.jsxs)("div",{className:"flex items-center gap-1",children:["success"===e.status?(0,t.jsx)(r.default,{name:"CheckCircle2",size:16,className:"text-[var(--ds-accent)]"}):null,"selected"===e.status||"error"===e.status?(0,t.jsxs)(s.Button,{type:"button",size:"sm",variant:"outline",disabled:c,onClick:()=>_(e.id),children:["error"===e.status?(0,t.jsx)(r.default,{name:"RefreshCw",size:14,className:"mr-1"}):null,"error"===e.status?"重试":"上传"]}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsxs)(s.Button,{type:"button",size:"sm",variant:"outline",onClick:()=>F(e.id),children:[(0,t.jsx)(r.default,{name:"XCircle",size:14,className:"mr-1"}),"取消"]}):null]})]})},e.id))}):null,!y&&!m&&U.some(e=>"selected"===e.status||"error"===e.status)?(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(s.Button,{type:"button",size:"sm",onClick:V,disabled:c,children:"上传"})}):null]})}var o=e.i(76639),c=e.i(13354),d=e.i(29250);function u(e){let{open:r,onOpenChange:l,title:i,description:u,uploadUrl:m,resetKey:p}=e,[f,v]=(0,a.useState)(!1),[b,x]=(0,a.useState)(null),h=(0,a.useCallback)(()=>{l(!1),x(null)},[l]),g=(0,a.useCallback)(async()=>{if(!b)return void c.appToast.info("请先选择 zip 文件");let e=new FormData;e.append("file",b),v(!0);try{let t=await (0,d.bridgeFetch)(m,{method:"POST",body:e}),a=Number(t.imported||0),r=Number(t.overwritten||0),l=Array.isArray(t.rejected)?t.rejected.length:0;c.appToast.success("导入完成:导入 ".concat(a,",覆盖 ").concat(r)+(l>0?",拒绝 ".concat(l):"")),h()}catch(e){c.appToast.error("导入失败:".concat(e instanceof Error?e.message:String(e)))}finally{v(!1)}},[h,b,m]);return(0,t.jsx)(o.Dialog,{open:r,onOpenChange:e=>{l(e),e||x(null)},children:(0,t.jsxs)(o.DialogContent,{className:"flex min-h-[320px] max-w-[560px] flex-col",children:[(0,t.jsxs)(o.DialogHeader,{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(o.DialogTitle,{children:i}),(0,t.jsx)(o.DialogDescription,{children:u})]}),(0,t.jsx)(o.DialogClose,{className:"sidebar-icon-btn","aria-label":"关闭",onClick:h,children:"✕"})]}),(0,t.jsxs)("div",{className:"m-3 flex flex-1 flex-col gap-3",children:[(0,t.jsx)(n,{uploadUrl:m,accept:".zip,application/zip",maxFileSize:0x3200000,multiple:!1,disabled:f,selectionOnly:!0,emptyTitle:"点击或拖拽 zip 文件到此处",emptyHint:"支持 .zip 格式,最大 50MB",onFilesChange:e=>{var t,a;x(null!=(a=null==(t=e[0])?void 0:t.file)?a:null)},onValidationError:e=>{c.appToast.info(e)}},"".concat(r?"open":"closed","-").concat(null!=p?p:m)),(0,t.jsxs)("div",{className:"mt-auto flex justify-end pt-2",children:[(0,t.jsx)(s.Button,{className:"mr-[12px]",type:"button",variant:"plain-outline",size:"lg",onClick:h,children:"取消"}),(0,t.jsx)(s.Button,{type:"button",size:"lg",variant:"default",disabled:f||null==b,onClick:()=>void g(),children:f?"导入中…":"确定"})]})]})]})})}},94197,e=>{"use strict";e.s(["IconTooltipButton",()=>n]);var t=e.i(18050),a=e.i(72064),r=e.i(19455),l=e.i(46798),s=e.i(75157);let i={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function n(e){let{icon:n,label:o,ariaLabel:c,tone:d="muted",disabled:u,className:m,iconClassName:p,onClick:f}=e;return(0,t.jsx)(l.TooltipProvider,{delayDuration:150,children:(0,t.jsxs)(l.Tooltip,{children:[(0,t.jsx)(l.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(r.Button,{type:"button",variant:"plain",size:"icon",className:(0,s.cn)("h-8 w-8",i[d],m),disabled:u,"aria-label":null!=c?c:o,onClick:f,children:(0,t.jsx)(a.default,{name:n,size:16,className:p})})}),(0,t.jsx)(l.TooltipContent,{side:"bottom",align:"center",children:o})]})})}},56708,e=>{"use strict";e.s(["ManageChromeHeaderActions",()=>n,"ManageFeatureChrome",()=>i]);var t=e.i(18050),a=e.i(71645),r=e.i(74080),l=e.i(72064);let s=(0,a.createContext)(null);function i(e){let{title:r,description:i,children:n,showTitle:o=!0,headerIcon:c}=e,[d,u]=(0,a.useState)(null);return(0,t.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,t.jsxs)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-[var(--space-4)] pb-[var(--space-4)]",children:[o?(0,t.jsxs)("div",{className:"manage-page-title-block flex items-center",children:[c&&(0,t.jsx)("div",{className:"mr-3 rounded-md bg-[var(--green-light)] px-4 py-3",children:(0,t.jsx)(l.default,{name:c,size:24,className:"text-[var(--green-dark)]",strokeWidth:1.5})}),(0,t.jsxs)("div",{className:"pt-3",children:[(0,t.jsx)("h1",{className:"manage-page-title",children:r}),(0,t.jsx)("p",{className:"manage-page-desc",children:i})]})]}):null,(0,t.jsx)("div",{ref:u,className:"manage-page-header-actions self-start"})]}),(0,t.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col",children:(0,t.jsx)(s.Provider,{value:d,children:n})})]})}function n(e){let{children:t}=e,l=(0,a.useContext)(s);return(0,a.useSyncExternalStore)(()=>()=>{},()=>!0,()=>!1)&&l?(0,r.createPortal)(t,l):null}},92715,85413,e=>{"use strict";e.s(["AppTable",()=>m],92715);var t=e.i(18050);e.s(["Empty",()=>l],85413);var a=e.i(75157),r=e.i(72064);function l(e){let{text:l="暂无数据",className:s}=e;return(0,t.jsxs)("div",{className:(0,a.cn)("flex min-h-[180px] w-full flex-col items-center justify-center gap-2 py-4 text-base text-[var(--ds-muted)]",s),role:"status","aria-live":"polite",children:[(0,t.jsx)(r.default,{name:"NoData",size:80,color:"var(--ds-muted)",className:"opacity-90"}),(0,t.jsx)("span",{children:l})]})}var s=e.i(71645);let i=s.forwardRef((e,r)=>{let{className:l,...s}=e;return(0,t.jsx)("div",{className:"relative w-full overflow-auto",children:(0,t.jsx)("table",{ref:r,className:(0,a.cn)("w-full caption-bottom border-collapse text-sm",l),...s})})});i.displayName="Table";let n=s.forwardRef((e,r)=>{let{className:l,...s}=e;return(0,t.jsx)("thead",{ref:r,className:(0,a.cn)("[&_tr]:table [&_tr]:w-full [&_tr]:table-fixed [&_tr]:border-b",l),...s})});n.displayName="TableHeader";let o=s.forwardRef((e,r)=>{let{className:l,viewportFit:i=!0,viewportReserveBottom:n=16,viewportPaginationReserve:o=0,style:c,...d}=e,u=s.useRef(null),m=s.useCallback(e=>{u.current=e,"function"==typeof r?r(e):r&&(r.current=e)},[r]),[p,f]=s.useState(void 0);return s.useLayoutEffect(()=>{var e,t;if(!i)return void f(void 0);let a=()=>{var e,t;let a=u.current;if(!a)return;let r=a.getBoundingClientRect().top;f(Math.max(80,Math.floor((null!=(t=null==(e=window.visualViewport)?void 0:e.height)?t:window.innerHeight)-r-(n+o))))};a();let r=new ResizeObserver(()=>{a()});try{r.observe(document.body)}catch(e){}return window.addEventListener("resize",a),null==(e=window.visualViewport)||e.addEventListener("resize",a),null==(t=window.visualViewport)||t.addEventListener("scroll",a),window.addEventListener("scroll",a,!0),()=>{var e,t;r.disconnect(),window.removeEventListener("resize",a),null==(e=window.visualViewport)||e.removeEventListener("resize",a),null==(t=window.visualViewport)||t.removeEventListener("scroll",a),window.removeEventListener("scroll",a,!0)}},[i,n,o]),(0,t.jsx)("tbody",{ref:m,className:(0,a.cn)("block overflow-y-auto [&_tr:last-child]:border-b-0 [&_tr:last-child_td]:border-b-0 [&_tr]:table [&_tr]:w-full [&_tr]:table-fixed",l),style:i&&void 0!==p?{...c,maxHeight:p}:c,...d})});o.displayName="TableBody";let c=s.forwardRef((e,r)=>{let{className:l,hoverable:s=!0,...i}=e;return(0,t.jsx)("tr",{ref:r,className:(0,a.cn)("border-b transition-colors [&>td]:transition-colors data-[state=selected]:[&>td]:!bg-[var(--ds-item-active)]",s&&"group/table-row",l),...i})});c.displayName="TableRow";let d=s.forwardRef((e,r)=>{let{className:l,...s}=e;return(0,t.jsx)("th",{ref:r,className:(0,a.cn)("h-10 border-b border-[var(--border-subtle)] bg-[var(--surface-2)] px-3 text-left align-middle text-[14px] font-medium !text-[var(--ds-text)] text-muted-foreground",l),...s})});d.displayName="TableHead";let u=s.forwardRef((e,r)=>{let{className:l,...s}=e;return(0,t.jsx)("td",{ref:r,className:(0,a.cn)("border-x-0 border-b border-t-0 border-solid border-[var(--border-subtle)] p-3 align-middle text-base transition-colors group-has-[td:hover]/table-row:!bg-[var(--ds-item-hover)]",l),...s})});function m(e){let{rows:r,columns:s,getRowKey:m,className:p,rowClassName:f,headerRowClassName:v,emptyText:b,emptyNode:x,bodyProps:h}=e;return(0,t.jsx)("div",{className:(0,a.cn)("overflow-hidden border border-[var(--ds-border)]",p),children:(0,t.jsxs)(i,{children:[(0,t.jsx)(n,{children:(0,t.jsx)(c,{className:(0,a.cn)("bg-[var(--ds-main-tint)] hover:bg-[var(--ds-main-tint)]",v),children:s.map(e=>(0,t.jsx)(d,{className:e.headerClassName,children:e.title},e.key))})}),(0,t.jsx)(o,{...h,children:r.length?r.map(e=>(0,t.jsx)(c,{className:"function"==typeof f?f(e):f,children:s.map(a=>(0,t.jsx)(u,{className:a.cellClassName,children:a.render(e)},a.key))},m(e))):(0,t.jsx)(c,{hoverable:!1,children:(0,t.jsx)(u,{colSpan:s.length,className:"py-6",children:null!=x?x:(0,t.jsx)(l,{text:b})})})})]})})}u.displayName="TableCell"},62427,e=>{"use strict";e.s(["deleteRuntimeMcp",()=>d,"deleteRuntimeSkill",()=>x,"deleteRuntimeTool",()=>c,"exportRuntimeMcpUrl",()=>m,"exportRuntimeSkillUrl",()=>h,"exportRuntimeToolUrl",()=>u,"importRuntimeMcp",()=>f,"importRuntimeTool",()=>p,"installCloudSkill",()=>y,"listAgentTeams",()=>i,"listCloudSkillCatalog",()=>g,"listMcpServers",()=>r,"listRuntimeMcpPackages",()=>o,"listRuntimeTools",()=>n,"listSkills",()=>s,"listTools",()=>l,"loadRemoteMcpJson",()=>v,"saveRemoteMcpJson",()=>b]);var t=e.i(29250),a=e.i(36845);async function r(e,r,l){let s=await (0,t.get)((0,a.buildMcpServersListUrl)(e,r,l));return{servers:Array.isArray(s.servers)?s.servers:[]}}async function l(e,r,l){let s=await (0,t.get)((0,a.buildToolsListUrl)(e,r,l));return{tools:Array.isArray(s.tools)?s.tools:[]}}async function s(e,r,l){let s=await (0,t.get)((0,a.getSkillsList)(e,r,l));return{skills:Array.isArray(s.skills)?s.skills:[]}}async function i(e,r,l){let s=await (0,t.get)((0,a.buildAgentTeamsListUrl)(e,r,l));return{teamAgentTypes:Array.isArray(s.teamAgentTypes)?s.teamAgentTypes:[],agentTeams:Array.isArray(s.agentTeams)?s.agentTeams:[]}}async function n(e,r,l){let s=await (0,t.get)((0,a.buildToolsRuntimeFilesUrl)(e,r,l));return{runtimeToolsDir:"string"==typeof s.runtimeToolsDir?s.runtimeToolsDir:"",items:Array.isArray(s.items)?s.items.filter(e=>!!(e&&e.id)):[]}}async function o(e,r,l){let s=await (0,t.get)((0,a.buildMcpRuntimeFilesUrl)(e,r,l));return{mcpRuntimeDir:"string"==typeof s.mcpRuntimeDir?s.mcpRuntimeDir:"",items:Array.isArray(s.items)?s.items.filter(e=>!!(e&&e.id)):[]}}async function c(e,r,l,s){return(0,t.del)((0,a.buildToolsRuntimeDeleteUrl)(e,r,l,s))}async function d(e,r,l,s){return(0,t.del)((0,a.buildMcpRuntimeDeleteUrl)(e,r,l,s))}function u(e,t,r,l){return(0,a.buildToolsRuntimeExportUrl)(e,t,r,l)}function m(e,t,r,l){return(0,a.buildMcpRuntimeExportUrl)(e,t,r,l)}async function p(e,r,l,s){let i=new FormData;return i.append("file",s),(0,t.post)((0,a.buildToolsRuntimeImportUrl)(e,r,l),i,{type:"file"})}async function f(e,r,l,s){let i=new FormData;return i.append("file",s),(0,t.post)((0,a.buildMcpRuntimeImportUrl)(e,r,l),i,{type:"file"})}async function v(e,r,l){return(0,t.get)((0,a.buildRemoteMcpJsonUrl)(e,r,l))}async function b(e,r,l,s){await (0,t.post)((0,a.buildRemoteMcpJsonUrl)(e,r,l),{content:s})}async function x(e,r,l,s){return(0,t.del)((0,a.buildSkillsRuntimeDeleteUrl)(e,r,l,s))}function h(e,t,r,l){return(0,a.buildSkillsRuntimeExportUrl)(e,t,r,l)}async function g(e,r,l,s,i,n){let o=await (0,t.get)((0,a.buildCloudSkillCatalogUrl)(e,r,l,s,i,n));return{items:Array.isArray(o.items)?o.items:[],totalPages:Number(o.totalPages||0)}}async function y(e,r,l,s){await (0,t.post)((0,a.buildCloudSkillInstallUrl)(e,r,l),{id:s})}},94055,e=>{"use strict";e.s(["AccentSwitch",()=>U],94055);var t=e.i(18050);e.s(["Root",()=>E,"Thumb",()=>A],39606),e.s([],37751),e.i(37751),e.i(47167);var a=e.i(71645),r=e.i(94349),l=e.i(76477),s=e.i(26292),i=e.i(977),n=e.i(62372),o=e.i(17514),c=e.i(27601),d=e.i(19805),u=e.i(89879),m=e.i(91730),p=e.i(67805);let f=a.createContext(void 0),v=function(e){return e.disabled="data-disabled",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),b={valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},x={disabled:!1,...b},h=function(e){return e.checked="data-checked",e.unchecked="data-unchecked",e.disabled="data-disabled",e.readonly="data-readonly",e.required="data-required",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),g={valid:e=>null===e?null:e?{[v.valid]:""}:{[v.invalid]:""},checked:e=>e?{[h.checked]:""}:{[h.unchecked]:""}},y=a.createContext({invalid:void 0,name:void 0,validityData:{state:{badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},errors:[],error:"",value:"",initialValue:null},setValidityData:o.NOOP,disabled:void 0,touched:b.touched,setTouched:o.NOOP,dirty:b.dirty,setDirty:o.NOOP,filled:b.filled,setFilled:o.NOOP,focused:b.focused,setFocused:o.NOOP,validate:()=>null,validationMode:"onSubmit",validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:x,markedDirtyRef:{current:!1},registerFieldControl:o.NOOP,validation:{getValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},getInputValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},inputRef:{current:null},commit:async()=>{}}});function w(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],t=a.useContext(y);if(t.setValidityData===o.NOOP&&!e)throw Error((0,p.default)(28));return t}let j=a.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:o.NOOP,validationMode:"onSubmit",submitAttemptedRef:{current:!1}}),C=a.createContext({controlId:void 0,registerControlId:o.NOOP,labelId:void 0,setLabelId:o.NOOP,messageIds:[],setMessageIds:o.NOOP,getDescriptionProps:e=>e});function N(){return a.useContext(C)}var k=e.i(30628),R=e.i(29315),T=e.i(5963),S=e.i(3404),M=e.i(19904);let E=a.forwardRef(function(e,p){let{checked:v,className:b,defaultChecked:x,"aria-labelledby":h,form:y,id:C,inputRef:E,name:A,nativeButton:O=!1,onCheckedChange:D,readOnly:P=!1,required:U=!1,disabled:z=!1,render:B,uncheckedValue:L,value:I,style:_,...F}=e,{clearErrors:V}=a.useContext(j),{state:H,setTouched:J,setDirty:K,validityData:W,setFilled:q,setFocused:Y,shouldValidateOnChange:X,validationMode:G,disabled:Q,name:Z,validation:$}=w(),{labelId:ee}=N(),et=Q||z,ea=null!=Z?Z:A,er=(0,l.useStableCallback)(D),el=a.useRef(null),es=(0,s.useMergedRefs)(el,E,$.inputRef),ei=a.useRef(null),en=(0,u.useBaseUiId)(),eo=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{id:t,implicit:r=!1,controlRef:s}=e,{controlId:n,registerControlId:c}=N(),d=(0,u.useBaseUiId)(t),m=r?n:void 0,p=(0,k.useRefWithInit)(()=>Symbol("labelable-control")),f=a.useRef(!1),v=a.useRef(null!=t),b=(0,l.useStableCallback)(()=>{f.current&&c!==o.NOOP&&(f.current=!1,c(p.current,void 0))});return(0,i.useIsoLayoutEffect)(()=>{let e;if(c!==o.NOOP){if(r){let a=null==s?void 0:s.current;e=(0,R.isElement)(a)&&null!=a.closest("label")?null!=t?t:null:null!=m?m:d}else if(null!=t)v.current=!0,e=t;else{if(!v.current)return void b();e=d}if(void 0===e)return void b();f.current=!0,c(p.current,e)}},[t,s,m,c,r,d,p,b]),a.useEffect(()=>b,[b]),null!=n?n:d}({id:C,implicit:!1,controlRef:ei}),ec=O?void 0:eo,[ed,eu]=(0,r.useControlled)({controlled:v,default:!!x,name:"Switch",state:"checked"});!function(e,t){let{enabled:r=!0,getValue:l,id:s,value:n}=t,{registerFieldControl:o}=w(),c=a.useRef(null);c.current||(c.current=Symbol()),(0,i.useIsoLayoutEffect)(()=>{let t=c.current;if(t&&r)return o(t,{controlRef:e,getValue:l,id:s,value:n}),()=>{o(t,void 0)}},[e,r,l,s,o,n])}(ei,{id:en,value:ed}),(0,i.useIsoLayoutEffect)(()=>{el.current&&q(el.current.checked)},[el,q]),(0,M.useValueChanged)(ed,()=>{V(ea),K(ed!==W.initialValue),q(ed),X()?$.commit(ed):$.commit(ed,!0)});let{getButtonProps:em,buttonRef:ep}=(0,m.useButton)({disabled:et,native:O}),ef=function(e,t,r){var l;let s=!(arguments.length>3)||void 0===arguments[3]||arguments[3],n=arguments.length>4?arguments[4]:void 0,[o,c]=a.useState(),d=(0,u.useBaseUiId)(n?"".concat(n,"-label"):void 0),m=null!=(l=null!=e?e:t)?l:o;return(0,i.useIsoLayoutEffect)(()=>{let a=e||t||!s?void 0:function(e,t){let a=function(e){if(!e)return;let t=e.parentElement;if(t&&"LABEL"===t.tagName)return t;let a=e.id;if(a){let t=e.nextElementSibling;if(t&&t.htmlFor===a)return t}let r=e.labels;return r&&r[0]}(e);if(a)return!a.id&&t&&(a.id=t),a.id||void 0}(r.current,d);o!==a&&c(a)}),m}(h,ee,el,!O,ec),ev=a.useMemo(()=>(0,d.mergeProps)({checked:ed,disabled:et,form:y,id:ec,name:ea,required:U,style:ea?n.visuallyHiddenInput:n.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:es,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(P)return void e.preventDefault();let t=e.currentTarget.checked,a=(0,T.createChangeEventDetails)(S.REASONS.none,e.nativeEvent);null==er||er(t,a),a.isCanceled||eu(t)},onFocus(){var e;null==(e=ei.current)||e.focus()}},$.getInputValidationProps,void 0!==I?{value:I}:o.EMPTY_OBJECT),[ed,et,y,es,ec,ea,er,P,U,eu,$,I]),eb=a.useMemo(()=>({...H,checked:ed,disabled:et,readOnly:P,required:U}),[H,ed,et,P,U]),ex=(0,c.useRenderElement)("span",e,{state:eb,ref:[p,ei,ep],props:[{id:O?eo:en,role:"switch","aria-checked":ed,"aria-readonly":P||void 0,"aria-required":U||void 0,"aria-labelledby":ef,onFocus(){et||Y(!0)},onBlur(){let e=el.current;e&&!et&&(J(!0),Y(!1),"onBlur"===G&&$.commit(e.checked))},onClick(e){var t;P||et||(e.preventDefault(),null==(t=el.current)||t.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey})))}},$.getValidationProps,F,em],stateAttributesMapping:g});return(0,t.jsxs)(f.Provider,{value:eb,children:[ex,!ed&&ea&&void 0!==L&&(0,t.jsx)("input",{type:"hidden",form:y,name:ea,value:L}),(0,t.jsx)("input",{...ev,suppressHydrationWarning:!0})]})}),A=a.forwardRef(function(e,t){let{render:r,className:l,style:s,...i}=e,{state:n}=w(),o=function(){let e=a.useContext(f);if(void 0===e)throw Error((0,p.default)(63));return e}(),d={...n,...o};return(0,c.useRenderElement)("span",e,{state:d,ref:t,stateAttributesMapping:g,props:i})});var O=e.i(39606),O=O,D=e.i(75157);function P(e){let{className:a,thumbClassName:r,...l}=e;return(0,t.jsx)(O.Root,{"data-slot":"switch",className:(0,D.cn)("shadow-xs focus-visible:ring-ring/50 dark:data-[unchecked]:bg-input/80 peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent bg-input outline-none transition-colors focus-visible:border-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[checked]:bg-primary",a),...l,children:(0,t.jsx)(O.Thumb,{className:(0,D.cn)("pointer-events-none block size-4 rounded-full bg-background ring-0 transition-transform will-change-transform data-[checked]:translate-x-4 data-[unchecked]:translate-x-0.5 data-[checked]:bg-primary-foreground",r)})})}function U(e){let{className:a,thumbClassName:r,...l}=e;return(0,t.jsx)(P,{className:(0,D.cn)("focus-visible:border-[var(--ds-accent)]/50 focus-visible:ring-[var(--ds-accent)]/35 data-[checked]:border-[var(--ds-accent)] data-[checked]:bg-[var(--ds-accent)]",a),thumbClassName:(0,D.cn)("data-[checked]:bg-white",r),...l})}},55242,e=>{"use strict";e.s(["AppDialog",()=>s]);var t=e.i(18050),a=e.i(71645),r=e.i(76639),l=e.i(75157);function s(e){let{open:s,onOpenChange:i,title:n,children:o,footer:c,width:d="max-w-3xl",minHeight:u}=e,m=(0,a.useId)();return(0,t.jsx)(r.Dialog,{open:s,onOpenChange:i,children:(0,t.jsxs)(r.DialogContent,{"aria-labelledby":m,className:(0,l.cn)(d,u?"!min-h-[--min-h]":""),style:u?{"--min-h":u}:void 0,children:[(0,t.jsxs)(r.DialogHeader,{children:[(0,t.jsx)(r.DialogTitle,{id:m,children:n}),(0,t.jsx)(r.DialogClose,{"aria-label":"关闭"})]}),(0,t.jsx)(r.DialogBody,{className:"!px-4 !py-3",children:o}),c?(0,t.jsx)("div",{className:"flex flex-shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] bg-[var(--ds-sidebar)] px-4 py-3",children:c}):null]})})}},89530,e=>{"use strict";e.s(["McpManageView",()=>j],89530);var t=e.i(18050),a=e.i(71645),r=e.i(65934),l=e.i(87243),s=e.i(13354),i=e.i(50711),n=e.i(51419),o=e.i(55242),c=e.i(92715),d=e.i(19455),u=e.i(94055),m=e.i(94197);function p(e){let{items:a,saveBusy:r,onToggleStatus:l,className:s}=e,i=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.label||e.name},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.description||"-"},{key:"source",title:"来源",headerClassName:"text-base",cellClassName:"text-base",render:()=>"远程"},{key:"status",title:"状态",headerClassName:"text-base",cellClassName:"whitespace-nowrap py-2 align-middle",render:e=>l?(0,t.jsx)("span",{className:"inline-flex items-center justify-end gap-2 text-base text-[var(--ds-text)]",children:(0,t.jsx)(u.AccentSwitch,{checked:!e.disabled,disabled:r,onCheckedChange:t=>{l(e.name,t)},"aria-label":"".concat(e.disabled?"启用":"禁用"," ").concat(e.name)})}):(0,t.jsx)("span",{className:"text-base text-[var(--ds-text)]",children:e.installed?"已安装":"未安装"})}];return(0,t.jsx)(c.AppTable,{rows:a,columns:i,getRowKey:e=>"mcp:".concat(e.name),className:s})}var f=e.i(36845),v=e.i(53925);function b(e){let{open:a,onOpenChange:r,wsUrl:l,apiBase:s,agent:i}=e;return(0,t.jsx)(v.ResourceImportDialog,{open:a,onOpenChange:r,title:"导入 MCP zip",description:"选择一个 zip 文件并导入到 mcp-runtime。",uploadUrl:(0,f.buildMcpRuntimeImportUrl)(l,s,i),resetKey:i})}var x=e.i(68499),h=e.i(72064),g=e.i(56708),y=e.i(62427);let w=[{value:"basic",label:"本地MCP"},{value:"installed",label:"远程MCP"}];function j(){let e=(0,r.useAppStore)(e=>e.wsUrl),f=(0,r.useAppStore)(e=>e.apiBase),v=(0,r.useAppStore)(e=>e.agentConfig),j=(0,r.useAppStore)(e=>e.setAgentConfig),{currentAgent:C,loadAgentConfig:N}=(0,l.useSession)(),k=(0,i.usePersistAgentConfigField)("mcpServers"),R=v.mcpServers,T=(0,a.useMemo)(()=>[...R].sort().join("\0"),[R]),[S,M]=(0,a.useState)([]),[E,A]=(0,a.useState)([]),[O,D]=(0,a.useState)(!1),[P,U]=(0,a.useState)(!1),[z,B]=(0,a.useState)("basic"),[L,I]=(0,a.useState)(!1),[_,F]=(0,a.useState)(!1),[V,H]=(0,a.useState)(""),[J,K]=(0,a.useState)(!1);(0,a.useEffect)(()=>{N()},[N]);let W=(0,a.useCallback)(async(e,t)=>{U(!0);try{await k(e,{silent:t})}finally{U(!1)}},[k]),q=(0,a.useCallback)(async()=>{M([]),D(!0);try{var t;let a=null!=(t=(await (0,y.listMcpServers)(e,f,C())).servers)?t:[];M(a.map(e=>{var t,a,r;return{...e,id:e.name,label:e.name+(e.disabled?"(已禁用)":""),description:null!=(a=null!=(t=e.description)?t:e.source)?a:"",source:null!=(r=e.source)?r:"",installed:!!e.installed}}))}catch(e){M([]),s.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{D(!1)}},[e,f,C]),Y=(0,a.useCallback)(async t=>{var a;let r=S.find(e=>e.id===t),l=null!=(a=null==r?void 0:r.source)?a:"";if("runtime"!==l&&"remote"!==l)return void s.appToast.error("基础MCP不可删除");if(await (0,x.confirmAlertDialog)({title:"确认删除 MCP?",description:"服务器名:".concat(t),confirmText:"删除",cancelText:"取消"}))try{if("remote"===l){let a=await (0,y.loadRemoteMcpJson)(e,f,C()),r={};try{r=JSON.parse(String(a.content||"{}"))}catch(e){r={mcpServers:{}}}(!r.mcpServers||Array.isArray(r.mcpServers)||"object"!=typeof r.mcpServers)&&(r.mcpServers={}),delete r.mcpServers[t],await (0,y.saveRemoteMcpJson)(e,f,C(),JSON.stringify(r,null,2))}else await (0,y.deleteRuntimeMcp)(e,f,C(),t);let a=R.filter(e=>e!==t);A(e=>e.filter(e=>e!==t)),j({...v,mcpServers:a}),await W(a,!0),await q()}catch(e){s.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[S,e,f,C,R,v,j,W,q]);(0,a.useEffect)(()=>{("basic"===z||"installed"===z)&&q()},[z,q]),(0,a.useEffect)(()=>{("basic"===z||"installed"===z)&&A([...R])},[z,R,T]);let X=(0,a.useCallback)(async e=>{let t=[...new Set(e)].sort();j({...v,mcpServers:t}),await W(t,!0)},[v,j,W]),G=(0,a.useCallback)(async(e,t)=>{let a=t?[...new Set([...E,e])]:E.filter(t=>t!==e);A(a);try{await X(a)}catch(e){A(E),s.appToast.error("切换启用状态失败: ".concat(e))}},[E,X]),Q=(0,a.useMemo)(()=>S.filter(e=>"remote"!==e.source).slice().sort((e,t)=>e.id.localeCompare(t.id)),[S]),Z=(0,a.useMemo)(()=>S.filter(e=>"remote"===e.source).slice().sort((e,t)=>{let a=+!E.includes(e.id),r=+!E.includes(t.id);return a!==r?a-r:e.id.localeCompare(t.id)}).map(e=>({...e,name:e.id,label:e.label,description:e.description||"",installed:!0,source:e.source,disabled:!E.includes(e.id)})),[S,E]),$=(0,a.useCallback)(t=>{window.open((0,y.exportRuntimeMcpUrl)(e,f,C(),t),"_blank","noopener")},[e,f,C]),ee=(0,a.useCallback)(async(e,t)=>{let a=t?[...new Set([...E,e])]:E.filter(t=>t!==e);A(a);try{await X(a)}catch(e){A(E),s.appToast.error("切换启用状态失败: ".concat(e))}},[E,X]),et=(0,a.useCallback)(()=>{F(!0),H(""),get(buildRemoteMcpJsonUrl(e,f,C())).then(e=>{H("string"==typeof e.content?e.content:"")}).catch(e=>{s.appToast.error("加载 mcp.json 失败:".concat(e instanceof Error?e.message:String(e))),F(!1)})},[e,f,C]),ea=(0,a.useCallback)(async()=>{K(!0);try{await post(buildRemoteMcpJsonUrl(e,f,C()),{content:V}),s.appToast.success("已保存全局 mcp.json。"),F(!1)}catch(e){s.appToast.error("保存 mcp.json 失败:".concat(e instanceof Error?e.message:String(e)))}finally{K(!1)}},[e,f,C,V]),er=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.label},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"w-14 w-[112px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[112px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(u.AccentSwitch,{checked:E.includes(e.id),disabled:P,onCheckedChange:t=>{G(e.id,t)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base text-[var(--ds-muted)]",cellClassName:"w-[128px]",render:e=>{var a;let r=null!=(a=e.source)?a:"",l="runtime"===r,s="runtime"===r||"remote"===r;return(0,t.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,t.jsx)(m.IconTooltipButton,{icon:"Download",label:l?"导出":"仅 runtime MCP 支持导出",ariaLabel:"导出 ".concat(e.label),disabled:P||!l,onClick:()=>$(e.id)}),(0,t.jsx)(m.IconTooltipButton,{icon:"Trash2",label:s?"删除":"基础MCP不可删除",tone:"danger",ariaLabel:"删除 ".concat(e.label),disabled:P||!s,onClick:()=>{Y(e.id)},iconClassName:"text-red-500"})]})}}];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g.ManageChromeHeaderActions,{children:(0,t.jsxs)("div",{className:"flex flex-wrap items-center",children:[(0,t.jsxs)(d.Button,{type:"button",variant:"plain-outline",size:"lg",onClick:et,className:"mr-[12px]",children:[(0,t.jsx)(h.default,{name:"Edit",size:16,className:"align-middle"}),"编辑全局MCP"]}),(0,t.jsxs)(d.Button,{id:"btnAgentImportMcp",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>I(!0),children:[(0,t.jsx)(h.default,{name:"Import",size:16,className:"align-middle"}),"导入MCP"]})]})}),(0,t.jsxs)(n.AppTabs,{tabs:w,value:z,listVariant:"line",onChange:e=>B(e),children:[(0,t.jsx)(n.AppTabsPanel,{value:"basic",children:(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,t.jsx)("div",{className:"min-h-0",children:O?(0,t.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsx)(c.AppTable,{rows:Q,columns:er,getRowKey:e=>e.id})})})}),(0,t.jsx)(n.AppTabsPanel,{value:"installed",children:(0,t.jsx)(p,{items:Z,saveBusy:P,onToggleStatus:ee})})]}),(0,t.jsx)(b,{open:L,onOpenChange:e=>{I(e),e||q()},wsUrl:e,apiBase:f,agent:C()}),(0,t.jsx)(o.AppDialog,{open:_,onOpenChange:F,title:"编辑全局MCP",width:"max-w-4xl",minHeight:"420px",footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(d.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:J,onClick:()=>F(!1),children:"取消"}),(0,t.jsx)(d.Button,{type:"button",size:"lg",disabled:J,onClick:()=>void ea(),children:"保存"})]}),children:(0,t.jsx)("textarea",{className:"focus-visible:ring-[var(--ds-accent)]/30 min-h-[320px] w-full resize-y rounded-md border border-[var(--ds-border)] bg-[var(--ds-bg)] p-3 text-base leading-6 text-[var(--ds-text)] outline-none focus-visible:ring-2",spellCheck:!1,value:V,onChange:e=>H(e.target.value)})})]})}}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>a]);var r=e.i(18050),t=e.i(75157);function a(e){let{className:a,type:s="text",size:l="default",...o}=e;return(0,r.jsx)("input",{type:s,"data-slot":"input","data-size":l,className:(0,t.cn)("h-8 w-full appearance-none rounded-md border border-solid border-border bg-transparent px-3 text-base outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none] data-[size=default]:h-8 data-[size=lg]:h-10 data-[size=sm]:h-7",a),...o})}},92715,85413,e=>{"use strict";e.s(["AppTable",()=>b],92715);var r=e.i(18050);e.s(["Empty",()=>s],85413);var t=e.i(75157),a=e.i(72064);function s(e){let{text:s="暂无数据",className:l}=e;return(0,r.jsxs)("div",{className:(0,t.cn)("flex min-h-[180px] w-full flex-col items-center justify-center gap-2 py-4 text-base text-[var(--ds-muted)]",l),role:"status","aria-live":"polite",children:[(0,r.jsx)(a.default,{name:"NoData",size:80,color:"var(--ds-muted)",className:"opacity-90"}),(0,r.jsx)("span",{children:s})]})}var l=e.i(71645);let o=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("div",{className:"relative w-full overflow-auto",children:(0,r.jsx)("table",{ref:a,className:(0,t.cn)("w-full caption-bottom border-collapse text-sm",s),...l})})});o.displayName="Table";let i=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("thead",{ref:a,className:(0,t.cn)("[&_tr]:table [&_tr]:w-full [&_tr]:table-fixed [&_tr]:border-b",s),...l})});i.displayName="TableHeader";let d=l.forwardRef((e,a)=>{let{className:s,viewportFit:o=!0,viewportReserveBottom:i=16,viewportPaginationReserve:d=0,style:n,...c}=e,u=l.useRef(null),b=l.useCallback(e=>{u.current=e,"function"==typeof a?a(e):a&&(a.current=e)},[a]),[v,x]=l.useState(void 0);return l.useLayoutEffect(()=>{var e,r;if(!o)return void x(void 0);let t=()=>{var e,r;let t=u.current;if(!t)return;let a=t.getBoundingClientRect().top;x(Math.max(80,Math.floor((null!=(r=null==(e=window.visualViewport)?void 0:e.height)?r:window.innerHeight)-a-(i+d))))};t();let a=new ResizeObserver(()=>{t()});try{a.observe(document.body)}catch(e){}return window.addEventListener("resize",t),null==(e=window.visualViewport)||e.addEventListener("resize",t),null==(r=window.visualViewport)||r.addEventListener("scroll",t),window.addEventListener("scroll",t,!0),()=>{var e,r;a.disconnect(),window.removeEventListener("resize",t),null==(e=window.visualViewport)||e.removeEventListener("resize",t),null==(r=window.visualViewport)||r.removeEventListener("scroll",t),window.removeEventListener("scroll",t,!0)}},[o,i,d]),(0,r.jsx)("tbody",{ref:b,className:(0,t.cn)("block overflow-y-auto [&_tr:last-child]:border-b-0 [&_tr:last-child_td]:border-b-0 [&_tr]:table [&_tr]:w-full [&_tr]:table-fixed",s),style:o&&void 0!==v?{...n,maxHeight:v}:n,...c})});d.displayName="TableBody";let n=l.forwardRef((e,a)=>{let{className:s,hoverable:l=!0,...o}=e;return(0,r.jsx)("tr",{ref:a,className:(0,t.cn)("border-b transition-colors [&>td]:transition-colors data-[state=selected]:[&>td]:!bg-[var(--ds-item-active)]",l&&"group/table-row",s),...o})});n.displayName="TableRow";let c=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("th",{ref:a,className:(0,t.cn)("h-10 border-b border-[var(--border-subtle)] bg-[var(--surface-2)] px-3 text-left align-middle text-[14px] font-medium !text-[var(--ds-text)] text-muted-foreground",s),...l})});c.displayName="TableHead";let u=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("td",{ref:a,className:(0,t.cn)("border-x-0 border-b border-t-0 border-solid border-[var(--border-subtle)] p-3 align-middle text-base transition-colors group-has-[td:hover]/table-row:!bg-[var(--ds-item-hover)]",s),...l})});function b(e){let{rows:a,columns:l,getRowKey:b,className:v,rowClassName:x,headerRowClassName:m,emptyText:f,emptyNode:h,bodyProps:p}=e;return(0,r.jsx)("div",{className:(0,t.cn)("overflow-hidden border border-[var(--ds-border)]",v),children:(0,r.jsxs)(o,{children:[(0,r.jsx)(i,{children:(0,r.jsx)(n,{className:(0,t.cn)("bg-[var(--ds-main-tint)] hover:bg-[var(--ds-main-tint)]",m),children:l.map(e=>(0,r.jsx)(c,{className:e.headerClassName,children:e.title},e.key))})}),(0,r.jsx)(d,{...p,children:a.length?a.map(e=>(0,r.jsx)(n,{className:"function"==typeof x?x(e):x,children:l.map(t=>(0,r.jsx)(u,{className:t.cellClassName,children:t.render(e)},t.key))},b(e))):(0,r.jsx)(n,{hoverable:!1,children:(0,r.jsx)(u,{colSpan:l.length,className:"py-6",children:null!=h?h:(0,r.jsx)(s,{text:f})})})})]})})}u.displayName="TableCell"},94197,e=>{"use strict";e.s(["IconTooltipButton",()=>i]);var r=e.i(18050),t=e.i(72064),a=e.i(19455),s=e.i(46798),l=e.i(75157);let o={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function i(e){let{icon:i,label:d,ariaLabel:n,tone:c="muted",disabled:u,className:b,iconClassName:v,onClick:x}=e;return(0,r.jsx)(s.TooltipProvider,{delayDuration:150,children:(0,r.jsxs)(s.Tooltip,{children:[(0,r.jsx)(s.TooltipTrigger,{asChild:!0,children:(0,r.jsx)(a.Button,{type:"button",variant:"plain",size:"icon",className:(0,l.cn)("h-8 w-8",o[c],b),disabled:u,"aria-label":null!=n?n:d,onClick:x,children:(0,r.jsx)(t.default,{name:i,size:16,className:v})})}),(0,r.jsx)(s.TooltipContent,{side:"bottom",align:"center",children:d})]})})}},56708,e=>{"use strict";e.s(["ManageChromeHeaderActions",()=>i,"ManageFeatureChrome",()=>o]);var r=e.i(18050),t=e.i(71645),a=e.i(74080),s=e.i(72064);let l=(0,t.createContext)(null);function o(e){let{title:a,description:o,children:i,showTitle:d=!0,headerIcon:n}=e,[c,u]=(0,t.useState)(null);return(0,r.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,r.jsxs)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-[var(--space-4)] pb-[var(--space-4)]",children:[d?(0,r.jsxs)("div",{className:"manage-page-title-block flex items-center",children:[n&&(0,r.jsx)("div",{className:"mr-3 rounded-md bg-[var(--green-light)] px-4 py-3",children:(0,r.jsx)(s.default,{name:n,size:24,className:"text-[var(--green-dark)]",strokeWidth:1.5})}),(0,r.jsxs)("div",{className:"pt-3",children:[(0,r.jsx)("h1",{className:"manage-page-title",children:a}),(0,r.jsx)("p",{className:"manage-page-desc",children:o})]})]}):null,(0,r.jsx)("div",{ref:u,className:"manage-page-header-actions self-start"})]}),(0,r.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col",children:(0,r.jsx)(l.Provider,{value:c,children:i})})]})}function i(e){let{children:r}=e,s=(0,t.useContext)(l);return(0,t.useSyncExternalStore)(()=>()=>{},()=>!0,()=>!1)&&s?(0,a.createPortal)(r,s):null}},24687,e=>{"use strict";e.s(["Textarea",()=>a]);var r=e.i(18050),t=e.i(75157);function a(e){let{className:a,...s}=e;return(0,r.jsx)("textarea",{"data-slot":"textarea",className:(0,t.cn)("flex min-h-20 w-full rounded-md border border-solid border-border bg-transparent px-3 py-2 text-sm outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none]",a),...s})}}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>d]);var o=e.i(18050),r=e.i(75157);function d(e){let{className:d,type:s="text",size:a="default",...i}=e;return(0,o.jsx)("input",{type:s,"data-slot":"input","data-size":a,className:(0,r.cn)("h-8 w-full appearance-none rounded-md border border-solid border-border bg-transparent px-3 text-base outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none] data-[size=default]:h-8 data-[size=lg]:h-10 data-[size=sm]:h-7",d),...i})}},24687,e=>{"use strict";e.s(["Textarea",()=>d]);var o=e.i(18050),r=e.i(75157);function d(e){let{className:d,...s}=e;return(0,o.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("flex min-h-20 w-full rounded-md border border-solid border-border bg-transparent px-3 py-2 text-sm outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none]",d),...s})}}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>l]);var t=e.i(18050),a=e.i(75157);function l(e){let{className:l,type:s="text",size:r="default",...n}=e;return(0,t.jsx)("input",{type:s,"data-slot":"input","data-size":r,className:(0,a.cn)("h-8 w-full appearance-none rounded-md border border-solid border-border bg-transparent px-3 text-base outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none] data-[size=default]:h-8 data-[size=lg]:h-10 data-[size=sm]:h-7",l),...n})}},24687,e=>{"use strict";e.s(["Textarea",()=>l]);var t=e.i(18050),a=e.i(75157);function l(e){let{className:l,...s}=e;return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,a.cn)("flex min-h-20 w-full rounded-md border border-solid border-border bg-transparent px-3 py-2 text-sm outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none]",l),...s})}},53925,e=>{"use strict";e.s(["ResourceImportDialog",()=>u],53925);var t=e.i(18050),a=e.i(71645),l=e.i(72064),s=e.i(75157),r=e.i(19455);function n(e){return e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB")}function i(e){let{uploadUrl:i,accept:o,disabled:d=!1,multiple:c=!1,maxFileSize:u=0x3200000,autoUpload:m=!1,method:p="POST",transport:x="xhr",fieldName:f="file",headers:b,extraFormData:h,autoRetryTimes:g=0,autoRetryDelayMs:v=800,selectionOnly:y=!1,className:C,emptyTitle:j="点击或拖拽文件到此处",emptyHint:w="支持上传文件",onFilesChange:N,onUploadSuccess:k,onUploadError:S,onValidationError:T}=e,A=a.useId(),R=a.useRef(null),E=a.useRef(new Map),M=a.useRef(new Map),P=a.useRef([]),[U,I]=a.useState(!1),[z,B]=a.useState([]),O=a.useMemo(()=>o?o.split(",").map(e=>e.trim().toLowerCase()).filter(Boolean):[],[o]);a.useEffect(()=>{P.current=z,null==N||N(z)},[z,N]),a.useEffect(()=>()=>{for(let e of E.current.values())e.abort();for(let e of M.current.values())e.abort();for(let e of P.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl)},[]);let D=a.useCallback((e,t)=>{B(a=>a.map(a=>a.id===e?{...a,...t}:a))},[]),L=a.useCallback(async(e,t)=>{let a=P.current.find(t=>t.id===e);if(!a||d)return;D(e,{status:t>0?"retrying":"uploading",progress:0,error:"",retryCount:t});let l=new FormData;if(h)for(let[e,t]of Object.entries(h))l.append(e,t);l.append(f,a.file);try{let t="";if("fetch"===x){let a=new AbortController;M.current.set(e,a);let s=await fetch(i,{method:p,headers:b,body:l,signal:a.signal}),r=await s.text();try{t=r?JSON.parse(r):""}catch(e){t=r}if(!s.ok)throw Error("上传失败:".concat(s.status," ").concat(s.statusText))}else t=await new Promise((t,a)=>{let s=new XMLHttpRequest;if(E.current.set(e,s),s.open(p,i,!0),b)for(let[e,t]of Object.entries(b))s.setRequestHeader(e,t);s.upload.onprogress=t=>{if(!t.lengthComputable)return;let a=Math.min(100,Math.round(t.loaded/t.total*100));D(e,{progress:a})},s.onerror=()=>a(Error("网络异常,上传失败")),s.onabort=()=>a(Error("__ABORTED__")),s.onload=()=>{s.status>=200&&s.status<300?t(function(e){let t=e.responseText||"";try{return JSON.parse(t)}catch(e){return t}}(s)):a(Error("上传失败:".concat(s.status," ").concat(s.statusText)))},s.send(l)});D(e,{status:"success",progress:100,error:""});let a=P.current.find(t=>t.id===e);a&&(null==k||k(a,t))}catch(s){let a=s instanceof Error?s.message:String(s);if("__ABORTED__"===a)return void D(e,{status:"selected",progress:0,error:""});if(t<g){D(e,{status:"retrying",error:"重试中(".concat(t+1,"/").concat(g,")")}),await new Promise(e=>window.setTimeout(e,v)),await L(e,t+1);return}D(e,{status:"error",error:a});let l=P.current.find(t=>t.id===e);l&&(null==S||S(l,a))}finally{E.current.delete(e),M.current.delete(e)}},[v,g,d,h,f,b,p,S,k,x,D,i]),_=a.useCallback(e=>{L(e,0)},[L]),F=a.useCallback(e=>{var t,a;null==(t=E.current.get(e))||t.abort(),null==(a=M.current.get(e))||a.abort()},[]),K=a.useCallback(()=>{for(let e of P.current)("selected"===e.status||"error"===e.status)&&_(e.id)},[_]),V=a.useCallback(e=>{if(d||!e.length)return;let t=new Set(P.current.map(e=>"".concat(e.file.name,"::").concat(e.file.size))),a=[];for(let l of e){let e="".concat(l.name,"::").concat(l.size);if(!t.has(e)){if(!function(e,t){if(!t.length)return!0;let a=e.name.toLowerCase(),l=(e.type||"").toLowerCase();return t.some(e=>e.startsWith(".")?a.endsWith(e):e.endsWith("/*")?l.startsWith("".concat(e.slice(0,-1))):l===e)}(l,O)){null==T||T("文件类型不支持:".concat(l.name));continue}if(l.size>u){null==T||T("文件过大(最大 ".concat(n(u),"):").concat(l.name));continue}t.add(e),a.push({id:"".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,8)),file:l,status:"selected",progress:0,error:"",retryCount:0,previewUrl:l.type.startsWith("image/")?URL.createObjectURL(l):""})}}if(!a.length)return;let l=c?[...P.current,...a]:[a[a.length-1]];if(!c)for(let e of P.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl);if(B(l),m&&!y)for(let e of a)_(e.id)},[O,m,d,u,c,T,y,_]),H=a.useCallback(e=>{let t=e.target.files;t&&(V(Array.from(t)),e.target.value="")},[V]),J=a.useCallback(e=>{var t;e.preventDefault(),e.stopPropagation(),I(!1),d||V(Array.from(null!=(t=e.dataTransfer.files)?t:[]))},[V,d]);return(0,t.jsxs)("div",{className:(0,s.cn)("flex min-h-0 w-full flex-col gap-3",C),children:[(0,t.jsx)("input",{ref:R,id:A,type:"file",hidden:!0,accept:o,multiple:c,disabled:d,onChange:H}),(0,t.jsxs)("label",{htmlFor:A,onDragOver:e=>{e.preventDefault(),d||I(!0)},onDragLeave:e=>{e.preventDefault(),I(!1)},onDrop:J,className:(0,s.cn)("flex min-h-[124px] cursor-pointer flex-col items-center justify-center gap-1 rounded-lg border border-dashed border-[var(--ds-border)] px-4 py-6 text-center transition-colors hover:border-[var(--ds-border-hover)] hover:bg-[var(--ds-main-tint)]",U&&"bg-[var(--ds-accent)]/5 border-[var(--ds-accent)]",d&&"cursor-not-allowed opacity-60"),children:[(0,t.jsx)(l.default,{name:"Upload",size:20,className:"text-[var(--ds-muted)]"}),(0,t.jsx)("div",{className:"text-base text-[var(--ds-text)]",children:j}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:w})]}),z.length?(0,t.jsx)("div",{className:"space-y-2",children:z.map(e=>(0,t.jsx)("div",{className:"rounded-md border border-[var(--ds-border)] p-2.5",children:(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-base text-[var(--ds-text)]",children:e.file.name}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:n(e.file.size)}),e.previewUrl?(0,t.jsx)("img",{src:e.previewUrl,alt:e.file.name,className:"mt-2 h-14 w-14 rounded object-cover"}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsx)("div",{className:"mt-2 h-1.5 w-full overflow-hidden rounded bg-[var(--ds-main-tint)]",children:(0,t.jsx)("div",{className:"h-full bg-[var(--ds-accent)] transition-all",style:{width:"".concat(e.progress,"%")}})}):null,"error"===e.status?(0,t.jsx)("div",{className:"mt-1 text-sm text-[var(--ds-danger)]",children:e.error||"上传失败"}):null]}),y?null:(0,t.jsxs)("div",{className:"flex items-center gap-1",children:["success"===e.status?(0,t.jsx)(l.default,{name:"CheckCircle2",size:16,className:"text-[var(--ds-accent)]"}):null,"selected"===e.status||"error"===e.status?(0,t.jsxs)(r.Button,{type:"button",size:"sm",variant:"outline",disabled:d,onClick:()=>_(e.id),children:["error"===e.status?(0,t.jsx)(l.default,{name:"RefreshCw",size:14,className:"mr-1"}):null,"error"===e.status?"重试":"上传"]}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsxs)(r.Button,{type:"button",size:"sm",variant:"outline",onClick:()=>F(e.id),children:[(0,t.jsx)(l.default,{name:"XCircle",size:14,className:"mr-1"}),"取消"]}):null]})]})},e.id))}):null,!y&&!m&&z.some(e=>"selected"===e.status||"error"===e.status)?(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(r.Button,{type:"button",size:"sm",onClick:K,disabled:d,children:"上传"})}):null]})}var o=e.i(76639),d=e.i(13354),c=e.i(29250);function u(e){let{open:l,onOpenChange:s,title:n,description:u,uploadUrl:m,resetKey:p}=e,[x,f]=(0,a.useState)(!1),[b,h]=(0,a.useState)(null),g=(0,a.useCallback)(()=>{s(!1),h(null)},[s]),v=(0,a.useCallback)(async()=>{if(!b)return void d.appToast.info("请先选择 zip 文件");let e=new FormData;e.append("file",b),f(!0);try{let t=await (0,c.bridgeFetch)(m,{method:"POST",body:e}),a=Number(t.imported||0),l=Number(t.overwritten||0),s=Array.isArray(t.rejected)?t.rejected.length:0;d.appToast.success("导入完成:导入 ".concat(a,",覆盖 ").concat(l)+(s>0?",拒绝 ".concat(s):"")),g()}catch(e){d.appToast.error("导入失败:".concat(e instanceof Error?e.message:String(e)))}finally{f(!1)}},[g,b,m]);return(0,t.jsx)(o.Dialog,{open:l,onOpenChange:e=>{s(e),e||h(null)},children:(0,t.jsxs)(o.DialogContent,{className:"flex min-h-[320px] max-w-[560px] flex-col",children:[(0,t.jsxs)(o.DialogHeader,{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(o.DialogTitle,{children:n}),(0,t.jsx)(o.DialogDescription,{children:u})]}),(0,t.jsx)(o.DialogClose,{className:"sidebar-icon-btn","aria-label":"关闭",onClick:g,children:"✕"})]}),(0,t.jsxs)("div",{className:"m-3 flex flex-1 flex-col gap-3",children:[(0,t.jsx)(i,{uploadUrl:m,accept:".zip,application/zip",maxFileSize:0x3200000,multiple:!1,disabled:x,selectionOnly:!0,emptyTitle:"点击或拖拽 zip 文件到此处",emptyHint:"支持 .zip 格式,最大 50MB",onFilesChange:e=>{var t,a;h(null!=(a=null==(t=e[0])?void 0:t.file)?a:null)},onValidationError:e=>{d.appToast.info(e)}},"".concat(l?"open":"closed","-").concat(null!=p?p:m)),(0,t.jsxs)("div",{className:"mt-auto flex justify-end pt-2",children:[(0,t.jsx)(r.Button,{className:"mr-[12px]",type:"button",variant:"plain-outline",size:"lg",onClick:g,children:"取消"}),(0,t.jsx)(r.Button,{type:"button",size:"lg",variant:"default",disabled:x||null==b,onClick:()=>void v(),children:x?"导入中…":"确定"})]})]})]})})}},94197,e=>{"use strict";e.s(["IconTooltipButton",()=>i]);var t=e.i(18050),a=e.i(72064),l=e.i(19455),s=e.i(46798),r=e.i(75157);let n={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function i(e){let{icon:i,label:o,ariaLabel:d,tone:c="muted",disabled:u,className:m,iconClassName:p,onClick:x}=e;return(0,t.jsx)(s.TooltipProvider,{delayDuration:150,children:(0,t.jsxs)(s.Tooltip,{children:[(0,t.jsx)(s.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(l.Button,{type:"button",variant:"plain",size:"icon",className:(0,r.cn)("h-8 w-8",n[c],m),disabled:u,"aria-label":null!=d?d:o,onClick:x,children:(0,t.jsx)(a.default,{name:i,size:16,className:p})})}),(0,t.jsx)(s.TooltipContent,{side:"bottom",align:"center",children:o})]})})}},56708,e=>{"use strict";e.s(["ManageChromeHeaderActions",()=>i,"ManageFeatureChrome",()=>n]);var t=e.i(18050),a=e.i(71645),l=e.i(74080),s=e.i(72064);let r=(0,a.createContext)(null);function n(e){let{title:l,description:n,children:i,showTitle:o=!0,headerIcon:d}=e,[c,u]=(0,a.useState)(null);return(0,t.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,t.jsxs)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-[var(--space-4)] pb-[var(--space-4)]",children:[o?(0,t.jsxs)("div",{className:"manage-page-title-block flex items-center",children:[d&&(0,t.jsx)("div",{className:"mr-3 rounded-md bg-[var(--green-light)] px-4 py-3",children:(0,t.jsx)(s.default,{name:d,size:24,className:"text-[var(--green-dark)]",strokeWidth:1.5})}),(0,t.jsxs)("div",{className:"pt-3",children:[(0,t.jsx)("h1",{className:"manage-page-title",children:l}),(0,t.jsx)("p",{className:"manage-page-desc",children:n})]})]}):null,(0,t.jsx)("div",{ref:u,className:"manage-page-header-actions self-start"})]}),(0,t.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col",children:(0,t.jsx)(r.Provider,{value:c,children:i})})]})}function i(e){let{children:t}=e,s=(0,a.useContext)(r);return(0,a.useSyncExternalStore)(()=>()=>{},()=>!0,()=>!1)&&s?(0,l.createPortal)(t,s):null}},92715,85413,e=>{"use strict";e.s(["AppTable",()=>m],92715);var t=e.i(18050);e.s(["Empty",()=>s],85413);var a=e.i(75157),l=e.i(72064);function s(e){let{text:s="暂无数据",className:r}=e;return(0,t.jsxs)("div",{className:(0,a.cn)("flex min-h-[180px] w-full flex-col items-center justify-center gap-2 py-4 text-base text-[var(--ds-muted)]",r),role:"status","aria-live":"polite",children:[(0,t.jsx)(l.default,{name:"NoData",size:80,color:"var(--ds-muted)",className:"opacity-90"}),(0,t.jsx)("span",{children:s})]})}var r=e.i(71645);let n=r.forwardRef((e,l)=>{let{className:s,...r}=e;return(0,t.jsx)("div",{className:"relative w-full overflow-auto",children:(0,t.jsx)("table",{ref:l,className:(0,a.cn)("w-full caption-bottom border-collapse text-sm",s),...r})})});n.displayName="Table";let i=r.forwardRef((e,l)=>{let{className:s,...r}=e;return(0,t.jsx)("thead",{ref:l,className:(0,a.cn)("[&_tr]:table [&_tr]:w-full [&_tr]:table-fixed [&_tr]:border-b",s),...r})});i.displayName="TableHeader";let o=r.forwardRef((e,l)=>{let{className:s,viewportFit:n=!0,viewportReserveBottom:i=16,viewportPaginationReserve:o=0,style:d,...c}=e,u=r.useRef(null),m=r.useCallback(e=>{u.current=e,"function"==typeof l?l(e):l&&(l.current=e)},[l]),[p,x]=r.useState(void 0);return r.useLayoutEffect(()=>{var e,t;if(!n)return void x(void 0);let a=()=>{var e,t;let a=u.current;if(!a)return;let l=a.getBoundingClientRect().top;x(Math.max(80,Math.floor((null!=(t=null==(e=window.visualViewport)?void 0:e.height)?t:window.innerHeight)-l-(i+o))))};a();let l=new ResizeObserver(()=>{a()});try{l.observe(document.body)}catch(e){}return window.addEventListener("resize",a),null==(e=window.visualViewport)||e.addEventListener("resize",a),null==(t=window.visualViewport)||t.addEventListener("scroll",a),window.addEventListener("scroll",a,!0),()=>{var e,t;l.disconnect(),window.removeEventListener("resize",a),null==(e=window.visualViewport)||e.removeEventListener("resize",a),null==(t=window.visualViewport)||t.removeEventListener("scroll",a),window.removeEventListener("scroll",a,!0)}},[n,i,o]),(0,t.jsx)("tbody",{ref:m,className:(0,a.cn)("block overflow-y-auto [&_tr:last-child]:border-b-0 [&_tr:last-child_td]:border-b-0 [&_tr]:table [&_tr]:w-full [&_tr]:table-fixed",s),style:n&&void 0!==p?{...d,maxHeight:p}:d,...c})});o.displayName="TableBody";let d=r.forwardRef((e,l)=>{let{className:s,hoverable:r=!0,...n}=e;return(0,t.jsx)("tr",{ref:l,className:(0,a.cn)("border-b transition-colors [&>td]:transition-colors data-[state=selected]:[&>td]:!bg-[var(--ds-item-active)]",r&&"group/table-row",s),...n})});d.displayName="TableRow";let c=r.forwardRef((e,l)=>{let{className:s,...r}=e;return(0,t.jsx)("th",{ref:l,className:(0,a.cn)("h-10 border-b border-[var(--border-subtle)] bg-[var(--surface-2)] px-3 text-left align-middle text-[14px] font-medium !text-[var(--ds-text)] text-muted-foreground",s),...r})});c.displayName="TableHead";let u=r.forwardRef((e,l)=>{let{className:s,...r}=e;return(0,t.jsx)("td",{ref:l,className:(0,a.cn)("border-x-0 border-b border-t-0 border-solid border-[var(--border-subtle)] p-3 align-middle text-base transition-colors group-has-[td:hover]/table-row:!bg-[var(--ds-item-hover)]",s),...r})});function m(e){let{rows:l,columns:r,getRowKey:m,className:p,rowClassName:x,headerRowClassName:f,emptyText:b,emptyNode:h,bodyProps:g}=e;return(0,t.jsx)("div",{className:(0,a.cn)("overflow-hidden border border-[var(--ds-border)]",p),children:(0,t.jsxs)(n,{children:[(0,t.jsx)(i,{children:(0,t.jsx)(d,{className:(0,a.cn)("bg-[var(--ds-main-tint)] hover:bg-[var(--ds-main-tint)]",f),children:r.map(e=>(0,t.jsx)(c,{className:e.headerClassName,children:e.title},e.key))})}),(0,t.jsx)(o,{...g,children:l.length?l.map(e=>(0,t.jsx)(d,{className:"function"==typeof x?x(e):x,children:r.map(a=>(0,t.jsx)(u,{className:a.cellClassName,children:a.render(e)},a.key))},m(e))):(0,t.jsx)(d,{hoverable:!1,children:(0,t.jsx)(u,{colSpan:r.length,className:"py-6",children:null!=h?h:(0,t.jsx)(s,{text:b})})})})]})})}u.displayName="TableCell"},62427,e=>{"use strict";e.s(["deleteRuntimeMcp",()=>c,"deleteRuntimeSkill",()=>h,"deleteRuntimeTool",()=>d,"exportRuntimeMcpUrl",()=>m,"exportRuntimeSkillUrl",()=>g,"exportRuntimeToolUrl",()=>u,"importRuntimeMcp",()=>x,"importRuntimeTool",()=>p,"installCloudSkill",()=>y,"listAgentTeams",()=>n,"listCloudSkillCatalog",()=>v,"listMcpServers",()=>l,"listRuntimeMcpPackages",()=>o,"listRuntimeTools",()=>i,"listSkills",()=>r,"listTools",()=>s,"loadRemoteMcpJson",()=>f,"saveRemoteMcpJson",()=>b]);var t=e.i(29250),a=e.i(36845);async function l(e,l,s){let r=await (0,t.get)((0,a.buildMcpServersListUrl)(e,l,s));return{servers:Array.isArray(r.servers)?r.servers:[]}}async function s(e,l,s){let r=await (0,t.get)((0,a.buildToolsListUrl)(e,l,s));return{tools:Array.isArray(r.tools)?r.tools:[]}}async function r(e,l,s){let r=await (0,t.get)((0,a.getSkillsList)(e,l,s));return{skills:Array.isArray(r.skills)?r.skills:[]}}async function n(e,l,s){let r=await (0,t.get)((0,a.buildAgentTeamsListUrl)(e,l,s));return{teamAgentTypes:Array.isArray(r.teamAgentTypes)?r.teamAgentTypes:[],agentTeams:Array.isArray(r.agentTeams)?r.agentTeams:[]}}async function i(e,l,s){let r=await (0,t.get)((0,a.buildToolsRuntimeFilesUrl)(e,l,s));return{runtimeToolsDir:"string"==typeof r.runtimeToolsDir?r.runtimeToolsDir:"",items:Array.isArray(r.items)?r.items.filter(e=>!!(e&&e.id)):[]}}async function o(e,l,s){let r=await (0,t.get)((0,a.buildMcpRuntimeFilesUrl)(e,l,s));return{mcpRuntimeDir:"string"==typeof r.mcpRuntimeDir?r.mcpRuntimeDir:"",items:Array.isArray(r.items)?r.items.filter(e=>!!(e&&e.id)):[]}}async function d(e,l,s,r){return(0,t.del)((0,a.buildToolsRuntimeDeleteUrl)(e,l,s,r))}async function c(e,l,s,r){return(0,t.del)((0,a.buildMcpRuntimeDeleteUrl)(e,l,s,r))}function u(e,t,l,s){return(0,a.buildToolsRuntimeExportUrl)(e,t,l,s)}function m(e,t,l,s){return(0,a.buildMcpRuntimeExportUrl)(e,t,l,s)}async function p(e,l,s,r){let n=new FormData;return n.append("file",r),(0,t.post)((0,a.buildToolsRuntimeImportUrl)(e,l,s),n,{type:"file"})}async function x(e,l,s,r){let n=new FormData;return n.append("file",r),(0,t.post)((0,a.buildMcpRuntimeImportUrl)(e,l,s),n,{type:"file"})}async function f(e,l,s){return(0,t.get)((0,a.buildRemoteMcpJsonUrl)(e,l,s))}async function b(e,l,s,r){await (0,t.post)((0,a.buildRemoteMcpJsonUrl)(e,l,s),{content:r})}async function h(e,l,s,r){return(0,t.del)((0,a.buildSkillsRuntimeDeleteUrl)(e,l,s,r))}function g(e,t,l,s){return(0,a.buildSkillsRuntimeExportUrl)(e,t,l,s)}async function v(e,l,s,r,n,i){let o=await (0,t.get)((0,a.buildCloudSkillCatalogUrl)(e,l,s,r,n,i));return{items:Array.isArray(o.items)?o.items:[],totalPages:Number(o.totalPages||0)}}async function y(e,l,s,r){await (0,t.post)((0,a.buildCloudSkillInstallUrl)(e,l,s),{id:r})}},94055,e=>{"use strict";e.s(["AccentSwitch",()=>z],94055);var t=e.i(18050);e.s(["Root",()=>E,"Thumb",()=>M],39606),e.s([],37751),e.i(37751),e.i(47167);var a=e.i(71645),l=e.i(94349),s=e.i(76477),r=e.i(26292),n=e.i(977),i=e.i(62372),o=e.i(17514),d=e.i(27601),c=e.i(19805),u=e.i(89879),m=e.i(91730),p=e.i(67805);let x=a.createContext(void 0),f=function(e){return e.disabled="data-disabled",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),b={valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},h={disabled:!1,...b},g=function(e){return e.checked="data-checked",e.unchecked="data-unchecked",e.disabled="data-disabled",e.readonly="data-readonly",e.required="data-required",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),v={valid:e=>null===e?null:e?{[f.valid]:""}:{[f.invalid]:""},checked:e=>e?{[g.checked]:""}:{[g.unchecked]:""}},y=a.createContext({invalid:void 0,name:void 0,validityData:{state:{badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},errors:[],error:"",value:"",initialValue:null},setValidityData:o.NOOP,disabled:void 0,touched:b.touched,setTouched:o.NOOP,dirty:b.dirty,setDirty:o.NOOP,filled:b.filled,setFilled:o.NOOP,focused:b.focused,setFocused:o.NOOP,validate:()=>null,validationMode:"onSubmit",validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:h,markedDirtyRef:{current:!1},registerFieldControl:o.NOOP,validation:{getValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},getInputValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},inputRef:{current:null},commit:async()=>{}}});function C(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],t=a.useContext(y);if(t.setValidityData===o.NOOP&&!e)throw Error((0,p.default)(28));return t}let j=a.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:o.NOOP,validationMode:"onSubmit",submitAttemptedRef:{current:!1}}),w=a.createContext({controlId:void 0,registerControlId:o.NOOP,labelId:void 0,setLabelId:o.NOOP,messageIds:[],setMessageIds:o.NOOP,getDescriptionProps:e=>e});function N(){return a.useContext(w)}var k=e.i(30628),S=e.i(29315),T=e.i(5963),A=e.i(3404),R=e.i(19904);let E=a.forwardRef(function(e,p){let{checked:f,className:b,defaultChecked:h,"aria-labelledby":g,form:y,id:w,inputRef:E,name:M,nativeButton:P=!1,onCheckedChange:U,readOnly:I=!1,required:z=!1,disabled:B=!1,render:O,uncheckedValue:D,value:L,style:_,...F}=e,{clearErrors:K}=a.useContext(j),{state:V,setTouched:H,setDirty:J,validityData:W,setFilled:Y,setFocused:q,shouldValidateOnChange:Z,validationMode:X,disabled:G,name:$,validation:Q}=C(),{labelId:ee}=N(),et=G||B,ea=null!=$?$:M,el=(0,s.useStableCallback)(U),es=a.useRef(null),er=(0,r.useMergedRefs)(es,E,Q.inputRef),en=a.useRef(null),ei=(0,u.useBaseUiId)(),eo=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{id:t,implicit:l=!1,controlRef:r}=e,{controlId:i,registerControlId:d}=N(),c=(0,u.useBaseUiId)(t),m=l?i:void 0,p=(0,k.useRefWithInit)(()=>Symbol("labelable-control")),x=a.useRef(!1),f=a.useRef(null!=t),b=(0,s.useStableCallback)(()=>{x.current&&d!==o.NOOP&&(x.current=!1,d(p.current,void 0))});return(0,n.useIsoLayoutEffect)(()=>{let e;if(d!==o.NOOP){if(l){let a=null==r?void 0:r.current;e=(0,S.isElement)(a)&&null!=a.closest("label")?null!=t?t:null:null!=m?m:c}else if(null!=t)f.current=!0,e=t;else{if(!f.current)return void b();e=c}if(void 0===e)return void b();x.current=!0,d(p.current,e)}},[t,r,m,d,l,c,p,b]),a.useEffect(()=>b,[b]),null!=i?i:c}({id:w,implicit:!1,controlRef:en}),ed=P?void 0:eo,[ec,eu]=(0,l.useControlled)({controlled:f,default:!!h,name:"Switch",state:"checked"});!function(e,t){let{enabled:l=!0,getValue:s,id:r,value:i}=t,{registerFieldControl:o}=C(),d=a.useRef(null);d.current||(d.current=Symbol()),(0,n.useIsoLayoutEffect)(()=>{let t=d.current;if(t&&l)return o(t,{controlRef:e,getValue:s,id:r,value:i}),()=>{o(t,void 0)}},[e,l,s,r,o,i])}(en,{id:ei,value:ec}),(0,n.useIsoLayoutEffect)(()=>{es.current&&Y(es.current.checked)},[es,Y]),(0,R.useValueChanged)(ec,()=>{K(ea),J(ec!==W.initialValue),Y(ec),Z()?Q.commit(ec):Q.commit(ec,!0)});let{getButtonProps:em,buttonRef:ep}=(0,m.useButton)({disabled:et,native:P}),ex=function(e,t,l){var s;let r=!(arguments.length>3)||void 0===arguments[3]||arguments[3],i=arguments.length>4?arguments[4]:void 0,[o,d]=a.useState(),c=(0,u.useBaseUiId)(i?"".concat(i,"-label"):void 0),m=null!=(s=null!=e?e:t)?s:o;return(0,n.useIsoLayoutEffect)(()=>{let a=e||t||!r?void 0:function(e,t){let a=function(e){if(!e)return;let t=e.parentElement;if(t&&"LABEL"===t.tagName)return t;let a=e.id;if(a){let t=e.nextElementSibling;if(t&&t.htmlFor===a)return t}let l=e.labels;return l&&l[0]}(e);if(a)return!a.id&&t&&(a.id=t),a.id||void 0}(l.current,c);o!==a&&d(a)}),m}(g,ee,es,!P,ed),ef=a.useMemo(()=>(0,c.mergeProps)({checked:ec,disabled:et,form:y,id:ed,name:ea,required:z,style:ea?i.visuallyHiddenInput:i.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:er,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(I)return void e.preventDefault();let t=e.currentTarget.checked,a=(0,T.createChangeEventDetails)(A.REASONS.none,e.nativeEvent);null==el||el(t,a),a.isCanceled||eu(t)},onFocus(){var e;null==(e=en.current)||e.focus()}},Q.getInputValidationProps,void 0!==L?{value:L}:o.EMPTY_OBJECT),[ec,et,y,er,ed,ea,el,I,z,eu,Q,L]),eb=a.useMemo(()=>({...V,checked:ec,disabled:et,readOnly:I,required:z}),[V,ec,et,I,z]),eh=(0,d.useRenderElement)("span",e,{state:eb,ref:[p,en,ep],props:[{id:P?eo:ei,role:"switch","aria-checked":ec,"aria-readonly":I||void 0,"aria-required":z||void 0,"aria-labelledby":ex,onFocus(){et||q(!0)},onBlur(){let e=es.current;e&&!et&&(H(!0),q(!1),"onBlur"===X&&Q.commit(e.checked))},onClick(e){var t;I||et||(e.preventDefault(),null==(t=es.current)||t.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey})))}},Q.getValidationProps,F,em],stateAttributesMapping:v});return(0,t.jsxs)(x.Provider,{value:eb,children:[eh,!ec&&ea&&void 0!==D&&(0,t.jsx)("input",{type:"hidden",form:y,name:ea,value:D}),(0,t.jsx)("input",{...ef,suppressHydrationWarning:!0})]})}),M=a.forwardRef(function(e,t){let{render:l,className:s,style:r,...n}=e,{state:i}=C(),o=function(){let e=a.useContext(x);if(void 0===e)throw Error((0,p.default)(63));return e}(),c={...i,...o};return(0,d.useRenderElement)("span",e,{state:c,ref:t,stateAttributesMapping:v,props:n})});var P=e.i(39606),P=P,U=e.i(75157);function I(e){let{className:a,thumbClassName:l,...s}=e;return(0,t.jsx)(P.Root,{"data-slot":"switch",className:(0,U.cn)("shadow-xs focus-visible:ring-ring/50 dark:data-[unchecked]:bg-input/80 peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent bg-input outline-none transition-colors focus-visible:border-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[checked]:bg-primary",a),...s,children:(0,t.jsx)(P.Thumb,{className:(0,U.cn)("pointer-events-none block size-4 rounded-full bg-background ring-0 transition-transform will-change-transform data-[checked]:translate-x-4 data-[unchecked]:translate-x-0.5 data-[checked]:bg-primary-foreground",l)})})}function z(e){let{className:a,thumbClassName:l,...s}=e;return(0,t.jsx)(I,{className:(0,U.cn)("focus-visible:border-[var(--ds-accent)]/50 focus-visible:ring-[var(--ds-accent)]/35 data-[checked]:border-[var(--ds-accent)] data-[checked]:bg-[var(--ds-accent)]",a),thumbClassName:(0,U.cn)("data-[checked]:bg-white",l),...s})}},98083,e=>{"use strict";e.s(["AgentManageView",()=>u],98083);var t=e.i(18050),a=e.i(71645),l=e.i(19455),s=e.i(13354),r=e.i(75157),n=e.i(24687);function i(e){let{value:a,onChange:l,loading:s=!1,className:i}=e;return(0,t.jsx)("div",{className:(0,r.cn)("flex min-h-[200px] flex-col",i),children:s?(0,t.jsx)("div",{className:"tool-files-state py-4",children:"加载 agent.md…"}):(0,t.jsx)(n.Textarea,{className:(0,r.cn)("agent-md-editor min-h-[110px] resize-y focus-visible:ring-1 focus-visible:ring-ring"),spellCheck:!1,value:a,onChange:e=>l(e.target.value),placeholder:"编辑当前 Agent 的提示词(agent.md)"})})}var o=e.i(87243),d=e.i(82136),c=e.i(65934);function u(){let{agentMdText:e,setAgentMdText:r,agentLoading:n,loadAgentPrompt:u,saveAgentPrompt:m}=function(e){let{currentAgent:t}=(0,o.useSession)(),l=(0,c.useAppStore)(e=>e.wsUrl),r=(0,c.useAppStore)(e=>e.apiBase),[n,i]=(0,a.useState)(!1),[u,m]=(0,a.useState)(""),p=(0,a.useCallback)(async()=>{i(!0);try{let e=await (0,d.loadAgentPrompt)(l,r,t());m(e)}catch(e){s.appToast.error("加载 agent.md 失败:".concat(e instanceof Error?e.message:String(e)))}finally{i(!1)}},[l,r,t]),x=(0,a.useCallback)(async e=>{await (0,d.saveAgentPrompt)(l,r,t(),u),(null==e?void 0:e.silent)||s.appToast.success("已保存 agent.md。")},[l,r,t,u]);return(0,a.useEffect)(()=>{p()},[p,void 0]),{agentMdText:u,setAgentMdText:m,agentLoading:n,loadAgentPrompt:p,saveAgentPrompt:x}}(),[p,x]=(0,a.useState)(!1),f=(0,a.useCallback)(async()=>{x(!0);try{await m()}catch(e){s.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}finally{x(!1)}},[m]);return(0,t.jsxs)("div",{className:"manage-page-content flex min-h-0 flex-1 flex-col rounded-xl border bg-[#fff] shadow-[var(--shadow-md)]",children:[(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col p-4",children:(0,t.jsx)(i,{value:e,onChange:r,loading:n,className:"min-h-0 flex-1"})}),(0,t.jsxs)("div",{className:"flex shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] px-4 py-3",children:[(0,t.jsx)(l.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:n||p,onClick:()=>void u(),children:"取消"}),(0,t.jsx)(l.Button,{type:"button",size:"lg",disabled:n||p,onClick:()=>void f(),children:"保存"})]})]})}},51459,e=>{"use strict";e.s(["AgentTeamsManageView",()=>p],51459);var t=e.i(18050),a=e.i(71645),l=e.i(65934),s=e.i(87243),r=e.i(50711),n=e.i(94055),i=e.i(92715),o=e.i(85413),d=e.i(75157);function c(e){let{saveBusy:a,pickerFilteredRows:l,pickerLoading:s,pickerSelected:r,onPickerToggle:c}=e,u=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"w-[140px] text-base text-[var(--ds-text)]",render:e=>{var t;return null!=(t=e.displayName)?t:e.id}},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>{var t;return null!=(t=e.description)?t:"-"}},{key:"enabled",title:"启用/未启用",headerClassName:"w-64 text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(n.AccentSwitch,{checked:r.includes(e.id),onCheckedChange:t=>c(e.id,t),disabled:a,"aria-label":"启用 ".concat(e.label)})})}];return(0,t.jsx)("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col gap-4",children:(0,t.jsx)("div",{className:(0,d.cn)("flex min-h-0 flex-1 flex-col overflow-hidden rounded-xl border bg-[#fff] p-[24px] shadow-[var(--shadow-md)]","border-[var(--ds-border)]"),children:(0,t.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-y-auto",children:s?(0,t.jsx)("p",{className:"px-1 py-4 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):l.length?(0,t.jsx)(i.AppTable,{rows:l,columns:u,getRowKey:e=>e.id,className:"border-0",rowClassName:"border-[var(--ds-border)]",headerRowClassName:"border-[var(--ds-border)]"}):(0,t.jsx)("div",{className:"py-6",children:(0,t.jsx)(o.Empty,{})})})})})}var u=e.i(13354),m=e.i(62427);function p(){let e=(0,l.useAppStore)(e=>e.wsUrl),n=(0,l.useAppStore)(e=>e.apiBase),i=(0,l.useAppStore)(e=>e.agentId),o=(0,l.useAppStore)(e=>e.agentConfig),d=(0,l.useAppStore)(e=>e.setAgentConfig),{currentAgent:p,loadAgentConfig:x}=(0,s.useSession)(),f=(0,r.usePersistAgentConfigField)("agentTeams"),b=o.agentTeams,h=(0,a.useMemo)(()=>[...b].sort().join("\0"),[b]),[g,v]=(0,a.useState)([]),[y,C]=(0,a.useState)([]),[j,w]=(0,a.useState)(!1),[N,k]=(0,a.useState)(!1);(0,a.useEffect)(()=>{x()},[x]),(0,a.useEffect)(()=>{C([...b])},[h,b]),(0,a.useEffect)(()=>{w(!0),v([]),(0,m.listAgentTeams)(e,n,p()).then(e=>{var t,a;v((null!=(a=null!=(t=e.teamAgentTypes)?t:e.agentTeams)?a:[]).map(e=>{var t,a,l,s,r,n;return{id:null!=(a=null!=(t=e.agentType)?t:e.name)?a:"",label:null!=(s=null!=(l=e.agentType)?l:e.name)?s:"",displayName:null!=(n=null!=(r=e.name)?r:e.agentType)?n:"",description:e.description}}).filter(e=>e.id.length>0))}).catch(e=>{v([]),u.appToast.error("加载可选 Agent Team 失败:".concat(e instanceof Error?e.message:String(e)))}).finally(()=>{w(!1)})},[e,n,i,p]);let S=(0,a.useCallback)(async(e,t)=>{k(!0);try{await f(e,{silent:t})}finally{k(!1)}},[f]),T=(0,a.useCallback)((e,t)=>{let a=l.useAppStore.getState(),s=new Set(a.agentConfig.agentTeams);t?s.add(e):s.delete(e);let r=[...s].sort();C(r),d({...a.agentConfig,agentTeams:r}),S(r,!0)},[d,S]);return(0,t.jsx)(c,{saveBusy:N,pickerFilteredRows:g,pickerLoading:j,pickerSelected:y,onPickerToggle:T})}},62849,e=>{"use strict";e.s(["EnvManageView",()=>h],62849);var t=e.i(18050),a=e.i(71645),l=e.i(65934),s=e.i(87243),r=e.i(19455),n=e.i(94197),i=e.i(93479),o=e.i(67327);let d={"Base URL":"ANTHROPIC_BASE_URL","Deployment Name":"ANTHROPIC_DEPLOYMENT_NAME","API Key":"ANTHROPIC_API_KEY"};var c=e.i(13354),u=e.i(82136);let m="AZURE_OPENAI_BASE_URL",p="AZURE_OPENAI_DEPLOYMENT_NAME",x="AZURE_OPENAI_API_KEY";function f(){return"undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():"r-".concat(Date.now(),"-").concat(Math.random())}function b(e){return Object.keys(e).sort().map(t=>{var a;return{id:f(),key:t,value:null!=(a=e[t])?a:""}})}function h(){var e,h,g;let v=(0,l.useAppStore)(e=>e.wsUrl),y=(0,l.useAppStore)(e=>e.apiBase),C=(0,l.useAppStore)(e=>e.agentConfig),j=(0,l.useAppStore)(e=>e.setAgentConfig),w=(0,l.useAppStore)(e=>e.bridgeReady),N=(0,l.useAppStore)(e=>e.setStatus),{currentAgent:k,loadAgentConfig:S}=(0,s.useSession)(),{sendReloadAgentConfig:T}=(0,o.useWebSocketSender)(),[A,R]=(0,a.useState)(!0),[E,M]=(0,a.useState)(!1),[P,U]=(0,a.useState)([]),I=(0,a.useMemo)(()=>{let e={};for(let a of P){var t;let l=String(a.key||"").trim();l&&(e[l]=String(null!=(t=a.value)?t:""))}return e},[P]),z=(0,a.useMemo)(()=>new Set([m,p,x]),[]),B=(0,a.useMemo)(()=>P.filter(e=>{let t=String(e.key||"").trim();return!z.has(t)}),[P,z]);(0,a.useEffect)(()=>{R(!0),S().finally(()=>{R(!1)})},[S]),(0,a.useEffect)(()=>{U(b({...C.env}))},[C.env]);let O=(0,a.useCallback)((e,t)=>{U(a=>a.map(a=>a.id===e?{...a,...t}:a))},[]),D=(0,a.useCallback)(e=>{U(t=>t.filter(t=>t.id!==e))},[]),L=(0,a.useCallback)((e,t)=>{let a=String(e||"").trim();a&&U(e=>{let l=e.findIndex(e=>String(e.key||"").trim()===a);if(l>=0){let a=[...e];return a[l]={...a[l],value:t},a}return[...e,{id:f(),key:a,value:t}]})},[]),_=(0,a.useCallback)(()=>{U(e=>[...e,{id:f(),key:"",value:""}])},[]),F=(0,a.useCallback)(()=>{U(b({...C.env}))},[C.env]),K=(0,a.useCallback)(async()=>{let e=function(e){let t={},a=new Set;for(let s of e){var l;let e=String(s.key||"").trim(),r=String(null!=(l=s.value)?l:"");if(r.trim()||e){if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(e))return{ok:!1,message:"环境变量名不合法:".concat(e,"(仅允许字母/数字/下划线,且不能数字开头)")};if(a.has(e))return{ok:!1,message:"存在重复环境变量名:".concat(e)};a.add(d[e]||e),t[e]=r}}return{ok:!0,env:t}}(P);if(!e.ok)return void c.appToast.info(e.message);M(!0);try{var t,a,s,r;let n=l.useAppStore.getState();await (0,u.saveAgentConfig)(v,y,k(),{tools:n.agentConfig.tools.slice(),disallowedTools:n.agentConfig.disallowedTools.slice(),mcpServers:n.agentConfig.mcpServers.slice(),skills:n.agentConfig.skills.slice(),agentTeams:n.agentConfig.agentTeams.slice(),model:n.agentConfig.model,rules:n.agentConfig.rules.slice(),effort:null!=(t=n.agentConfig.effort)?t:null,background:null!=(a=n.agentConfig.background)&&a,isolation:null!=(s=n.agentConfig.isolation)?s:"",whentouse:null!=(r=n.agentConfig.whentouse)?r:"",env:e.env}),j({...n.agentConfig,env:{...e.env}}),l.useAppStore.getState().wsConnected&&T(),N("环境变量已保存"+(l.useAppStore.getState().wsConnected?",已请求 worker 重新加载配置":""),w?"ready":""),c.appToast.success(l.useAppStore.getState().wsConnected?"已保存到 agent.json,并已请求 worker 重新加载配置。":"已保存到 agent.json。重连 WebSocket 后子进程环境将同步。")}catch(e){c.appToast.error("保存环境变量失败:".concat(e instanceof Error?e.message:String(e)))}finally{M(!1)}},[P,v,y,k,j,T,N,w]);return(0,t.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-xl border border-[var(--ds-border)] bg-[#fff] shadow-[var(--shadow-md)]",children:[(0,t.jsx)("div",{className:"shrink-0 border-b border-[var(--ds-border)] px-4 py-4",children:(0,t.jsx)("p",{className:"mt-1 text-sm text-[var(--ds-muted)]",children:"仅影响当前 agent 的 session 子进程环境"})}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-4 py-4",children:A?(0,t.jsx)("div",{className:"py-8 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"mt-0 flex items-start justify-between gap-3",children:(0,t.jsx)("div",{children:(0,t.jsx)("h3",{className:"text-base font-semibold text-[var(--ds-text)]",children:"模型配置"})})}),(0,t.jsxs)("div",{className:"mt-3 divide-y divide-[var(--ds-border)]",children:[(0,t.jsxs)("div",{className:"grid items-center gap-3 py-3",style:{gridTemplateColumns:"240px 1fr"},children:[(0,t.jsx)("label",{className:"inline-flex h-10 items-center rounded-md border border-[var(--ds-border)] px-3 text-base text-[var(--ds-text)]",htmlFor:"azure-base-url",children:"Base URL"}),(0,t.jsx)(i.Input,{id:"azure-base-url",type:"text",spellCheck:!1,autoComplete:"off",placeholder:"https://example.openai.azure.com",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:null!=(e=I[m])?e:"",onChange:e=>L(m,e.target.value)})]}),(0,t.jsxs)("div",{className:"grid items-center gap-3 py-3",style:{gridTemplateColumns:"240px 1fr"},children:[(0,t.jsx)("label",{className:"inline-flex h-10 items-center rounded-md border border-[var(--ds-border)] px-3 text-base text-[var(--ds-text)]",htmlFor:"azure-deployment-name",children:"Deployment Name"}),(0,t.jsx)(i.Input,{id:"azure-deployment-name",type:"text",spellCheck:!1,autoComplete:"off",placeholder:"gpt-4o",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:null!=(h=I[p])?h:"",onChange:e=>L(p,e.target.value)})]}),(0,t.jsxs)("div",{className:"grid items-center gap-3 py-3",style:{gridTemplateColumns:"240px 1fr"},children:[(0,t.jsx)("label",{className:"inline-flex h-10 items-center rounded-md border border-[var(--ds-border)] px-3 text-base text-[var(--ds-text)]",htmlFor:"azure-api-key px-3",children:"API Key"}),(0,t.jsx)(i.Input,{id:"azure-api-key",type:"password",spellCheck:!1,autoComplete:"off",placeholder:"请输入 API Key",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:null!=(g=I[x])?g:"",onChange:e=>L(x,e.target.value)})]})]}),(0,t.jsx)("h3",{className:"mb-4 mt-8 text-base font-semibold text-[var(--ds-text)]",children:"自定义设置"}),(0,t.jsx)("div",{className:"mt-5",children:(0,t.jsx)(r.Button,{type:"button",variant:"outline",size:"lg",disabled:A||E,onClick:_,children:"新增变量"})}),(0,t.jsxs)("div",{className:"mb-2 mt-5 grid gap-2 text-sm text-[var(--ds-muted)]",style:{gridTemplateColumns:"1fr 1fr auto"},children:[(0,t.jsx)("span",{children:"KEY"}),(0,t.jsx)("span",{children:"VALUE"}),(0,t.jsx)("span",{children:"操作"})]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:B.length?B.map(e=>(0,t.jsxs)("div",{className:"grid gap-2",style:{gridTemplateColumns:"1fr 1fr auto"},children:[(0,t.jsx)(i.Input,{type:"text",spellCheck:!1,autoComplete:"off",placeholder:"例如 API_KEY",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:e.key,onChange:t=>O(e.id,{key:t.target.value})}),(0,t.jsx)(i.Input,{type:"text",spellCheck:!1,autoComplete:"off",placeholder:"value",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:e.value,onChange:t=>O(e.id,{value:t.target.value})}),(0,t.jsx)(n.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.key),onClick:()=>D(e.id)})]},e.id)):(0,t.jsx)("div",{className:"rounded-md border border-dashed border-[var(--ds-border)] py-8 text-center text-base text-[var(--ds-muted)]",children:"(暂无变量,点击「新增变量」)"})})]})}),(0,t.jsxs)("div",{className:"flex shrink-0 justify-end gap-[12px] border-t border-[var(--ds-border)] px-4 py-3",children:[(0,t.jsx)(r.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:A||E,onClick:F,children:"取消"}),(0,t.jsx)(r.Button,{type:"button",size:"lg",disabled:A||E,onClick:()=>void K(),children:"保存"})]})]})}},28583,e=>{"use strict";e.s(["ToolsManageView",()=>C],28583);var t=e.i(18050),a=e.i(71645),l=e.i(65934),s=e.i(87243),r=e.i(13354),n=e.i(50711),i=e.i(19455),o=e.i(94055),d=e.i(94197),c=e.i(51419),u=e.i(92715);function m(e){let{items:a,saveBusy:l,onToggle:s,onExport:r,onRemove:n,className:i}=e,c=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.name},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"text-base",cellClassName:"whitespace-nowrap text-base text-[var(--ds-text)]",render:e=>(0,t.jsx)("span",{className:"inline-flex items-center gap-2",children:(0,t.jsx)(o.AccentSwitch,{checked:!!e.enabled,disabled:l,onCheckedChange:t=>s(e.name,t),"aria-label":"".concat(e.enabled?"禁用":"启用"," ").concat(e.name)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base",cellClassName:"w-[128px]",render:e=>(0,t.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,t.jsx)(d.IconTooltipButton,{icon:"Download",label:"导出",ariaLabel:"导出 ".concat(e.name),disabled:l,onClick:()=>r(e.name)}),(0,t.jsx)(d.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.name),disabled:l,onClick:()=>{n(e.name)}})]})}];return(0,t.jsx)(u.AppTable,{rows:a,columns:c,getRowKey:e=>"tools:".concat(e.name),className:i})}var p=e.i(36845),x=e.i(53925);function f(e){let{open:a,onOpenChange:l,wsUrl:s,apiBase:r,agent:n}=e;return(0,t.jsx)(x.ResourceImportDialog,{open:a,onOpenChange:l,title:"导入工具 zip",description:"选择一个 zip 文件并导入到 tools-runtime。",uploadUrl:(0,p.buildToolsRuntimeImportUrl)(s,r,n),resetKey:n})}var b=e.i(68499),h=e.i(72064),g=e.i(56708),v=e.i(62427);let y=[{value:"basic",label:"系统工具"},{value:"installed",label:"自定义工具"}];function C(){let e=(0,l.useAppStore)(e=>e.wsUrl),p=(0,l.useAppStore)(e=>e.apiBase),x=(0,l.useAppStore)(e=>e.agentConfig),C=(0,l.useAppStore)(e=>e.setAgentConfig),{currentAgent:j,loadAgentConfig:w}=(0,s.useSession)(),N=(0,n.usePersistAgentConfigField)("tools"),k=x.tools,S=(0,a.useMemo)(()=>[...k].sort().join("\0"),[k]),[T,A]=(0,a.useState)([]),[R,E]=(0,a.useState)([]),[M,P]=(0,a.useState)(!1),[U,I]=(0,a.useState)(!1),[z,B]=(0,a.useState)("basic"),[O,D]=(0,a.useState)(!1);(0,a.useEffect)(()=>{w()},[w]);let L=(0,a.useCallback)(async(e,t)=>{I(!0);try{await N(e,{silent:t})}finally{I(!1)}},[N]),_=(0,a.useCallback)(async()=>{A([]),P(!0);try{var t;let a=null!=(t=(await (0,v.listTools)(e,p,j())).tools)?t:[];A(a.map(e=>{var t,a;return{...e,id:e.name,label:(e.displayName&&e.displayName!==e.name?"".concat(e.displayName," · "):"")+e.name,description:null!=(a=null!=(t=e.description)?t:e.searchHint)?a:""}}))}catch(e){A([]),r.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{P(!1)}},[e,p,j]),F=(0,a.useCallback)(async t=>{if(await (0,b.confirmAlertDialog)({title:"确认删除工具包?",description:"工具名:".concat(t),confirmText:"删除",cancelText:"取消"}))try{await (0,v.deleteRuntimeTool)(e,p,j(),t);let a=k.filter(e=>e!==t);E(e=>e.filter(e=>e!==t)),C({...x,tools:a}),await L(a,!0),await _()}catch(e){r.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[e,p,j,k,x,C,L,_]),K=(0,a.useCallback)(t=>{window.open((0,v.exportRuntimeToolUrl)(e,p,j(),t),"_blank","noopener")},[e,p,j]);(0,a.useEffect)(()=>{("basic"===z||"installed"===z)&&_()},[z,_]),(0,a.useEffect)(()=>{"basic"===z&&E([...k])},[z,k,S]);let V=(0,a.useCallback)(e=>{let t=[...new Set(e)].sort();C({...x,tools:t}),L(t,!0)},[x,C,L]),H=(0,a.useCallback)((e,t)=>{let a=t?[...new Set([...k,e])].sort():k.filter(t=>t!==e).sort();C({...x,tools:a}),L(a,!0)},[k,x,C,L]),J=(0,a.useMemo)(()=>T.filter(e=>!0===e.isRuntime).slice().sort((e,t)=>e.label.localeCompare(t.label)).map(e=>({name:e.id,description:e.description||"",enabled:k.includes(e.id)})),[T,k]),W=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.label},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"w-14 w-[112px] text-base text-[var(--ds-muted)]",cellClassName:"w-[112px] align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(o.AccentSwitch,{checked:R.includes(e.id),disabled:U,onCheckedChange:t=>{let a=t?[...new Set([...R,e.id])]:R.filter(t=>t!==e.id);E(a),V(a)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-14 w-[72px] text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(d.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",disabled:U,ariaLabel:"删除 ".concat(e.label),onClick:()=>F(e.id)})})}];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g.ManageChromeHeaderActions,{children:(0,t.jsxs)(i.Button,{id:"btnAgentPickerToolImport",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>D(!0),children:[(0,t.jsx)(h.default,{name:"Import",size:16,className:"align-middle"}),"导入自定义工具"]})}),(0,t.jsxs)(c.AppTabs,{tabs:y,value:z,listVariant:"line",onChange:e=>B(e),children:[(0,t.jsx)(c.AppTabsPanel,{value:"basic",children:(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,t.jsx)("div",{className:"min-h-0",children:M?(0,t.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsx)(u.AppTable,{rows:T,columns:W,getRowKey:e=>e.id})})})}),(0,t.jsx)(c.AppTabsPanel,{value:"installed",children:(0,t.jsx)(m,{items:J,saveBusy:U,onToggle:H,onExport:K,onRemove:F})})]}),(0,t.jsx)(f,{open:O,onOpenChange:e=>{D(e),e||_()},wsUrl:e,apiBase:p,agent:j()})]})}},55242,e=>{"use strict";e.s(["AppDialog",()=>r]);var t=e.i(18050),a=e.i(71645),l=e.i(76639),s=e.i(75157);function r(e){let{open:r,onOpenChange:n,title:i,children:o,footer:d,width:c="max-w-3xl",minHeight:u}=e,m=(0,a.useId)();return(0,t.jsx)(l.Dialog,{open:r,onOpenChange:n,children:(0,t.jsxs)(l.DialogContent,{"aria-labelledby":m,className:(0,s.cn)(c,u?"!min-h-[--min-h]":""),style:u?{"--min-h":u}:void 0,children:[(0,t.jsxs)(l.DialogHeader,{children:[(0,t.jsx)(l.DialogTitle,{id:m,children:i}),(0,t.jsx)(l.DialogClose,{"aria-label":"关闭"})]}),(0,t.jsx)(l.DialogBody,{className:"!px-4 !py-3",children:o}),d?(0,t.jsx)("div",{className:"flex flex-shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] bg-[var(--ds-sidebar)] px-4 py-3",children:d}):null]})})}},89530,e=>{"use strict";e.s(["McpManageView",()=>j],89530);var t=e.i(18050),a=e.i(71645),l=e.i(65934),s=e.i(87243),r=e.i(13354),n=e.i(50711),i=e.i(51419),o=e.i(55242),d=e.i(92715),c=e.i(19455),u=e.i(94055),m=e.i(94197);function p(e){let{items:a,saveBusy:l,onToggleStatus:s,className:r}=e,n=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.label||e.name},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.description||"-"},{key:"source",title:"来源",headerClassName:"text-base",cellClassName:"text-base",render:()=>"远程"},{key:"status",title:"状态",headerClassName:"text-base",cellClassName:"whitespace-nowrap py-2 align-middle",render:e=>s?(0,t.jsx)("span",{className:"inline-flex items-center justify-end gap-2 text-base text-[var(--ds-text)]",children:(0,t.jsx)(u.AccentSwitch,{checked:!e.disabled,disabled:l,onCheckedChange:t=>{s(e.name,t)},"aria-label":"".concat(e.disabled?"启用":"禁用"," ").concat(e.name)})}):(0,t.jsx)("span",{className:"text-base text-[var(--ds-text)]",children:e.installed?"已安装":"未安装"})}];return(0,t.jsx)(d.AppTable,{rows:a,columns:n,getRowKey:e=>"mcp:".concat(e.name),className:r})}var x=e.i(36845),f=e.i(53925);function b(e){let{open:a,onOpenChange:l,wsUrl:s,apiBase:r,agent:n}=e;return(0,t.jsx)(f.ResourceImportDialog,{open:a,onOpenChange:l,title:"导入 MCP zip",description:"选择一个 zip 文件并导入到 mcp-runtime。",uploadUrl:(0,x.buildMcpRuntimeImportUrl)(s,r,n),resetKey:n})}var h=e.i(68499),g=e.i(72064),v=e.i(56708),y=e.i(62427);let C=[{value:"basic",label:"本地MCP"},{value:"installed",label:"远程MCP"}];function j(){let e=(0,l.useAppStore)(e=>e.wsUrl),x=(0,l.useAppStore)(e=>e.apiBase),f=(0,l.useAppStore)(e=>e.agentConfig),j=(0,l.useAppStore)(e=>e.setAgentConfig),{currentAgent:w,loadAgentConfig:N}=(0,s.useSession)(),k=(0,n.usePersistAgentConfigField)("mcpServers"),S=f.mcpServers,T=(0,a.useMemo)(()=>[...S].sort().join("\0"),[S]),[A,R]=(0,a.useState)([]),[E,M]=(0,a.useState)([]),[P,U]=(0,a.useState)(!1),[I,z]=(0,a.useState)(!1),[B,O]=(0,a.useState)("basic"),[D,L]=(0,a.useState)(!1),[_,F]=(0,a.useState)(!1),[K,V]=(0,a.useState)(""),[H,J]=(0,a.useState)(!1);(0,a.useEffect)(()=>{N()},[N]);let W=(0,a.useCallback)(async(e,t)=>{z(!0);try{await k(e,{silent:t})}finally{z(!1)}},[k]),Y=(0,a.useCallback)(async()=>{R([]),U(!0);try{var t;let a=null!=(t=(await (0,y.listMcpServers)(e,x,w())).servers)?t:[];R(a.map(e=>{var t,a,l;return{...e,id:e.name,label:e.name+(e.disabled?"(已禁用)":""),description:null!=(a=null!=(t=e.description)?t:e.source)?a:"",source:null!=(l=e.source)?l:"",installed:!!e.installed}}))}catch(e){R([]),r.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{U(!1)}},[e,x,w]),q=(0,a.useCallback)(async t=>{var a;let l=A.find(e=>e.id===t),s=null!=(a=null==l?void 0:l.source)?a:"";if("runtime"!==s&&"remote"!==s)return void r.appToast.error("基础MCP不可删除");if(await (0,h.confirmAlertDialog)({title:"确认删除 MCP?",description:"服务器名:".concat(t),confirmText:"删除",cancelText:"取消"}))try{if("remote"===s){let a=await (0,y.loadRemoteMcpJson)(e,x,w()),l={};try{l=JSON.parse(String(a.content||"{}"))}catch(e){l={mcpServers:{}}}(!l.mcpServers||Array.isArray(l.mcpServers)||"object"!=typeof l.mcpServers)&&(l.mcpServers={}),delete l.mcpServers[t],await (0,y.saveRemoteMcpJson)(e,x,w(),JSON.stringify(l,null,2))}else await (0,y.deleteRuntimeMcp)(e,x,w(),t);let a=S.filter(e=>e!==t);M(e=>e.filter(e=>e!==t)),j({...f,mcpServers:a}),await W(a,!0),await Y()}catch(e){r.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[A,e,x,w,S,f,j,W,Y]);(0,a.useEffect)(()=>{("basic"===B||"installed"===B)&&Y()},[B,Y]),(0,a.useEffect)(()=>{("basic"===B||"installed"===B)&&M([...S])},[B,S,T]);let Z=(0,a.useCallback)(async e=>{let t=[...new Set(e)].sort();j({...f,mcpServers:t}),await W(t,!0)},[f,j,W]),X=(0,a.useCallback)(async(e,t)=>{let a=t?[...new Set([...E,e])]:E.filter(t=>t!==e);M(a);try{await Z(a)}catch(e){M(E),r.appToast.error("切换启用状态失败: ".concat(e))}},[E,Z]),G=(0,a.useMemo)(()=>A.filter(e=>"remote"!==e.source).slice().sort((e,t)=>e.id.localeCompare(t.id)),[A]),$=(0,a.useMemo)(()=>A.filter(e=>"remote"===e.source).slice().sort((e,t)=>{let a=+!E.includes(e.id),l=+!E.includes(t.id);return a!==l?a-l:e.id.localeCompare(t.id)}).map(e=>({...e,name:e.id,label:e.label,description:e.description||"",installed:!0,source:e.source,disabled:!E.includes(e.id)})),[A,E]),Q=(0,a.useCallback)(t=>{window.open((0,y.exportRuntimeMcpUrl)(e,x,w(),t),"_blank","noopener")},[e,x,w]),ee=(0,a.useCallback)(async(e,t)=>{let a=t?[...new Set([...E,e])]:E.filter(t=>t!==e);M(a);try{await Z(a)}catch(e){M(E),r.appToast.error("切换启用状态失败: ".concat(e))}},[E,Z]),et=(0,a.useCallback)(()=>{F(!0),V(""),get(buildRemoteMcpJsonUrl(e,x,w())).then(e=>{V("string"==typeof e.content?e.content:"")}).catch(e=>{r.appToast.error("加载 mcp.json 失败:".concat(e instanceof Error?e.message:String(e))),F(!1)})},[e,x,w]),ea=(0,a.useCallback)(async()=>{J(!0);try{await post(buildRemoteMcpJsonUrl(e,x,w()),{content:K}),r.appToast.success("已保存全局 mcp.json。"),F(!1)}catch(e){r.appToast.error("保存 mcp.json 失败:".concat(e instanceof Error?e.message:String(e)))}finally{J(!1)}},[e,x,w,K]),el=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.label},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"w-14 w-[112px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[112px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(u.AccentSwitch,{checked:E.includes(e.id),disabled:I,onCheckedChange:t=>{X(e.id,t)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base text-[var(--ds-muted)]",cellClassName:"w-[128px]",render:e=>{var a;let l=null!=(a=e.source)?a:"",s="runtime"===l,r="runtime"===l||"remote"===l;return(0,t.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,t.jsx)(m.IconTooltipButton,{icon:"Download",label:s?"导出":"仅 runtime MCP 支持导出",ariaLabel:"导出 ".concat(e.label),disabled:I||!s,onClick:()=>Q(e.id)}),(0,t.jsx)(m.IconTooltipButton,{icon:"Trash2",label:r?"删除":"基础MCP不可删除",tone:"danger",ariaLabel:"删除 ".concat(e.label),disabled:I||!r,onClick:()=>{q(e.id)},iconClassName:"text-red-500"})]})}}];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(v.ManageChromeHeaderActions,{children:(0,t.jsxs)("div",{className:"flex flex-wrap items-center",children:[(0,t.jsxs)(c.Button,{type:"button",variant:"plain-outline",size:"lg",onClick:et,className:"mr-[12px]",children:[(0,t.jsx)(g.default,{name:"Edit",size:16,className:"align-middle"}),"编辑全局MCP"]}),(0,t.jsxs)(c.Button,{id:"btnAgentImportMcp",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>L(!0),children:[(0,t.jsx)(g.default,{name:"Import",size:16,className:"align-middle"}),"导入MCP"]})]})}),(0,t.jsxs)(i.AppTabs,{tabs:C,value:B,listVariant:"line",onChange:e=>O(e),children:[(0,t.jsx)(i.AppTabsPanel,{value:"basic",children:(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,t.jsx)("div",{className:"min-h-0",children:P?(0,t.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsx)(d.AppTable,{rows:G,columns:el,getRowKey:e=>e.id})})})}),(0,t.jsx)(i.AppTabsPanel,{value:"installed",children:(0,t.jsx)(p,{items:$,saveBusy:I,onToggleStatus:ee})})]}),(0,t.jsx)(b,{open:D,onOpenChange:e=>{L(e),e||Y()},wsUrl:e,apiBase:x,agent:w()}),(0,t.jsx)(o.AppDialog,{open:_,onOpenChange:F,title:"编辑全局MCP",width:"max-w-4xl",minHeight:"420px",footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(c.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:H,onClick:()=>F(!1),children:"取消"}),(0,t.jsx)(c.Button,{type:"button",size:"lg",disabled:H,onClick:()=>void ea(),children:"保存"})]}),children:(0,t.jsx)("textarea",{className:"focus-visible:ring-[var(--ds-accent)]/30 min-h-[320px] w-full resize-y rounded-md border border-[var(--ds-border)] bg-[var(--ds-bg)] p-3 text-base leading-6 text-[var(--ds-text)] outline-none focus-visible:ring-2",spellCheck:!1,value:K,onChange:e=>V(e.target.value)})})]})}},47079,e=>{"use strict";e.s(["SkillsManageView",()=>T],47079);var t=e.i(18050),a=e.i(71645),l=e.i(65934),s=e.i(87243),r=e.i(13354),n=e.i(50711),i=e.i(51419),o=e.i(92715),d=e.i(19455),c=e.i(94055),u=e.i(94197),m=e.i(72064),p=e.i(93479),x=e.i(75157);function f(e){let{className:a,...l}=e;return(0,t.jsx)("nav",{role:"navigation","aria-label":"pagination","data-slot":"pagination",className:(0,x.cn)("flex w-full justify-end",a),...l})}let b=a.forwardRef((e,a)=>{let{className:l,...s}=e;return(0,t.jsx)("ul",{ref:a,"data-slot":"pagination-content",className:(0,x.cn)("flex flex-row flex-wrap items-center justify-end gap-1",l),...s})});b.displayName="PaginationContent";let h=a.forwardRef((e,a)=>{let{className:l,...s}=e;return(0,t.jsx)("li",{ref:a,"data-slot":"pagination-item",className:(0,x.cn)("",l),...s})});h.displayName="PaginationItem",a.forwardRef((e,a)=>{let{className:l,isActive:s,size:r="icon",...n}=e;return(0,t.jsx)("a",{ref:a,"aria-current":s?"page":void 0,"data-slot":"pagination-link","data-active":s?"true":void 0,className:(0,x.cn)((0,d.buttonVariants)({variant:s?"outline":"ghost",size:r}),l),...n})}).displayName="PaginationLink";var g=e.i(62427);function v(e){let{active:l,wsUrl:s,apiBase:n,agent:i,onAfterInstall:c,className:u}=e,[x,v]=(0,a.useState)(""),[y,C]=(0,a.useState)(1),[j,w]=(0,a.useState)(0),[N,k]=(0,a.useState)([]),[S,T]=(0,a.useState)(!1),[A,R]=(0,a.useState)(""),[E,M]=(0,a.useState)({}),P=(0,a.useRef)(0),U=(0,a.useCallback)(async()=>{let e=++P.current;T(!0),R("");try{let t=await (0,g.listCloudSkillCatalog)(s,n,i,x,y,10);if(e!==P.current)return;let a=Array.isArray(t.items)?t.items:[],l=[];for(let e of a)e&&"object"==typeof e&&e.id&&l.push({id:String(e.id),title:String(e.title||""),skillName:String(e.skillName||""),description:"string"==typeof e.description?e.description:"",installed:!!e.installed});k(l),w(t.totalPages)}catch(t){if(e!==P.current)return;k([]),w(0),R(t instanceof Error?t.message:String(t))}finally{e===P.current&&T(!1)}},[s,n,i,x,y]);(0,a.useEffect)(()=>{if(!l){v(""),C(1),w(0),k([]),R(""),M({}),P.current+=1;return}U()},[l,U]);let I=(0,a.useMemo)(()=>{if(S)return"加载中…";if(A)return"加载失败:".concat(A);let e=N.reduce((e,t)=>e+ +!!t.installed,0);return"已安装 ".concat(e," 项")},[S,A,N]),z=(0,a.useCallback)(async(e,t)=>{M(t=>({...t,[e]:!0}));try{await (0,g.installCloudSkill)(s,n,i,e),r.appToast.success("云端技能已安装:".concat(t)),await U(),null==c||c()}catch(e){r.appToast.error("安装失败:".concat(e instanceof Error?e.message:String(e)))}finally{M(t=>{let a={...t};return delete a[e],a})}},[s,n,i,U,c]),B=(0,a.useCallback)(e=>{C(1),v(e)},[]);if(!l)return null;let O=j>0?"第 ".concat(y,"/").concat(j," 页"):"第 0/0 页",D=S||y<=1,L=S||j<=0||y>=j,_=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.skillName?"".concat(e.skillName):e.id},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base text-[var(--ds-text)]",render:e=>(0,t.jsxs)(t.Fragment,{children:[e.title,e.description?" — ".concat(e.description):""]})},{key:"status",title:"状态",headerClassName:"text-base",cellClassName:"whitespace-nowrap text-base text-[var(--ds-text)]",render:e=>e.installed?"已安装":"未安装"},{key:"actions",title:"操作",headerClassName:"w-[96px] text-right text-base",cellClassName:"w-[116px] text-right",render:e=>{let a=!!E[e.id],l=!!e.installed;return!a&&l?"-":(0,t.jsx)(d.Button,{type:"button",size:"sm",variant:"outline",disabled:a||l,onClick:()=>void z(e.id,e.title||e.skillName||e.id),children:a?"安装中…":l?"已安装":"安装"})}}];return(0,t.jsx)("div",{className:u,children:(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsx)(p.Input,{type:"search",value:x,onChange:e=>B(e.target.value),placeholder:"搜索云端技能…",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base"}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:I}),(0,t.jsx)(o.AppTable,{rows:N,columns:_,getRowKey:e=>e.id,className:"min-h-0 flex-1 rounded-md",bodyProps:{viewportPaginationReserve:64},emptyNode:S?(0,t.jsx)("p",{className:"text-center text-base",children:"加载中…"}):void 0}),(0,t.jsx)(f,{className:"mx-0 w-full",children:(0,t.jsxs)(b,{className:"w-full flex-wrap justify-end gap-2",children:[(0,t.jsx)(h,{children:(0,t.jsxs)(d.Button,{type:"button",variant:"outline",size:"sm",disabled:D,className:"gap-1",onClick:()=>C(e=>Math.max(1,e-1)),"aria-label":"上一页",children:[(0,t.jsx)(m.default,{name:"ChevronLeft",size:16,className:"shrink-0"}),"上一页"]})}),(0,t.jsx)(h,{children:(0,t.jsx)("span",{className:"flex h-9 min-w-[6.5rem] items-center justify-center text-sm text-[var(--ds-muted)]",children:O})}),(0,t.jsx)(h,{children:(0,t.jsxs)(d.Button,{type:"button",variant:"outline",size:"sm",disabled:L,className:"gap-1",onClick:()=>C(e=>e+1),"aria-label":"下一页",children:["下一页",(0,t.jsx)(m.default,{name:"ChevronRight",size:16,className:"shrink-0",strokeWidth:1})]})})]})})]})})}var y=e.i(36845),C=e.i(53925);function j(e){let{open:a,onOpenChange:l,wsUrl:s,apiBase:r,agent:n}=e;return(0,t.jsx)(C.ResourceImportDialog,{open:a,onOpenChange:l,title:"导入 Skill zip",description:"选择一个 zip 文件并导入到 skills-runtime。",uploadUrl:(0,y.buildSkillsRuntimeImportUrl)(s,r,n),resetKey:n})}function w(e){let{items:a,saveBusy:l,onToggleEnabled:s,onExport:r,onRemove:n,className:i}=e,d=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.name},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.description||"-"},{key:"status",title:"状态",headerClassName:"w-[160px] text-base",cellClassName:"w-[160px] text-base text-[var(--ds-text)]",render:()=>"已安装"},{key:"enabled",title:"启用/未启用",headerClassName:"w-[160px] text-right text-base",cellClassName:"w-[160px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex items-center justify-end gap-2",children:(0,t.jsx)(c.AccentSwitch,{checked:e.enabled,disabled:l,onCheckedChange:t=>s(e.name,t),"aria-label":"".concat(e.enabled?"禁用":"启用"," ").concat(e.name)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base",cellClassName:"w-[128px]",render:e=>(0,t.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,t.jsx)(u.IconTooltipButton,{icon:"Download",label:"导出",ariaLabel:"导出 ".concat(e.name),disabled:l,onClick:()=>r(e.name)}),(0,t.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.name),disabled:l,onClick:()=>{n(e.name)}})]})}];return(0,t.jsx)(o.AppTable,{rows:a,columns:d,getRowKey:e=>"skills:".concat(e.name),className:i})}var N=e.i(68499),k=e.i(56708);let S=[{value:"basic",label:"基础Skill"},{value:"installed",label:"已安装Skill"},{value:"cloud_catalog",label:"Skill商店"}];function T(){let e=(0,l.useAppStore)(e=>e.wsUrl),p=(0,l.useAppStore)(e=>e.apiBase),x=(0,l.useAppStore)(e=>e.agentConfig),f=(0,l.useAppStore)(e=>e.setAgentConfig),{currentAgent:b,loadAgentConfig:h}=(0,s.useSession)(),y=(0,n.usePersistAgentConfigField)("skills"),C=x.skills,T=(0,a.useMemo)(()=>[...C].sort().join("\0"),[C]),[A,R]=(0,a.useState)([]),[E,M]=(0,a.useState)([]),[P,U]=(0,a.useState)(!1),[I,z]=(0,a.useState)(!1),[B,O]=(0,a.useState)("basic"),[D,L]=(0,a.useState)(!1);(0,a.useEffect)(()=>{h()},[h]);let _=(0,a.useCallback)(async(e,t)=>{z(!0);try{await y(e,{silent:t})}finally{z(!1)}},[y]),F=(0,a.useCallback)(async()=>{R([]),U(!0);try{var t;let a=null!=(t=(await (0,g.listSkills)(e,p,b())).skills)?t:[];R(a.map(e=>{var t,a;return{...e,id:e.name,label:"".concat(e.name),description:null!=(a=null!=(t=e.description)?t:e.whenToUse)?a:"",isRuntime:!!e.isRuntime}}))}catch(e){R([]),r.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{U(!1)}},[e,p,b]),K=(0,a.useCallback)(async t=>{let a=A.find(e=>e.id===t);if(!(null==a?void 0:a.isRuntime))return void r.appToast.info("仅 skills-runtime 中的技能可删除");if(await (0,N.confirmAlertDialog)({title:"确认删除 Skill 包?",description:"Skill:".concat(t),confirmText:"删除",cancelText:"取消"}))try{await (0,g.deleteRuntimeSkill)(e,p,b(),t);let a=C.filter(e=>e!==t);M(e=>e.filter(e=>e!==t)),f({...x,skills:a}),await _(a,!0),await F()}catch(e){r.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[A,e,p,b,C,x,f,_,F]);(0,a.useEffect)(()=>{("basic"===B||"installed"===B)&&F()},[B,F]);let V=(0,a.useCallback)(()=>{F()},[F]);(0,a.useEffect)(()=>{"basic"===B&&M([...C])},[B,C,T]);let H=(0,a.useCallback)(e=>{let t=[...new Set(e)].sort();f({...x,skills:t}),_(t,!0)},[x,f,_]),J=(0,a.useMemo)(()=>A.filter(e=>!e.isRuntime),[A]),W=(0,a.useMemo)(()=>A.filter(e=>!0===e.isRuntime).slice().sort((e,t)=>e.label.localeCompare(t.label)).map(e=>({name:e.id,installed:!0,description:e.description||"",enabled:C.includes(e.id)})),[A,C]),Y=(0,a.useCallback)((e,t)=>{let a=t?[...new Set([...C,e])].sort():C.filter(t=>t!==e);f({...x,skills:a}),M(a),_(a,!0)},[C,x,f,_]),q=(0,a.useCallback)(t=>{window.open((0,g.exportRuntimeSkillUrl)(e,p,b(),t),"_blank","noopener")},[e,p,b]),Z=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.label},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"w-[72px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(c.AccentSwitch,{checked:E.includes(e.id),disabled:I,onCheckedChange:t=>{let a=t?[...new Set([...E,e.id])]:E.filter(t=>t!==e.id);M(a),H(a)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-[72px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",disabled:I,ariaLabel:"删除 ".concat(e.label),onClick:()=>{K(e.id)}})})}];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(k.ManageChromeHeaderActions,{children:(0,t.jsxs)(d.Button,{id:"btnAgentImportSkill",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>L(!0),children:[(0,t.jsx)(m.default,{name:"Import",size:16,className:"align-middle"}),"导入Skill"]})}),(0,t.jsxs)(i.AppTabs,{tabs:S,value:B,listVariant:"line",onChange:e=>O(e),children:[(0,t.jsx)(i.AppTabsPanel,{value:"basic",children:(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,t.jsx)("div",{className:"min-h-0",children:P?(0,t.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsx)(o.AppTable,{rows:J,columns:Z,getRowKey:e=>e.id})})})}),(0,t.jsx)(i.AppTabsPanel,{value:"installed",children:(0,t.jsx)(w,{items:W,saveBusy:I,onToggleEnabled:Y,onExport:q,onRemove:K})}),(0,t.jsx)(i.AppTabsPanel,{value:"cloud_catalog",className:"flex min-h-0 flex-1 flex-col",children:(0,t.jsx)(v,{active:"cloud_catalog"===B,wsUrl:e,apiBase:p,agent:b(),onAfterInstall:V,className:"min-h-0 flex-1"})})]}),(0,t.jsx)(j,{open:D,onOpenChange:e=>{L(e),e||F()},wsUrl:e,apiBase:p,agent:b()})]})}},69230,e=>{"use strict";e.s(["SettingsRouteBoundary",()=>i]);var t=e.i(18050),a=e.i(22016),l=e.i(18566),s=e.i(82787),r=e.i(97249),n=e.i(65934);function i(e){let{children:i}=e,o=(0,l.usePathname)(),d=(0,n.useAppStore)(e=>e.agentId),c=(0,r.buildAppNavHref)(s.MANAGE_DEFAULT_HREF,{ensureAgent:!0,agent:d});return o&&!(0,s.isManageRouteEnabled)((0,r.normalizeAppPathname)(o))?(0,t.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,t.jsx)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-4 pb-4",children:(0,t.jsxs)("div",{className:"manage-page-title-block",children:[(0,t.jsx)("h1",{className:"manage-page-title",children:"页面不可用"}),(0,t.jsx)("p",{className:"manage-page-desc",children:"当前设置页未开放或已被禁用。"})]})}),(0,t.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col items-center justify-center gap-3 text-sm text-[var(--ds-muted)]",children:(0,t.jsx)(a.default,{className:"text-zinc-900 underline underline-offset-4",href:c,children:"返回默认设置页"})})]}):(0,t.jsx)(t.Fragment,{children:i})}}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67327,20090,e=>{"use strict";e.s(["useWebSocketSender",()=>a],67327);var t=e.i(71645),n=e.i(65934);e.s(["clearActiveWebSocket",()=>l,"isWebSocketOpen",()=>s,"sendActiveWebSocketJson",()=>i,"setActiveWebSocket",()=>o],20090);let r=null;function s(e){return null!==e&&e.readyState===WebSocket.OPEN}function o(e){r=e}function l(e){r===e&&(r=null)}function i(e){let t=r;return!!s(t)&&(t.send(JSON.stringify(e)),!0)}function a(){let e=(0,t.useCallback)(e=>{let t=i(e);return t&&n.useAppStore.getState().appendLog("→",e),t},[]),r=(0,t.useCallback)(()=>e({type:"reloadAgentConfig"}),[e]),s=(0,t.useCallback)(()=>e({type:"reloadAgentPrompt"}),[e]),o=(0,t.useCallback)((t,n)=>{let r=String(t||"").trim();return!!r&&e({type:"permission.response",requestId:r,behavior:n})},[e]);return{sendJson:e,sendReloadAgentConfig:r,sendReloadAgentPrompt:s,sendPermissionResponse:o}}},3404,e=>{"use strict";e.s(["REASONS",()=>F],3404),e.s(["cancelOpen",()=>T,"chipRemovePress",()=>c,"clearPress",()=>u,"closePress",()=>i,"closeWatcher",()=>P,"dayPress",()=>I,"decrementPress",()=>p,"disabled",()=>L,"drag",()=>A,"escapeKey",()=>w,"focusOut",()=>S,"imperativeAction",()=>M,"incrementPress",()=>g,"inputBlur",()=>h,"inputChange",()=>f,"inputClear",()=>m,"inputPaste",()=>v,"inputPress",()=>b,"itemPress",()=>l,"keyboard",()=>k,"linkPress",()=>a,"listNavigation",()=>C,"monthChange",()=>O,"none",()=>t,"outsidePress",()=>o,"pointer",()=>y,"scrub",()=>j,"siblingOpen",()=>E,"swipe",()=>R,"trackPress",()=>d,"triggerFocus",()=>s,"triggerHover",()=>r,"triggerPress",()=>n,"valuePropChange",()=>W,"wheel",()=>x,"windowResize",()=>B],16162);let t="none",n="trigger-press",r="trigger-hover",s="trigger-focus",o="outside-press",l="item-press",i="close-press",a="link-press",u="clear-press",c="chip-remove-press",d="track-press",g="increment-press",p="decrement-press",f="input-change",m="input-clear",h="input-blur",v="input-paste",b="input-press",S="focus-out",w="escape-key",P="close-watcher",C="list-navigation",k="keyboard",y="pointer",A="drag",x="wheel",j="scrub",T="cancel-open",E="sibling-open",L="disabled",M="imperative-action",R="swipe",B="window-resize",I="day-press",O="month-change",W="value-prop-change";var F=e.i(16162)},94349,83799,89879,5963,e=>{"use strict";e.s(["useControlled",()=>n],94349),e.i(47167);var t=e.i(71645);function n(e){let{controlled:n,default:r,name:s,state:o="value"}=e,{current:l}=t.useRef(void 0!==n),[i,a]=t.useState(r),u=t.useCallback(e=>{l||a(e)},[]);return[l?n:i,u]}e.s(["useBaseUiId",()=>i],89879),e.s(["useId",()=>l],83799);let r={...t},s=0,o=r.useId;function l(e,n){if(void 0!==o){let t=o();return null!=e?e:n?"".concat(n,"-").concat(t):t}return function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"mui",[r,o]=t.useState(e),l=e||r;return t.useEffect(()=>{null==r&&(s+=1,o("".concat(n,"-").concat(s)))},[r,n]),l}(e,n)}function i(e){return l(e,"base-ui")}e.s(["createChangeEventDetails",()=>u],5963);var a=e.i(17514);function u(e,t,n,r){let s=!1,o=!1,l=null!=r?r:a.EMPTY_OBJECT;return{reason:e,event:null!=t?t:new Event("base-ui"),cancel(){s=!0},allowPropagation(){o=!0},get isCanceled(){return s},get isPropagationAllowed(){return o},trigger:n,...l}}},50711,62372,19904,e=>{"use strict";e.s(["usePersistAgentConfig",()=>l,"usePersistAgentConfigField",()=>i],50711);var t=e.i(71645),n=e.i(65934),r=e.i(67327),s=e.i(13354),o=e.i(82136);function l(){let e=(0,n.useAppStore)(e=>e.wsUrl),l=(0,n.useAppStore)(e=>e.apiBase),{sendReloadAgentConfig:i}=(0,r.useWebSocketSender)(),a=(0,t.useCallback)(()=>n.useAppStore.getState().agentId.trim()||"qihoo",[]);return(0,t.useCallback)(async t=>{let r=!!(null==t?void 0:t.silent),u=n.useAppStore.getState(),c={config:{tools:u.agentConfig.tools.slice(),mcpServers:u.agentConfig.mcpServers.slice(),skills:u.agentConfig.skills.slice(),model:u.agentConfig.model,agentTeams:u.agentConfig.agentTeams.slice(),rules:u.agentConfig.rules,env:{...u.agentConfig.env}}};try{await (0,o.saveAgentConfig)(e,l,a(),c.config);let t=n.useAppStore.getState();t.wsConnected&&i(),r?(t.appendLog("agent-config","已写入 agent.json"),t.setStatus("agent.json 已保存".concat(t.wsConnected?",已请求同步 worker":"(未连接 WS 则下次连上后 reload)"),t.bridgeReady?"ready":"")):s.appToast.success(t.wsConnected?"已保存并已请求 worker 重新加载 agent.md + agent.json。":"已保存。重连 WebSocket 后生效。")}catch(e){s.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}},[e,l,i,a])}function i(e){let l=(0,n.useAppStore)(e=>e.wsUrl),i=(0,n.useAppStore)(e=>e.apiBase),{sendReloadAgentConfig:a}=(0,r.useWebSocketSender)(),u=(0,t.useCallback)(()=>n.useAppStore.getState().agentId.trim()||"qihoo",[]);return(0,t.useCallback)(async(t,r)=>{let c=!!(null==r?void 0:r.silent),d=n.useAppStore.getState(),g={config:{tools:d.agentConfig.tools.slice(),mcpServers:d.agentConfig.mcpServers.slice(),skills:d.agentConfig.skills.slice(),model:d.agentConfig.model,agentTeams:d.agentConfig.agentTeams.slice(),rules:d.agentConfig.rules.slice(),env:{...d.agentConfig.env},[e]:t}};try{await (0,o.saveAgentConfig)(l,i,u(),g.config);let e=n.useAppStore.getState();e.wsConnected&&a(),c?(e.appendLog("agent-config","已写入 agent.json"),e.setStatus("agent.json 已保存".concat(e.wsConnected?",已请求同步 worker":"(未连接 WS 则下次连上后 reload)"),e.bridgeReady?"ready":"")):s.appToast.success(e.wsConnected?"已保存并已请求 worker 重新加载 agent.md + agent.json。":"已保存。重连 WebSocket 后生效。")}catch(e){s.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}},[l,i,a,u,e])}e.s(["visuallyHidden",()=>u,"visuallyHiddenInput",()=>c],62372);let a={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1},u={...a,position:"fixed",top:0,left:0},c={...a,position:"absolute"};e.s(["useValueChanged",()=>p],19904);var d=e.i(977),g=e.i(76477);function p(e,n){let r=t.useRef(e),s=(0,g.useStableCallback)(n);(0,d.useIsoLayoutEffect)(()=>{r.current!==e&&s(r.current)},[e,s]),(0,d.useIsoLayoutEffect)(()=>{r.current=e},[e])}},43084,e=>{"use strict";e.s(["clamp",()=>u,"createCoords",()=>i,"evaluate",()=>c,"floor",()=>l,"getAlignment",()=>g,"getAlignmentAxis",()=>h,"getAlignmentSides",()=>v,"getAxisLength",()=>f,"getExpandedPlacements",()=>b,"getOppositeAlignmentPlacement",()=>S,"getOppositeAxis",()=>p,"getOppositeAxisPlacements",()=>y,"getOppositePlacement",()=>A,"getPaddingObject",()=>x,"getSide",()=>d,"getSideAxis",()=>m,"max",()=>s,"min",()=>r,"placements",()=>n,"rectToClientRect",()=>j,"round",()=>o,"sides",()=>t]);let t=["top","right","bottom","left"],n=t.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]),r=Math.min,s=Math.max,o=Math.round,l=Math.floor,i=e=>({x:e,y:e}),a={left:"right",right:"left",bottom:"top",top:"bottom"};function u(e,t,n){return s(e,r(t,n))}function c(e,t){return"function"==typeof e?e(t):e}function d(e){return e.split("-")[0]}function g(e){return e.split("-")[1]}function p(e){return"x"===e?"y":"x"}function f(e){return"y"===e?"height":"width"}function m(e){let t=e[0];return"t"===t||"b"===t?"y":"x"}function h(e){return p(m(e))}function v(e,t,n){void 0===n&&(n=!1);let r=g(e),s=h(e),o=f(s),l="x"===s?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[o]>t.floating[o]&&(l=A(l)),[l,A(l)]}function b(e){let t=A(e);return[S(e),t,S(t)]}function S(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}let w=["left","right"],P=["right","left"],C=["top","bottom"],k=["bottom","top"];function y(e,t,n,r){let s=g(e),o=function(e,t,n){switch(e){case"top":case"bottom":if(n)return t?P:w;return t?w:P;case"left":case"right":return t?C:k;default:return[]}}(d(e),"start"===n,r);return s&&(o=o.map(e=>e+"-"+s),t&&(o=o.concat(o.map(S)))),o}function A(e){let t=d(e);return a[t]+e.slice(t.length)}function x(e){return"number"!=typeof e?{top:0,right:0,bottom:0,left:0,...e}:{top:e,right:e,bottom:e,left:e}}function j(e){let{x:t,y:n,width:r,height:s}=e;return{width:r,height:s,top:n,left:t,right:t+r,bottom:n+s,x:t,y:n}}},46798,e=>{"use strict";e.s(["Tooltip",()=>u,"TooltipContent",()=>d,"TooltipProvider",()=>a,"TooltipTrigger",()=>c]);var t=e.i(18050),n=e.i(71645),r=e.i(74080),s=e.i(75157);let o=n.createContext(null),l=n.createContext({delayDuration:0,side:"bottom",align:"center"});function i(){let e=n.useContext(o);if(!e)throw Error("Tooltip components must be used inside <Tooltip>.");return e}function a(e){let{delayDuration:n=0,side:r="bottom",align:s="center",children:o}=e;return(0,t.jsx)(l.Provider,{value:{delayDuration:n,side:r,align:s},children:o})}function u(e){let{children:r}=e,{delayDuration:s}=n.useContext(l),[i,a]=n.useState(!1),u=n.useRef(null),c=n.useRef(null),d=n.useId(),g=n.useCallback(()=>{null!==u.current&&(window.clearTimeout(u.current),u.current=null),a(!1)},[]),p=n.useCallback(()=>{if(null!==u.current&&(window.clearTimeout(u.current),u.current=null),s<=0)return void a(!0);u.current=window.setTimeout(()=>{a(!0),u.current=null},s)},[s]);return n.useEffect(()=>()=>{null!==u.current&&window.clearTimeout(u.current)},[]),(0,t.jsx)(o.Provider,{value:{open:i,delayDuration:s,contentId:d,triggerRef:c,openWithDelay:p,close:g},children:(0,t.jsx)("span",{ref:c,"data-slot":"tooltip",className:"relative inline-flex",children:r})})}function c(e){let{asChild:r,children:s,...o}=e,{open:l,contentId:a,openWithDelay:u,close:c}=i(),d={"aria-describedby":l?a:void 0};if(r&&n.isValidElement(s)){let e=s.props;return n.cloneElement(s,{...o,...e,...d,onMouseEnter:t=>{var n,r;null==(n=e.onMouseEnter)||n.call(e,t),null==(r=o.onMouseEnter)||r.call(o,t),t.defaultPrevented||u()},onMouseLeave:t=>{var n,r;null==(n=e.onMouseLeave)||n.call(e,t),null==(r=o.onMouseLeave)||r.call(o,t),t.defaultPrevented||c()},onFocus:t=>{var n,r;null==(n=e.onFocus)||n.call(e,t),null==(r=o.onFocus)||r.call(o,t),t.defaultPrevented||u()},onBlur:t=>{var n,r;null==(n=e.onBlur)||n.call(e,t),null==(r=o.onBlur)||r.call(o,t),t.defaultPrevented||c()}})}return(0,t.jsx)("span",{"data-slot":"tooltip-trigger",...o,...d,onMouseEnter:e=>{var t;null==(t=o.onMouseEnter)||t.call(o,e),e.defaultPrevented||u()},onMouseLeave:e=>{var t;null==(t=o.onMouseLeave)||t.call(o,e),e.defaultPrevented||c()},onFocus:e=>{var t;null==(t=o.onFocus)||t.call(o,e),e.defaultPrevented||u()},onBlur:e=>{var t;null==(t=o.onBlur)||t.call(o,e),e.defaultPrevented||c()},children:s})}function d(e){let{className:o,side:a,align:u,sideOffset:c=8,...d}=e,{open:g,contentId:p,triggerRef:f}=i(),{side:m,align:h}=n.useContext(l),v=null!=a?a:m,b=null!=u?u:h,[S,w]=n.useState({});return(n.useLayoutEffect(()=>{let e=()=>{let e=f.current;if(!e)return;let t=e.getBoundingClientRect(),n=0,r=0,s="",o="";"top"===v||"bottom"===v?("start"===b&&(r=t.left),"center"===b&&(r=t.left+t.width/2,s="-50%"),"end"===b&&(r=t.right)):("start"===b&&(n=t.top),"center"===b&&(n=t.top+t.height/2,o="-50%"),"end"===b&&(n=t.bottom)),"bottom"===v&&(n=t.bottom+c),"top"===v&&(n=t.top-c,o="-100%"),"right"===v&&(r=t.right+c),"left"===v&&(r=t.left-c,s="-100%"),w({position:"fixed",top:n,left:r,transform:[s&&"translateX(".concat(s,")"),o&&"translateY(".concat(o,")")].filter(Boolean).join(" ")||void 0})};return e(),window.addEventListener("resize",e),window.addEventListener("scroll",e,!0),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e,!0)}},[g,v,b,c,f]),g&&"undefined"!=typeof document)?(0,r.createPortal)((0,t.jsx)("div",{id:p,role:"tooltip","data-slot":"tooltip-content",className:(0,s.cn)("pointer-events-none z-50","w-max max-w-[300px] rounded-md bg-black/70 px-3 py-1 text-xs text-white shadow-md","animate-in fade-in-0 zoom-in-95",o),style:S,...d}),document.body):null}},92413,e=>{"use strict";function t(e){return(e.summary||e.firstPrompt||e.sessionId||"(无标题)").slice(0,120)}function n(e){let t=new Map;for(let n of e){let e=function(e){let t=new Date(e.lastModified||e.createdAt||0);if(!Number.isFinite(t.getTime()))return"未知日期";let n=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0");return"".concat(n,"-").concat(r)}(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return[...t.keys()].sort((e,t)=>t.localeCompare(e)).map(e=>{var n;return{key:e,items:null!=(n=t.get(e))?n:[]}})}function r(e){let t=e.split("-"),n=t[0]&&/^[0-9a-fA-F]{8}$/.test(t[0])?t[0]:e.slice(0,8);return"".concat(n,"...")}function s(e){return String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}e.s(["escapeHtml",()=>s,"groupSessionsByMonth",()=>n,"sessionTitle",()=>t,"shortUuidTitle",()=>r])},97249,e=>{"use strict";e.s(["buildAppNavHref",()=>s,"buildSettingsHref",()=>l,"getSettingsRouteByPathname",()=>u,"getSettingsSlugFromSegments",()=>a,"isSettingsRoutePath",()=>c,"normalizeAppPathname",()=>r],97249);var t=e.i(47167);!function(){var e;let n=null==(e=t.default.env.NEXT_PUBLIC_BASE_PATH)?void 0:e.trim();n&&n.length>0&&n.replace(/\/+$/,"")}();let n="/index.html";function r(e){let t=function(e){let t=i(e);return t.endsWith(n)?t.slice(0,-n.length)||"/":t}(e);return"/"===t?"/":i(t.split("/").map((e,t)=>0!==t&&e&&e.replace(/\.[A-Za-z0-9]+$/,"")||e).join("/"))}function s(e,t,n){var r,s,o,l,i,a;let u=function(e,t){let n="/"===e?"/":e.startsWith("/")?e:"/".concat(e);return n}(e),c=function(e){if(e instanceof URLSearchParams||"string"==typeof e)return new URLSearchParams(e);if(e){let t=new URLSearchParams;return Object.entries(e).forEach(e=>{let[n,r]=e;"string"==typeof r&&r?t.set(n,r):Array.isArray(r)&&r[0]&&t.set(n,r[0])}),t}return new URLSearchParams(window.location.search)}(n),d="/"===e||""===e;if(null==t?void 0:t.ensureAgent){let e=(null!=(s=null!=(r=t.agent)?r:c.get("agent"))?s:"").trim()||"qihoo";c.set("agent",e)}else{let e=(null!=(l=null!=(o=null==t?void 0:t.agent)?o:c.get("agent"))?l:"").trim();e?c.set("agent",e):c.delete("agent")}if(d&&(null==t?void 0:t.preserveSessionId)!==!1){let e=(null!=(a=null!=(i=null==t?void 0:t.sessionId)?i:c.get("sessionId"))?a:"").trim();e?c.set("sessionId",e):c.delete("sessionId")}else c.delete("sessionId");let g=c.toString();return g?"".concat(u,"?").concat(g):u}let o="/manage";function l(e){return"".concat(o,"/").concat(e)}function i(e){return e.replace(/\/+$/,"")||"/"}function a(e){if(!(null==e?void 0:e.length))return null;let t="index.html"===e.at(-1)?e.slice(0,-1):e;return t.length?t.join("/"):null}function u(e,t){let n=r(e);return t.find(e=>i(e.href)===n)}function c(e,t){if(!e)return!1;let n=r(e);return n===o||t.some(e=>{let t=i(e.href);return n===t||n.startsWith("".concat(t,"/"))})}},2578,e=>{e.v(t=>Promise.all(["static/chunks/8c0da143ceae2767.js"].map(t=>e.l(t))).then(()=>t(31862)))},94065,e=>{e.v(t=>Promise.all(["static/chunks/da9e5c89b442680d.js","static/chunks/28e0ccfb90ce8236.js","static/chunks/69c7407ef6f8340c.js","static/chunks/8fe28f6505d26d57.js"].map(t=>e.l(t))).then(()=>t(20291)))},34116,e=>{e.v(t=>Promise.all(["static/chunks/e3cd46a9e9e97850.js","static/chunks/69c7407ef6f8340c.js","static/chunks/a79654d570ac30eb.js","static/chunks/8fe28f6505d26d57.js"].map(t=>e.l(t))).then(()=>t(86404)))},37362,e=>{e.v(t=>Promise.all(["static/chunks/fedb1cd789e83a36.js"].map(t=>e.l(t))).then(()=>t(98083)))},1861,e=>{e.v(t=>Promise.all(["static/chunks/b23f3d1216dcec54.js"].map(t=>e.l(t))).then(()=>t(62849)))},18963,e=>{e.v(t=>Promise.all(["static/chunks/cd622961f697016c.js"].map(t=>e.l(t))).then(()=>t(89530)))},9803,e=>{e.v(t=>Promise.all(["static/chunks/3e9de8191bf84a21.js"].map(t=>e.l(t))).then(()=>t(28583)))},69496,e=>{e.v(t=>Promise.all(["static/chunks/52464e6ba324e8ed.js"].map(t=>e.l(t))).then(()=>t(47079)))},56149,e=>{e.v(t=>Promise.all(["static/chunks/6209b42cbfcf288a.js"].map(t=>e.l(t))).then(()=>t(51459)))}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24687,e=>{"use strict";e.s(["Textarea",()=>o]);var a=e.i(18050),s=e.i(75157);function o(e){let{className:o,...r}=e;return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,s.cn)("flex min-h-20 w-full rounded-md border border-solid border-border bg-transparent px-3 py-2 text-sm outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none]",o),...r})}},98083,e=>{"use strict";e.s(["AgentManageView",()=>u],98083);var a=e.i(18050),s=e.i(71645),o=e.i(19455),r=e.i(13354),t=e.i(75157),i=e.i(24687);function n(e){let{value:s,onChange:o,loading:r=!1,className:n}=e;return(0,a.jsx)("div",{className:(0,t.cn)("flex min-h-[200px] flex-col",n),children:r?(0,a.jsx)("div",{className:"tool-files-state py-4",children:"加载 agent.md…"}):(0,a.jsx)(i.Textarea,{className:(0,t.cn)("agent-md-editor min-h-[110px] resize-y focus-visible:ring-1 focus-visible:ring-ring"),spellCheck:!1,value:s,onChange:e=>o(e.target.value),placeholder:"编辑当前 Agent 的提示词(agent.md)"})})}var l=e.i(87243),d=e.i(82136),c=e.i(65934);function u(){let{agentMdText:e,setAgentMdText:t,agentLoading:i,loadAgentPrompt:u,saveAgentPrompt:b}=function(e){let{currentAgent:a}=(0,l.useSession)(),o=(0,c.useAppStore)(e=>e.wsUrl),t=(0,c.useAppStore)(e=>e.apiBase),[i,n]=(0,s.useState)(!1),[u,b]=(0,s.useState)(""),f=(0,s.useCallback)(async()=>{n(!0);try{let e=await (0,d.loadAgentPrompt)(o,t,a());b(e)}catch(e){r.appToast.error("加载 agent.md 失败:".concat(e instanceof Error?e.message:String(e)))}finally{n(!1)}},[o,t,a]),x=(0,s.useCallback)(async e=>{await (0,d.saveAgentPrompt)(o,t,a(),u),(null==e?void 0:e.silent)||r.appToast.success("已保存 agent.md。")},[o,t,a,u]);return(0,s.useEffect)(()=>{f()},[f,void 0]),{agentMdText:u,setAgentMdText:b,agentLoading:i,loadAgentPrompt:f,saveAgentPrompt:x}}(),[f,x]=(0,s.useState)(!1),p=(0,s.useCallback)(async()=>{x(!0);try{await b()}catch(e){r.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}finally{x(!1)}},[b]);return(0,a.jsxs)("div",{className:"manage-page-content flex min-h-0 flex-1 flex-col rounded-xl border bg-[#fff] shadow-[var(--shadow-md)]",children:[(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col p-4",children:(0,a.jsx)(n,{value:e,onChange:t,loading:i,className:"min-h-0 flex-1"})}),(0,a.jsxs)("div",{className:"flex shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] px-4 py-3",children:[(0,a.jsx)(o.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:i||f,onClick:()=>void u(),children:"取消"}),(0,a.jsx)(o.Button,{type:"button",size:"lg",disabled:i||f,onClick:()=>void p(),children:"保存"})]})]})}}]);