@av-pi-studio/web-client 0.0.49 → 0.0.51

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 (43) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/web/assets/{BinaryFallbackViewer-BqWD5myp.js → BinaryFallbackViewer-BCheCWlj.js} +2 -2
  3. package/dist/web/assets/{BinaryFallbackViewer-BqWD5myp.js.map → BinaryFallbackViewer-BCheCWlj.js.map} +1 -1
  4. package/dist/web/assets/{ChatPanel-Cghr4FA9.js → ChatPanel-K1uSkIOF.js} +3 -3
  5. package/dist/web/assets/{ChatPanel-Cghr4FA9.js.map → ChatPanel-K1uSkIOF.js.map} +1 -1
  6. package/dist/web/assets/{CodeView-Cr7QCw_g.js → CodeView-wz9a-TBl.js} +2 -2
  7. package/dist/web/assets/{CodeView-Cr7QCw_g.js.map → CodeView-wz9a-TBl.js.map} +1 -1
  8. package/dist/web/assets/FilePanel-B88cfGeN.js +2 -0
  9. package/dist/web/assets/{FilePanel-D10heC-L.js.map → FilePanel-B88cfGeN.js.map} +1 -1
  10. package/dist/web/assets/{ImageViewer-5clHM3Nh.js → ImageViewer-DMuVw1TC.js} +2 -2
  11. package/dist/web/assets/{ImageViewer-5clHM3Nh.js.map → ImageViewer-DMuVw1TC.js.map} +1 -1
  12. package/dist/web/assets/MarkdownFileViewer-D9pKcm5W.js +2 -0
  13. package/dist/web/assets/{MarkdownFileViewer-Dd70piQk.js.map → MarkdownFileViewer-D9pKcm5W.js.map} +1 -1
  14. package/dist/web/assets/{MoleculeViewerPanel-DFx9LSN6.js → MoleculeViewerPanel-DWiCnr-2.js} +2 -2
  15. package/dist/web/assets/{MoleculeViewerPanel-DFx9LSN6.js.map → MoleculeViewerPanel-DWiCnr-2.js.map} +1 -1
  16. package/dist/web/assets/{TerminalPanel-L9DJMwB6.js → TerminalPanel-DgCqvB_u.js} +2 -2
  17. package/dist/web/assets/{TerminalPanel-L9DJMwB6.js.map → TerminalPanel-DgCqvB_u.js.map} +1 -1
  18. package/dist/web/assets/{TextViewer-BDXrL58w.js → TextViewer-CCNwnC6m.js} +2 -2
  19. package/dist/web/assets/{TextViewer-BDXrL58w.js.map → TextViewer-CCNwnC6m.js.map} +1 -1
  20. package/dist/web/assets/{VideoViewer-DfNnw1AJ.js → VideoViewer-F211X3SB.js} +2 -2
  21. package/dist/web/assets/{VideoViewer-DfNnw1AJ.js.map → VideoViewer-F211X3SB.js.map} +1 -1
  22. package/dist/web/assets/index-BLc00KUW.css +1 -0
  23. package/dist/web/assets/index-CqmgQdsG.js +3 -0
  24. package/dist/web/assets/index-CqmgQdsG.js.map +1 -0
  25. package/dist/web/assets/markdown-CTYolZ3e.js +2 -0
  26. package/dist/web/assets/{markdown-0OCAeyJh.js.map → markdown-CTYolZ3e.js.map} +1 -1
  27. package/dist/web/assets/{use-file-download-C5ZdZp1T.js → use-file-download-BoIvv6b7.js} +2 -2
  28. package/dist/web/assets/{use-file-download-C5ZdZp1T.js.map → use-file-download-BoIvv6b7.js.map} +1 -1
  29. package/dist/web/assets/{use-file-watch-2C2o-DDo.js → use-file-watch-BY4_Mzyt.js} +2 -2
  30. package/dist/web/assets/{use-file-watch-2C2o-DDo.js.map → use-file-watch-BY4_Mzyt.js.map} +1 -1
  31. package/dist/web/assets/{vendor-icons-CAhpOZSZ.js → vendor-icons-CctYQ66i.js} +72 -47
  32. package/dist/web/assets/vendor-icons-CctYQ66i.js.map +1 -0
  33. package/dist/web/index.html +3 -3
  34. package/package.json +3 -3
  35. package/dist/web/assets/FilePanel-D10heC-L.js +0 -2
  36. package/dist/web/assets/MarkdownFileViewer-Dd70piQk.js +0 -2
  37. package/dist/web/assets/index-Bu36Yj2q.css +0 -1
  38. package/dist/web/assets/index-Ds0VVcbZ.js +0 -3
  39. package/dist/web/assets/index-Ds0VVcbZ.js.map +0 -1
  40. package/dist/web/assets/markdown-0OCAeyJh.js +0 -2
  41. package/dist/web/assets/paths--dEDMUm1.js +0 -2
  42. package/dist/web/assets/paths--dEDMUm1.js.map +0 -1
  43. package/dist/web/assets/vendor-icons-CAhpOZSZ.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor-icons-CctYQ66i.js","sources":["../../../node_modules/lucide-react/dist/esm/shared/src/utils.js","../../../node_modules/lucide-react/dist/esm/defaultAttributes.js","../../../node_modules/lucide-react/dist/esm/Icon.js","../../../node_modules/lucide-react/dist/esm/createLucideIcon.js","../../../node_modules/lucide-react/dist/esm/icons/archive.js","../../../node_modules/lucide-react/dist/esm/icons/arrow-up.js","../../../node_modules/lucide-react/dist/esm/icons/atom.js","../../../node_modules/lucide-react/dist/esm/icons/check.js","../../../node_modules/lucide-react/dist/esm/icons/chevron-down.js","../../../node_modules/lucide-react/dist/esm/icons/chevron-right.js","../../../node_modules/lucide-react/dist/esm/icons/clock.js","../../../node_modules/lucide-react/dist/esm/icons/coins.js","../../../node_modules/lucide-react/dist/esm/icons/copy.js","../../../node_modules/lucide-react/dist/esm/icons/cpu.js","../../../node_modules/lucide-react/dist/esm/icons/dollar-sign.js","../../../node_modules/lucide-react/dist/esm/icons/download.js","../../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.js","../../../node_modules/lucide-react/dist/esm/icons/external-link.js","../../../node_modules/lucide-react/dist/esm/icons/eye.js","../../../node_modules/lucide-react/dist/esm/icons/file-plus.js","../../../node_modules/lucide-react/dist/esm/icons/file-question.js","../../../node_modules/lucide-react/dist/esm/icons/file-text.js","../../../node_modules/lucide-react/dist/esm/icons/file.js","../../../node_modules/lucide-react/dist/esm/icons/folder-closed.js","../../../node_modules/lucide-react/dist/esm/icons/folder-open.js","../../../node_modules/lucide-react/dist/esm/icons/folder-plus.js","../../../node_modules/lucide-react/dist/esm/icons/folder.js","../../../node_modules/lucide-react/dist/esm/icons/gauge.js","../../../node_modules/lucide-react/dist/esm/icons/git-branch.js","../../../node_modules/lucide-react/dist/esm/icons/git-compare.js","../../../node_modules/lucide-react/dist/esm/icons/globe.js","../../../node_modules/lucide-react/dist/esm/icons/list-tree.js","../../../node_modules/lucide-react/dist/esm/icons/loader-circle.js","../../../node_modules/lucide-react/dist/esm/icons/message-square.js","../../../node_modules/lucide-react/dist/esm/icons/navigation.js","../../../node_modules/lucide-react/dist/esm/icons/panel-left-close.js","../../../node_modules/lucide-react/dist/esm/icons/panel-left-open.js","../../../node_modules/lucide-react/dist/esm/icons/panel-right-close.js","../../../node_modules/lucide-react/dist/esm/icons/panel-right-open.js","../../../node_modules/lucide-react/dist/esm/icons/paperclip.js","../../../node_modules/lucide-react/dist/esm/icons/pencil.js","../../../node_modules/lucide-react/dist/esm/icons/plus.js","../../../node_modules/lucide-react/dist/esm/icons/rotate-cw.js","../../../node_modules/lucide-react/dist/esm/icons/search.js","../../../node_modules/lucide-react/dist/esm/icons/send.js","../../../node_modules/lucide-react/dist/esm/icons/slash.js","../../../node_modules/lucide-react/dist/esm/icons/square-terminal.js","../../../node_modules/lucide-react/dist/esm/icons/square.js","../../../node_modules/lucide-react/dist/esm/icons/terminal.js","../../../node_modules/lucide-react/dist/esm/icons/trash-2.js","../../../node_modules/lucide-react/dist/esm/icons/upload.js","../../../node_modules/lucide-react/dist/esm/icons/x.js"],"sourcesContent":["/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\n\nexport { mergeClasses, toKebabCase };\n//# sourceMappingURL=utils.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => {\n return createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n );\n }\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(`lucide-${toKebabCase(iconName)}`, className),\n ...props\n })\n );\n Component.displayName = `${iconName}`;\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"20\", height: \"5\", x: \"2\", y: \"3\", rx: \"1\", key: \"1wp1u1\" }],\n [\"path\", { d: \"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8\", key: \"1s80jp\" }],\n [\"path\", { d: \"M10 12h4\", key: \"a56b0p\" }]\n];\nconst Archive = createLucideIcon(\"Archive\", __iconNode);\n\nexport { __iconNode, Archive as default };\n//# sourceMappingURL=archive.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m5 12 7-7 7 7\", key: \"hav0vg\" }],\n [\"path\", { d: \"M12 19V5\", key: \"x0mq9r\" }]\n];\nconst ArrowUp = createLucideIcon(\"ArrowUp\", __iconNode);\n\nexport { __iconNode, ArrowUp as default };\n//# sourceMappingURL=arrow-up.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\n \"path\",\n {\n d: \"M20.2 20.2c2.04-2.03.02-7.36-4.5-11.9-4.54-4.52-9.87-6.54-11.9-4.5-2.04 2.03-.02 7.36 4.5 11.9 4.54 4.52 9.87 6.54 11.9 4.5Z\",\n key: \"1l2ple\"\n }\n ],\n [\n \"path\",\n {\n d: \"M15.7 15.7c4.52-4.54 6.54-9.87 4.5-11.9-2.03-2.04-7.36-.02-11.9 4.5-4.52 4.54-6.54 9.87-4.5 11.9 2.03 2.04 7.36.02 11.9-4.5Z\",\n key: \"1wam0m\"\n }\n ]\n];\nconst Atom = createLucideIcon(\"Atom\", __iconNode);\n\nexport { __iconNode, Atom as default };\n//# sourceMappingURL=atom.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"Check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m6 9 6 6 6-6\", key: \"qrunsl\" }]];\nconst ChevronDown = createLucideIcon(\"ChevronDown\", __iconNode);\n\nexport { __iconNode, ChevronDown as default };\n//# sourceMappingURL=chevron-down.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"ChevronRight\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"polyline\", { points: \"12 6 12 12 16 14\", key: \"68esgv\" }]\n];\nconst Clock = createLucideIcon(\"Clock\", __iconNode);\n\nexport { __iconNode, Clock as default };\n//# sourceMappingURL=clock.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"8\", cy: \"8\", r: \"6\", key: \"3yglwk\" }],\n [\"path\", { d: \"M18.09 10.37A6 6 0 1 1 10.34 18\", key: \"t5s6rm\" }],\n [\"path\", { d: \"M7 6h1v4\", key: \"1obek4\" }],\n [\"path\", { d: \"m16.71 13.88.7.71-2.82 2.82\", key: \"1rbuyh\" }]\n];\nconst Coins = createLucideIcon(\"Coins\", __iconNode);\n\nexport { __iconNode, Coins as default };\n//# sourceMappingURL=coins.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n];\nconst Copy = createLucideIcon(\"Copy\", __iconNode);\n\nexport { __iconNode, Copy as default };\n//# sourceMappingURL=copy.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"16\", height: \"16\", x: \"4\", y: \"4\", rx: \"2\", key: \"14l7u7\" }],\n [\"rect\", { width: \"6\", height: \"6\", x: \"9\", y: \"9\", rx: \"1\", key: \"5aljv4\" }],\n [\"path\", { d: \"M15 2v2\", key: \"13l42r\" }],\n [\"path\", { d: \"M15 20v2\", key: \"15mkzm\" }],\n [\"path\", { d: \"M2 15h2\", key: \"1gxd5l\" }],\n [\"path\", { d: \"M2 9h2\", key: \"1bbxkp\" }],\n [\"path\", { d: \"M20 15h2\", key: \"19e6y8\" }],\n [\"path\", { d: \"M20 9h2\", key: \"19tzq7\" }],\n [\"path\", { d: \"M9 2v2\", key: \"165o2o\" }],\n [\"path\", { d: \"M9 20v2\", key: \"i2bqo8\" }]\n];\nconst Cpu = createLucideIcon(\"Cpu\", __iconNode);\n\nexport { __iconNode, Cpu as default };\n//# sourceMappingURL=cpu.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"line\", { x1: \"12\", x2: \"12\", y1: \"2\", y2: \"22\", key: \"7eqyqh\" }],\n [\"path\", { d: \"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\", key: \"1b0p4s\" }]\n];\nconst DollarSign = createLucideIcon(\"DollarSign\", __iconNode);\n\nexport { __iconNode, DollarSign as default };\n//# sourceMappingURL=dollar-sign.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"polyline\", { points: \"7 10 12 15 17 10\", key: \"2ggqvy\" }],\n [\"line\", { x1: \"12\", x2: \"12\", y1: \"15\", y2: \"3\", key: \"1vk2je\" }]\n];\nconst Download = createLucideIcon(\"Download\", __iconNode);\n\nexport { __iconNode, Download as default };\n//# sourceMappingURL=download.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\"circle\", { cx: \"12\", cy: \"5\", r: \"1\", key: \"gxeob9\" }],\n [\"circle\", { cx: \"12\", cy: \"19\", r: \"1\", key: \"lyex9k\" }]\n];\nconst EllipsisVertical = createLucideIcon(\"EllipsisVertical\", __iconNode);\n\nexport { __iconNode, EllipsisVertical as default };\n//# sourceMappingURL=ellipsis-vertical.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 3h6v6\", key: \"1q9fwt\" }],\n [\"path\", { d: \"M10 14 21 3\", key: \"gplh6r\" }],\n [\"path\", { d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\", key: \"a6xqqp\" }]\n];\nconst ExternalLink = createLucideIcon(\"ExternalLink\", __iconNode);\n\nexport { __iconNode, ExternalLink as default };\n//# sourceMappingURL=external-link.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0\",\n key: \"1nclc0\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"3\", key: \"1v7zrd\" }]\n];\nconst Eye = createLucideIcon(\"Eye\", __iconNode);\n\nexport { __iconNode, Eye as default };\n//# sourceMappingURL=eye.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z\", key: \"1rqfz7\" }],\n [\"path\", { d: \"M14 2v4a2 2 0 0 0 2 2h4\", key: \"tnqrlb\" }],\n [\"path\", { d: \"M9 15h6\", key: \"cctwl0\" }],\n [\"path\", { d: \"M12 18v-6\", key: \"17g6i2\" }]\n];\nconst FilePlus = createLucideIcon(\"FilePlus\", __iconNode);\n\nexport { __iconNode, FilePlus as default };\n//# sourceMappingURL=file-plus.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 17h.01\", key: \"p32p05\" }],\n [\"path\", { d: \"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z\", key: \"1mlx9k\" }],\n [\"path\", { d: \"M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3\", key: \"mhlwft\" }]\n];\nconst FileQuestion = createLucideIcon(\"FileQuestion\", __iconNode);\n\nexport { __iconNode, FileQuestion as default };\n//# sourceMappingURL=file-question.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z\", key: \"1rqfz7\" }],\n [\"path\", { d: \"M14 2v4a2 2 0 0 0 2 2h4\", key: \"tnqrlb\" }],\n [\"path\", { d: \"M10 9H8\", key: \"b1mrlr\" }],\n [\"path\", { d: \"M16 13H8\", key: \"t4e002\" }],\n [\"path\", { d: \"M16 17H8\", key: \"z1uh3a\" }]\n];\nconst FileText = createLucideIcon(\"FileText\", __iconNode);\n\nexport { __iconNode, FileText as default };\n//# sourceMappingURL=file-text.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z\", key: \"1rqfz7\" }],\n [\"path\", { d: \"M14 2v4a2 2 0 0 0 2 2h4\", key: \"tnqrlb\" }]\n];\nconst File = createLucideIcon(\"File\", __iconNode);\n\nexport { __iconNode, File as default };\n//# sourceMappingURL=file.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\",\n key: \"1kt360\"\n }\n ],\n [\"path\", { d: \"M2 10h20\", key: \"1ir3d8\" }]\n];\nconst FolderClosed = createLucideIcon(\"FolderClosed\", __iconNode);\n\nexport { __iconNode, FolderClosed as default };\n//# sourceMappingURL=folder-closed.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2\",\n key: \"usdka0\"\n }\n ]\n];\nconst FolderOpen = createLucideIcon(\"FolderOpen\", __iconNode);\n\nexport { __iconNode, FolderOpen as default };\n//# sourceMappingURL=folder-open.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 10v6\", key: \"1bos4e\" }],\n [\"path\", { d: \"M9 13h6\", key: \"1uhe8q\" }],\n [\n \"path\",\n {\n d: \"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\",\n key: \"1kt360\"\n }\n ]\n];\nconst FolderPlus = createLucideIcon(\"FolderPlus\", __iconNode);\n\nexport { __iconNode, FolderPlus as default };\n//# sourceMappingURL=folder-plus.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\",\n key: \"1kt360\"\n }\n ]\n];\nconst Folder = createLucideIcon(\"Folder\", __iconNode);\n\nexport { __iconNode, Folder as default };\n//# sourceMappingURL=folder.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m12 14 4-4\", key: \"9kzdfg\" }],\n [\"path\", { d: \"M3.34 19a10 10 0 1 1 17.32 0\", key: \"19p75a\" }]\n];\nconst Gauge = createLucideIcon(\"Gauge\", __iconNode);\n\nexport { __iconNode, Gauge as default };\n//# sourceMappingURL=gauge.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"line\", { x1: \"6\", x2: \"6\", y1: \"3\", y2: \"15\", key: \"17qcm7\" }],\n [\"circle\", { cx: \"18\", cy: \"6\", r: \"3\", key: \"1h7g24\" }],\n [\"circle\", { cx: \"6\", cy: \"18\", r: \"3\", key: \"fqmcym\" }],\n [\"path\", { d: \"M18 9a9 9 0 0 1-9 9\", key: \"n2h4wq\" }]\n];\nconst GitBranch = createLucideIcon(\"GitBranch\", __iconNode);\n\nexport { __iconNode, GitBranch as default };\n//# sourceMappingURL=git-branch.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"18\", cy: \"18\", r: \"3\", key: \"1xkwt0\" }],\n [\"circle\", { cx: \"6\", cy: \"6\", r: \"3\", key: \"1lh9wr\" }],\n [\"path\", { d: \"M13 6h3a2 2 0 0 1 2 2v7\", key: \"1yeb86\" }],\n [\"path\", { d: \"M11 18H8a2 2 0 0 1-2-2V9\", key: \"19pyzm\" }]\n];\nconst GitCompare = createLucideIcon(\"GitCompare\", __iconNode);\n\nexport { __iconNode, GitCompare as default };\n//# sourceMappingURL=git-compare.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20\", key: \"13o1zl\" }],\n [\"path\", { d: \"M2 12h20\", key: \"9i4pu4\" }]\n];\nconst Globe = createLucideIcon(\"Globe\", __iconNode);\n\nexport { __iconNode, Globe as default };\n//# sourceMappingURL=globe.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M21 12h-8\", key: \"1bmf0i\" }],\n [\"path\", { d: \"M21 6H8\", key: \"1pqkrb\" }],\n [\"path\", { d: \"M21 18h-8\", key: \"1tm79t\" }],\n [\"path\", { d: \"M3 6v4c0 1.1.9 2 2 2h3\", key: \"1ywdgy\" }],\n [\"path\", { d: \"M3 10v6c0 1.1.9 2 2 2h3\", key: \"2wc746\" }]\n];\nconst ListTree = createLucideIcon(\"ListTree\", __iconNode);\n\nexport { __iconNode, ListTree as default };\n//# sourceMappingURL=list-tree.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M21 12a9 9 0 1 1-6.219-8.56\", key: \"13zald\" }]];\nconst LoaderCircle = createLucideIcon(\"LoaderCircle\", __iconNode);\n\nexport { __iconNode, LoaderCircle as default };\n//# sourceMappingURL=loader-circle.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\", key: \"1lielz\" }]\n];\nconst MessageSquare = createLucideIcon(\"MessageSquare\", __iconNode);\n\nexport { __iconNode, MessageSquare as default };\n//# sourceMappingURL=message-square.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"polygon\", { points: \"3 11 22 2 13 21 11 13 3 11\", key: \"1ltx0t\" }]\n];\nconst Navigation = createLucideIcon(\"Navigation\", __iconNode);\n\nexport { __iconNode, Navigation as default };\n//# sourceMappingURL=navigation.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M9 3v18\", key: \"fh3hqa\" }],\n [\"path\", { d: \"m16 15-3-3 3-3\", key: \"14y99z\" }]\n];\nconst PanelLeftClose = createLucideIcon(\"PanelLeftClose\", __iconNode);\n\nexport { __iconNode, PanelLeftClose as default };\n//# sourceMappingURL=panel-left-close.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M9 3v18\", key: \"fh3hqa\" }],\n [\"path\", { d: \"m14 9 3 3-3 3\", key: \"8010ee\" }]\n];\nconst PanelLeftOpen = createLucideIcon(\"PanelLeftOpen\", __iconNode);\n\nexport { __iconNode, PanelLeftOpen as default };\n//# sourceMappingURL=panel-left-open.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M15 3v18\", key: \"14nvp0\" }],\n [\"path\", { d: \"m8 9 3 3-3 3\", key: \"12hl5m\" }]\n];\nconst PanelRightClose = createLucideIcon(\"PanelRightClose\", __iconNode);\n\nexport { __iconNode, PanelRightClose as default };\n//# sourceMappingURL=panel-right-close.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M15 3v18\", key: \"14nvp0\" }],\n [\"path\", { d: \"m10 15-3-3 3-3\", key: \"1pgupc\" }]\n];\nconst PanelRightOpen = createLucideIcon(\"PanelRightOpen\", __iconNode);\n\nexport { __iconNode, PanelRightOpen as default };\n//# sourceMappingURL=panel-right-open.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M13.234 20.252 21 12.3\", key: \"1cbrk9\" }],\n [\n \"path\",\n {\n d: \"m16 6-8.414 8.586a2 2 0 0 0 0 2.828 2 2 0 0 0 2.828 0l8.414-8.586a4 4 0 0 0 0-5.656 4 4 0 0 0-5.656 0l-8.415 8.585a6 6 0 1 0 8.486 8.486\",\n key: \"1pkts6\"\n }\n ]\n];\nconst Paperclip = createLucideIcon(\"Paperclip\", __iconNode);\n\nexport { __iconNode, Paperclip as default };\n//# sourceMappingURL=paperclip.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\",\n key: \"1a8usu\"\n }\n ],\n [\"path\", { d: \"m15 5 4 4\", key: \"1mk7zo\" }]\n];\nconst Pencil = createLucideIcon(\"Pencil\", __iconNode);\n\nexport { __iconNode, Pencil as default };\n//# sourceMappingURL=pencil.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n];\nconst Plus = createLucideIcon(\"Plus\", __iconNode);\n\nexport { __iconNode, Plus as default };\n//# sourceMappingURL=plus.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8\", key: \"1p45f6\" }],\n [\"path\", { d: \"M21 3v5h-5\", key: \"1q7to0\" }]\n];\nconst RotateCw = createLucideIcon(\"RotateCw\", __iconNode);\n\nexport { __iconNode, RotateCw as default };\n//# sourceMappingURL=rotate-cw.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }],\n [\"path\", { d: \"m21 21-4.3-4.3\", key: \"1qie3q\" }]\n];\nconst Search = createLucideIcon(\"Search\", __iconNode);\n\nexport { __iconNode, Search as default };\n//# sourceMappingURL=search.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z\",\n key: \"1ffxy3\"\n }\n ],\n [\"path\", { d: \"m21.854 2.147-10.94 10.939\", key: \"12cjpa\" }]\n];\nconst Send = createLucideIcon(\"Send\", __iconNode);\n\nexport { __iconNode, Send as default };\n//# sourceMappingURL=send.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M22 2 2 22\", key: \"y4kqgn\" }]];\nconst Slash = createLucideIcon(\"Slash\", __iconNode);\n\nexport { __iconNode, Slash as default };\n//# sourceMappingURL=slash.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m7 11 2-2-2-2\", key: \"1lz0vl\" }],\n [\"path\", { d: \"M11 13h4\", key: \"1p7l4v\" }],\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", ry: \"2\", key: \"1m3agn\" }]\n];\nconst SquareTerminal = createLucideIcon(\"SquareTerminal\", __iconNode);\n\nexport { __iconNode, SquareTerminal as default };\n//# sourceMappingURL=square-terminal.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }]\n];\nconst Square = createLucideIcon(\"Square\", __iconNode);\n\nexport { __iconNode, Square as default };\n//# sourceMappingURL=square.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"polyline\", { points: \"4 17 10 11 4 5\", key: \"akl6gq\" }],\n [\"line\", { x1: \"12\", x2: \"20\", y1: \"19\", y2: \"19\", key: \"q2wloq\" }]\n];\nconst Terminal = createLucideIcon(\"Terminal\", __iconNode);\n\nexport { __iconNode, Terminal as default };\n//# sourceMappingURL=terminal.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6\", key: \"4alrt4\" }],\n [\"path\", { d: \"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2\", key: \"v07s0e\" }],\n [\"line\", { x1: \"10\", x2: \"10\", y1: \"11\", y2: \"17\", key: \"1uufr5\" }],\n [\"line\", { x1: \"14\", x2: \"14\", y1: \"11\", y2: \"17\", key: \"xtxkd\" }]\n];\nconst Trash2 = createLucideIcon(\"Trash2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"polyline\", { points: \"17 8 12 3 7 8\", key: \"t8dd8p\" }],\n [\"line\", { x1: \"12\", x2: \"12\", y1: \"3\", y2: \"15\", key: \"widbto\" }]\n];\nconst Upload = createLucideIcon(\"Upload\", __iconNode);\n\nexport { __iconNode, Upload as default };\n//# sourceMappingURL=upload.js.map\n","/**\n * @license lucide-react v0.475.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M18 6 6 18\", key: \"1bl5f8\" }],\n [\"path\", { d: \"m6 6 12 12\", key: \"d8bk6v\" }]\n];\nconst X = createLucideIcon(\"X\", __iconNode);\n\nexport { __iconNode, X as default };\n//# sourceMappingURL=x.js.map\n"],"names":["toKebabCase","string","mergeClasses","classes","className","index","array","defaultAttributes","Icon","forwardRef","color","size","strokeWidth","absoluteStrokeWidth","children","iconNode","rest","ref","createElement","tag","attrs","createLucideIcon","iconName","Component","props","__iconNode","Archive","ArrowUp","Atom","Check","ChevronDown","ChevronRight","Clock","Coins","Copy","Cpu","DollarSign","Download","EllipsisVertical","ExternalLink","Eye","FilePlus","FileQuestion","FileText","File","FolderClosed","FolderOpen","FolderPlus","Folder","Gauge","GitBranch","GitCompare","Globe","ListTree","LoaderCircle","MessageSquare","Navigation","PanelLeftClose","PanelLeftOpen","PanelRightClose","PanelRightOpen","Paperclip","Pencil","Plus","RotateCw","Search","Send","Slash","SquareTerminal","Square","Terminal","Trash2","Upload","X"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51]}
@@ -4,16 +4,16 @@
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>Pi-Studio</title>
7
- <script type="module" crossorigin src="/assets/index-Ds0VVcbZ.js"></script>
7
+ <script type="module" crossorigin src="/assets/index-CqmgQdsG.js"></script>
8
8
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-p-LLqNcx.js">
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-query-chxBrUuj.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/vendor-markdown-ePgMI45n.js">
11
11
  <link rel="modulepreload" crossorigin href="/assets/vendor-highlight-Cry4x-mr.js">
12
12
  <link rel="modulepreload" crossorigin href="/assets/vendor-B2Vnrid8.js">
13
- <link rel="modulepreload" crossorigin href="/assets/vendor-icons-CAhpOZSZ.js">
13
+ <link rel="modulepreload" crossorigin href="/assets/vendor-icons-CctYQ66i.js">
14
14
  <link rel="modulepreload" crossorigin href="/assets/vendor-overlays-DWi-xJna.js">
15
15
  <link rel="modulepreload" crossorigin href="/assets/vendor-dnd-CjSU1Kqk.js">
16
- <link rel="stylesheet" crossorigin href="/assets/index-Bu36Yj2q.css">
16
+ <link rel="stylesheet" crossorigin href="/assets/index-BLc00KUW.css">
17
17
  </head>
18
18
  <body>
19
19
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@av-pi-studio/web-client",
3
- "version": "0.0.49",
3
+ "version": "0.0.51",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
@@ -14,8 +14,8 @@
14
14
  "clean": "rm -rf dist *.tsbuildinfo"
15
15
  },
16
16
  "dependencies": {
17
- "@av-pi-studio/client": "^0.0.49",
18
- "@av-pi-studio/protocol": "^0.0.49",
17
+ "@av-pi-studio/client": "^0.0.51",
18
+ "@av-pi-studio/protocol": "^0.0.51",
19
19
  "@codemirror/language": "^6.12.4",
20
20
  "@codemirror/language-data": "^6.5.2",
21
21
  "@codemirror/state": "^6.7.1",
@@ -1,2 +0,0 @@
1
- import{r as f,j as s}from"./vendor-react-p-LLqNcx.js";import{C as j}from"./vendor-B2Vnrid8.js";import{a as g,r as l,d as w,B as h,V as E,S as x}from"./index-Ds0VVcbZ.js";import{u as D,c as N}from"./vendor-query-chxBrUuj.js";import{r as S}from"./paths--dEDMUm1.js";import{u as K}from"./use-file-watch-2C2o-DDo.js";import{D as k}from"./DiffView-CUxhzW_O.js";import{p as r}from"./FilePanel.module-DoDNR5C2.js";import"./vendor-markdown-ePgMI45n.js";import"./vendor-highlight-Cry4x-mr.js";import"./vendor-icons-CAhpOZSZ.js";import"./vendor-overlays-DWi-xJna.js";import"./vendor-dnd-CjSU1Kqk.js";function q(e,o,a,i=!0){const n=g(t=>t.client);return D({queryKey:l.fileDiff(e,o,a),queryFn:async()=>{if(!n)throw new Error("not connected");return{patch:(await n.connection.request("file_diff_request",{path:e,cwd:o,staged:a})).patch??""}},enabled:!!n&&!!e&&!!o&&i})}const B=new Set(["text","markdown","image"]);function C(e,o,a){const i=N(),n=B.has(a)?S(e,o):null,{changedAt:t}=K(n);f.useEffect(()=>{t!==null&&(i.invalidateQueries({queryKey:l.fileRead(e)}),i.invalidateQueries({queryKey:l.fileDownload(e)}),i.invalidateQueries({queryKey:l.fileDiffByPath(e)}))},[t,e,i])}function y(e){return"path"in e}function F(e){return"staged"in e}function M({tab:e}){var p;const o=e.kind==="diff",a=e.data,i=y(a)?a.path:"",n=y(a)&&F(a)?a.staged:!1,[t,d]=f.useState(o?"diff":"file"),u=e.workspaceCwd||"~",m=w(i);C(i,u,m);const c=q(i,u,n,t==="diff"),v=E[m];return s.jsxs("div",{className:r.panel,children:[s.jsxs("div",{className:r.header,children:[s.jsx("span",{className:r.path,children:i}),s.jsx("span",{className:r.size,children:t==="diff"?n?"staged":"unstaged":null}),s.jsxs("div",{className:r.viewToggle,children:[s.jsx(h,{size:"xs",variant:t==="file"?"default":"ghost",onClick:()=>d("file"),children:"File"}),s.jsx(h,{size:"xs",variant:t==="diff"?"default":"ghost",onClick:()=>d("diff"),children:"Diff"})]})]}),s.jsx("div",{className:j(r.body,"file-body"),children:t==="file"?s.jsx(f.Suspense,{fallback:s.jsxs("div",{className:r.emptyState,children:[s.jsx(x,{size:"sm"})," Loading..."]}),children:s.jsx(v,{path:i})}):c.isLoading?s.jsxs("div",{className:r.emptyState,children:[s.jsx(x,{size:"sm"})," Loading diff..."]}):c.isError?s.jsxs("div",{className:r.emptyState,children:["Error: ",c.error instanceof Error?c.error.message:"unknown error"]}):(p=c.data)!=null&&p.patch?s.jsx(k,{patch:c.data.patch}):s.jsx("div",{className:r.diffEmpty,children:"No changes (file matches HEAD)"})})]})}export{M as FilePanel};
2
- //# sourceMappingURL=FilePanel-D10heC-L.js.map
@@ -1,2 +0,0 @@
1
- import{r as d,j as r}from"./vendor-react-p-LLqNcx.js";import{S as c,B as a}from"./index-Ds0VVcbZ.js";import{u as m,C as p}from"./CodeView-Cr7QCw_g.js";import{M as l}from"./markdown-0OCAeyJh.js";import{p as n}from"./FilePanel.module-DoDNR5C2.js";import"./vendor-query-chxBrUuj.js";import"./vendor-B2Vnrid8.js";import"./vendor-markdown-ePgMI45n.js";import"./vendor-highlight-Cry4x-mr.js";import"./vendor-icons-CAhpOZSZ.js";import"./vendor-overlays-DWi-xJna.js";import"./vendor-dnd-CjSU1Kqk.js";import"./paths--dEDMUm1.js";const x="_wrap_khhx0_1",u="_toolbar_khhx0_6",h="_rendered_khhx0_17",o={wrap:x,toolbar:u,rendered:h};function M({path:s}){const e=m(s),[t,i]=d.useState("preview");return e.isLoading?r.jsxs("div",{className:n.emptyState,children:[r.jsx(c,{size:"sm"})," Loading..."]}):e.isError?r.jsxs("div",{className:n.emptyState,children:["Error: ",e.error instanceof Error?e.error.message:"unknown error"]}):e.data?r.jsxs("div",{className:o.wrap,children:[r.jsxs("div",{className:o.toolbar,children:[r.jsx(a,{size:"xs",variant:t==="preview"?"default":"ghost",onClick:()=>i("preview"),children:"Preview"}),r.jsx(a,{size:"xs",variant:t==="source"?"default":"ghost",onClick:()=>i("source"),children:"Source"})]}),t==="preview"?r.jsx("div",{className:o.rendered,children:r.jsx(l,{text:e.data.content})}):r.jsx(p,{path:s,content:e.data.content})]}):null}export{M as MarkdownFileViewer};
2
- //# sourceMappingURL=MarkdownFileViewer-Dd70piQk.js.map
@@ -1 +0,0 @@
1
- html,body{margin:0;padding:0}body{min-height:100vh;overflow:hidden;background:var(--pi-color-background, #0a0a0a);color:var(--pi-color-foreground, #fafafa);font-family:var(--pi-font-ui, system-ui, sans-serif)}#root{display:flex;flex-direction:column;min-height:100vh}*,*:before,*:after{box-sizing:border-box}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--pi-color-border, #353b46);border-radius:3px}._btn_1chbg_4{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--pi-radius-lg, 8px);border:1px solid transparent;font-family:var(--pi-font-ui, system-ui, sans-serif);font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;transition:opacity .12s ease,background-color .12s ease,border-color .12s ease;box-sizing:border-box}._btn_1chbg_4:focus-visible{outline:2px solid var(--pi-color-accent, #2e5cb8);outline-offset:2px}._btn_1chbg_4:disabled,._btn_1chbg_4[aria-disabled=true]{cursor:not-allowed;pointer-events:none}._default_1chbg_35{background-color:var(--pi-color-accent, #2e5cb8);color:var(--pi-color-accentForeground, #ffffff);border-color:var(--pi-color-accent, #2e5cb8)}._default_1chbg_35:hover:not(:disabled){filter:brightness(1.08)}._secondary_1chbg_44{background-color:var(--pi-color-surface3, #3f3f46);color:var(--pi-color-foreground, #fafafa);border-color:var(--pi-color-border, #3f3f46)}._secondary_1chbg_44:hover:not(:disabled){background-color:var(--pi-color-surface2, #27272a)}._outline_1chbg_53{background-color:transparent;color:var(--pi-color-accentBright, #a2b4d7);border-color:var(--pi-color-accent, #2e5cb8)}._outline_1chbg_53:hover:not(:disabled){background-color:var(--pi-color-surface1, #18181b)}._ghost_1chbg_62{background-color:transparent;color:var(--pi-color-foregroundMuted, #a1a1aa);border-color:transparent}._ghost_1chbg_62:hover:not(:disabled){color:var(--pi-color-foreground, #fafafa);background-color:var(--pi-color-surface1, #18181b)}._destructive_1chbg_72{background-color:var(--pi-color-destructive, #991b1b);color:var(--pi-color-destructiveForeground, #fef2f2);border-color:var(--pi-color-destructive, #991b1b)}._destructive_1chbg_72:hover:not(:disabled){filter:brightness(1.1)}._iconOnly_1chbg_82{padding-left:0!important;padding-right:0!important;aspect-ratio:1}._loadingSpinner_1chbg_89{animation:_piSpin_1chbg_1 .75s linear infinite;flex-shrink:0}@keyframes _piSpin_1chbg_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._input_a7qyq_3{width:100%;padding:8px 12px;border-radius:var(--pi-radius-md, 6px);border:1px solid var(--pi-color-border, #3f3f46);background-color:var(--pi-color-surface2, #27272a);color:var(--pi-color-foreground, #fafafa);font-size:var(--pi-font-size-base, 16px);font-family:var(--pi-font-ui, system-ui, sans-serif);outline:none;transition:border-color .12s ease;box-sizing:border-box}._input_a7qyq_3::placeholder{color:var(--pi-color-foregroundMuted, #a1a1aa)}._input_a7qyq_3:focus{border-color:var(--pi-color-accent, #2e5cb8);outline:2px solid var(--pi-color-accent, #2e5cb8);outline-offset:-1px}._input_a7qyq_3:disabled{opacity:.5;cursor:not-allowed}._textarea_a7qyq_32{resize:vertical;min-height:80px}._wrap_emmus_1{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--pi-color-foregroundMuted, #9aa0a6)}._dot_emmus_8{width:8px;height:8px;border-radius:50%;background:var(--pi-color-foregroundMuted, #9aa0a6);flex-shrink:0}._dot_emmus_8._open_emmus_15{background:var(--pi-color-statusSuccess, #3ecf8e)}._dot_emmus_8._connecting_emmus_18{background:var(--pi-color-statusWarning, #e0a030)}._dot_emmus_8._closed_emmus_21,._dot_emmus_8._idle_emmus_22,._dot_emmus_8._closing_emmus_23{background:var(--pi-color-statusDanger, #e5484d)}._toolbar_i9hmh_1{display:flex;align-items:center;gap:10px;padding:6px 10px;border-bottom:1px solid var(--pi-color-border, #353b46);background:var(--pi-color-surface, #16181a);flex-shrink:0}._brand_i9hmh_10{font-weight:600;font-size:13px;letter-spacing:.02em;white-space:nowrap}._version_i9hmh_16{font-size:11px;color:var(--pi-color-foregroundMuted, #7a8394);white-space:nowrap;margin-left:-4px}._sep_i9hmh_22{width:1px;height:18px;background:var(--pi-color-border, #353b46);flex-shrink:0}._host_i9hmh_28{width:190px}._password_i9hmh_31{width:100px}._sidebarToggles_i9hmh_34{display:flex;align-items:center;gap:4px;margin-left:auto}._dot_gfh8u_3{display:inline-block;width:8px;height:8px;border-radius:9999px;flex-shrink:0}._spinner_gfh8u_16{display:inline-block;width:12px;height:12px;border-radius:9999px;border:2px solid var(--pi-color-border, #353b46);flex-shrink:0;animation:_statusSpin_gfh8u_1 .7s linear infinite}@keyframes _statusSpin_gfh8u_1{to{transform:rotate(360deg)}}._wrap_1di79_1{display:flex;flex-direction:column;min-height:0;height:100%}._header_1di79_7{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--pi-color-border, #353b46);flex-shrink:0}._openBtn_1di79_15{width:20px!important;min-height:20px!important}._header_1di79_7 h3{margin:0;font-size:12px;font-weight:600;color:var(--pi-color-foregroundMuted, #9aa0a6);text-transform:uppercase;letter-spacing:.04em}._list_1di79_27{flex:1 1 auto;overflow-y:auto;min-height:0}._item_1di79_32{position:relative;padding:8px 10px;cursor:pointer;border-bottom:1px solid transparent}._item_1di79_32:hover{background:var(--pi-color-surfaceHover, #1e2124)}._item_1di79_32._active_1di79_41{background:var(--pi-color-surfaceSunken, #111);box-shadow:inset 2px 0 0 var(--pi-color-accent, #2e5cb8)}._title_1di79_45{display:flex;align-items:center;gap:6px;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._meta_1di79_54{margin-top:2px;font-size:11px;color:var(--pi-color-foregroundMuted, #9aa0a6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._menuBtn_1di79_62{position:absolute;top:6px;right:6px;opacity:0;padding:2px 4px;background:none;border:none;border-radius:4px;cursor:pointer;color:var(--pi-color-foregroundMuted, #9aa0a6)}._item_1di79_32:hover ._menuBtn_1di79_62{opacity:1}._menuBtn_1di79_62:hover{background:var(--pi-color-surfaceHover, #1e2124)}._workspaceGroup_1di79_80{border-bottom:1px solid var(--pi-color-border, #353b46)}._workspaceHeader_1di79_83{display:flex;align-items:center;gap:6px;padding:7px 10px;cursor:pointer;font-size:12px;font-weight:600;color:var(--pi-color-foreground, #e6e6e6)}._workspaceHeader_1di79_83:hover{background:var(--pi-color-surfaceHover, #1e2124)}._workspaceChevron_1di79_96{display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;cursor:pointer;color:var(--pi-color-foregroundMuted, #9aa0a6);flex-shrink:0}._workspaceIcon_1di79_107{color:var(--pi-color-foregroundMuted, #9aa0a6);flex-shrink:0}._workspaceLabel_1di79_111{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._workspaceCount_1di79_117{font-size:11px;font-weight:400;color:var(--pi-color-foregroundMuted, #9aa0a6)}._newSessionBtn_1di79_122{flex-shrink:0;opacity:0;color:var(--pi-color-foregroundMuted, #9aa0a6)}._workspaceHeader_1di79_83:hover ._newSessionBtn_1di79_122{opacity:1}._newSessionBtn_1di79_122:hover{background:var(--pi-color-surfaceHover, #1e2124);color:var(--pi-color-foreground, #e6e6e6)}._workspaceSessions_1di79_134{padding-left:12px}._emptyState_1di79_137{padding:12px 10px;font-size:12px;color:var(--pi-color-foregroundMuted, #9aa0a6)}._trigger_42hju_1{position:fixed;width:1px;height:1px;padding:0;border:0;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;pointer-events:none}._content_42hju_12{min-width:160px;padding:4px;border-radius:var(--pi-borderRadius-md, 6px);background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);box-shadow:0 8px 24px #0006;z-index:1000}._item_42hju_21{display:flex;align-items:center;padding:6px 10px;border-radius:4px;font-size:13px;cursor:pointer;outline:none}._item_42hju_21:hover,._item_42hju_21[data-highlighted]{background:var(--pi-color-surfaceHover, #1e2124)}._item_42hju_21[data-disabled]{opacity:.4;cursor:default}._danger_42hju_38{color:var(--pi-color-statusDanger, #e5484d)}._sep_42hju_41{height:1px;margin:4px 0;background:var(--pi-color-border, #353b46)}._strip_ha8p4_1{display:flex;align-items:center;gap:2px;min-height:33px;padding:4px 6px 0;overflow-x:auto;flex-shrink:0;border-bottom:1px solid var(--pi-color-border, #353b46)}._tab_ha8p4_11{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--pi-borderRadius-md, 6px) var(--pi-borderRadius-md, 6px) 0 0;font-size:12px;cursor:pointer;color:var(--pi-color-foregroundMuted, #9aa0a6);white-space:nowrap;flex-shrink:0;-webkit-user-select:none;user-select:none}._tab_ha8p4_11:hover{background:var(--pi-color-surfaceHover, #1e2124)}._active_ha8p4_27{background:var(--pi-color-surfaceSunken, #111);color:var(--pi-color-foreground, #fafafa)}._icon_ha8p4_31{display:flex;align-items:center;flex-shrink:0}._label_ha8p4_36{max-width:160px;overflow:hidden;text-overflow:ellipsis}._close_ha8p4_41{display:flex;align-items:center;border-radius:3px;padding:1px;flex-shrink:0}._close_ha8p4_41:hover{background:var(--pi-color-surfaceHover, #1e2124)}._newTab_ha8p4_51{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0 4px;width:20px;height:20px;border-radius:var(--pi-borderRadius-sm, 4px);color:var(--pi-color-foregroundMuted, #9aa0a6);background:transparent;border:none;cursor:pointer}._newTab_ha8p4_51:hover:not(:disabled){background:var(--pi-color-surfaceHover, #1e2124);color:var(--pi-color-foreground, #fafafa)}._newTab_ha8p4_51:disabled{opacity:.4;cursor:default}._content_ha8p4_74{min-width:160px;padding:4px;border-radius:var(--pi-borderRadius-md, 6px);background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);box-shadow:0 8px 24px #0006;z-index:1000}._item_ha8p4_83{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;font-size:13px;cursor:pointer;outline:none}._item_ha8p4_83:hover,._item_ha8p4_83[data-highlighted]{background:var(--pi-color-surfaceHover, #1e2124)}._itemIcon_ha8p4_97{flex-shrink:0;color:var(--pi-color-foregroundMuted, #9aa0a6)}._spinner_1tgzp_3{display:inline-block;border-radius:9999px;border-style:solid;border-color:currentColor transparent transparent transparent;animation:_piSpinnerRotate_1tgzp_1 .7s linear infinite;flex-shrink:0}@keyframes _piSpinnerRotate_1tgzp_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._area_z7u01_1{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}._panel_z7u01_7{position:absolute;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;min-height:0}._active_z7u01_14{display:flex}._empty_z7u01_17{display:flex;align-items:center;justify-content:center;height:100%;color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:13px}._emptyStack_z7u01_25{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;padding:0 16px;text-align:center}._emptyTitle_z7u01_35{font-size:13px;color:var(--pi-color-foreground, #e6e6e6)}._emptyHint_z7u01_39{font-size:12px;color:var(--pi-color-foregroundMuted, #9aa0a6)}._container_1098n_1{position:relative;height:100%;display:flex;flex-direction:column}._header_1098n_7{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid var(--pi-color-border, #353b46)}._uploadButton_1098n_14{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 8px;border-radius:4px;border:1px solid var(--pi-color-border, #353b46);background:var(--pi-color-surface, #1e2124);color:var(--pi-color-foreground, #e4e6eb);cursor:pointer}._uploadButton_1098n_14:hover:not(:disabled){background:var(--pi-color-surfaceHover, #2a2e33)}._uploadButton_1098n_14:disabled{opacity:.5;cursor:default}._hiddenInput_1098n_33{display:none}._status_1098n_36,._statusError_1098n_37{font-size:11px;padding:4px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._status_1098n_36{color:var(--pi-color-foregroundMuted, #9aa0a6)}._statusError_1098n_37{color:var(--pi-color-danger, #e5534b)}._rowAction_1098n_50{margin-left:auto;display:none;align-items:center;padding:2px;border:none;background:transparent;color:var(--pi-color-foregroundMuted, #9aa0a6);cursor:pointer;border-radius:3px}._rowAction_1098n_50:hover{color:var(--pi-color-foreground, #e4e6eb);background:var(--pi-color-surface, #1e2124)}._item_1098n_65:hover ._rowAction_1098n_50{display:inline-flex}._dropOverlay_1098n_68{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--pi-color-accentBright, #a2b4d7);background:color-mix(in srgb,var(--pi-color-surface, #1e2124) 80%,transparent);border:2px dashed var(--pi-color-accentBright, #a2b4d7);border-radius:6px;pointer-events:none;z-index:2}._list_1098n_83{padding:4px 0;flex:1;overflow-y:auto;position:relative}._item_1098n_65{height:24px;padding-right:8px;font-size:12px;border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:6px}._item_1098n_65:hover{background:var(--pi-color-surfaceHover, #1e2124)}._chevronSlot_1098n_102{display:flex;align-items:center;justify-content:center;width:12px;flex-shrink:0;color:var(--pi-color-foregroundMuted, #9aa0a6)}._chevron_1098n_102{transition:transform .1s ease}._chevronOpen_1098n_113{transform:rotate(90deg)}._icon_1098n_116{display:flex;align-items:center;width:16px;flex-shrink:0;color:var(--pi-color-foregroundMuted, #9aa0a6)}._name_1098n_123{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._dirName_1098n_128{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--pi-color-accentBright, #a2b4d7)}._statusRow_1098n_134{height:24px;display:flex;align-items:center;padding-right:8px;font-size:11px;color:var(--pi-color-foregroundMuted, #9aa0a6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._statusRowError_1098n_145{color:var(--pi-color-danger, #e5534b)}._emptyState_1098n_148{color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:12px;text-align:center;padding:20px}._draftInput_1098n_154{flex:1;min-width:0;height:18px;font:inherit;font-size:12px;padding:0 4px;color:var(--pi-color-foreground, #e4e6eb);background:var(--pi-color-surfaceSunken, #111);border:1px solid var(--pi-color-accent, #2e5cb8);border-radius:3px;outline:none}._trigger_ngv1a_1{position:fixed;width:1px;height:1px;padding:0;border:0;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;pointer-events:none}._content_ngv1a_12{min-width:140px;padding:4px;border-radius:var(--pi-borderRadius-md, 6px);background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);box-shadow:0 8px 24px #0006;z-index:1000}._item_ngv1a_21{display:flex;align-items:center;padding:6px 10px;border-radius:4px;font-size:13px;cursor:pointer;outline:none}._item_ngv1a_21:hover,._item_ngv1a_21[data-highlighted]{background:var(--pi-color-surfaceHover, #1e2124)}._danger_ngv1a_34{color:var(--pi-color-statusDanger, #e5484d)}._sep_ngv1a_37{height:1px;margin:4px 0;background:var(--pi-color-border, #353b46)}._list_1pgby_1{padding:4px 0}._summary_1pgby_4{padding:4px 8px;font-size:11px;color:var(--pi-color-foregroundMuted, #9aa0a6);border-bottom:1px solid var(--pi-color-border, #353b46);margin-bottom:4px}._item_1pgby_11{padding:4px 8px;font-size:12px;border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:6px}._item_1pgby_11:hover{background:var(--pi-color-surfaceHover, #1e2124)}._badge_1pgby_23{font-size:10px;padding:0 4px;border-radius:3px;font-weight:600;flex-shrink:0}._added_1pgby_30{background:color-mix(in srgb,var(--pi-color-statusSuccess, #4ade80) 20%,transparent);color:var(--pi-color-statusSuccess, #4ade80)}._modified_1pgby_34{background:color-mix(in srgb,var(--pi-color-statusWarning, #facc15) 20%,transparent);color:var(--pi-color-statusWarning, #facc15)}._deleted_1pgby_38{background:color-mix(in srgb,var(--pi-color-statusDanger, #ff8a80) 20%,transparent);color:var(--pi-color-statusDanger, #ff8a80)}._name_1pgby_42{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._emptyState_1pgby_47{color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:12px;text-align:center;padding:20px}._wrap_r37ok_1{display:flex;flex-direction:column;height:100%;min-height:0}._tabBar_r37ok_7{display:flex;align-items:center;border-bottom:1px solid var(--pi-color-border, #353b46);flex-shrink:0}._tabBtn_r37ok_13{font:inherit;font-size:12px;padding:8px 12px;background:none;border:none;color:var(--pi-color-foregroundMuted, #9aa0a6);cursor:pointer;border-bottom:2px solid transparent}._tabBtn_r37ok_13:hover{color:var(--pi-color-foreground, #fafafa)}._active_r37ok_26{color:var(--pi-color-foreground, #fafafa);border-bottom-color:var(--pi-color-accent, #2e5cb8)}._refreshBtn_r37ok_30{margin-left:auto;margin-right:6px}._content_r37ok_34{flex:1;overflow-y:auto;padding:8px;min-height:0}._content_1imfv_4{min-width:240px;padding:4px;border-radius:var(--pi-borderRadius-md, 6px);background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);box-shadow:0 8px 24px #0006;z-index:1000;display:flex;flex-direction:column;gap:4px}._search_1imfv_17{width:100%;box-sizing:border-box;padding:6px 8px;border-radius:var(--pi-radius-md, 6px);border:1px solid var(--pi-color-border, #3f3f46);background:var(--pi-color-surface2, #27272a);color:var(--pi-color-foreground, #fafafa);font-size:12px;outline:none}._search_1imfv_17::placeholder{color:var(--pi-color-foregroundMuted, #9aa0a6)}._search_1imfv_17:focus{border-color:var(--pi-color-accent, #2e5cb8)}._list_1imfv_35{max-height:320px;overflow-y:auto}._item_1imfv_40{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;font-size:13px;cursor:pointer;outline:none}._item_1imfv_40:hover,._item_1imfv_40[data-highlighted],._item_1imfv_40._itemActive_1imfv_54{background:var(--pi-color-surfaceHover, #1e2124)}._checkSlot_1imfv_58{width:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--pi-color-foreground, #fafafa)}._label_1imfv_67{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._modelId_1imfv_73{color:var(--pi-color-foregroundMuted, #9aa0a6);margin-left:4px;font-size:12px;white-space:nowrap}._state_1imfv_80{display:flex;align-items:center;justify-content:center;padding:12px;color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:12px}._stateError_1imfv_89{padding:8px;color:var(--pi-color-danger, #e5534b);font-size:12px}._commandContent_1imfv_99{max-width:420px}._commandList_1imfv_102{display:flex;flex-direction:column;gap:2px}._commandItem_1imfv_107{flex-direction:column;align-items:stretch;gap:4px;padding:8px 10px}._commandItem_1imfv_107:hover{background:color-mix(in srgb,var(--pi-color-surfaceHover, #1e2124) 55%,transparent)}._commandItem_1imfv_107._itemActive_1imfv_54{background:var(--pi-color-surfaceSunken, #111);box-shadow:inset 2px 0 0 var(--pi-color-accent, #2e5cb8);border-radius:0}._commandItemHeader_1imfv_140{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}._commandItemHeader_1imfv_140 ._label_1imfv_67{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--pi-color-foreground, #fafafa)}._commandKindBadge_1imfv_154{flex-shrink:0;display:inline-flex;align-items:center;padding:0 4px;border-radius:9999px;border:1px solid var(--pi-color-border, #3f3f46);background:var(--pi-color-surface2, #27272a);color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:6px;font-weight:600;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;line-height:1.5}._commandKindExtension_1imfv_173{background:color-mix(in srgb,var(--pi-color-accent, #2e5cb8) 18%,transparent);border-color:color-mix(in srgb,var(--pi-color-accent, #2e5cb8) 45%,transparent);color:var(--pi-color-accent, #2e5cb8)}._commandKindPrompt_1imfv_178{background:color-mix(in srgb,var(--pi-color-statusSuccess, #16a34a) 18%,transparent);border-color:color-mix(in srgb,var(--pi-color-statusSuccess, #16a34a) 45%,transparent);color:var(--pi-color-statusSuccess, #16a34a)}._commandKindSkill_1imfv_183{background:color-mix(in srgb,var(--pi-color-statusMerged, #9333ea) 18%,transparent);border-color:color-mix(in srgb,var(--pi-color-statusMerged, #9333ea) 45%,transparent);color:var(--pi-color-statusMerged, #9333ea)}._commandDescription_1imfv_188{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis;white-space:normal;line-height:1.4;font-size:12px;color:var(--pi-color-foregroundMuted, #9aa0a6)}._statusBar_tm1j6_1{height:35px;width:100%;flex-shrink:0;display:flex;align-items:center;gap:2px;padding:0 12px;overflow-x:auto;border-top:1px solid var(--pi-color-border, #353b46);background:var(--pi-color-surface, #16181a);font-size:12px;color:var(--pi-color-foreground, #e4e6eb);white-space:nowrap}._segmentGroup_tm1j6_16{display:flex;align-items:center}._chevron_tm1j6_20{color:var(--pi-color-border, #353b46);margin:0 4px;flex-shrink:0}._segment_tm1j6_16{display:flex;align-items:center;gap:6px;padding:2px 8px;border-radius:4px;background:var(--pi-color-surfaceRaised, #1c1f22)}._icon_tm1j6_33{display:flex;align-items:center;color:var(--pi-color-foregroundMuted, #7a8394);flex-shrink:0}._modelSegment_tm1j6_39{display:flex;align-items:center;gap:5px;padding:2px 6px 2px 8px;border-radius:4px;border:1px solid var(--pi-color-border, #353b46);background:var(--pi-color-surfaceRaised, #1c1f22);color:inherit;font:inherit;cursor:pointer}._modelSegment_tm1j6_39:hover:not(:disabled){background:var(--pi-color-surfaceHover, #23262b);border-color:var(--pi-color-foregroundMuted, #7a8394)}._modelSegment_tm1j6_39[data-state=open]{background:var(--pi-color-surfaceHover, #23262b);border-color:var(--pi-color-accent, #2e5cb8)}._modelSegment_tm1j6_39:disabled{cursor:default;opacity:.6}._modelChevron_tm1j6_63{color:var(--pi-color-foregroundMuted, #7a8394);flex-shrink:0;transition:transform .15s ease;transform:rotate(180deg)}._modelSegment_tm1j6_39[data-state=open] ._modelChevron_tm1j6_63{transform:rotate(0)}._text_tm1j6_74{overflow:hidden;text-overflow:ellipsis;max-width:320px}._wrapper_131x2_3{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--pi-font-ui, system-ui);font-size:var(--pi-font-size-sm, 14px);color:var(--pi-color-foreground, #fafafa)}._wrapper_131x2_3[data-disabled=true]{opacity:.5;pointer-events:none}._box_131x2_18{width:16px;height:16px;border-radius:var(--pi-radius-sm, 3px);border:1.5px solid var(--pi-color-border, #3f3f46);background-color:transparent;display:flex;align-items:center;justify-content:center;transition:background-color .1s,border-color .1s;flex-shrink:0}._box_131x2_18[data-checked=true]{background-color:var(--pi-color-accent, #2e5cb8);border-color:var(--pi-color-accent, #2e5cb8)}._checkmark_131x2_36{color:var(--pi-color-accentForeground, #ffffff)}._nativeInput_131x2_41{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}._select_vj45v_3{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--pi-color-surface1, #18181b);border:1px solid var(--pi-color-border, #3f3f46);border-radius:var(--pi-radius-base, 4px);padding:8px 32px 8px 10px;font-family:var(--pi-font-ui, system-ui);font-size:var(--pi-font-size-sm, 14px);color:var(--pi-color-foreground, #fafafa);width:100%;outline:none;transition:border-color .1s;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a1a1aa' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}._select_vj45v_3:focus{border-color:var(--pi-color-accent, #2e5cb8)}._select_vj45v_3:disabled{opacity:.5;cursor:not-allowed}._comboboxWrapper_vj45v_31{position:relative;width:100%}._comboboxInput_vj45v_36{width:100%;background-color:var(--pi-color-surface1, #18181b);border:1px solid var(--pi-color-border, #3f3f46);border-radius:var(--pi-radius-base, 4px);padding:8px 10px;font-family:var(--pi-font-ui, system-ui);font-size:var(--pi-font-size-sm, 14px);color:var(--pi-color-foreground, #fafafa);outline:none;box-sizing:border-box}._comboboxInput_vj45v_36:focus{border-color:var(--pi-color-accent, #2e5cb8)}._comboboxList_vj45v_53{position:absolute;top:100%;left:0;right:0;z-index:80;max-height:200px;overflow-y:auto;background-color:var(--pi-color-surface1, #18181b);border:1px solid var(--pi-color-border, #3f3f46);border-radius:var(--pi-radius-base, 4px);margin-top:4px;padding:4px;box-shadow:var(--pi-shadow-md, 0 4px 12px rgba(0,0,0,.4))}._comboboxOption_vj45v_69{padding:6px 8px;border-radius:var(--pi-radius-sm, 3px);font-size:var(--pi-font-size-sm, 14px);font-family:var(--pi-font-ui, system-ui);color:var(--pi-color-foreground, #fafafa);cursor:pointer;background:none;border:none;width:100%;text-align:left}._comboboxOption_vj45v_69:hover,._comboboxOptionHighlighted_vj45v_82{background-color:var(--pi-color-surface2, #27272a)}._overlay_1yaef_1{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:100}._contentWrapper_1yaef_7{position:fixed;top:0;right:0;bottom:0;left:0;z-index:101;display:flex;align-items:center;justify-content:center;pointer-events:none}._dialog_1yaef_16{pointer-events:auto;width:500px;max-width:90vw;max-height:70vh;background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);border-radius:var(--pi-radius-lg, 8px);display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080}._header_1yaef_28{padding:12px 14px;border-bottom:1px solid var(--pi-color-border, #353b46);display:flex;align-items:center;gap:8px;flex-shrink:0}._title_1yaef_36{font-size:13px;margin:0;flex:1;color:var(--pi-color-foreground, #fafafa);font-weight:600}._closeBtn_1yaef_43{display:flex;align-items:center;background:none;border:none;color:var(--pi-color-foregroundMuted, #9aa0a6);cursor:pointer;padding:4px;border-radius:4px}._closeBtn_1yaef_43:hover{background:var(--pi-color-surfaceHover, #1e2124);color:var(--pi-color-foreground, #fafafa)}._body_1yaef_57{flex:1;display:flex;flex-direction:column;min-height:0}._footer_1yaef_63{padding:10px 14px;border-top:1px solid var(--pi-color-border, #353b46);display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-shrink:0}._bare_1yaef_72{border:none;background:transparent;box-shadow:none;position:relative}._bareBody_1yaef_78{border-radius:var(--pi-radius-lg, 8px);overflow:hidden}._bareCloseBtn_1yaef_82{position:absolute;top:-12px;right:-12px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--pi-color-surface, #16181a);border:1px solid var(--pi-color-border, #353b46);border-radius:50%;color:var(--pi-color-foregroundMuted, #9aa0a6);cursor:pointer}._bareCloseBtn_1yaef_82:hover{background:var(--pi-color-surfaceHover, #1e2124);color:var(--pi-color-foreground, #fafafa)}._visuallyHidden_1yaef_101{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}._handle_1ocv1_1{position:absolute;top:0;bottom:0;width:5px;cursor:col-resize;z-index:5;background:transparent;transition:background .12s ease}._handle_1ocv1_1:hover,._handle_1ocv1_1:active{background:var(--pi-color-accent, #2e5cb8)}._pathRow_trimn_1{padding:8px 14px;display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--pi-color-border, #353b46);flex-shrink:0}._pathInput_trimn_9{flex:1;font-size:12px}._createRow_trimn_13{padding:6px 14px;display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--pi-color-border, #353b46);flex-shrink:0}._createInput_trimn_21{flex:1;font-size:12px}._createError_trimn_25{padding:4px 14px 6px;font-size:11px;color:var(--pi-color-danger, #e5534b)}._list_trimn_30{flex:1;overflow-y:auto;padding:4px 0;min-height:200px;max-height:400px}._item_trimn_37{padding:6px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--pi-color-foreground, #fafafa)}._item_trimn_37:hover{background:var(--pi-color-surfaceHover, #1e2124)}._name_trimn_49{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._emptyState_trimn_54{color:var(--pi-color-foregroundMuted, #9aa0a6);font-size:12px;text-align:center;padding:20px}._shell_1m1nv_1{display:flex;flex-direction:column;height:100vh;min-height:0}._main_1m1nv_7{display:flex;flex:1 1 auto;min-height:0;overflow:hidden}._sidebarLeft_1m1nv_13{position:relative;flex-shrink:0;border-right:1px solid var(--pi-color-border, #353b46);display:flex;flex-direction:column;min-width:0}._leftHandle_1m1nv_21{right:-3px}._center_1m1nv_24{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;min-height:0}._sidebarRight_1m1nv_31{position:relative;flex-shrink:0;border-left:1px solid var(--pi-color-border, #353b46);display:flex;flex-direction:column;min-width:0}._rightHandle_1m1nv_39{left:-3px}
@@ -1,3 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ChatPanel-Cghr4FA9.js","assets/vendor-react-p-LLqNcx.js","assets/vendor-query-chxBrUuj.js","assets/vendor-icons-CAhpOZSZ.js","assets/markdown-0OCAeyJh.js","assets/vendor-highlight-Cry4x-mr.js","assets/vendor-markdown-ePgMI45n.js","assets/vendor-B2Vnrid8.js","assets/paths--dEDMUm1.js","assets/markdown-JJHL50c6.css","assets/StatusBadge-D5M084rB.js","assets/StatusBadge-BgIink5J.css","assets/DiffView-CUxhzW_O.js","assets/DiffView-CRbeRztO.css","assets/vendor-overlays-DWi-xJna.js","assets/vendor-dnd-CjSU1Kqk.js","assets/ChatPanel-CG6o6nFc.css","assets/FilePanel-D10heC-L.js","assets/use-file-watch-2C2o-DDo.js","assets/FilePanel.module-DoDNR5C2.js","assets/FilePanel-DIInFr3h.css","assets/TerminalPanel-L9DJMwB6.js","assets/vendor-terminal-BhzX2_ts.js","assets/vendor-terminal-DYP7pi_n.css","assets/TerminalPanel-BQj62G6N.css","assets/MoleculeViewerPanel-DFx9LSN6.js","assets/vendor-molviewer-PwwY6jQU.js","assets/vendor-molviewer-CtvG6b9Z.css","assets/use-file-download-C5ZdZp1T.js","assets/MoleculeViewerPanel-CTZU0_lX.css","assets/TextViewer-BDXrL58w.js","assets/CodeView-Cr7QCw_g.js","assets/CodeView-CLRODhB8.css","assets/TextViewer-B9IV5fXQ.css","assets/MarkdownFileViewer-Dd70piQk.js","assets/MarkdownFileViewer-BD5Ri_Fb.css","assets/ImageViewer-5clHM3Nh.js","assets/ImageViewer-ijzMsq8H.css","assets/VideoViewer-DfNnw1AJ.js","assets/VideoViewer-BBuZ4wou.css","assets/BinaryFallbackViewer-BqWD5myp.js","assets/BinaryFallbackViewer-CLiNWU_S.css"])))=>i.map(i=>d[i]);
2
- var Bn=Object.defineProperty;var An=(e,t,n)=>t in e?Bn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var I=(e,t,n)=>An(e,typeof t!="symbol"?t+"":t,n);import{r as w,j as i,c as $n}from"./vendor-react-p-LLqNcx.js";import{Q as Dn,a as On,u as Ht,b as Pn,c as xe,d as Fn}from"./vendor-query-chxBrUuj.js";import{A as l,B as u,C as $,D as Wt,E as M,F as he,G as se,H as B,I as b,J as D,K as P,L as Ge,M as we,N as me}from"./vendor-B2Vnrid8.js";import{L as zn,P as Ln,a as Hn,b as Wn,c as Un,E as Ut,C as _t,d as Kt,F as Kn,e as Vt,f as Gt,A as Xt,S as Jt,G as Vn,g as Gn,M as Yt,X as ct,h as Ae,i as Qt,j as Xn,k as Zt,U as Jn,R as Yn,l as en,m as Qn,n as Zn,o as es,D as ts,p as ns,q as ss}from"./vendor-icons-CAhpOZSZ.js";import{R as Xe,T as Je,P as Ye,C as Qe,I as W,S as lt,D as os,a as rs,b as as,c as is,d as vt,e as dt}from"./vendor-overlays-DWi-xJna.js";import{u as cs,a as ls,D as ds,c as us,S as ps,h as fs,P as hs,b as ms,C as gs}from"./vendor-dnd-CjSU1Kqk.js";import{_ as oe}from"./vendor-highlight-Cry4x-mr.js";import"./vendor-markdown-ePgMI45n.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const a of r.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();const _s=new Dn;function tn(e){const t=e.trim().replace(/^#/,""),n=t.length===3?t.split("").map(s=>s+s).join(""):t;if(n.length!==6||/[^0-9a-fA-F]/.test(n))throw new Error(`Invalid hex color: ${e}`);return{r:parseInt(n.slice(0,2),16),g:parseInt(n.slice(2,4),16),b:parseInt(n.slice(4,6),16)}}function ys(e){return Math.max(0,Math.min(255,Math.round(e)))}function bs({r:e,g:t,b:n}){const s=o=>ys(o).toString(16).padStart(2,"0");return`#${s(e)}${s(t)}${s(n)}`}function ws(e){const{r:t,g:n,b:s}=tn(e),o=r=>{const a=r/255;return a<=.03928?a/12.92:((a+.055)/1.055)**2.4};return .2126*o(t)+.7152*o(n)+.0722*o(s)}function yt(e,t="#18181b",n="#ffffff"){return ws(e)>.45?t:n}function Ss(e,t){const{r:n,g:s,b:o}=tn(e),r=Math.max(0,Math.min(1,t));return bs({r:n+(255-n)*r,g:s+(255-s)*r,b:o+(255-o)*r})}function Pe(e){const t=e.trim().replace(/^#/,"");return(t.length===3||t.length===6)&&!/[^0-9a-fA-F]/.test(t)}const V=(e,t,n,s,o,r,a,c,d,m,f)=>({50:e,100:t,200:n,300:s,400:o,500:r,600:a,700:c,800:d,900:m,950:f}),v={zinc:V("#fafafa","#f4f4f5","#e4e4e7","#d4d4d8","#a1a1aa","#71717a","#52525b","#3f3f46","#27272a","#18181b","#09090b"),gray:V("#f9fafb","#f3f4f6","#e5e7eb","#d1d5db","#9ca3af","#6b7280","#4b5563","#374151","#1f2937","#111827","#030712"),slate:V("#f8fafc","#f1f5f9","#e2e8f0","#cbd5e1","#94a3b8","#64748b","#475569","#334155","#1e293b","#0f172a","#020617"),blue:V("#eff6ff","#dbeafe","#bfdbfe","#93c5fd","#60a5fa","#3b82f6","#2563eb","#1d4ed8","#1e40af","#1e3a8a","#172554"),green:V("#f0fdf4","#dcfce7","#bbf7d0","#86efac","#4ade80","#22c55e","#16a34a","#15803d","#166534","#14532d","#052e16"),red:V("#fef2f2","#fee2e2","#fecaca","#fca5a5","#f87171","#ef4444","#dc2626","#b91c1c","#991b1b","#7f1d1d","#450a0a"),teal:V("#f0fdfa","#ccfbf1","#99f6e4","#5eead4","#2dd4bf","#14b8a6","#0d9488","#0f766e","#115e59","#134e4a","#042f2e"),amber:V("#fffbeb","#fef3c7","#fde68a","#fcd34d","#fbbf24","#f59e0b","#d97706","#b45309","#92400e","#78350f","#451a03"),yellow:V("#fefce8","#fef9c3","#fef08a","#fde047","#facc15","#eab308","#ca8a04","#a16207","#854d0e","#713f12","#422006"),purple:V("#faf5ff","#f3e8ff","#e9d5ff","#d8b4fe","#c084fc","#a855f7","#9333ea","#7e22ce","#6b21a8","#581c87","#3b0764"),orange:V("#fff7ed","#ffedd5","#fed7aa","#fdba74","#fb923c","#f97316","#ea580c","#c2410c","#9a3412","#7c2d12","#431407"),white:"#ffffff",black:"#000000"},xs={statusSuccess:"#16a34a",statusDanger:"#dc2626",statusWarning:"#f59e0b",statusMerged:"#9333ea"},vs={statusSuccess:"#15803d",statusDanger:"#b91c1c",statusWarning:"#d97706",statusMerged:"#7c3aed"};function ks(){return{keyword:v.purple[300],string:v.green[300],number:v.orange[300],boolean:v.orange[300],comment:v.zinc[500],function:v.blue[300],variable:v.zinc[200],type:v.teal[300],class:v.amber[300],constant:v.orange[300],operator:v.zinc[400],punctuation:v.zinc[400],tag:v.red[300],attribute:v.amber[300],property:v.blue[200],regexp:v.teal[300],escape:v.orange[200],heading:v.blue[300],link:v.blue[400],deleted:v.red[400],inserted:v.green[400]}}function Is(){return{keyword:v.purple[700],string:v.green[700],number:v.orange[700],boolean:v.orange[700],comment:v.zinc[500],function:v.blue[700],variable:v.zinc[800],type:v.teal[700],class:v.amber[700],constant:v.orange[700],operator:v.zinc[600],punctuation:v.zinc[600],tag:v.red[700],attribute:v.amber[700],property:v.blue[700],regexp:v.teal[700],escape:v.orange[700],heading:v.blue[700],link:v.blue[600],deleted:v.red[700],inserted:v.green[700]}}function nn(e,t,n){return{background:e,foreground:t,cursor:n,cursorAccent:e,selectionBackground:"rgba(255,255,255,0.18)",black:v.zinc[900],red:v.red[500],green:v.green[500],yellow:v.amber[500],blue:v.blue[500],magenta:v.purple[500],cyan:v.teal[500],white:v.zinc[300],brightBlack:v.zinc[600],brightRed:v.red[400],brightGreen:v.green[400],brightYellow:v.amber[400],brightBlue:v.blue[400],brightMagenta:v.purple[400],brightCyan:v.teal[400],brightWhite:v.zinc[50]}}function je(e){const t=v.zinc[50],n=yt(e.accent);return{surface0:e.surface0,surface1:e.surface1,surface2:e.surface2,surface3:e.surface3,surface4:e.surface4,surfaceDiffEmpty:e.surfaceDiffEmpty,surfaceSidebar:e.surfaceSidebar,surfaceSidebarHover:e.surfaceSidebarHover,surfaceWorkspace:e.surface1,foreground:t,foregroundMuted:e.mutedForeground,accent:e.accent,accentBright:e.accentBright,accentForeground:n,destructive:e.destructive,destructiveForeground:v.white,success:e.accent,successForeground:v.white,border:e.border,borderAccent:e.borderAccent,...xs,diffAddition:v.green[400],diffDeletion:v.red[500],scrollbarHandle:e.scrollbarHandle,background:e.surface0,popover:e.surface2,popoverForeground:t,primary:e.accent,secondary:e.surface2,muted:e.surface2,mutedForeground:e.mutedForeground,input:e.surface2,ring:e.accent,palette:v,syntax:ks(),terminal:nn(e.surface0,t,e.accent)}}function Cs(){const e="#1a1a1e",t="#253e6f";return{surface0:"#ffffff",surface1:"#fafafa",surface2:"#f4f4f5",surface3:"#e4e4e7",surface4:"#d4d4d8",surfaceDiffEmpty:"#f6f6f6",surfaceSidebar:"#f4f4f5",surfaceSidebarHover:"#e9e9ec",surfaceWorkspace:"#ffffff",foreground:e,foregroundMuted:"#71717a",accent:t,accentBright:"#2f4f8e",accentForeground:yt(t),destructive:"#b04138",destructiveForeground:"#ffffff",success:t,successForeground:"#ffffff",border:"#e4e4e7",borderAccent:"#ececf1",...vs,diffAddition:"#15803d",diffDeletion:"#b91c1c",scrollbarHandle:"#3f3f46",background:"#ffffff",popover:"#ffffff",popoverForeground:e,primary:t,secondary:"#f4f4f5",muted:"#f4f4f5",mutedForeground:"#71717a",input:"#f4f4f5",ring:t,palette:v,syntax:Is(),terminal:{...nn("#ffffff",e,t),selectionBackground:"rgba(0,0,0,0.15)",white:"#ffffff",brightWhite:"#fafafa"}}}const js={light:"#ffffff",dark:"#3b62b0",zinc:"#808080",midnight:"#4A6BA8",claude:"#D97757",ghostty:"#8caaee"},sn=["light","dark","zinc","midnight","claude","ghostty"];function Ts(e){if(e==="light")return Cs();switch(e){case"dark":return je({surface0:"#181B1A",surface1:"#1E2120",surface2:"#272A29",surface3:"#434645",surface4:"#595B5B",surfaceDiffEmpty:"#252827",surfaceSidebar:"#141716",surfaceSidebarHover:"#1c1f1e",mutedForeground:"#A1A5A4",scrollbarHandle:"#717574",border:"#252B2A",borderAccent:"#2f3135",accent:"#2e5cb8",accentBright:"#a2b4d7",destructive:"#c64f43"});case"zinc":return je({surface0:"#18181b",surface1:"#1f1f22",surface2:"#27272a",surface3:"#3f3f46",surface4:"#52525b",surfaceDiffEmpty:"#242427",surfaceSidebar:"#131316",surfaceSidebarHover:"#1b1b1e",mutedForeground:"#a1a1aa",scrollbarHandle:"#71717a",border:"#27272a",borderAccent:"#303036",accent:"#e4e4e7",accentBright:"#fafafa",destructive:"#c44a4a"});case"midnight":return je({surface0:"#161820",surface1:"#1c1e27",surface2:"#252731",surface3:"#3c3e4c",surface4:"#535564",surfaceDiffEmpty:"#222430",surfaceSidebar:"#121420",surfaceSidebarHover:"#1a1c28",mutedForeground:"#9a9db0",scrollbarHandle:"#6b6e82",border:"#242636",borderAccent:"#2e3040",accent:"#3b6fcf",accentBright:"#7eaaeb",destructive:"#c44a52"});case"claude":return je({surface0:"#1f1f1e",surface1:"#262523",surface2:"#2f2d2b",surface3:"#4a4745",surface4:"#605d5b",surfaceDiffEmpty:"#2a2826",surfaceSidebar:"#1a1918",surfaceSidebarHover:"#222120",mutedForeground:"#ada9a5",scrollbarHandle:"#78746f",border:"#2c2a27",borderAccent:"#36332f",accent:"#d97757",accentBright:"#e89a7f",destructive:"#cf513e"});case"ghostty":return je({surface0:"#282c34",surface1:"#2f333d",surface2:"#383c48",surface3:"#4a4f5e",surface4:"#5b6175",surfaceDiffEmpty:"#323643",surfaceSidebar:"#21252d",surfaceSidebarHover:"#292d36",mutedForeground:"#c8ccd8",scrollbarHandle:"#a0a4b2",border:"#353a47",borderAccent:"#3f4454",accent:"#89b4fa",accentBright:"#b4d0fc",destructive:"#c44a55"})}}const on={};for(const e of sn){const t=e==="light"?"light":"dark";on[e]={name:e,colorScheme:t,colors:Ts(e),swatch:js[e]}}const Es=on,Ns={0:0,1:4,"1.5":6,2:8,3:12,4:16,6:24,8:32,12:48,16:64,20:80,24:96,32:128},rn={xs:12,code:12,sm:14,base:16,lg:18,xl:20,"2xl":22,"3xl":26,"4xl":34},Rs={normal:"400",medium:"500",semibold:"600",bold:"700"},Ms={none:0,sm:2,base:4,md:6,lg:8,xl:12,"2xl":16,full:9999},qs={0:0,1:1,2:2},Bs={0:0,50:.5,100:1},As={xs:12,sm:14,md:16,lg:20},$s={diff:22},an='system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',cn='ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace';function Ds(e){const t=e==="dark"?"rgba(0,0,0,0.55)":"rgba(24,24,27,0.12)";return{sm:{color:t,offsetX:0,offsetY:1,radius:2,elevation:1},md:{color:t,offsetX:0,offsetY:3,radius:8,elevation:4},lg:{color:t,offsetX:0,offsetY:10,radius:24,elevation:12}}}function ln(e){const t=Es[e];return{name:e,colorScheme:t.colorScheme,colors:t.colors,spacing:Ns,fontSize:{...rn},fontFamily:{ui:an,mono:cn},lineHeight:{...$s},iconSize:As,fontWeight:Rs,borderRadius:Ms,borderWidth:qs,opacity:Bs,shadow:Ds(t.colorScheme),swatch:t.swatch}}const Os=16,Ps=10,Fs=24;function zs(e,t){const n=t.themeName??e.name,s=ln(n),o=t.uiFont&&t.uiFont.trim()!==""?t.uiFont:an,r=t.monoFont&&t.monoFont.trim()!==""?t.monoFont:cn;let a={...s.fontSize};if(t.fontSize!=null){const d=Math.max(Ps,Math.min(Fs,t.fontSize))/Os,m=["xs","code","sm","base","lg","xl","2xl","3xl","4xl"];for(const f of m){const S=rn[f];a[f]=Math.round(S*d)}}return{...s,fontSize:a,fontFamily:{ui:o,mono:r}}}function Ls(e){return ln(e)}const Hs="dark";function Ws(e){const t={};Us(e.colors,t);for(const[n,s]of Object.entries(e.spacing))t[`--pi-spacing-${n}`]=`${s}px`;for(const[n,s]of Object.entries(e.fontSize))t[`--pi-font-size-${n}`]=`${s}px`;t["--pi-font-ui"]=e.fontFamily.ui,t["--pi-font-mono"]=e.fontFamily.mono,t["--pi-line-height-diff"]=`${e.lineHeight.diff}px`;for(const[n,s]of Object.entries(e.iconSize))t[`--pi-icon-size-${n}`]=`${s}px`;for(const[n,s]of Object.entries(e.fontWeight))t[`--pi-font-weight-${n}`]=String(s);for(const[n,s]of Object.entries(e.borderRadius))t[`--pi-radius-${n}`]=s===9999?"9999px":`${s}px`;for(const[n,s]of Object.entries(e.borderWidth))t[`--pi-border-width-${n}`]=`${s}px`;for(const[n,s]of Object.entries(e.opacity))t[`--pi-opacity-${n}`]=String(s);for(const[n,s]of Object.entries(e.shadow))if(typeof s=="string")t[`--pi-shadow-${n}`]=s;else if(s&&typeof s=="object"){const o=s;t[`--pi-shadow-${n}`]=`${o.offsetX}px ${o.offsetY}px ${o.radius}px ${o.color}`}return t["--pi-color-scheme"]=e.colorScheme,t}function Us(e,t){const{palette:n,syntax:s,terminal:o,...r}=e;for(const[a,c]of Object.entries(r))typeof c=="string"&&(t[`--pi-color-${a}`]=c);s&&Ks(s,t),o&&(t["--pi-terminal-bg"]=o.background,t["--pi-terminal-fg"]=o.foreground)}function Ks(e,t){for(const[n,s]of Object.entries(e))typeof s=="string"&&(t[`--syntax-${Vs(n)}`]=s)}function Vs(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function Gs(e){if(typeof document>"u")return;const t=document.documentElement.style;for(const[s,o]of Object.entries(e))t.setProperty(s,o);const n=e["--pi-color-scheme"];n&&document.documentElement.style.setProperty("color-scheme",n)}function Xs(e){const t=Ws(e);Gs(t)}const Te=l().min(1,"Asset path must not be empty"),Js=u({accent:l().refine(Pe,{message:"accent must be a valid #rrggbb hex color"}),accentBright:l().refine(Pe,{message:"accentBright must be a valid #rrggbb hex color"}).optional(),accentForeground:l().refine(Pe,{message:"accentForeground must be a valid #rrggbb hex color"}).optional(),swatch:l().refine(Pe,{message:"swatch must be a valid #rrggbb hex color"}).optional()}),Ys=u({logoLight:Te,logoDark:Te,logoMark:Te.optional(),icon:Te,splash:Te.optional()}),Qs=u({docs:l().url().optional(),support:l().url().optional(),issues:l().url().optional(),website:l().url().optional()}).optional(),Zs=u({copyright:l().optional(),companyName:l().optional()}).optional();u({productName:l().min(1,"productName is required"),shortName:l().optional(),tagline:l().optional(),colors:Js,assets:Ys,links:Qs,legal:Zs});function eo(e){const t=e.accent,n=e.accentBright??Ss(t,.35),s=e.accentForeground??yt(t),o=e.swatch??t;return{accent:t,accentBright:n,accentForeground:s,swatch:o}}function to(e,t){return{...e,colors:{...e.colors,accent:t.accent,accentBright:t.accentBright,accentForeground:t.accentForeground,primary:t.accent,ring:t.accent},swatch:t.swatch}}const kt="pi-studio-appearance";function no(e,t){let n=c(e),s=null;function o(f){return f==="system"?typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":f}function r(f,S){const h=o(f),x=Ls(h);let g=zs(x,{...S,themeName:h});if(t!=null&&t.colors){const _=eo(t.colors);g=to(g,_)}return g}function a(){const f=JSON.stringify({mode:n.mode,settings:n.settings});e.set(kt,f)}function c(f){const S=f.get(kt);let h=Hs,x={};if(S)try{const _=JSON.parse(S);_.mode&&(sn.includes(_.mode)||_.mode==="system")&&(h=_.mode),_.settings&&typeof _.settings=="object"&&(x=_.settings)}catch{}const g=r(h,x);return{mode:h,settings:x,resolvedTheme:g}}function d(){n={...n,resolvedTheme:r(n.mode,n.settings)},a()}const m={getState(){return n},setMode(f){n={...n,mode:f},d(),m.apply()},updateSettings(f){n={...n,settings:{...n.settings,...f}},d(),m.apply()},apply(){Xs(n.resolvedTheme)},listen(){if(typeof window>"u")return()=>{};const f=window.matchMedia("(prefers-color-scheme: dark)"),S=()=>{n.mode==="system"&&(d(),m.apply())};return f.addEventListener("change",S),s=()=>f.removeEventListener("change",S),s}};return m}function so({store:e,brandConfig:t,children:n}){const s=w.useRef(null);return s.current||(s.current=no(e,t),s.current.apply()),w.useEffect(()=>s.current.listen(),[]),i.jsx(i.Fragment,{children:n})}const oo={get(e){var t;try{return((t=globalThis.localStorage)==null?void 0:t.getItem(e))??null}catch{return null}},set(e,t){var n;try{(n=globalThis.localStorage)==null||n.setItem(e,t)}catch{}}};function ro({children:e}){return i.jsx(so,{store:oo,children:i.jsx(On,{client:_s,children:e})})}const ao="_btn_1chbg_4",io="_secondary_1chbg_44",co="_outline_1chbg_53",lo="_ghost_1chbg_62",uo="_destructive_1chbg_72",po="_iconOnly_1chbg_82",fo="_loadingSpinner_1chbg_89",ho="_piSpin_1chbg_1",Fe={btn:ao,default:"_default_1chbg_35",secondary:io,outline:co,ghost:lo,destructive:uo,iconOnly:po,loadingSpinner:fo,piSpin:ho},It={xs:28,sm:32,md:36,lg:40},mo={xs:12,sm:14,md:16,lg:20},Ct={xs:8,sm:10,md:12,lg:16},go={xs:12,sm:13,md:14,lg:15};function _o(e){const{disabled:t,loading:n}=e;return t||n?{opacity:.5,isGhostHover:!1}:{opacity:1,isGhostHover:!1}}function O({variant:e="default",size:t="md",loading:n=!1,disabled:s=!1,leftIcon:o,trailing:r,iconOnly:a=!1,children:c,style:d,className:m,...f}){const{opacity:S}=_o({disabled:s??!1,loading:n}),h=s||n,x=mo[t];return i.jsxs("button",{className:$(Fe.btn,Fe[e],a&&Fe.iconOnly,m),disabled:h,"aria-busy":n||void 0,style:{minHeight:It[t],paddingLeft:a?void 0:Ct[t],paddingRight:a?void 0:Ct[t],fontSize:go[t],opacity:S,...a?{width:It[t]}:{},...d},...f,children:[n?i.jsx(zn,{className:Fe.loadingSpinner,size:x,"aria-hidden":!0}):o?i.jsx("span",{"aria-hidden":!0,style:{display:"flex",alignItems:"center",flexShrink:0},children:o}):null,c,r&&!n&&i.jsx("span",{"aria-hidden":!0,style:{display:"flex",alignItems:"center",flexShrink:0},children:r})]})}const yo="_input_a7qyq_3",bo="_textarea_a7qyq_32",ut={input:yo,textarea:bo},Ve=w.forwardRef(function({className:t,...n},s){return i.jsx("input",{ref:s,className:$(ut.input,t),...n})}),Cu=w.forwardRef(function({className:t,...n},s){return i.jsx("textarea",{ref:s,className:$(ut.input,ut.textarea,t),...n})}),dn=l().datetime({offset:!0});l().uuid();l().regex(/^[A-Za-z0-9_-]+$/,"expected base64url");const Be=Wt([M(),dn]),wo=he(["mobile","browser","cli","mcp"]),So=u({type:b("hello"),clientId:l(),clientType:wo,protocolVersion:M(),appVersion:l().optional(),capabilities:se(l(),B()).optional()}),xo=u({status:b("server_info"),serverId:l(),hostname:l().optional(),version:l().optional(),capabilities:se(l(),D()),features:se(l(),D())}),vo=u({type:b("status"),payload:xo}),ko=u({type:b("ping"),requestId:l(),clientSentAt:Be.optional()}),Io=u({type:b("pong"),requestId:l(),clientSentAt:Be.optional(),serverReceivedAt:Be,serverSentAt:Be}),un=he(["initializing","idle","running","error","closed"]),Ze=u({mimeType:l().optional(),data:l().optional()}).passthrough(),Co=u({prs:P(D()).optional(),issues:P(D()).optional()}).passthrough(),jo=u({provider:l(),cwd:l(),modeId:l().optional(),model:l().optional(),modelProvider:l().optional(),thinkingOptionId:l().optional(),featureValues:se(l(),D()).optional(),title:l().nullable().optional(),approvalPolicy:l().optional(),sandboxMode:l().optional(),networkAccess:B().optional(),webSearch:B().optional(),extra:u({pi:D().optional()}).passthrough().optional(),systemPrompt:l().optional(),mcpServers:se(l(),D()).optional()}),To=u({type:b("create_agent_request"),requestId:l(),config:jo,env:se(l(),l()).optional(),workspaceId:l().optional(),worktreeName:l().optional(),initialPrompt:l().optional(),clientMessageId:l().optional(),outputSchema:se(l(),D()).optional(),images:P(Ze).optional(),attachments:Co.optional(),git:D().optional(),worktree:D().optional(),autoArchive:B().optional(),labels:se(l(),l()).default({})}),Eo=u({type:b("create_agent_response"),requestId:l(),payload:u({agentId:l()}).passthrough()}),No=u({type:b("agent_update"),agentId:l(),status:un.optional(),title:l().nullable().optional(),labels:se(l(),l()).optional()}),Ro=u({type:b("agent_status"),agentId:l(),status:un}),Mo=u({type:b("agent_list"),agents:P(u({id:l()}).passthrough())}),qo=u({type:b("agent_deleted"),agentId:l()}),Bo=u({type:b("agent_archived"),agentId:l(),archivedAt:dn.optional()}),pn=Ge("kind",[u({kind:b("shell"),command:l().optional(),output:l().optional()}),u({kind:b("read"),path:l().optional(),output:l().optional()}),u({kind:b("edit"),path:l().optional(),diff:l().optional(),output:l().optional()}),u({kind:b("write"),path:l().optional(),output:l().optional()}),u({kind:b("search"),query:l().optional(),output:l().optional()}),u({kind:b("fetch"),url:l().optional(),output:l().optional()}),u({kind:b("task"),description:l().optional(),output:l().optional()})]),Ao=Ge("kind",[u({kind:b("user_message"),messageId:l().optional(),text:l().optional(),images:P(Ze).optional()}),u({kind:b("assistant_message"),messageId:l().optional(),text:l().optional()}),u({kind:b("reasoning"),text:l().optional()}),u({kind:b("tool_call"),callId:l().optional(),tool:pn,status:l().optional()}),u({kind:b("turn_started"),turnId:l().optional()}),u({kind:b("turn_completed"),turnId:l().optional()}),u({kind:b("turn_failed"),turnId:l().optional(),error:l().optional()}),u({kind:b("turn_canceled"),turnId:l().optional()}),u({kind:b("error"),message:l().optional()}),u({kind:b("queue_update"),steering:P(l()).optional(),followUp:P(l()).optional()})]),$o=u({type:b("agent_stream"),agentId:l(),seq:M().optional(),timestamp:Be.optional(),event:Ao}),Do=he(["before","after"]),Oo=u({start:M(),end:M()}),Po=u({type:b("fetch_agent_timeline_request"),requestId:l(),agentId:l(),cursor:l().nullable().optional(),direction:Do,limit:M().optional()}),Fo=u({type:b("fetch_agent_timeline_response"),requestId:l(),agentId:l().optional(),items:P(D()),seqStart:M(),seqEnd:M(),sourceSeqRanges:P(Oo),collapsed:B(),hasNewer:B(),startCursor:l().nullable().optional(),endCursor:l().nullable().optional()}),zo=u({type:b("agent_permission_request"),requestId:l(),agentId:l(),toolName:l().optional(),tool:pn.optional(),action:D().optional(),responses:P(l()).optional()}),Lo=u({type:b("agent_permission_resolved"),requestId:l(),agentId:l(),decision:l().optional()}),Ho=u({type:b("agent.permission.respond.request"),requestId:l(),permissionRequestId:l(),response:D()}),Wo=u({type:b("agent.permission.respond.response"),requestId:l(),payload:u({resolved:B()}).passthrough()}),Uo=u({type:b("respond_to_permission"),requestId:l(),permissionRequestId:l(),response:D()}),fn=he(["conversation","files","both"]),Ko=u({type:b("agent.rewind.request"),requestId:l(),agentId:l(),messageId:l(),mode:fn}).passthrough(),Vo=u({type:b("agent.rewind.response"),requestId:l(),payload:u({agentId:l(),messageId:l(),mode:fn,truncatedAt:l().optional()}).passthrough()}).passthrough(),Go=u({input:M().optional(),output:M().optional(),cacheRead:M().optional(),cacheWrite:M().optional(),total:M().optional()}).passthrough(),Xo=u({tokens:M().nullable().optional(),contextWindow:M().optional(),percent:M().nullable().optional()}).passthrough(),Jo=u({type:b("agent_session_stats_request"),requestId:l(),agentId:l()}).passthrough(),Yo=u({type:b("agent_session_stats_response"),requestId:l(),payload:u({sessionId:l().optional(),sessionFile:l().optional(),userMessages:M().optional(),assistantMessages:M().optional(),toolCalls:M().optional(),toolResults:M().optional(),totalMessages:M().optional(),tokens:Go.optional(),cost:M().optional(),contextUsage:Xo.optional(),model:l().optional()}).passthrough()}).passthrough(),Qo=u({type:b("agent_compact_request"),requestId:l(),agentId:l(),customInstructions:l().optional()}).passthrough(),Zo=u({type:b("agent_compact_response"),requestId:l(),payload:u({summary:l().optional(),firstKeptEntryId:l().optional(),tokensBefore:M().optional(),details:D().optional()}).passthrough()}).passthrough(),er=u({type:b("agent_new_session_request"),requestId:l(),agentId:l()}).passthrough(),tr=u({type:b("agent_new_session_response"),requestId:l(),payload:u({cancelled:B()}).passthrough()}).passthrough(),nr=u({type:b("agent_switch_session_request"),requestId:l(),agentId:l(),sessionPath:l()}).passthrough(),sr=u({type:b("agent_switch_session_response"),requestId:l(),payload:u({cancelled:B()}).passthrough()}).passthrough(),or=u({type:b("agent_fork_request"),requestId:l(),agentId:l(),entryId:l()}).passthrough(),rr=u({type:b("agent_fork_response"),requestId:l(),payload:u({text:l(),cancelled:B()}).passthrough()}).passthrough(),ar=u({type:b("agent_fork_messages_request"),requestId:l(),agentId:l()}).passthrough(),ir=u({type:b("agent_fork_messages_response"),requestId:l(),payload:u({messages:P(u({entryId:l(),text:l()}).passthrough())}).passthrough()}).passthrough(),cr=u({type:b("agent_clone_request"),requestId:l(),agentId:l()}).passthrough(),lr=u({type:b("agent_clone_response"),requestId:l(),payload:u({cancelled:B()}).passthrough()}).passthrough(),dr=u({type:b("agent_set_session_name_request"),requestId:l(),agentId:l(),name:l()}).passthrough(),ur=u({type:b("agent_set_session_name_response"),requestId:l(),payload:u({}).passthrough().optional()}).passthrough(),pr=u({type:b("agent_export_html_request"),requestId:l(),agentId:l(),outputPath:l().optional()}).passthrough(),fr=u({type:b("agent_export_html_response"),requestId:l(),payload:u({path:l()}).passthrough()}).passthrough(),hr=u({type:b("agent_set_model_request"),requestId:l(),agentId:l(),provider:l(),modelId:l()}).passthrough(),mr=u({type:b("agent_set_model_response"),requestId:l(),payload:u({}).passthrough()}).passthrough(),gr=u({type:b("agent_cycle_model_request"),requestId:l(),agentId:l()}).passthrough(),_r=u({type:b("agent_cycle_model_response"),requestId:l(),payload:u({model:D().nullable().optional(),thinkingLevel:l().optional(),isScoped:B().optional()}).passthrough()}).passthrough(),yr=u({type:b("agent_last_assistant_text_request"),requestId:l(),agentId:l()}).passthrough(),br=u({type:b("agent_last_assistant_text_response"),requestId:l(),payload:u({text:l().nullable()}).passthrough()}).passthrough(),wr=u({type:b("steer_agent_request"),requestId:l(),agentId:l(),message:l(),images:P(Ze).optional(),clientMessageId:l().optional()}).passthrough(),Sr=u({type:b("steer_agent_response"),requestId:l(),agentId:l(),ok:B()}).passthrough(),xr=u({type:b("follow_up_agent_request"),requestId:l(),agentId:l(),message:l(),images:P(Ze).optional(),clientMessageId:l().optional()}).passthrough(),vr=u({type:b("follow_up_agent_response"),requestId:l(),agentId:l(),ok:B()}).passthrough(),kr=u({name:l(),id:l().optional(),description:l().optional(),source:he(["extension","prompt","skill"]).optional(),scope:he(["user","project","temporary"]).optional(),path:l().optional()}).passthrough(),Ir=u({type:b("agent_list_commands_request"),requestId:l(),agentId:l()}).passthrough(),Cr=u({type:b("agent_list_commands_response"),requestId:l(),payload:u({commands:P(kr)}).passthrough()}).passthrough(),jr=u({type:b("rpc_error"),requestId:l(),code:l().optional(),message:l().optional(),error:l().optional()}),Tr=Ge("type",[To,Eo,No,Ro,Mo,qo,Bo,$o,Po,Fo,zo,Lo,Ho,Wo,Uo,Ko,Vo,Jo,Yo,Qo,Zo,er,tr,nr,sr,or,rr,ar,ir,cr,lr,dr,ur,pr,fr,hr,mr,gr,_r,yr,br,wr,Sr,xr,vr,Ir,Cr,jr]),Er=u({type:l()}).passthrough(),Nr=u({type:b("session"),message:Wt([Tr,Er])});Ge("type",[So,vo,ko,Io,Nr]);const Rr={inline_image_markdown:"inline_image_markdown"},_e={Output:1,Input:2,Resize:3,Snapshot:4,Restore:5},Mr=Object.fromEntries(Object.entries(_e).map(([e,t])=>[t,e])),hn=u({rows:M().int().nonnegative(),cols:M().int().nonnegative()});class Re extends Error{constructor(t){super(t),this.name="TerminalFrameError"}}const qr=new TextEncoder,Br=new TextDecoder;function Ar(e){if(!Number.isInteger(e)||e<0||e>255)throw new Re(`slot must be an integer 0–255, got ${e}`)}function Ee(e,t,n){const s=new Uint8Array(2+n.length);return s[0]=e,s[1]=t,s.set(n,2),s}function ju(e){switch(Ar(e.slot),e.opcode){case"Output":return Ee(_e.Output,e.slot,e.data);case"Input":return Ee(_e.Input,e.slot,e.data);case"Snapshot":return Ee(_e.Snapshot,e.slot,e.data);case"Restore":return Ee(_e.Restore,e.slot,e.data);case"Resize":{const t=JSON.stringify(hn.parse({rows:e.rows,cols:e.cols}));return Ee(_e.Resize,e.slot,qr.encode(t))}}}function $r(e){if(e.length<2)throw new Re(`frame too short: ${e.length} bytes (need ≥ 2)`);const t=e[0],n=e[1],s=Mr[t];if(!s)throw new Re(`unknown terminal opcode 0x${t.toString(16)}`);const o=e.subarray(2);if(s==="Resize"){let r;try{r=JSON.parse(Br.decode(o))}catch{throw new Re("resize payload is not valid JSON")}const a=hn.safeParse(r);if(!a.success)throw new Re("resize payload is not { rows, cols }");return{opcode:"Resize",slot:n,rows:a.data.rows,cols:a.data.cols}}return{opcode:s,slot:n,data:o.slice()}}const be={Begin:16,Chunk:17,End:18,Error:19},Dr=Object.fromEntries(Object.entries(be).map(([e,t])=>[t,e])),mn=u({transferId:l(),fileName:l().optional(),mimeType:l().optional(),totalBytes:M().int().nonnegative().optional()});class Me extends Error{constructor(t){super(t),this.name="FileTransferFrameError"}}const jt=new TextEncoder,Tt=new TextDecoder;function Or(e){if(!Number.isInteger(e)||e<0||e>255)throw new Me(`stream must be an integer 0–255, got ${e}`)}function ze(e,t,n){const s=new Uint8Array(2+n.length);return s[0]=e,s[1]=t,s.set(n,2),s}function st(e){switch(Or(e.stream),e.opcode){case"Begin":return ze(be.Begin,e.stream,jt.encode(JSON.stringify(mn.parse(e.meta))));case"Chunk":return ze(be.Chunk,e.stream,e.data);case"End":return ze(be.End,e.stream,new Uint8Array([e.ok?1:0]));case"Error":return ze(be.Error,e.stream,jt.encode(e.message))}}function Pr(e){if(e.length<2)throw new Me(`frame too short: ${e.length} bytes (need ≥ 2)`);const t=e[0],n=e[1],s=Dr[t];if(!s)throw new Me(`unknown file-transfer opcode 0x${t.toString(16)}`);const o=e.subarray(2);switch(s){case"Begin":{let r;try{r=JSON.parse(Tt.decode(o))}catch{throw new Me("begin payload is not valid JSON")}const a=mn.safeParse(r);if(!a.success)throw new Me("begin payload is not a valid transfer header");return{opcode:"Begin",stream:n,meta:a.data}}case"Chunk":return{opcode:"Chunk",stream:n,data:o.slice()};case"End":return{opcode:"End",stream:n,ok:(o[0]??1)!==0};case"Error":return{opcode:"Error",stream:n,message:Tt.decode(o)}}}function Fr(e){try{return Pr(e)}catch{return null}}const zr=l().regex(/^[a-z][a-z0-9-]*$/,"invalid provider id"),Lr=he(["safe","moderate","dangerous","planning"]),Hr=u({supportsStreaming:B(),supportsSessionPersistence:B(),supportsDynamicModes:B(),supportsMcpServers:B(),supportsReasoningStream:B(),supportsToolInvocations:B(),supportsRewindConversation:B().optional(),supportsRewindFiles:B().optional(),supportsRewindBoth:B().optional(),supportsSteering:B().optional()}).passthrough(),Wr=u({id:l(),label:l().optional(),description:l().optional(),icon:l().optional(),colorTier:Lr});u({id:zr,label:l(),description:l().optional(),extends:l().optional(),modes:P(Wr),capabilities:Hr});function pt(e){return typeof e=="string"?e:e instanceof Uint8Array||Buffer.isBuffer(e)?e.toString("utf8"):String(e??"")}function gn(e){let t=null;const n={onMessage:null,onClose:null,onError:null,get isOpen(){return t!==null&&t.readyState===1},connect(s){return new Promise((o,r)=>{const a=e??(()=>new WebSocket(s));try{t=e?a(s):new WebSocket(s),t.binaryType="arraybuffer"}catch(c){r(c);return}t.onopen=()=>o(),t.onerror=c=>{var d;(t==null?void 0:t.readyState)!==1&&r(c),(d=n.onError)==null||d.call(n,c)},t.onclose=c=>{var d;(d=n.onClose)==null||d.call(n,c.code,pt(c.reason))},t.onmessage=c=>{var m,f,S,h;const{data:d}=c;d instanceof ArrayBuffer||d instanceof Uint8Array?(m=n.onMessage)==null||m.call(n,d):typeof d=="string"?(f=n.onMessage)==null||f.call(n,d):typeof Blob<"u"&&d instanceof Blob?(S=n.onMessage)==null||S.call(n,d):Buffer.isBuffer(d)&&((h=n.onMessage)==null||h.call(n,d.buffer.slice(d.byteOffset,d.byteOffset+d.byteLength)))}})},sendText(s){t==null||t.send(s)},sendBinary(s){t==null||t.send(s)},close(s=1e3,o=""){t==null||t.close(s,o),t=null}};return n}const qe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function _n(e){let t="";for(let n=0;n<e.length;n+=3){const s=e[n],o=n+1<e.length,r=n+2<e.length,a=o?e[n+1]:0,c=r?e[n+2]:0;t+=qe[s>>2],t+=qe[(s&3)<<4|a>>4],t+=o?qe[(a&15)<<2|c>>6]:"=",t+=r?qe[c&63]:"="}return t}function yn(e){const t=e.replace(/=+$/,""),n=[];let s=0,o=0;for(const r of t){const a=qe.indexOf(r);if(a===-1)throw new Error(`invalid base64 character: ${JSON.stringify(r)}`);s=s<<6|a,o+=6,o>=8&&(o-=8,n.push(s>>o&255))}return new Uint8Array(n)}function Ur(e){try{const t=JSON.parse(e);return!t||typeof t.type!="string"?null:t}catch{return null}}const Ue=24;function bn(e,t){const n=we.randomBytes(Ue),s=we.box.after(e,n,t),o=new Uint8Array(n.length+s.length);return o.set(n,0),o.set(s,n.length),_n(o)}function wn(e,t){let n;try{n=yn(e)}catch{return null}if(n.length<Ue)return null;const s=n.slice(0,Ue),o=n.slice(Ue);return we.box.open.after(o,s,t)}function Kr(e,t){return bn(new TextEncoder().encode(e),t)}function Vr(e,t){const n=wn(e,t);return n?new TextDecoder().decode(n):null}function Gr(e,t,n,s,o,r){let a=!1;return n.onClose(c=>{var d;a=!0,(d=s.onClose)==null||d.call(s,c)}),{handleAppFrame(c){var f,S;if(a)return;const d=o();if(!r()||!d)return;const m=Vr(c.frame,d);if(m===null){(f=s.onAuthError)==null||f.call(s,new Error(`relay ${e} channel: message failed authentication`));return}(S=s.onMessage)==null||S.call(s,m)},handleBinaryFrame(c){var f,S;if(a)return;const d=o();if(!r()||!d)return;const m=wn(c.frame,d);if(m===null){(f=s.onAuthError)==null||f.call(s,new Error(`relay ${e} channel: binary message failed authentication`));return}(S=s.onBinaryMessage)==null||S.call(s,m)},send(c){if(a)throw new Error(`relay ${e} channel: cannot send after close()`);const d=o();if(!r()||!d)throw new Error(`relay ${e} channel: cannot send before the E2EE handshake completes`);n.send(JSON.stringify({type:"e2ee_app",frame:Kr(c,d)}))},sendBinary(c){if(a)throw new Error(`relay ${e} channel: cannot send after close()`);const d=o();if(!r()||!d)throw new Error(`relay ${e} channel: cannot send before the E2EE handshake completes`);n.send(JSON.stringify({type:"e2ee_bin",frame:bn(c,d)}))},close(){a||(a=!0,n.close())}}}function Xr(e){const{transport:t,attachment:n,daemonPublicKey:s}=e,o=e.events??{},r=we.box.keyPair(),a=we.box.before(s,r.secretKey);let c=!1;const d=Gr("client",n,t,o,()=>a,()=>c);return t.onMessage(m=>{var S;const f=Ur(m);if(f){if(f.type==="e2ee_ready"){if(c)return;c=!0,(S=o.onReady)==null||S.call(o);return}if(f.type==="e2ee_app"){d.handleAppFrame(f);return}f.type==="e2ee_bin"&&d.handleBinaryFrame(f)}}),t.send(JSON.stringify({type:"e2ee_hello",ephemeralPublicKey:_n(r.publicKey)})),{role:"client",attachment:n,get ready(){return c},send:d.send,sendBinary:d.sendBinary,close:d.close}}const Jr=16;function Yr(e){const t=we.hash(e);let n="";for(let s=0;s<Jr;s++)n+=t[s].toString(16).padStart(2,"0");return n}function Qr(e){const t=e.useTls?"wss":"ws",n=e.endpoint.replace(/^(?:https?|wss?):\/\//,"").replace(/\/+$/,"");return`${t}://${n}`}function Zr(e){let t=null,n=null;const s=e.sessionId??Yr(e.daemonPublicKey),o={onMessage:null,onClose:null,onError:null,get isOpen(){return t!==null&&t.readyState===1&&n!==null&&n.ready},connect(r){return new Promise((a,c)=>{const d=e.factory??(()=>new WebSocket(r));try{t=e.factory?d(r):new WebSocket(r)}catch(h){c(h);return}const m=t,f=[],S=[];m.onopen=()=>{m.send(JSON.stringify({type:"relay_register",sessionId:s})),n=Xr({transport:{send:h=>m.send(h),onMessage:h=>f.push(h),onClose:h=>S.push(h),close:()=>m.close()},attachment:{sessionId:s},daemonPublicKey:e.daemonPublicKey,events:{onReady:()=>a(),onMessage:h=>{var x;return(x=o.onMessage)==null?void 0:x.call(o,h)},onBinaryMessage:h=>{var x;return(x=o.onMessage)==null?void 0:x.call(o,h.slice().buffer)},onAuthError:h=>{var x;return(x=o.onError)==null?void 0:x.call(o,h)}}})},m.onerror=h=>{var x;m.readyState!==1&&c(h),(x=o.onError)==null||x.call(o,h)},m.onclose=h=>{var x;for(const g of S)g(pt(h.reason));(x=o.onClose)==null||x.call(o,h.code,pt(h.reason))},m.onmessage=h=>{const{data:x}=h;if(typeof x=="string")for(const g of f)g(x)}})},sendText(r){if(!n||!n.ready)throw new Error("relay transport: cannot send before the E2EE handshake completes");n.send(r)},sendBinary(r){if(!n||!n.ready)throw new Error("relay transport: cannot send before the E2EE handshake completes");n.sendBinary(r)},close(r=1e3,a=""){n==null||n.close(),n=null,t==null||t.close(r,a),t=null}};return o}function ea(e){const t=e.indexOf("#"),n=t===-1?e:e.slice(t+1),s=new URLSearchParams(n),o=s.get("offer");if(!o)return null;let r;try{r=yn(o)}catch{return null}const a=s.get("relay");if(a){const d={endpoint:a,useTls:s.get("relayTls")==="1"};return{publicKeyB64:o,publicKey:r,relay:d}}const c=s.get("host")??void 0;return{publicKeyB64:o,publicKey:r,...c?{host:c}:{}}}const ta=1;function ft(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`id-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}class na extends Error{constructor(t,n,s){super(t),this.requestId=n,this.code=s,this.name="RpcError"}}class Et extends Error{constructor(t){super(`RPC ${t} timed out`),this.requestId=t,this.name="RpcTimeoutError"}}class sa{constructor(t){I(this,"transport");I(this,"rpcTimeoutMs");I(this,"now");I(this,"_state","idle");I(this,"_serverId",null);I(this,"_features",{});I(this,"_serverCapabilities",{});I(this,"pending",new Map);I(this,"sessionHandlers",new Set);I(this,"terminalHandlers",new Set);I(this,"fileTransferHandlers",new Set);I(this,"stateHandlers",new Set);I(this,"helloResolve",null);I(this,"helloReject",null);this.options=t,this.transport=t.transport??gn(),this.rpcTimeoutMs=t.rpcTimeoutMs??3e4,this.now=t.now??(()=>Date.now()),this.transport.onMessage=n=>this.handleIncoming(n),this.transport.onClose=(n,s)=>this.handleClose(n,s),this.transport.onError=()=>{}}get state(){return this._state}get serverId(){return this._serverId}get features(){return this._features}get serverCapabilities(){return this._serverCapabilities}hasFeature(t){return!!this._features[t]}async connect(){this.setState("connecting"),await this.transport.connect(this.options.url);const t=new Promise((s,o)=>{this.helloResolve=s,this.helloReject=o});this.transport.sendText(JSON.stringify({type:"hello",clientId:this.options.clientId,clientType:this.options.clientType,protocolVersion:this.options.protocolVersion??ta,appVersion:this.options.appVersion,capabilities:this.options.capabilities}));const n=await t;return this._serverId=n.serverId,this._features=n.features,this._serverCapabilities=n.capabilities,this.setState("open"),n}close(t=1e3,n=""){this.setState("closing"),this.transport.close(t,n)}request(t,n={},s){const o=n.requestId??ft();return new Promise((r,a)=>{const c=s??this.rpcTimeoutMs,d=c>0?setTimeout(()=>{this.pending.delete(o),a(new Et(o))},c):null;this.pending.set(o,{resolve:m=>r(m),reject:a,timer:d}),this.sendSession({type:t,...n,requestId:o})})}sendSession(t){this.transport.sendText(JSON.stringify({type:"session",message:t}))}sendBinary(t){this.transport.sendBinary(t)}ping(t=1e4){const n=ft();return new Promise((s,o)=>{const r=t>0?setTimeout(()=>{this.pending.delete(n),o(new Et(n))},t):null;this.pending.set(n,{resolve:()=>s(),reject:o,timer:r}),this.transport.sendText(JSON.stringify({type:"ping",requestId:n,clientSentAt:this.now()}))})}onSessionMessage(t){return this.sessionHandlers.add(t),()=>this.sessionHandlers.delete(t)}onTerminalFrame(t){return this.terminalHandlers.add(t),()=>this.terminalHandlers.delete(t)}onFileTransferFrame(t){return this.fileTransferHandlers.add(t),()=>this.fileTransferHandlers.delete(t)}onStateChange(t){return this.stateHandlers.add(t),()=>this.stateHandlers.delete(t)}setState(t){if(this._state!==t){this._state=t;for(const n of this.stateHandlers)n(t)}}handleClose(t,n){this.helloReject&&(this.helloReject(new Error(`socket closed during handshake: ${n}`)),this.helloResolve=null,this.helloReject=null);for(const[,s]of this.pending)s.timer&&clearTimeout(s.timer),s.reject(new Error(`socket closed: ${n}`));this.pending.clear(),this.setState("closed")}handleIncoming(t){if(typeof t=="string"){this.handleTextFrame(t);return}if(t instanceof ArrayBuffer){this.handleBinaryFrame(new Uint8Array(t));return}typeof t.arrayBuffer=="function"&&t.arrayBuffer().then(n=>this.handleBinaryFrame(new Uint8Array(n)))}handleBinaryFrame(t){const n=t[0];if(n!==void 0&&Object.values(be).includes(n)){const r=Fr(t);if(!r)return;for(const a of this.fileTransferHandlers)a(r);return}const o=$r(t);for(const r of this.terminalHandlers)r(o)}handleTextFrame(t){let n;try{n=JSON.parse(t)}catch{return}const s=n;switch(s.type){case"status":this.handleStatus(s);return;case"pong":this.resolvePending(s.requestId,void 0);return;case"ping":this.transport.sendText(JSON.stringify({type:"pong",requestId:s.requestId,serverReceivedAt:this.now(),serverSentAt:this.now()}));return;case"session":this.handleSession(s.message);return;default:return}}handleStatus(t){const n=t.payload;(n==null?void 0:n.status)==="server_info"&&this.helloResolve&&(this.helloResolve(n),this.helloResolve=null,this.helloReject=null)}handleSession(t){if(!t||typeof t!="object")return;const n=t;if(n.type==="rpc_error"&&typeof n.requestId=="string"){const s=this.pending.get(n.requestId);s&&(s.timer&&clearTimeout(s.timer),this.pending.delete(n.requestId),s.reject(new na(n.message??n.error??"RPC failed",n.requestId,n.code)));return}if(typeof n.requestId=="string"&&this.pending.has(n.requestId)){const s="payload"in n?n.payload:n;this.resolvePending(n.requestId,s)}for(const s of this.sessionHandlers)s(t)}resolvePending(t,n){const s=this.pending.get(t);s&&(s.timer&&clearTimeout(s.timer),this.pending.delete(t),s.resolve(n))}}class oa{constructor(t){this.daemon=t}get connection(){return this.daemon}async createAgent(t){return await this.daemon.request("create_agent_request",{...t})}agent(t){return new aa(this.daemon,t)}workspace(t){return new ia(this.daemon,t)}get providers(){return new ca(this.daemon)}onAgentUpdate(t){return this.daemon.onSessionMessage(n=>{n.type==="agent_update"&&t(n)})}onWorkspaceUpdate(t){return this.daemon.onSessionMessage(n=>{n.type==="workspace_update"&&t(n)})}}class ra{constructor(t,n){this.daemon=t,this.agentId=n}fetch(t={}){return this.daemon.request("fetch_agent_timeline_request",{agentId:this.agentId,cursor:t.cursor,direction:t.direction,limit:t.limit})}subscribe(t){return this.daemon.onSessionMessage(n=>{const s=n;s.type==="agent_stream"&&s.agentId===this.agentId&&s.event&&t(s.event)})}}class aa{constructor(t,n){I(this,"timeline");this.daemon=t,this.agentId=n,this.timeline=new ra(t,n)}send(t,n={}){return this.daemon.request("send_agent_prompt",{agentId:this.agentId,prompt:t,clientMessageId:n.clientMessageId,images:n.images})}run(t,n){return this.send(t,n)}interrupt(){return this.daemon.request("interrupt_agent",{agentId:this.agentId})}steer(t,n={}){return this.daemon.request("steer_agent_request",{agentId:this.agentId,message:t,clientMessageId:n.clientMessageId,images:n.images})}followUp(t,n={}){return this.daemon.request("follow_up_agent_request",{agentId:this.agentId,message:t,clientMessageId:n.clientMessageId,images:n.images})}update(t){return this.daemon.request("update_agent",{agentId:this.agentId,...t})}resume(){return this.daemon.request("resume_agent",{agentId:this.agentId})}archive(){return this.daemon.request("archive_agent",{agentId:this.agentId})}delete(){return this.daemon.request("delete_agent",{agentId:this.agentId})}onUpdate(t){return this.daemon.onSessionMessage(n=>{const s=n;s.type==="agent_update"&&s.agentId===this.agentId&&t(s)})}sessionStats(){return this.daemon.request("agent_session_stats_request",{agentId:this.agentId})}compact(t){return this.daemon.request("agent_compact_request",{agentId:this.agentId,customInstructions:t})}newSession(){return this.daemon.request("agent_new_session_request",{agentId:this.agentId})}switchSession(t){return this.daemon.request("agent_switch_session_request",{agentId:this.agentId,sessionPath:t})}fork(t){return this.daemon.request("agent_fork_request",{agentId:this.agentId,entryId:t})}forkMessages(){return this.daemon.request("agent_fork_messages_request",{agentId:this.agentId})}clone(){return this.daemon.request("agent_clone_request",{agentId:this.agentId})}setSessionName(t){return this.daemon.request("agent_set_session_name_request",{agentId:this.agentId,name:t})}exportHtml(t){return this.daemon.request("agent_export_html_request",{agentId:this.agentId,outputPath:t})}setModel(t,n){return this.daemon.request("agent_set_model_request",{agentId:this.agentId,provider:t,modelId:n})}cycleModel(){return this.daemon.request("agent_cycle_model_request",{agentId:this.agentId})}lastAssistantText(){return this.daemon.request("agent_last_assistant_text_request",{agentId:this.agentId})}listCommands(){return this.daemon.request("agent_list_commands_request",{agentId:this.agentId})}}class ia{constructor(t,n){this.daemon=t,this.workspaceId=n}onUpdate(t){return this.daemon.onSessionMessage(n=>{const s=n;s.type==="workspace_update"&&s.workspaceId===this.workspaceId&&t(s)})}}class ca{constructor(t){this.daemon=t}listProviders(){return this.daemon.request("list_providers",{})}listModels(t){return this.daemon.request("list_provider_models",{provider:t})}listModes(t){return this.daemon.request("list_provider_modes",{provider:t})}resolveDefaultModel(t,n){return this.daemon.request("resolve_default_model",{provider:t,...n?{cwd:n}:{}})}refreshSnapshot(){return this.daemon.request("providers.snapshot.refresh.request",{})}}const Nt=32*1024;function la(e){const t=e.reduce((o,r)=>o+r.length,0),n=new Uint8Array(t);let s=0;for(const o of e)n.set(o,s),s+=o.length;return n}class da{constructor(t){I(this,"pending",new Map);I(this,"nextStream",1);I(this,"detach",null);this.daemon=t}start(){this.detach||(this.detach=this.daemon.onFileTransferFrame(t=>this.dispatch(t)))}stop(){var t;(t=this.detach)==null||t.call(this),this.detach=null;for(const[n,s]of this.pending)s.reject(new Error("file transfer router stopped")),this.pending.delete(n)}async download(t){const n=await this.daemon.request("file_download_token_request",{path:t});if(!n.ok||!n.token)throw new Error(n.error??"failed to issue download token");const s=this.nextStream++,o=new Promise((a,c)=>{this.pending.set(s,{chunks:[],meta:{},resolve:a,reject:c})}),r=await this.daemon.request("file_download_request",{token:n.token,stream:s});if(!r.ok)throw this.pending.delete(s),new Error(r.error??"download request failed");return o}async upload(t,n){const s=ft(),o=await this.daemon.request("file_upload_request",{path:t,transferId:s});if(!o.ok||o.stream===void 0)throw new Error(o.error??"upload request failed");const r=o.stream;this.daemon.sendBinary(st({opcode:"Begin",stream:r,meta:{transferId:s}}));for(let a=0;a<n.length;a+=Nt){const c=n.subarray(a,a+Nt);this.daemon.sendBinary(st({opcode:"Chunk",stream:r,data:c}))}this.daemon.sendBinary(st({opcode:"End",stream:r,ok:!0}))}dispatch(t){const n=this.pending.get(t.stream);if(n)switch(t.opcode){case"Begin":n.meta.fileName=t.meta.fileName,n.meta.mimeType=t.meta.mimeType;return;case"Chunk":n.chunks.push(t.data);return;case"End":this.pending.delete(t.stream),t.ok?n.resolve({bytes:la(n.chunks),...n.meta}):n.reject(new Error("download failed"));return;case"Error":this.pending.delete(t.stream),n.reject(new Error(t.message));return}}}class ua{constructor(t,n={}){I(this,"initialDelayMs");I(this,"maxDelayMs");I(this,"factor");I(this,"jitter");I(this,"maxAttempts");I(this,"setTimer");I(this,"clearTimer");I(this,"random");I(this,"attempt",0);I(this,"timer",null);I(this,"active",!1);I(this,"detachState",null);I(this,"reconnectedHandlers",new Set);I(this,"failedHandlers",new Set);this.daemon=t,this.initialDelayMs=n.initialDelayMs??500,this.maxDelayMs=n.maxDelayMs??3e4,this.factor=n.factor??2,this.jitter=n.jitter??.2,this.maxAttempts=n.maxAttempts??Number.POSITIVE_INFINITY,this.setTimer=n.setTimer??((s,o)=>setTimeout(s,o)),this.clearTimer=n.clearTimer??(s=>clearTimeout(s)),this.random=n.random??Math.random}delayForAttempt(t){const n=Math.min(this.maxDelayMs,this.initialDelayMs*this.factor**(t-1)),s=n*this.jitter*(this.random()*2-1);return Math.max(0,Math.round(n+s))}onReconnected(t){return this.reconnectedHandlers.add(t),()=>this.reconnectedHandlers.delete(t)}onReconnectFailed(t){return this.failedHandlers.add(t),()=>this.failedHandlers.delete(t)}start(){this.active||(this.active=!0,this.detachState=this.daemon.onStateChange(t=>{t==="closed"&&this.active&&this.scheduleReconnect(),t==="open"&&(this.attempt=0)}))}stop(){var t;this.active=!1,this.timer&&this.clearTimer(this.timer),this.timer=null,(t=this.detachState)==null||t.call(this),this.detachState=null}get attemptCount(){return this.attempt}scheduleReconnect(){if(!this.active||this.attempt>=this.maxAttempts)return;this.attempt+=1;const t=this.delayForAttempt(this.attempt);this.timer=this.setTimer(()=>{this.timer=null,this.tryReconnect()},t)}async tryReconnect(){if(!this.active)return;const t=this.attempt;try{await this.daemon.connect();for(const n of this.reconnectedHandlers)n({attempt:t,serverId:this.daemon.serverId})}catch(n){for(const s of this.failedHandlers)s(n,t);this.scheduleReconnect()}}}function Rt(e){const t=e.trim();if(t==="")return t;const n=t.match(/^([a-z][a-z0-9+.-]*):\/\//i);if(!n)return`ws://${t.replace(/\/+$/,"")}`;const s=n[1].toLowerCase(),o=t.slice(n[0].length).replace(/\/+$/,"");switch(s){case"http":return`ws://${o}`;case"https":return`wss://${o}`;case"ws":case"wss":return`${s}://${o}`;default:return t}}function pa(e){const t=ea(e);return t!=null&&t.relay?{mode:"relay",url:Qr(t.relay),daemonPublicKey:t.publicKey}:t!=null&&t.host?{mode:"direct",url:Rt(t.host)}:{mode:"direct",url:Rt(e)}}const fa=32,z=new Map;function ha(){for(;z.size>fa;){let e=null;for(const[t,n]of z)if(n.refs===0&&n.entry){URL.revokeObjectURL(n.entry.objectUrl),e=t;break}if(e===null)return;z.delete(e)}}function Tu(e,t){const n=z.get(e);if(n)return n.refs+=1,z.delete(e),z.set(e,n),n.entry?Promise.resolve(n.entry):n.pending;const s={refs:1,entry:null,pending:null};return z.set(e,s),ha(),s.pending=t(e).then(o=>{const r=new Blob([Uint8Array.from(o.bytes)],{type:o.mimeType||"application/octet-stream"}),a={objectUrl:URL.createObjectURL(r),mimeType:o.mimeType};return z.get(e)===s?(s.entry=a,s.pending=null):URL.revokeObjectURL(a.objectUrl),a}).catch(o=>{throw z.get(e)===s&&z.delete(e),o}),s.pending}function Eu(e){const t=z.get(e);t&&(t.refs=Math.max(0,t.refs-1))}function ma(){for(const e of z.values())e.entry&&URL.revokeObjectURL(e.entry.objectUrl);z.clear()}function ga(){return"web-"+Math.random().toString(36).slice(2,10)}const C=me()((e,t)=>({status:"idle",serverInfo:null,error:null,daemon:null,client:null,reconnection:null,async connect(n){t().disconnect();const s=pa(n.url);let o;s.mode==="relay"?o=Zr({daemonPublicKey:s.daemonPublicKey}):n.password&&(o=gn(d=>new WebSocket(d,[`pi-studio.bearer.${n.password}`])));const r=new sa({url:s.url,clientId:n.clientId??ga(),clientType:"browser",capabilities:{[Rr.inline_image_markdown]:!0},transport:o,rpcTimeoutMs:1800*1e3}),a=new oa(r),c=new ua(r);r.onStateChange(d=>e({status:d})),c.onReconnected(()=>e({error:null})),c.onReconnectFailed(d=>{e({error:d instanceof Error?d.message:String(d)})}),e({daemon:r,client:a,reconnection:c,error:null,status:"connecting"});try{const d=await r.connect();e({serverInfo:d}),c.start()}catch(d){throw e({error:d instanceof Error?d.message:String(d)}),d}},disconnect(){const{daemon:n,reconnection:s}=t();s==null||s.stop(),n==null||n.close(),ma(),e({status:"idle",serverInfo:null,daemon:null,client:null,reconnection:null})}})),_a=100,ya=480,ba=220,wa=280;function Le(e){return Math.min(ya,Math.max(_a,e))}const k=me()(e=>({host:"ws://127.0.0.1:6767",password:"",cwd:"~",cwdPickerOpen:!1,sessionMenu:null,fileMenu:null,rightSidebarTab:"files",collapsedWorkspaces:new Set,leftSidebarCollapsed:!1,rightSidebarCollapsed:!1,leftSidebarWidth:ba,rightSidebarWidth:wa,setHost:t=>e({host:t}),setPassword:t=>e({password:t}),setCwd:t=>e({cwd:t}),openCwdPicker:()=>e({cwdPickerOpen:!0}),closeCwdPicker:()=>e({cwdPickerOpen:!1}),openSessionMenu:(t,n,s)=>e({sessionMenu:{sessionId:t,x:n,y:s}}),closeSessionMenu:()=>e({sessionMenu:null}),openFileMenu:(t,n,s,o)=>e({fileMenu:{path:t,isDirectory:n,x:s,y:o}}),closeFileMenu:()=>e({fileMenu:null}),setRightSidebarTab:t=>e({rightSidebarTab:t}),toggleWorkspaceCollapsed:t=>e(n=>{const s=new Set(n.collapsedWorkspaces);return s.has(t)?s.delete(t):s.add(t),{collapsedWorkspaces:s}}),toggleLeftSidebar:()=>e(t=>({leftSidebarCollapsed:!t.leftSidebarCollapsed})),toggleRightSidebar:()=>e(t=>({rightSidebarCollapsed:!t.rightSidebarCollapsed})),setLeftSidebarWidth:t=>e({leftSidebarWidth:Le(t)}),setRightSidebarWidth:t=>e({rightSidebarWidth:Le(t)}),resizeLeftSidebar:t=>e(n=>({leftSidebarWidth:Le(n.leftSidebarWidth+t)})),resizeRightSidebar:t=>e(n=>({rightSidebarWidth:Le(n.rightSidebarWidth+t)}))})),Sa="_wrap_emmus_1",xa="_dot_emmus_8",va="_open_emmus_15",ka="_connecting_emmus_18",Ia="_closed_emmus_21",Ca="_idle_emmus_22",ja="_closing_emmus_23",ot={wrap:Sa,dot:xa,open:va,connecting:ka,closed:Ia,idle:Ca,closing:ja},Ta={idle:"disconnected",connecting:"connecting…",open:"connected",closing:"disconnecting…",closed:"disconnected"};function Ea(){const e=C(n=>n.status),t=C(n=>n.error);return i.jsxs("span",{className:ot.wrap,title:t??void 0,children:[i.jsx("span",{className:$(ot.dot,ot[e])}),Ta[e]??e]})}const Na="_toolbar_i9hmh_1",Ra="_brand_i9hmh_10",Ma="_version_i9hmh_16",qa="_sep_i9hmh_22",Ba="_host_i9hmh_28",Aa="_password_i9hmh_31",$a="_sidebarToggles_i9hmh_34",ue={toolbar:Na,brand:Ra,version:Ma,sep:qa,host:Ba,password:Aa,sidebarToggles:$a};function Da(){const e=C(h=>h.status),t=C(h=>h.connect),n=C(h=>h.disconnect),s=k(h=>h.host),o=k(h=>h.setHost),r=k(h=>h.password),a=k(h=>h.setPassword),c=k(h=>h.leftSidebarCollapsed),d=k(h=>h.toggleLeftSidebar),m=k(h=>h.rightSidebarCollapsed),f=k(h=>h.toggleRightSidebar),S=e==="open"||e==="connecting";return i.jsxs("div",{className:ue.toolbar,children:[i.jsx("span",{className:ue.brand,children:"Pi-Studio"}),i.jsxs("span",{className:ue.version,children:["v","0.0.49"]}),i.jsx(Ea,{}),i.jsx("div",{className:ue.sep}),i.jsx(Ve,{className:ue.host,value:s,onChange:h=>o(h.target.value),placeholder:"host:port, ws://…/http://…, or a pasted pairing link",disabled:S}),i.jsx(Ve,{className:ue.password,type:"password",value:r,onChange:h=>a(h.target.value),placeholder:"password",disabled:S}),e==="open"||e==="connecting"||e==="closing"?i.jsx(O,{size:"sm",onClick:()=>n(),children:"Disconnect"}):i.jsx(O,{size:"sm",variant:"default",onClick:()=>void t({url:s,password:r||void 0}),children:"Connect"}),i.jsxs("div",{className:ue.sidebarToggles,children:[i.jsx(O,{size:"sm",variant:"ghost",iconOnly:!0,title:c?"Show sessions sidebar":"Hide sessions sidebar",onClick:()=>d(),children:c?i.jsx(Ln,{size:16}):i.jsx(Hn,{size:16})}),i.jsx(O,{size:"sm",variant:"ghost",iconOnly:!0,title:m?"Show files/changes sidebar":"Hide files/changes sidebar",onClick:()=>f(),children:m?i.jsx(Wn,{size:16}):i.jsx(Un,{size:16})})]})]})}const ht={rows:[],streamingAssistantIndex:null,streamingReasoningIndex:null,toolIndexByCallId:{}};let Mt=0;function ie(){return Mt+=1,`row-${Mt}`}function Oa(e){switch(e.kind){case"shell":return e.command??"";case"read":case"write":return e.path??"";case"edit":return e.path??"";case"search":return e.query??"";case"fetch":return e.url??"";case"task":return e.description??"";default:return""}}function Pa(e,t){return e??`${t.kind}:${Oa(t)}`}function Fa(e){return{...e,streamingAssistantIndex:null,streamingReasoningIndex:null}}function za(e,t){var r;const n=e.rows.slice();let s=e.streamingAssistantIndex;if(s===null||((r=n[s])==null?void 0:r.kind)!=="assistant"){const a={kind:"assistant",id:ie(),text:"",streaming:!0};n.push(a),s=n.length-1}const o=n[s];return!o||o.kind!=="assistant"?e:(n[s]={...o,text:o.text+t},{...e,rows:n,streamingAssistantIndex:s,streamingReasoningIndex:null})}function La(e,t){var r;const n=e.rows.slice();let s=e.streamingReasoningIndex;if(s===null||((r=n[s])==null?void 0:r.kind)!=="reasoning"){const a={kind:"reasoning",id:ie(),text:"",streaming:!0};n.push(a),s=n.length-1}const o=n[s];return!o||o.kind!=="reasoning"?e:(n[s]={...o,text:o.text+t},{...e,rows:n,streamingReasoningIndex:s,streamingAssistantIndex:null})}function Ha(e,t){if(e.kind!==t.kind)return t;const n={...e};for(const[s,o]of Object.entries(t))o!==void 0&&o!==""&&(n[s]=o);return n}function Wa(e,t){var c;const n=Pa(t.callId,t.tool),s=t.status==="completed"||t.status==="error"?t.status:"running",o=e.toolIndexByCallId[n],r=e.rows.slice();if(o!==void 0&&((c=r[o])==null?void 0:c.kind)==="tool"){const d=r[o];return d.kind!=="tool"?e:(r[o]={...d,tool:Ha(d.tool,t.tool),status:s},{...e,rows:r,streamingAssistantIndex:null,streamingReasoningIndex:null})}const a={kind:"tool",id:ie(),callId:n,tool:t.tool,status:s};return r.push(a),{...e,rows:r,toolIndexByCallId:{...e.toolIndexByCallId,[n]:r.length-1},streamingAssistantIndex:null,streamingReasoningIndex:null}}function bt(e){const t=e.rows.slice();if(e.streamingAssistantIndex!==null){const n=t[e.streamingAssistantIndex];(n==null?void 0:n.kind)==="assistant"&&(t[e.streamingAssistantIndex]={...n,streaming:!1})}if(e.streamingReasoningIndex!==null){const n=t[e.streamingReasoningIndex];(n==null?void 0:n.kind)==="reasoning"&&(t[e.streamingReasoningIndex]={...n,streaming:!1})}return{...e,rows:t,streamingAssistantIndex:null,streamingReasoningIndex:null}}function Ua(e,t){const n=bt(e),s={kind:"error",id:ie(),text:t||"turn failed"};return{...n,rows:[...n.rows,s]}}function Ka(e){const t=bt(e),n={kind:"system",id:ie(),text:"(canceled)"};return{...t,rows:[...t.rows,n]}}function Va(e,t){const n={kind:"error",id:ie(),text:t||"error"};return{...e,rows:[...e.rows,n]}}function Ga(e,t,n,s){if(s!==void 0){const r=e.rows.findIndex(a=>a.kind==="user"&&a.pending&&a.clientMessageId===s);if(r!==-1){const a=e.rows.slice(),c=a[r];if((c==null?void 0:c.kind)==="user")return a[r]={...c,text:t,images:n,pending:!1},{...e,rows:a}}}const o={kind:"user",id:ie(),text:t,images:n,clientMessageId:s};return{...e,rows:[...e.rows,o]}}function Xa(e,t){let n=!1;const s=e.rows.map(o=>o.kind!=="user"||!o.queued||t.includes(o.text)?o:(n=!0,{...o,queued:!1}));return n?{...e,rows:s}:e}function Sn(e,t){switch(t.kind){case"turn_started":return Fa(e);case"user_message":return Ga(e,t.text??"",t.images,t.messageId);case"assistant_message":return za(e,t.text??"");case"reasoning":return La(e,t.text??"");case"tool_call":return Wa(e,t);case"turn_completed":return bt(e);case"turn_failed":return Ua(e,t.error);case"turn_canceled":return Ka(e);case"error":return Va(e,t.message);case"queue_update":return Xa(e,t.steering??[]);default:return e}}function Ja(e,t,n,s,o){const r={kind:"user",id:ie(),text:n,images:s,clientMessageId:t,pending:!0,queued:o};return{...e,rows:[...e.rows,r]}}function Ya(e,t){const n=e.rows.findIndex(r=>r.kind==="user"&&r.pending&&r.clientMessageId===t);if(n===-1)return e;const s=e.rows.slice(),o=s[n];return(o==null?void 0:o.kind)!=="user"?e:(s[n]={...o,pending:!1,failed:!0},{...e,rows:s})}let qt=0;function Qa(){return qt+=1,`s-${Date.now().toString(36)}-${qt}`}const T=me()((e,t)=>({sessions:{},order:[],activeSessionId:null,createSession(n){const s=Qa(),o={id:s,agentId:null,title:"New chat",status:"idle",cwd:n,timeline:ht,userMessageCount:0};return e(r=>({sessions:{...r.sessions,[s]:o},order:[s,...r.order],activeSessionId:s})),s},hydrate(n){e(s=>s.sessions[n.id]?s:{sessions:{...s.sessions,[n.id]:n},order:[...s.order,n.id]})},bindAgent(n,s){e(o=>{const r=o.sessions[n];return r?{sessions:{...o.sessions,[n]:{...r,agentId:s}}}:o})},setStatus(n,s){e(o=>{const r=o.sessions[n];return r?{sessions:{...o.sessions,[n]:{...r,status:s}}}:o})},setStatusByAgentId(n,s){const o=t().findByAgentId(n);o&&t().setStatus(o.id,s)},setModel(n,s,o){e(r=>{const a=r.sessions[n];return a?{sessions:{...r.sessions,[n]:{...a,model:s,modelProvider:o}}}:r})},setModelByAgentId(n,s,o){const r=t().findByAgentId(n);r&&t().setModel(r.id,s,o)},setTitle(n,s){e(o=>{const r=o.sessions[n];return r?{sessions:{...o.sessions,[n]:{...r,title:s}}}:o})},setCwd(n,s){e(o=>{const r=o.sessions[n];return r?{sessions:{...o.sessions,[n]:{...r,cwd:s}}}:o})},applyStreamEvent(n,s){e(o=>{const r=o.sessions[n];if(!r)return o;const a=Sn(r.timeline,s);let c=r.title;if(s.kind==="turn_completed"&&c==="New chat"){const d=a.rows.slice().reverse().find(m=>m.kind==="assistant");d&&d.kind==="assistant"&&d.text&&(c=d.text.slice(0,40)+(d.text.length>40?"…":""))}return{sessions:{...o.sessions,[n]:{...r,timeline:a,title:c}}}})},addOptimisticUserMessage(n,s,o,r,a){e(c=>{const d=c.sessions[n];if(!d)return c;const m=Ja(d.timeline,s,o,r,a);return{sessions:{...c.sessions,[n]:{...d,timeline:m,userMessageCount:d.userMessageCount+1}}}})},markUserMessageFailed(n,s){e(o=>{const r=o.sessions[n];if(!r)return o;const a=Ya(r.timeline,s);return{sessions:{...o.sessions,[n]:{...r,timeline:a}}}})},activate(n){e({activeSessionId:n})},remove(n){e(s=>{const{[n]:o,...r}=s.sessions,a=s.order.filter(d=>d!==n),c=s.activeSessionId===n?a[0]??null:s.activeSessionId;return{sessions:r,order:a,activeSessionId:c}})},findByAgentId(n){return Object.values(t().sessions).find(s=>s.agentId===n)}})),Bt=new WeakMap;function Za(e,t="pi"){const n=Bt.get(e);if(n)return n;const s=e.providers.resolveDefaultModel(t).then(o=>({model:o.model,modelProvider:o.modelProvider})).catch(()=>({}));return Bt.set(e,s),s}const Ke=new Map;function xn(e,t){const n=T.getState().sessions[t];if(!n)return Promise.reject(new Error(`unknown session: ${t}`));if(n.agentId)return Promise.resolve(n.agentId);const s=Ke.get(t);if(s)return s;const o=(async()=>{if(!n.model){const d=await Za(e),m=T.getState().sessions[t];d.model&&m&&!m.model&&T.getState().setModel(t,d.model,d.modelProvider)}const r=T.getState().sessions[t];if(!r)throw new Error(`unknown session: ${t}`);const a={provider:"pi",cwd:r.cwd||"~"};r.model&&(a.model=r.model),r.modelProvider&&(a.modelProvider=r.modelProvider);const c=await e.createAgent({config:a,labels:{}});return T.getState().bindAgent(t,c.agentId),c.agentId})();return Ke.set(t,o),o.finally(()=>Ke.delete(t)),o}async function ei(e,t){var o;const n=T.getState().sessions[t];if(!n||n.userMessageCount>0||n.timeline.rows.length>0)return!1;await((o=Ke.get(t))==null?void 0:o.catch(()=>{}));const s=T.getState().sessions[t];return s?(s.agentId&&e&&await e.agent(s.agentId).delete().catch(()=>{}),T.getState().remove(t),!0):!1}function rt(e,t){return e.filter(n=>n.workspaceCwd===t)}function He(e){(e==null?void 0:e.kind)==="chat"&&T.getState().activate(e.data.sessionId)}const E=me()((e,t)=>({tabs:[],activeTabId:null,activeWorkspaceCwd:null,lastActiveTabByWorkspace:{},open(n){const s=t().tabs.find(o=>o.id===n.id);if(s){t().activate(s.id);return}e(o=>({tabs:[...o.tabs,n],activeTabId:n.id,activeWorkspaceCwd:n.workspaceCwd,lastActiveTabByWorkspace:{...o.lastActiveTabByWorkspace,[n.workspaceCwd]:n.id}})),He(n)},close(n){let s;e(o=>{const r=o.tabs.find(f=>f.id===n);if(!r)return o;const a=o.tabs.findIndex(f=>f.id===n),c=o.tabs.filter(f=>f.id!==n);let d=o.activeTabId;const m={...o.lastActiveTabByWorkspace};if(d===n){const f=rt(c,r.workspaceCwd),S=Math.min(a,f.length-1),h=f[S];d=(h==null?void 0:h.id)??null,s=h}if(m[r.workspaceCwd]===n){const f=rt(c,r.workspaceCwd)[0];f?m[r.workspaceCwd]=f.id:delete m[r.workspaceCwd]}return{tabs:c,activeTabId:d,lastActiveTabByWorkspace:m}}),He(s)},activate(n){let s;e(o=>{const r=o.tabs.find(a=>a.id===n);return r?(s=r,{activeTabId:n,activeWorkspaceCwd:r.workspaceCwd,lastActiveTabByWorkspace:{...o.lastActiveTabByWorkspace,[r.workspaceCwd]:n}}):o}),He(s)},switchWorkspace(n){let s;e(o=>{var m;const r=rt(o.tabs,n),a=o.lastActiveTabByWorkspace[n],d=a&&r.some(f=>f.id===a)?a:((m=r[0])==null?void 0:m.id)??null;return s=r.find(f=>f.id===d),{activeWorkspaceCwd:n,activeTabId:d,lastActiveTabByWorkspace:d?{...o.lastActiveTabByWorkspace,[n]:d}:o.lastActiveTabByWorkspace}}),He(s)},reorder(n,s){e(o=>{const r=o.tabs.findIndex(m=>m.id===n),a=o.tabs.findIndex(m=>m.id===s);if(r===-1||a===-1||r===a)return o;const c=o.tabs.slice(),[d]=c.splice(r,1);return d?(c.splice(a,0,d),{tabs:c}):o})},updateLabel(n,s){e(o=>({tabs:o.tabs.map(r=>r.id===n?{...r,label:s}:r)}))},updateData(n,s){e(o=>({tabs:o.tabs.map(r=>r.id===n?{...r,data:{...r.data,...s}}:r)}))}})),U={chat:e=>`chat-${e}`,file:e=>`file-${e}`,diff:(e,t)=>`diff-${e}${t?"-staged":""}`,terminal:e=>`term-${e}`,molecule:e=>`mol-${e}`};let at=0;function vn(e){at+=1,E.getState().open({id:U.terminal(`new-${at}`),kind:"terminal",label:`Terminal ${at}`,closable:!0,data:{slot:null,cwd:e},workspaceCwd:e})}let it=0;function ti(e){it+=1,E.getState().open({id:U.molecule(`new-${it}`),kind:"molecule",label:`Molecule ${it}`,closable:!0,data:{path:null},workspaceCwd:e})}function wt(e){const t=T.getState().createSession(e);E.getState().open({id:U.chat(t),kind:"chat",label:"New chat",closable:!0,data:{sessionId:t},workspaceCwd:e});const n=C.getState().client;n&&xn(n,t).catch(()=>{})}function mt(e){const t=E.getState().tabs.find(s=>s.id===e);if(E.getState().close(e),(t==null?void 0:t.kind)!=="chat")return;const{sessionId:n}=t.data;ei(C.getState().client,n)}const ae=me()(e=>({rootPath:"",expanded:new Set,expandedByRoot:new Map,draft:null,setRoot:t=>e(n=>{const s=new Map(n.expandedByRoot);n.rootPath&&s.set(n.rootPath,n.expanded);const o=s.get(t),r=new Set(o);return r.add(t),{rootPath:t,expanded:r,expandedByRoot:s,draft:null}}),toggle:t=>e(n=>{if(t===n.rootPath)return n;const s=new Set(n.expanded);s.has(t)?s.delete(t):s.add(t);const o=new Map(n.expandedByRoot);return o.set(n.rootPath,s),{expanded:s,expandedByRoot:o}}),startDraft:(t,n)=>e(s=>{const o=new Set(s.expanded);o.add(t);const r=new Map(s.expandedByRoot);return s.rootPath&&r.set(s.rootPath,o),{draft:{parentPath:t,kind:n},expanded:o,expandedByRoot:r}}),cancelDraft:()=>e({draft:null})}));let ye=null;const gt=new Set;function ni(e){return gt.add(e),()=>gt.delete(e)}async function et(e){var t;if(ye)return ye;try{const n=await e.connection.request("file_explorer_request",{path:"/home"}),o=(((t=n.result)==null?void 0:t.entries)??n.entries??[]).find(r=>r.kind==="directory"||r.type==="directory");ye="/home/"+((o==null?void 0:o.name)||"user")}catch{return"/tmp"}for(const n of gt)n(ye);return ye}function si(){return ye}async function oi(e,t){return t==="~"||t.startsWith("~/")?await et(e)+t.slice(1):t}function St(){const e=C(o=>o.client),t=C(o=>o.status),[n,s]=w.useState(si());return w.useEffect(()=>ni(s),[]),w.useEffect(()=>{!e||t!=="open"||n||et(e)},[e,t,n]),n}const ri="_dot_gfh8u_3",ai="_spinner_gfh8u_16",At={dot:ri,spinner:ai};function ii(e){const{status:t,requiresAttention:n,attentionReason:s,showInactive:o}=e;if(!t)return null;if(n)switch(s){case"permission":return"statusWarning";case"error":return"statusDanger";case"finished":default:return"statusSuccess"}switch(t){case"running":case"queued":return"accent";case"waiting":return"statusWarning";case"finished":return"statusSuccess";case"error":return"statusDanger";case"idle":case"archived":return o?"foregroundMuted":null}}const $t=8,ci={accent:"var(--pi-color-accent)",statusSuccess:"var(--pi-color-statusSuccess)",statusDanger:"var(--pi-color-statusDanger)",statusWarning:"var(--pi-color-statusWarning)",foregroundMuted:"var(--pi-color-foregroundMuted)"};function li({className:e,...t}){const n=ii(t);if(!n)return null;const s=t.status==="running"&&!t.requiresAttention,o=s?"var(--pi-color-accentBright, #a2b4d7)":ci[n]??"currentColor";return i.jsx("span",{className:`${s?At.spinner:At.dot}${e?` ${e}`:""}`,style:s?{borderTopColor:o,borderRightColor:o}:{width:$t,height:$t,backgroundColor:o},role:"presentation"})}const di={initializing:"queued",idle:"idle",running:"running",error:"error",closed:"finished"};function ui(e){return di[e]??"idle"}const pi="_wrap_1di79_1",fi="_header_1di79_7",hi="_openBtn_1di79_15",mi="_list_1di79_27",gi="_item_1di79_32",_i="_active_1di79_41",yi="_title_1di79_45",bi="_meta_1di79_54",wi="_menuBtn_1di79_62",Si="_workspaceGroup_1di79_80",xi="_workspaceHeader_1di79_83",vi="_workspaceChevron_1di79_96",ki="_workspaceIcon_1di79_107",Ii="_workspaceLabel_1di79_111",Ci="_workspaceCount_1di79_117",ji="_newSessionBtn_1di79_122",Ti="_workspaceSessions_1di79_134",Ei="_emptyState_1di79_137",A={wrap:pi,header:fi,openBtn:hi,list:mi,item:gi,active:_i,title:yi,meta:bi,menuBtn:wi,workspaceGroup:Si,workspaceHeader:xi,workspaceChevron:vi,workspaceIcon:ki,workspaceLabel:Ii,workspaceCount:Ci,newSessionBtn:ji,workspaceSessions:Ti,emptyState:Ei};function Ni({session:e,active:t,onSelect:n,onOpenMenu:s}){return i.jsxs("div",{className:$(A.item,t&&A.active),onClick:n,onContextMenu:o=>{o.preventDefault(),s(o.clientX,o.clientY)},children:[i.jsxs("div",{className:A.title,children:[i.jsx(li,{status:ui(e.status),showInactive:!0}),i.jsx("span",{children:e.title})]}),i.jsxs("div",{className:A.meta,children:[e.cwd||"~"," · ",e.agentId?e.agentId.slice(0,8):"new"," ·"," ",e.userMessageCount," msgs"]}),i.jsx("button",{type:"button",className:A.menuBtn,title:"Actions",onClick:o=>{o.stopPropagation();const r=o.currentTarget.getBoundingClientRect();s(r.left,r.bottom)},children:i.jsx(Ut,{size:14})})]})}const Ri="_trigger_42hju_1",Mi="_content_42hju_12",qi="_item_42hju_21",Bi="_danger_42hju_38",Ai="_sep_42hju_41",ee={trigger:Ri,content:Mi,item:qi,danger:Bi,sep:Ai};function $i(){const e=k(g=>g.sessionMenu),t=k(g=>g.closeSessionMenu),n=C(g=>g.client),s=w.useRef(null),[o,r]=w.useState(!1);w.useEffect(()=>{r(e!==null)},[e]);const a=T(g=>e?g.sessions[e.sessionId]:void 0);if(!e)return null;const c=!!(a!=null&&a.agentId)&&(a==null?void 0:a.status)==="running";function d(g){r(g),g||t()}function m(){if(!a)return;const g=window.prompt("Rename:",a.title);if(g!=null&&g.trim()){const _=g.trim();T.getState().setTitle(a.id,_),E.getState().updateLabel(U.chat(a.id),_),a.agentId&&(n==null||n.agent(a.agentId).update({title:_}).catch(()=>{}))}t()}function f(){a!=null&&a.agentId&&(n==null||n.agent(a.agentId).interrupt().catch(()=>{})),t()}function S(g){T.getState().remove(g),E.getState().close(U.chat(g))}async function h(){if(a){if(!window.confirm("Archive this agent? It can be resumed later."))return t();if(t(),!a.agentId){S(a.id);return}if(!n){window.alert("Not connected — cannot archive remotely.");return}try{await n.agent(a.agentId).archive(),S(a.id)}catch(g){window.alert(`Failed to archive: ${g instanceof Error?g.message:String(g)}`)}}}async function x(){if(a){if(!window.confirm("Permanently delete this agent? This cannot be undone."))return t();if(t(),!a.agentId){S(a.id);return}if(!n){window.alert("Not connected — cannot delete remotely.");return}try{await n.agent(a.agentId).delete(),S(a.id)}catch(g){window.alert(`Failed to delete: ${g instanceof Error?g.message:String(g)}`)}}}return i.jsxs(Xe,{open:o,onOpenChange:d,modal:!1,children:[i.jsx(Je,{asChild:!0,children:i.jsx("button",{ref:s,type:"button",className:ee.trigger,style:{left:e.x,top:e.y},"aria-hidden":!0,tabIndex:-1})}),i.jsx(Ye,{children:i.jsxs(Qe,{className:ee.content,align:"start",sideOffset:2,children:[i.jsx(W,{className:ee.item,onSelect:m,children:"Rename"}),i.jsx(W,{className:ee.item,disabled:!c,onSelect:f,children:"Stop agent"}),i.jsx(lt,{className:ee.sep}),i.jsx(W,{className:`${ee.item} ${ee.danger}`,onSelect:h,children:"Archive"}),i.jsx(W,{className:`${ee.item} ${ee.danger}`,onSelect:x,children:"Delete permanently"})]})})]})}function Di({label:e,cwd:t,sessionCount:n,collapsed:s,onToggleCollapsed:o,onNewSession:r}){return i.jsxs("div",{className:A.workspaceHeader,onClick:o,title:t,children:[i.jsx("button",{type:"button",className:A.workspaceChevron,"aria-label":s?"Expand workspace":"Collapse workspace",onClick:a=>{a.stopPropagation(),o()},children:s?i.jsx(_t,{size:13}):i.jsx(Kt,{size:13})}),i.jsx(Kn,{size:13,className:$(A.workspaceIcon)}),i.jsx("span",{className:A.workspaceLabel,children:e}),i.jsx("span",{className:A.workspaceCount,children:n}),i.jsx(O,{size:"xs",variant:"ghost",iconOnly:!0,title:"New conversation",className:A.newSessionBtn,onClick:a=>{a.stopPropagation(),r()},children:i.jsx(Vt,{size:13})})]})}function Se(e,t){return t&&(e==="~"||e.startsWith("~/"))?t+e.slice(1):e}function kn(e,t,n){const s=new Map;for(const o of e){const r=t[o];if(!r)continue;const a=Se(r.cwd||"~",n),c=s.get(a);c?c.push(r):s.set(a,[r])}return Array.from(s,([o,r])=>({cwd:o,sessions:r}))}function Oi(e){return!e||e==="~"?"~":e.split("/").filter(Boolean).pop()||e}function Pi(){const e=T(_=>_.order),t=T(_=>_.sessions),n=T(_=>_.activeSessionId),s=T(_=>_.activate),o=E(_=>_.open),r=C(_=>_.status),a=k(_=>_.openSessionMenu),c=k(_=>_.setCwd),d=k(_=>_.openCwdPicker),m=k(_=>_.collapsedWorkspaces),f=k(_=>_.toggleWorkspaceCollapsed),S=St();function h(_){const y=Se(_||"~",S);wt(y)}function x(_){s(_);const y=t[_],q=Se((y==null?void 0:y.cwd)||"~",S);y!=null&&y.cwd&&c(y.cwd),o({id:U.chat(_),kind:"chat",label:(y==null?void 0:y.title)??"Chat",closable:!0,data:{sessionId:_},workspaceCwd:q})}const g=kn(e,t,S);return i.jsxs("div",{className:A.wrap,children:[i.jsxs("div",{className:A.header,children:[i.jsx("h3",{children:"Workspaces"}),i.jsx(O,{size:"xs",variant:"ghost",iconOnly:!0,className:A.openBtn,title:r!=="open"?"Connect to open a workspace":"Open a workspace folder",disabled:r!=="open",onClick:()=>d(),children:i.jsx(Gt,{size:13})})]}),i.jsxs("div",{className:A.list,children:[g.length===0&&i.jsx("div",{className:A.emptyState,children:r!=="open"?"Not connected":"No workspaces — open a folder to start"}),g.map(_=>{const y=m.has(_.cwd);return i.jsxs("div",{className:A.workspaceGroup,children:[i.jsx(Di,{label:Oi(_.cwd),cwd:_.cwd,sessionCount:_.sessions.length,collapsed:y,onToggleCollapsed:()=>f(_.cwd),onNewSession:()=>h(_.cwd)}),!y&&i.jsx("div",{className:A.workspaceSessions,children:_.sessions.map(q=>i.jsx(Ni,{session:q,active:q.id===n,onSelect:()=>x(q.id),onOpenMenu:(J,j)=>a(q.id,J,j)},q.id))})]},_.cwd)})]}),i.jsx($i,{})]})}const Fi="_strip_ha8p4_1",zi="_tab_ha8p4_11",Li="_active_ha8p4_27",Hi="_icon_ha8p4_31",Wi="_label_ha8p4_36",Ui="_close_ha8p4_41",Ki="_newTab_ha8p4_51",Vi="_content_ha8p4_74",Gi="_item_ha8p4_83",Xi="_itemIcon_ha8p4_97",F={strip:Fi,tab:zi,active:Li,icon:Hi,label:Wi,close:Ui,newTab:Ki,content:Vi,item:Gi,itemIcon:Xi},Ji={chat:Yt,file:Gn,diff:Vn,terminal:Jt,molecule:Xt};function Yi({tab:e}){const t=E(f=>f.activeTabId),n=E(f=>f.activate),s=Ji[e.kind],{attributes:o,listeners:r,setNodeRef:a,transform:c,transition:d,isDragging:m}=ms({id:e.id});return i.jsxs("div",{ref:a,className:$(F.tab,e.id===t&&F.active),style:{transform:gs.Transform.toString(c),transition:d,opacity:m?.5:1},onClick:()=>n(e.id),onAuxClick:f=>{f.button===1&&e.closable&&mt(e.id)},title:e.label,...o,...r,children:[i.jsx("span",{className:F.icon,children:i.jsx(s,{size:13})}),i.jsx("span",{className:F.label,children:e.label}),e.closable&&i.jsx("span",{className:F.close,onClick:f=>{f.stopPropagation(),mt(e.id)},children:i.jsx(ct,{size:12})})]})}function Qi({workspaceCwd:e}){const t=e??"~";return i.jsxs(Xe,{children:[i.jsx(Je,{asChild:!0,children:i.jsx("button",{type:"button",className:F.newTab,title:"New tab",disabled:!e,children:i.jsx(Vt,{size:14})})}),i.jsx(Ye,{children:i.jsxs(Qe,{className:F.content,align:"start",sideOffset:4,children:[i.jsxs(W,{className:F.item,onSelect:()=>wt(t),children:[i.jsx(Yt,{size:13,className:F.itemIcon}),"New chat"]}),i.jsxs(W,{className:F.item,onSelect:()=>vn(t),children:[i.jsx(Jt,{size:13,className:F.itemIcon}),"New terminal"]}),i.jsxs(W,{className:F.item,onSelect:()=>ti(t),children:[i.jsx(Xt,{size:13,className:F.itemIcon}),"New molecule view"]})]})})]})}function Zi(){const e=E(a=>a.tabs),t=E(a=>a.activeWorkspaceCwd),n=E(a=>a.reorder),s=e.filter(a=>a.workspaceCwd===t),o=cs(ls(hs,{activationConstraint:{distance:4}}));function r(a){const{active:c,over:d}=a;!d||c.id===d.id||n(String(c.id),String(d.id))}return i.jsxs("div",{className:F.strip,children:[i.jsx(ds,{sensors:o,collisionDetection:us,onDragEnd:r,children:i.jsx(ps,{items:s.map(a=>a.id),strategy:fs,children:s.map(a=>i.jsx(Yi,{tab:a},a.id))})}),i.jsx(Qi,{workspaceCwd:t})]})}const ec="_spinner_1tgzp_3",tc={spinner:ec},nc={xs:12,sm:16,md:20,lg:24},sc={xs:1,sm:2,md:2,lg:3};function In({size:e="md",color:t="currentColor",className:n,"aria-label":s="Loading"}){const o=typeof e=="number"?e:nc[e],r=typeof e=="number"?2:sc[e];return i.jsx("span",{className:`${tc.spinner}${n?` ${n}`:""}`,role:"status","aria-label":s,style:{width:o,height:o,borderWidth:r,color:t}})}const oc=w.lazy(()=>oe(()=>import("./ChatPanel-Cghr4FA9.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16])).then(e=>({default:e.ChatPanel}))),Dt=w.lazy(()=>oe(()=>import("./FilePanel-D10heC-L.js"),__vite__mapDeps([17,1,7,6,5,2,8,18,12,13,19,20,3,14,15])).then(e=>({default:e.FilePanel}))),rc=w.lazy(()=>oe(()=>import("./TerminalPanel-L9DJMwB6.js"),__vite__mapDeps([21,1,22,23,7,6,5,2,3,14,15,24])).then(e=>({default:e.TerminalPanel}))),ac=w.lazy(()=>oe(()=>import("./MoleculeViewerPanel-DFx9LSN6.js"),__vite__mapDeps([25,1,26,27,10,11,28,2,18,7,6,5,3,14,15,29])).then(e=>({default:e.MoleculeViewerPanel}))),ic={chat:oc,file:Dt,diff:Dt,terminal:rc,molecule:ac},cc="_area_z7u01_1",lc="_panel_z7u01_7",dc="_active_z7u01_14",uc="_empty_z7u01_17",pc="_emptyStack_z7u01_25",fc="_emptyTitle_z7u01_35",hc="_emptyHint_z7u01_39",te={area:cc,panel:lc,active:dc,empty:uc,emptyStack:pc,emptyTitle:fc,emptyHint:hc};function mc(){const e=E(a=>a.tabs),t=E(a=>a.activeTabId),n=E(a=>a.activeWorkspaceCwd),s=C(a=>a.status),o=k(a=>a.openCwdPicker),r=e.some(a=>a.workspaceCwd===n);return n===null?i.jsx("div",{className:te.area,children:i.jsxs("div",{className:te.emptyStack,children:[i.jsx("div",{className:te.emptyTitle,children:"No workspace open"}),i.jsx("div",{className:te.emptyHint,children:"Open a project folder to start a chat."}),i.jsx(O,{size:"sm",variant:"secondary",leftIcon:i.jsx(Gt,{size:14}),disabled:s!=="open",title:s!=="open"?"Connect to open a workspace":"Open a workspace folder",onClick:()=>o(),children:"Open Workspace"})]})}):r?i.jsx("div",{className:te.area,children:e.map(a=>{const c=ic[a.kind];return i.jsx("div",{className:$(te.panel,a.id===t&&te.active),children:i.jsx(w.Suspense,{fallback:i.jsx(In,{size:"md"}),children:i.jsx(c,{tab:a})})},a.id)})}):i.jsx("div",{className:te.area,children:i.jsx("div",{className:te.empty,children:"No open tabs in this workspace"})})}const ve={fileRead:e=>["file","read",e],fileDownload:e=>["file","download",e],fileText:(e,t)=>["file","text",e,t],fileDiff:(e,t,n)=>["file","diff",e,t,n],fileDiffByPath:e=>["file","diff",e],explorer:e=>["explorer",e],agentList:()=>["agents","list"],providerModels:e=>["providers","models",e],agentTimeline:e=>["agents","timeline",e],agentCommands:e=>["agents","commands",e]};function gc(e){const t=e.kind==="directory"||e.type==="directory"?"directory":"file";return{name:e.name??"",kind:t,size:e.size,mtimeMs:e.mtimeMs}}function _c(e){return e.slice().sort((t,n)=>t.kind!==n.kind?t.kind==="directory"?-1:1:t.name.localeCompare(n.name))}async function Cn(e,t){const s=(await e.connection.request("file_explorer_request",{path:t})).result;if(!s||s.ok===!1)throw new Error(s&&"error"in s?s.error:"explorer request failed");const o="entries"in s?s.entries??[]:[];return{path:s.resolvedPath??t,entries:_c(o.map(gc))}}function yc(e,t=!0){const n=C(s=>s.client);return Ht({queryKey:ve.explorer(e),queryFn:()=>{if(!n)throw new Error("not connected");return Cn(n,e)},enabled:!!n&&!!e&&t})}function bc(e){const t=C(o=>o.client),n=w.useMemo(()=>Array.from(e),[e]),s=Pn({queries:n.map(o=>({queryKey:ve.explorer(o),queryFn:()=>{if(!t)throw new Error("not connected");return Cn(t,o)},enabled:!!t&&!!o}))});return w.useMemo(()=>{const o=new Map;return n.forEach((r,a)=>{const c=s[a];o.set(r,{listing:c==null?void 0:c.data,isLoading:!!(c!=null&&c.isLoading),isError:!!(c!=null&&c.isError),error:c==null?void 0:c.error})}),o},[n,s])}function wc(e){return typeof e=="object"&&e!==null&&"type"in e&&e.type==="file_changed"&&"path"in e&&typeof e.path=="string"}function Sc(e,t){const n=new Set,s=e.connection.onSessionMessage(o=>{const r=o;wc(r)&&n.has(r.path)&&t(r.path)});return{sync(o){for(const r of n)o.has(r)||(n.delete(r),e.connection.request("file_watch_unsubscribe",{path:r}).catch(()=>{}));for(const r of o)n.has(r)||(n.add(r),e.connection.request("file_watch_subscribe",{path:r}).then(a=>{const c=a;(c==null?void 0:c.ok)===!1&&console.warn(`useExplorerWatch: ${c.error??"subscribe failed"} for "${r}"`)}).catch(()=>{}))},dispose(){s();for(const o of n)e.connection.request("file_watch_unsubscribe",{path:o}).catch(()=>{});n.clear()}}}function xc(e){const t=C(a=>a.client),n=xe(),s=w.useRef(null),o=w.useRef(null),r=Array.from(e).toSorted().join("\0");w.useEffect(()=>{var a,c;t&&(o.current!==t&&((a=s.current)==null||a.dispose(),s.current=Sc(t,d=>{n.invalidateQueries({queryKey:ve.explorer(d)})}),o.current=t),(c=s.current)==null||c.sync(new Set(r?r.split("\0"):[])))},[t,r,n]),w.useEffect(()=>()=>{var a;(a=s.current)==null||a.dispose(),s.current=null,o.current=null},[])}const Ot=new WeakMap;function Pt(e){let t=Ot.get(e);return t||(t=new da(e),t.start(),Ot.set(e,t)),t}function vc(e,t,n){const s=new Blob([Uint8Array.from(e)],{type:n||"application/octet-stream"}),o=URL.createObjectURL(s),r=document.createElement("a");r.href=o,r.download=t,r.rel="noopener",document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(o),0)}function jn(){const e=C(o=>o.daemon),t=xe(),n=w.useCallback(async(o,r)=>{if(!e)throw new Error("not connected");const a=o?`${o}/${r.name}`:r.name,c=new Uint8Array(await r.arrayBuffer());await Pt(e).upload(a,c),await t.invalidateQueries({queryKey:["explorer"]})},[e,t]),s=w.useCallback(async o=>{if(!e)throw new Error("not connected");const r=await Pt(e).download(o);vc(r.bytes,r.fileName||o.split("/").pop()||"download",r.mimeType)},[e]);return{upload:n,saveToDisk:s}}const kc=w.lazy(()=>oe(()=>import("./TextViewer-BDXrL58w.js"),__vite__mapDeps([30,1,31,2,7,6,5,32,28,19,20,3,14,15,33])).then(e=>({default:e.TextViewer}))),Ic=w.lazy(()=>oe(()=>import("./MarkdownFileViewer-Dd70piQk.js"),__vite__mapDeps([34,1,31,2,7,6,5,32,4,8,9,19,20,3,14,15,35])).then(e=>({default:e.MarkdownFileViewer}))),Cc=w.lazy(()=>oe(()=>import("./ImageViewer-5clHM3Nh.js"),__vite__mapDeps([36,1,28,2,19,20,7,6,5,3,14,15,37])).then(e=>({default:e.ImageViewer}))),jc=w.lazy(()=>oe(()=>import("./VideoViewer-DfNnw1AJ.js"),__vite__mapDeps([38,1,28,2,19,20,7,6,5,3,14,15,39])).then(e=>({default:e.VideoViewer}))),Tc=w.lazy(()=>oe(()=>import("./BinaryFallbackViewer-BqWD5myp.js"),__vite__mapDeps([40,1,28,2,3,7,6,5,14,15,41])).then(e=>({default:e.BinaryFallbackViewer}))),Nu={text:kc,markdown:Ic,image:Cc,video:jc,binary:Tc},Ec={md:"markdown",markdown:"markdown",mdx:"markdown",png:"image",jpg:"image",jpeg:"image",gif:"image",webp:"image",svg:"image",bmp:"image",ico:"image",avif:"image",mp4:"video",webm:"video",mov:"video",m4v:"video",ogv:"video",pdf:"binary",zip:"binary",gz:"binary",tar:"binary",exe:"binary",wasm:"binary",woff:"binary",woff2:"binary",ttf:"binary",otf:"binary"},Nc=[["image/","image"],["video/","video"]];function Tn(e){const t=e.split("/").pop()??e,n=t.lastIndexOf(".");return n>0?t.slice(n+1).toLowerCase():""}const Rc={pdb:!0,cif:!0,mmcif:!0,mol:!0,mol2:!0,xyz:!0,extxyz:!0,gro:!0,lammpstrj:!0,xsf:!0},Mc={poscar:!0,contcar:!0};function qc(e){if(Rc[Tn(e)])return!0;const t=e.split("/").pop()??e;return!!Mc[t.toLowerCase()]}function Ru(e,t={}){const n=Ec[Tn(e)];if(n)return n;const s=t.mimeHint??"";for(const[o,r]of Nc)if(s.startsWith(o))return r;return t.isBinary?"binary":"text"}function Bc(e,t){return e.endsWith("/")?`${e}${t}`:`${e}/${t}`}function En(e,t,n,s,o,r){var c;(r==null?void 0:r.parentPath)===t&&e.push({kind:"draft",path:`${t}::draft`,depth:n,draftKind:r.kind,parentPath:t});const a=o.get(t);if(!a||a.isLoading){e.push({kind:"loading",path:t,depth:n});return}if(a.isError){const d=a.error instanceof Error?a.error.message:"failed to load";e.push({kind:"error",path:t,depth:n,message:d});return}for(const d of((c=a.listing)==null?void 0:c.entries)??[])Ac(e,t,d,n,s,o,r)}function Ac(e,t,n,s,o,r,a){const c=Bc(t,n.name);if(n.kind!=="directory"){e.push({kind:"file",path:c,name:n.name,depth:s});return}const d=o.has(c);e.push({kind:"directory",path:c,name:n.name,depth:s,expanded:d}),d&&En(e,c,s+1,o,r,a)}function $c(e,t,n,s){if(!e)return[];const o=[];return En(o,e,0,t,n,s),o}const Dc="_container_1098n_1",Oc="_header_1098n_7",Pc="_uploadButton_1098n_14",Fc="_hiddenInput_1098n_33",zc="_status_1098n_36",Lc="_statusError_1098n_37",Hc="_rowAction_1098n_50",Wc="_item_1098n_65",Uc="_dropOverlay_1098n_68",Kc="_list_1098n_83",Vc="_chevronSlot_1098n_102",Gc="_chevron_1098n_102",Xc="_chevronOpen_1098n_113",Jc="_icon_1098n_116",Yc="_name_1098n_123",Qc="_dirName_1098n_128",Zc="_statusRow_1098n_134",el="_statusRowError_1098n_145",tl="_emptyState_1098n_148",nl="_draftInput_1098n_154",N={container:Dc,header:Oc,uploadButton:Pc,hiddenInput:Fc,status:zc,statusError:Lc,rowAction:Hc,item:Wc,dropOverlay:Uc,list:Kc,chevronSlot:Vc,chevron:Gc,chevronOpen:Xc,icon:Jc,name:Yc,dirName:Qc,statusRow:Zc,statusRowError:el,emptyState:tl,draftInput:nl};function sl({draftKind:e,indentStyle:t,onSubmit:n,onCancel:s}){const[o,r]=w.useState("");return i.jsxs("div",{className:N.item,style:t,onClick:a=>a.stopPropagation(),children:[i.jsx("span",{className:N.chevronSlot}),i.jsx("span",{className:N.icon,children:e==="directory"?i.jsx(Ae,{size:14}):i.jsx(Qt,{size:14})}),i.jsx("input",{className:N.draftInput,autoFocus:!0,spellCheck:!1,placeholder:e==="directory"?"New folder":"New file",value:o,onChange:a=>r(a.target.value),onKeyDown:a=>{if(a.key==="Enter"){a.preventDefault();const c=o.trim();c?n(c):s()}else a.key==="Escape"&&(a.preventDefault(),s())},onBlur:s})]})}const ol=14;function rl({row:e,onToggle:t,onOpenFile:n,onContextMenu:s,onSubmitDraft:o,onCancelDraft:r}){const a={paddingLeft:8+e.depth*ol};if(e.kind==="loading")return i.jsx("div",{className:N.statusRow,style:a,children:"Loading…"});if(e.kind==="error")return i.jsx("div",{className:$(N.statusRow,N.statusRowError),style:a,children:e.message??"failed to load"});if(e.kind==="draft")return i.jsx(sl,{draftKind:e.draftKind,indentStyle:a,onSubmit:d=>o(e.parentPath,d),onCancel:r});const c=e.kind==="directory";return i.jsxs("div",{className:N.item,style:a,onClick:()=>c?t(e.path):n(e.path),onContextMenu:d=>{d.preventDefault(),s(e.path,c,d.clientX,d.clientY)},children:[i.jsx("span",{className:N.chevronSlot,children:c&&i.jsx(_t,{size:12,className:$(N.chevron,e.expanded&&N.chevronOpen)})}),i.jsx("span",{className:N.icon,children:c?i.jsx(Ae,{size:14}):i.jsx(Qt,{size:14})}),i.jsx("span",{className:c?N.dirName:N.name,children:e.name}),i.jsx("button",{type:"button",className:N.rowAction,title:"Actions",onClick:d=>{d.stopPropagation();const m=d.currentTarget.getBoundingClientRect();s(e.path,c,m.left,m.bottom)},children:i.jsx(Ut,{size:12})})]})}const al="_trigger_ngv1a_1",il="_content_ngv1a_12",cl="_item_ngv1a_21",ll="_danger_ngv1a_34",dl="_sep_ngv1a_37",ne={trigger:al,content:il,item:cl,danger:ll,sep:dl};function ul(){const e=k(g=>g.fileMenu),t=k(g=>g.closeFileMenu),n=C(g=>g.client),s=ae(g=>g.startDraft),{saveToDisk:o}=jn(),r=xe(),a=w.useRef(null),[c,d]=w.useState(!1);if(w.useEffect(()=>{d(e!==null)},[e]),!e)return null;const m=e.path.split("/").pop()||e.path;function f(g){d(g),g||t()}async function S(){if(e){t();try{await o(e.path)}catch(g){window.alert(`Failed to download: ${g instanceof Error?g.message:String(g)}`)}}}async function h(){if(!e)return;const g=e.isDirectory?"folder (and everything inside it)":"file";if(!window.confirm(`Permanently delete this ${g}? "${m}" — this cannot be undone.`))return t();if(t(),!n){window.alert("Not connected — cannot delete remotely.");return}try{const _=await n.connection.request("file_delete_request",{path:e.path});if(!_.ok)throw new Error(_.error??"delete failed");await r.invalidateQueries({queryKey:["explorer"]})}catch(_){window.alert(`Failed to delete: ${_ instanceof Error?_.message:String(_)}`)}}function x(g){if(!e)return;const _=e.isDirectory?e.path:e.path.split("/").slice(0,-1).join("/")||"/";t(),s(_,g)}return i.jsxs(Xe,{open:c,onOpenChange:f,modal:!1,children:[i.jsx(Je,{asChild:!0,children:i.jsx("button",{ref:a,type:"button",className:ne.trigger,style:{left:e.x,top:e.y},"aria-hidden":!0,tabIndex:-1})}),i.jsx(Ye,{children:i.jsxs(Qe,{className:ne.content,align:"start",sideOffset:2,children:[i.jsx(W,{className:ne.item,onSelect:()=>x("file"),children:"New File"}),i.jsx(W,{className:ne.item,onSelect:()=>x("directory"),children:"New Folder"}),i.jsx(lt,{className:ne.sep}),!e.isDirectory&&i.jsxs(i.Fragment,{children:[i.jsx(W,{className:ne.item,onSelect:S,children:"Download"}),i.jsx(lt,{className:ne.sep})]}),i.jsx(W,{className:`${ne.item} ${ne.danger}`,onSelect:h,children:"Delete"})]})})]})}const pl={empty_path:"Choose a folder first.",invalid_name:'Invalid name — cannot be empty or contain "/".',exists:"An item with that name already exists here.",not_found:"That folder no longer exists.",not_a_directory:"That path is not a folder.",unreadable:"That folder is not readable."};async function Nn(e,t,n,s){const o=await e.connection.request("file_create_request",{path:t,name:n,kind:s});if(!o.ok){const r=o.error??"";throw new Error(pl[r]??r??"Failed to create")}return o.path??(t.endsWith("/")?`${t}${n}`:`${t}/${n}`)}const fl=24;function hl(){const e=C(p=>p.client),t=ae(p=>p.rootPath),n=ae(p=>p.expanded),s=ae(p=>p.setRoot),o=ae(p=>p.toggle),r=ae(p=>p.draft),a=ae(p=>p.startDraft),c=ae(p=>p.cancelDraft),d=E(p=>p.activeWorkspaceCwd),m=E(p=>p.open),{upload:f}=jn(),S=k(p=>p.openFileMenu),h=xe(),[x,g]=w.useState(null),[_,y]=w.useState(!1),[q,J]=w.useState(null),j=w.useRef(null),$e=w.useRef(null),ke=w.useRef(null);w.useEffect(()=>{if(!e)return;const p=d||"~";ke.current!==p&&(ke.current=p,oi(e,p).then(R=>s(R)))},[e,d,s]);const ge=bc(n);xc(n);const ce=w.useMemo(()=>$c(t,n,ge,r),[t,n,ge,r]),le=Fn({count:ce.length,getScrollElement:()=>$e.current,estimateSize:()=>fl,overscan:12,getItemKey:p=>{var R;return((R=ce[p])==null?void 0:R.path)??p}});function de(p){if(qc(p)){m({id:U.molecule(p),kind:"molecule",label:p.split("/").pop()||p,closable:!0,data:{path:p},workspaceCwd:d||"~"});return}m({id:U.file(p),kind:"file",label:p.split("/").pop()||p,closable:!0,data:{path:p},workspaceCwd:d||"~"})}async function tt(p,R){const L=(r==null?void 0:r.kind)??"file";if(c(),!!e)try{const K=await Nn(e,p,R,L);await h.invalidateQueries({queryKey:ve.explorer(p)}),g({text:`Created ${K}`,error:!1}),L==="file"&&de(K)}catch(K){g({text:K instanceof Error?K.message:"Failed to create",error:!0})}}async function Ie(p,R){var Oe;if(!R.length||!p)return;const L=(Oe=ge.get(p))==null?void 0:Oe.listing,K=new Set((L==null?void 0:L.entries.map(Y=>Y.name))??[]),Ce=R.filter(Y=>K.has(Y.name));if(Ce.length>0){const Y=Ce.map(qn=>qn.name).join(", ");if(!window.confirm(`Overwrite ${Ce.length>1?"these files":"this file"}? ${Y}`))return}g({text:`Uploading ${R.length} file${R.length>1?"s":""}…`,error:!1});try{for(const Y of R)await f(p,Y);g({text:`Uploaded ${R.length} file${R.length>1?"s":""}`,error:!1})}catch(Y){g({text:`Upload failed: ${Y instanceof Error?Y.message:"unknown"}`,error:!0})}}function De(p){p.preventDefault(),y(!1);const R=q??t;J(null);const L=Array.from(p.dataTransfer.files);Ie(R,L)}function nt(p){p.dataTransfer.types.includes("Files")&&(p.preventDefault(),y(!0))}return e?i.jsxs("div",{className:N.container,onDragOver:nt,onDragLeave:()=>y(!1),onDrop:De,children:[i.jsxs("div",{className:N.header,children:[i.jsx("button",{type:"button",className:N.uploadButton,onClick:()=>a(t,"file"),disabled:!t,title:"New file in workspace root",children:i.jsx(Xn,{size:12})}),i.jsx("button",{type:"button",className:N.uploadButton,onClick:()=>a(t,"directory"),disabled:!t,title:"New folder in workspace root",children:i.jsx(Zt,{size:12})}),i.jsxs("button",{type:"button",className:N.uploadButton,onClick:()=>{var p;return(p=j.current)==null?void 0:p.click()},disabled:!t,title:"Upload files to the workspace root",children:[i.jsx(Jn,{size:12}),i.jsx("span",{children:"Upload"})]}),i.jsx("input",{ref:j,type:"file",multiple:!0,className:N.hiddenInput,onChange:p=>{Ie(t,Array.from(p.target.files??[])),p.target.value=""}})]}),x&&i.jsx("div",{className:x.error?N.statusError:N.status,children:x.text}),i.jsxs("div",{className:N.list,ref:$e,children:[ce.length===0&&i.jsx("div",{className:N.emptyState,children:"No files loaded"}),i.jsx("div",{style:{position:"relative",height:le.getTotalSize()},children:le.getVirtualItems().map(p=>{const R=ce[p.index];return R?i.jsx("div",{"data-index":p.index,style:{position:"absolute",top:0,left:0,width:"100%",height:p.size,transform:`translateY(${p.start}px)`},onDragEnter:()=>{R.kind==="directory"&&J(R.path)},children:i.jsx(rl,{row:R,onToggle:o,onOpenFile:de,onContextMenu:(L,K,Ce,Oe)=>S(L,K,Ce,Oe),onSubmitDraft:(L,K)=>void tt(L,K),onCancelDraft:c})},p.key):null})})]}),_&&i.jsx("div",{className:N.dropOverlay,children:"Drop to upload"}),i.jsx(ul,{})]}):i.jsx("div",{className:N.emptyState,children:"Connect to browse files"})}const Ft={available:!1,branch:null,upstream:null,ahead:0,behind:0,detached:!1,conflictCount:0},Z=me()(e=>({subscribedCwd:null,changes:[],...Ft,setSubscribedCwd:t=>e({subscribedCwd:t}),applyProjection:t=>{if(!t||!t.available){e({changes:[],...Ft});return}const n=[];for(const s of t.staged)n.push({path:s.path,status:s.indexStatus==="A"?"added":s.indexStatus==="D"?"deleted":"modified",staged:!0});for(const s of t.unstaged)n.push({path:s.path,status:s.worktreeStatus==="D"?"deleted":"modified",staged:!1});for(const s of t.untracked)n.push({path:s,status:"added",staged:!1});e({changes:n,available:!0,branch:t.branch,upstream:t.upstream,ahead:t.ahead,behind:t.behind,detached:t.detached,conflictCount:t.conflicted.length})}})),ml="_list_1pgby_1",gl="_summary_1pgby_4",_l="_item_1pgby_11",yl="_badge_1pgby_23",bl="_added_1pgby_30",wl="_modified_1pgby_34",Sl="_deleted_1pgby_38",xl="_name_1pgby_42",vl="_emptyState_1pgby_47",pe={list:ml,summary:gl,item:_l,badge:yl,added:bl,modified:wl,deleted:Sl,name:xl,emptyState:vl},kl={added:"A",modified:"M",deleted:"D"};function Il(){const t=E(r=>r.activeWorkspaceCwd)||"~",n=Z(r=>r.changes),s=E(r=>r.open);function o(r,a){s({id:U.diff(r,a),kind:"diff",label:r.split("/").pop()||r,closable:!0,data:{path:r,staged:a},workspaceCwd:t})}return n.length===0?i.jsx("div",{className:pe.emptyState,children:"No changes detected"}):i.jsxs("div",{className:pe.list,children:[i.jsxs("div",{className:pe.summary,children:[n.length," changed file",n.length===1?"":"s"]}),n.map((r,a)=>i.jsxs("div",{className:pe.item,onClick:()=>o(r.path,r.staged),children:[i.jsx("span",{className:$(pe.badge,pe[r.status]),children:kl[r.status]}),i.jsx("span",{className:pe.name,children:r.path})]},`${r.path}-${r.staged}-${a}`))]})}const Cl="_wrap_r37ok_1",jl="_tabBar_r37ok_7",Tl="_tabBtn_r37ok_13",El="_active_r37ok_26",Nl="_refreshBtn_r37ok_30",Rl="_content_r37ok_34",re={wrap:Cl,tabBar:jl,tabBtn:Tl,active:El,refreshBtn:Nl,content:Rl};function Ml(){const e=k(c=>c.rightSidebarTab),t=k(c=>c.setRightSidebarTab),s=E(c=>c.activeWorkspaceCwd)||"~",o=C(c=>c.client),r=xe();function a(){r.invalidateQueries({queryKey:["explorer"]}),o&&s&&o.connection.request("checkout_refresh_request",{cwd:s}).catch(()=>{})}return i.jsxs("div",{className:re.wrap,children:[i.jsxs("div",{className:re.tabBar,children:[i.jsx("button",{type:"button",className:$(re.tabBtn,e==="files"&&re.active),onClick:()=>t("files"),children:"Files"}),i.jsx("button",{type:"button",className:$(re.tabBtn,e==="changes"&&re.active),onClick:()=>t("changes"),children:"Changes"}),i.jsx(O,{size:"xs",variant:"ghost",iconOnly:!0,title:"Refresh",className:re.refreshBtn,onClick:a,children:i.jsx(Yn,{size:13})})]}),i.jsx("div",{className:re.content,children:e==="files"?i.jsx(hl,{}):i.jsx(Il,{})})]})}const Rn=me()(e=>({bySession:{},setStats(t,n){e(s=>({bySession:{...s.bySession,[t]:{...s.bySession[t],...n}}}))},clear(t){e(n=>{const{[t]:s,...o}=n.bySession;return{bySession:o}})}})),ql=12e3;function Bl(e,t){return e==="running"&&t!=="running"}function zt(e,t){var s,o,r,a,c,d;const n={};((s=t.contextUsage)==null?void 0:s.tokens)!=null&&(n.contextTokens=t.contextUsage.tokens),((o=t.contextUsage)==null?void 0:o.contextWindow)!==void 0&&(n.contextWindow=t.contextUsage.contextWindow),((r=t.contextUsage)==null?void 0:r.percent)!=null&&(n.contextPercent=t.contextUsage.percent),((a=t.tokens)==null?void 0:a.total)!==void 0&&(n.totalTokens=t.tokens.total),((c=t.tokens)==null?void 0:c.input)!==void 0&&(n.inputTokens=t.tokens.input),((d=t.tokens)==null?void 0:d.output)!==void 0&&(n.outputTokens=t.tokens.output),t.cost!==void 0&&(n.cost=t.cost),t.model!==void 0&&(n.model=t.model,T.getState().setModel(e,t.model)),Rn.getState().setStats(e,n)}function Al(e){const t=C(c=>c.client),n=C(c=>c.status),s=T(c=>{var d;return e?((d=c.sessions[e])==null?void 0:d.agentId)??null:null}),o=T(c=>{var d;return e?(d=c.sessions[e])==null?void 0:d.status:void 0}),r=w.useRef(!1),a=w.useRef(void 0);w.useEffect(()=>{if(n!=="open"||!t||!e||!s)return;let c=!1;const d=async()=>{if(!r.current){r.current=!0;try{const f=await t.agent(s).sessionStats();c||zt(e,f)}catch{}finally{r.current=!1}}};d();const m=setInterval(()=>void d(),ql);return()=>{c=!0,clearInterval(m)}},[n,t,e,s]),w.useEffect(()=>{const c=a.current;a.current=o,Bl(c,o)&&(n!=="open"||!t||!e||!s||(r.current=!1,t.agent(s).sessionStats().then(d=>zt(e,d)).catch(()=>{})))},[o,n,t,e,s])}function $l(e){return typeof e=="object"&&e!==null&&"type"in e&&e.type==="checkout_status_update"&&"cwd"in e&&typeof e.cwd=="string"&&"projection"in e&&typeof e.projection=="object"&&e.projection!==null}function Dl(e){const t=C(r=>r.client),n=Z(r=>r.applyProjection),s=Z(r=>r.setSubscribedCwd),o=w.useRef(t);return o.current=t,w.useEffect(()=>{if(!t||!e)return;let r=!1;t.connection.request("checkout_status_subscribe",{cwd:e}).catch(()=>{}),s(e);const a=t.connection.onSessionMessage(c=>{if(r)return;const d=c;$l(d)&&d.cwd===e&&n(d.projection)});return t.connection.request("checkout_refresh_request",{cwd:e}).catch(()=>{}),()=>{r=!0,a(),t.connection.request("checkout_status_unsubscribe",{cwd:e}).catch(()=>{}),s(null)}},[t,e,n,s]),{refresh(){const r=o.current;!r||!e||r.connection.request("checkout_refresh_request",{cwd:e}).catch(()=>{})}}}const xt="--";function Ne(e){return e===void 0?xt:e<1e3?String(e):e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function Ol(e){if(e==null)return xt;const t=e<=1?e*100:e;return`${Math.round(t)}%`}function Pl(e){if(e===void 0)return xt;const t=e<1?4:2;return`$${e.toFixed(t)}`}function Fl(e,t){return t?e===t?"~":e.startsWith(`${t}/`)?`~${e.slice(t.length)}`:e:e}function zl(e,t){const n=[];return e>0&&n.push(`↑${e}`),t>0&&n.push(`↓${t}`),n.join(" ")}function Ll(e,t=!0){const n=C(s=>s.client);return Ht({queryKey:ve.providerModels(e),queryFn:async()=>{if(!n)throw new Error("not connected");return(await n.providers.listModels(e)).models},enabled:!!n&&!!e&&t})}function Hl(e,t){if(t.trim()==="")return e;const n=t.toLowerCase();return e.filter(s=>s.label.toLowerCase().includes(n)||s.description!==void 0&&s.description.toLowerCase().includes(n))}function Wl(e,t){if(!t)return e;const n=e.find(s=>s.id===t);return n?[n,...e.filter(s=>s.id!==t)]:e}function Ul(e){const t=new Set;return e.filter(n=>t.has(n.id)?!1:(t.add(n.id),!0))}const Kl="_content_1imfv_4",Vl="_search_1imfv_17",Gl="_list_1imfv_35",Xl="_item_1imfv_40",Jl="_itemActive_1imfv_54",Yl="_checkSlot_1imfv_58",Ql="_label_1imfv_67",Zl="_modelId_1imfv_73",ed="_state_1imfv_80",td="_stateError_1imfv_89",nd="_commandContent_1imfv_99",sd="_commandList_1imfv_102",od="_commandItem_1imfv_107",rd="_commandItemHeader_1imfv_140",ad="_commandKindBadge_1imfv_154",id="_commandKindExtension_1imfv_173",cd="_commandKindPrompt_1imfv_178",ld="_commandKindSkill_1imfv_183",dd="_commandDescription_1imfv_188",Q={content:Kl,search:Vl,list:Gl,item:Xl,itemActive:Jl,checkSlot:Yl,label:Ql,modelId:Zl,state:ed,stateError:td,commandContent:nd,commandList:sd,commandItem:od,commandItemHeader:rd,commandKindBadge:ad,commandKindExtension:id,commandKindPrompt:cd,commandKindSkill:ld,commandDescription:dd};function ud({currentModel:e,provider:t,onSelect:n,renderTrigger:s}){const[o,r]=w.useState(!1),[a,c]=w.useState(""),d=w.useRef(null),{data:m=[],isLoading:f,isError:S,error:h}=Ll(t,o),x=Ul(Wl(m,e));w.useEffect(()=>{var j;o&&(c(""),(j=d.current)==null||j.focus())},[o]);const g=new Map(x.map(j=>[j.id,j.provider])),_=x.map(j=>({value:j.id,label:j.label??j.id,description:j.id})),y=Hl(_,a),q=h instanceof Error?h.message:"Failed to load models";function J(j){j.stopPropagation(),j.key==="Escape"&&r(!1)}return i.jsxs(Xe,{open:o,onOpenChange:r,modal:!1,children:[i.jsx(Je,{asChild:!0,children:s(e)}),i.jsx(Ye,{children:i.jsxs(Qe,{className:Q.content,align:"start",sideOffset:4,children:[i.jsx("input",{ref:d,className:Q.search,placeholder:"Search models…",value:a,onChange:j=>c(j.target.value),onKeyDown:J}),f&&i.jsx("div",{className:Q.state,children:i.jsx(In,{size:"sm"})}),!f&&S&&i.jsx("div",{className:Q.stateError,children:q}),!f&&!S&&y.length===0&&i.jsx("div",{className:Q.state,children:"No models found"}),!f&&!S&&y.length>0&&i.jsx("div",{className:Q.list,children:y.map(j=>i.jsxs(W,{className:Q.item,onSelect:()=>n(j.value,g.get(j.value)),children:[i.jsx("span",{className:Q.checkSlot,"aria-hidden":!0,children:j.value===e&&i.jsx(en,{size:14})}),i.jsx("span",{className:Q.label,children:j.label}),i.jsxs("span",{className:Q.modelId,children:["(",j.value,")"]})]},j.value))})]})})]})}const pd="_statusBar_tm1j6_1",fd="_segmentGroup_tm1j6_16",hd="_chevron_tm1j6_20",md="_segment_tm1j6_16",gd="_icon_tm1j6_33",_d="_modelSegment_tm1j6_39",yd="_modelChevron_tm1j6_63",bd="_text_tm1j6_74",G={statusBar:pd,segmentGroup:fd,chevron:hd,segment:md,icon:gd,modelSegment:_d,modelChevron:yd,text:bd};function wd(){const e=T(y=>y.activeSessionId),t=T(y=>e?y.sessions[e]:void 0),n=C(y=>y.client),s=T(y=>y.setModel),o=St(),r=E(y=>y.activeWorkspaceCwd);Dl(r||"");const a=Z(y=>y.available),c=Z(y=>y.branch),d=Z(y=>y.ahead),m=Z(y=>y.behind),f=Z(y=>y.detached),S=Z(y=>y.conflictCount),h=Z(y=>y.changes.length),x=Rn(y=>e?y.bySession[e]:void 0);Al(e);const g=[];if(t){const y=Fl(t.cwd,o);g.push({key:"cwd",icon:i.jsx(Ae,{size:13}),text:y,title:t.cwd})}if(a){const y=zl(d,m),q=[f?"(detached)":c??"?"];y&&q.push(y),h>0&&q.push(`●${h}`),S>0&&q.push(`⚠${S}`),g.push({key:"branch",icon:i.jsx(Qn,{size:13}),text:q.join(" ")})}if(t){const y=`${Ol(x==null?void 0:x.contextPercent)} (${Ne(x==null?void 0:x.contextTokens)}/${Ne(x==null?void 0:x.contextWindow)})`;g.push({key:"context",icon:i.jsx(Zn,{size:13}),text:y}),g.push({key:"tokens",icon:i.jsx(es,{size:13}),text:Ne(x==null?void 0:x.totalTokens),title:`in ${Ne(x==null?void 0:x.inputTokens)} / out ${Ne(x==null?void 0:x.outputTokens)}`}),g.push({key:"cost",icon:i.jsx(ts,{size:13}),text:Pl(x==null?void 0:x.cost)})}function _(y,q){e&&(s(e,y,q),!(!n||!q)&&(async()=>{const J=await xn(n,e);await n.agent(J).setModel(q,y)})().catch(()=>{}))}return i.jsxs("div",{className:G.statusBar,children:[t&&i.jsx("span",{className:G.segmentGroup,children:i.jsx(ud,{currentModel:t.model,provider:"pi",onSelect:_,renderTrigger:y=>i.jsxs("button",{type:"button",className:G.modelSegment,disabled:!n,title:y?`Model: ${y}`:"Select model",children:[i.jsx("span",{className:G.icon,children:i.jsx(ns,{size:13})}),i.jsx("span",{className:G.text,children:y??"Model"}),i.jsx(Kt,{size:12,className:G.modelChevron,"aria-hidden":"true"})]})})}),g.map((y,q)=>i.jsxs("span",{className:G.segmentGroup,children:[(!!t||q>0)&&i.jsx(_t,{size:12,className:G.chevron,"aria-hidden":"true"}),i.jsxs("span",{className:G.segment,title:y.title,children:[i.jsx("span",{className:G.icon,children:y.icon}),i.jsx("span",{className:G.text,children:y.text})]})]},y.key))]})}const Sd="_wrapper_131x2_3",xd="_box_131x2_18",vd="_checkmark_131x2_36",kd="_nativeInput_131x2_41",We={wrapper:Sd,box:xd,checkmark:vd,nativeInput:kd};w.forwardRef(function({label:t,checked:n=!1,disabled:s,className:o,onChange:r,...a},c){return i.jsxs("label",{className:We.wrapper,"data-disabled":s||void 0,children:[i.jsx("input",{ref:c,type:"checkbox",className:We.nativeInput,checked:n,disabled:s,onChange:r,...a}),i.jsx("span",{className:We.box,"data-checked":n,"aria-hidden":!0,children:n&&i.jsx(en,{size:12,className:We.checkmark})}),t&&i.jsx("span",{children:t})]})});const Id="_select_vj45v_3",Cd={select:Id};w.forwardRef(function({options:t,placeholder:n,className:s,...o},r){return i.jsxs("select",{ref:r,className:$(Cd.select,s),...o,children:[n&&i.jsx("option",{value:"",disabled:!0,children:n}),t.map(a=>i.jsx("option",{value:a.value,children:a.label},a.value))]})});const jd="_overlay_1yaef_1",Td="_contentWrapper_1yaef_7",Ed="_dialog_1yaef_16",Nd="_header_1yaef_28",Rd="_title_1yaef_36",Md="_closeBtn_1yaef_43",qd="_body_1yaef_57",Bd="_footer_1yaef_63",Ad="_bare_1yaef_72",$d="_bareBody_1yaef_78",Dd="_bareCloseBtn_1yaef_82",Od="_visuallyHidden_1yaef_101",H={overlay:jd,contentWrapper:Td,dialog:Ed,header:Nd,title:Rd,closeBtn:Md,body:qd,footer:Bd,bare:Ad,bareBody:$d,bareCloseBtn:Dd,visuallyHidden:Od},Pd=dt;function Fd({open:e,onOpenChange:t,title:n,children:s,footer:o,width:r,className:a,bare:c=!1}){return i.jsx(os,{open:e,onOpenChange:t,children:i.jsxs(rs,{children:[i.jsx(as,{className:H.overlay}),i.jsx("div",{className:H.contentWrapper,children:i.jsxs(is,{className:$(H.dialog,c&&H.bare,a),style:r!==void 0?{width:r}:void 0,children:[c?i.jsx(vt,{className:H.visuallyHidden,children:n}):i.jsxs("div",{className:H.header,children:[i.jsx(vt,{className:H.title,children:n}),i.jsx(dt,{asChild:!0,children:i.jsx("button",{type:"button",className:H.closeBtn,"aria-label":"Close",children:i.jsx(ct,{size:16})})})]}),i.jsx("div",{className:$(H.body,c&&H.bareBody),children:s}),c&&i.jsx(dt,{asChild:!0,children:i.jsx("button",{type:"button",className:H.bareCloseBtn,"aria-label":"Close",children:i.jsx(ct,{size:16})})}),o&&i.jsx("div",{className:H.footer,children:o})]})})]})})}const zd="_handle_1ocv1_1",Ld={handle:zd};function Lt({side:e,onResize:t,className:n}){const s=w.useRef(0),o=w.useCallback(c=>{const d=c.clientX-s.current;s.current=c.clientX,t(e==="left"?d:-d)},[t,e]),r=w.useCallback(c=>{var d,m;window.removeEventListener("pointermove",o),window.removeEventListener("pointerup",r),document.body.style.cursor="",document.body.style.userSelect="",(m=(d=c.target)==null?void 0:d.releasePointerCapture)==null||m.call(d,c.pointerId)},[o]);function a(c){c.preventDefault(),s.current=c.clientX,document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",o),window.addEventListener("pointerup",r)}return i.jsx("div",{className:$(Ld.handle,n),onPointerDown:a,role:"separator","aria-orientation":"vertical"})}function Hd(e,t){const{order:n,sessions:s}=T.getState(),r=kn(n,s,t).find(a=>a.cwd===e);if(r!=null&&r.sessions[0]){const a=r.sessions[0].id;T.getState().activate(a);const c=T.getState().sessions[a];E.getState().open({id:U.chat(a),kind:"chat",label:(c==null?void 0:c.title)??"New chat",closable:!0,data:{sessionId:a},workspaceCwd:e})}else wt(e);k.getState().setCwd(e)}const Wd="_pathRow_trimn_1",Ud="_pathInput_trimn_9",Kd="_createRow_trimn_13",Vd="_createInput_trimn_21",Gd="_createError_trimn_25",Xd="_list_trimn_30",Jd="_item_trimn_37",Yd="_name_trimn_49",Qd="_emptyState_trimn_54",X={pathRow:Wd,pathInput:Ud,createRow:Kd,createInput:Vd,createError:Gd,list:Xd,item:Jd,name:Yd,emptyState:Qd};function Zd(){const e=k(p=>p.cwdPickerOpen),t=k(p=>p.closeCwdPicker),n=E(p=>p.activeWorkspaceCwd),s=k(p=>p.cwd),o=C(p=>p.client),r=St(),[a,c]=w.useState("/"),[d,m]=w.useState("/"),[f,S]=w.useState(!1),[h,x]=w.useState(""),[g,_]=w.useState(null),[y,q]=w.useState(!1),J=xe();w.useEffect(()=>{if(!e)return;const p=Se(n||s||"~",r);c(p),m(p),le()},[e,o,n,s]);const{data:j,isLoading:$e,isError:ke,error:ge}=yc(a,e&&!!o),ce=((j==null?void 0:j.entries)??[]).filter(p=>p.kind==="directory");function le(){S(!1),x(""),_(null)}function de(p){c(p),m(p),le()}function tt(){de(a.split("/").slice(0,-1).join("/")||"/")}function Ie(){de(d.trim())}async function De(){const p=h.trim();if(!(!p||!o||y)){q(!0),_(null);try{const R=await Nn(o,a,p,"directory");await J.invalidateQueries({queryKey:ve.explorer(a)}),de(R)}catch(R){_(R instanceof Error?R.message:"Failed to create folder")}finally{q(!1)}}}function nt(){Hd(a,r),t()}return i.jsxs(Fd,{open:e,onOpenChange:p=>!p&&t(),title:"Open Workspace",footer:i.jsxs(i.Fragment,{children:[i.jsx(Pd,{asChild:!0,children:i.jsx(O,{size:"sm",variant:"secondary",children:"Cancel"})}),i.jsx(O,{size:"sm",onClick:nt,children:"Open this folder"})]}),children:[i.jsxs("div",{className:X.pathRow,children:[i.jsx(O,{size:"xs",variant:"ghost",iconOnly:!0,title:"Up",onClick:tt,children:i.jsx(ss,{size:13})}),i.jsx(Ve,{className:X.pathInput,value:d,onChange:p=>m(p.target.value),onKeyDown:p=>{p.key==="Enter"&&(p.preventDefault(),Ie())}}),i.jsx(O,{size:"xs",onClick:Ie,children:"Go"}),i.jsx(O,{size:"xs",variant:"ghost",iconOnly:!0,title:"New folder",disabled:!o||ke||f,onClick:()=>{S(!0),x(""),_(null)},children:i.jsx(Zt,{size:13})})]}),f&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:X.createRow,children:[i.jsx(Ae,{size:14}),i.jsx(Ve,{className:X.createInput,autoFocus:!0,placeholder:"New folder name",value:h,onChange:p=>x(p.target.value),onKeyDown:p=>{p.key==="Enter"?(p.preventDefault(),De()):p.key==="Escape"&&(p.preventDefault(),p.stopPropagation(),le())}}),i.jsx(O,{size:"xs",loading:y,disabled:!h.trim()||y,onClick:()=>void De(),children:"Create"}),i.jsx(O,{size:"xs",variant:"secondary",onClick:le,children:"Cancel"})]}),g&&i.jsx("div",{className:X.createError,children:g})]}),i.jsx("div",{className:X.list,children:$e?i.jsx("div",{className:X.emptyState,children:"Loading..."}):ke?i.jsxs("div",{className:X.emptyState,children:["Error: ",ge instanceof Error?ge.message:"unknown error"]}):ce.length===0?i.jsx("div",{className:X.emptyState,children:"No subdirectories"}):ce.map(p=>i.jsxs("div",{className:X.item,onClick:()=>de(a==="/"?`/${p.name}`:`${a}/${p.name}`),children:[i.jsx(Ae,{size:14}),i.jsx("span",{className:X.name,children:p.name})]},p.name))})]})}const eu="_shell_1m1nv_1",tu="_main_1m1nv_7",nu="_sidebarLeft_1m1nv_13",su="_leftHandle_1m1nv_21",ou="_center_1m1nv_24",ru="_sidebarRight_1m1nv_31",au="_rightHandle_1m1nv_39",fe={shell:eu,main:tu,sidebarLeft:nu,leftHandle:su,center:ou,sidebarRight:ru,rightHandle:au};function iu(){const e=k(a=>a.leftSidebarCollapsed),t=k(a=>a.rightSidebarCollapsed),n=k(a=>a.leftSidebarWidth),s=k(a=>a.rightSidebarWidth),o=k(a=>a.resizeLeftSidebar),r=k(a=>a.resizeRightSidebar);return i.jsxs("div",{className:fe.shell,children:[i.jsx(Da,{}),i.jsxs("div",{className:fe.main,children:[!e&&i.jsxs("aside",{className:fe.sidebarLeft,style:{width:n},children:[i.jsx(Pi,{}),i.jsx(Lt,{side:"left",className:fe.leftHandle,onResize:o})]}),i.jsxs("div",{className:fe.center,children:[i.jsx(Zi,{}),i.jsx(mc,{})]}),!t&&i.jsxs("aside",{className:fe.sidebarRight,style:{width:s},children:[i.jsx(Lt,{side:"right",className:fe.rightHandle,onResize:r}),i.jsx(Ml,{})]})]}),i.jsx(wd,{}),i.jsx(Zd,{})]})}function cu(){const e=w.useRef(!1);w.useEffect(()=>{if(e.current)return;if(e.current=!0,window.location.hash.includes("offer=")){const d=window.location.href;k.getState().setHost(d),C.getState().connect({url:d});return}const t=new URLSearchParams(window.location.search),n=t.get("host"),s=t.get("pair"),o=t.get("password"),r=t.get("cwd"),a=t.get("connect")==="1",c=k.getState();if(s?c.setHost(s):n&&c.setHost(n),o&&c.setPassword(o),r&&c.setCwd(r),s)C.getState().connect({url:s});else if(a){const{host:d,password:m}=k.getState();C.getState().connect({url:d,password:m||void 0})}},[])}function lu(e){return typeof e=="object"&&e!==null&&"kind"in e}function du(e){const t=[];for(const n of e)if(lu(n))if(n.kind==="other")n.event&&t.push(n.event);else for(const s of n.events??[])t.push(s);return t}function uu(e){return typeof e.model=="string"}function pu(){const e=C(s=>s.client),t=C(s=>s.status),n=w.useRef(!1);w.useEffect(()=>{t!=="open"||!e||n.current||(n.current=!0,(async()=>{var f;let s=[];try{s=(await e.connection.request("list_agents_request",{all:!1})).agents??[]}catch{s=[]}s.sort((S,h)=>(h.lastActivity??0)-(S.lastActivity??0));const o=T.getState();for(const S of s){if(o.findByAgentId(S.agentId))continue;let h=ht;try{const g=await e.agent(S.agentId).timeline.fetch({direction:"after",limit:200});h=du(g.items).reduce(Sn,ht)}catch{}const x=h.rows.length===0;o.hydrate({id:`s-${S.agentId.slice(0,12)}`,agentId:S.agentId,title:S.title||(x?"New chat":(f=S.cwd)==null?void 0:f.split("/").pop())||"Restored",status:S.status??"idle",cwd:S.cwd||"~",timeline:h,userMessageCount:h.rows.filter(g=>g.kind==="user").length,model:S.model,modelProvider:S.modelProvider})}const{order:r,sessions:a}=T.getState(),c=r.length>0?a[r[0]??""]:void 0;if(!c)return;const d=await et(e).catch(()=>null),m=Se(c.cwd||"~",d);T.getState().activate(c.id),k.getState().setCwd(c.cwd),E.getState().open({id:U.chat(c.id),kind:"chat",label:c.title,closable:!0,data:{sessionId:c.id},workspaceCwd:m})})())},[t,e]),w.useEffect(()=>{if(!(t!=="open"||!e))return e.onAgentUpdate(s=>{if(uu(s)){const o=typeof s.modelProvider=="string"?s.modelProvider:void 0;T.getState().setModelByAgentId(s.agentId,s.model,o)}})},[t,e])}function fu(){const e=C(s=>s.client),t=C(s=>s.status),n=w.useRef(!1);w.useEffect(()=>{t!=="open"||!e||n.current||(n.current=!0,(async()=>{let s=[];try{s=(await e.connection.request("list_terminals_request",{})).terminals??[]}catch{s=[]}if(s.length===0)return;const o=await et(e).catch(()=>null),r=E.getState().open;for(const a of s){if(a.closed)continue;const c=Se(a.cwd||"~",o);r({id:U.terminal(a.slot),kind:"terminal",label:a.name,closable:!0,data:{slot:a.slot,cwd:c},workspaceCwd:c})}})())},[t,e])}function hu(){w.useEffect(()=>{function e(t){const n=k.getState();if(t.key==="Escape"){n.closeCwdPicker(),n.closeSessionMenu();return}const s=t.ctrlKey||t.metaKey;if(s&&t.key.toLowerCase()==="t"){t.preventDefault(),vn(E.getState().activeWorkspaceCwd||"~");return}if(s&&t.key.toLowerCase()==="w"){const{activeTabId:o,tabs:r}=E.getState();if(!o)return;const a=r.find(c=>c.id===o);(a==null?void 0:a.closable)!==!1&&(t.preventDefault(),mt(o))}}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[])}function mu(){return cu(),pu(),fu(),hu(),null}function gu(){return i.jsxs(ro,{children:[i.jsx(mu,{}),i.jsx(iu,{})]})}const Mn=document.getElementById("root");if(!Mn)throw new Error("Missing #root element");$n.createRoot(Mn).render(i.jsx(w.StrictMode,{children:i.jsx(gu,{})}));export{O as B,Fd as D,In as S,Cu as T,Nu as V,C as a,St as b,ju as c,Ru as d,xn as e,Hl as f,E as g,Tu as h,Eu as i,Pt as j,U as k,Se as n,ve as r,Q as s,Oa as t,T as u};
3
- //# sourceMappingURL=index-Ds0VVcbZ.js.map