pisper 0.6.24 → 0.6.25
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.
- package/package.json +5 -5
- package/web/.vite/manifest.json +769 -631
- package/web/assets/{AppDialog-BcXOXBcR.js → AppDialog-CuxO26Km.js} +1 -1
- package/web/assets/{AppOverlays-DhOsSE6q.js → AppOverlays-Bt5SL3PY.js} +1 -1
- package/web/assets/{AppSelect-BD6RAaJ5.js → AppSelect-DQYKUW5E.js} +1 -1
- package/web/assets/{AssetsPage-7Fuwati9.js → AssetsPage-BE6AzOGC.js} +1 -1
- package/web/assets/{BoardPage-C81aOK4p.js → BoardPage-DX0fJ_ap.js} +3 -3
- package/web/assets/ChannelsPage-CyT7oDYZ.js +1 -0
- package/web/assets/{ChatAppearancePage-DQr-uhHb.js → ChatAppearancePage-B6Dzj2Bj.js} +1 -1
- package/web/assets/ChatHistoryPage-Cq20l93c.js +1 -0
- package/web/assets/ChatPage-DgiS-Qj_.js +553 -0
- package/web/assets/ConfigPage-CgrWdzb5.js +5 -0
- package/web/assets/{DesktopWindowControls-BWe5YIjj.js → DesktopWindowControls-D8axeuEx.js} +1 -1
- package/web/assets/FeaturePage-BB1TeMlr.js +1 -0
- package/web/assets/{FileAttachmentPreview-IZzA3f8k.js → FileAttachmentPreview-DPjT_iYk.js} +1 -1
- package/web/assets/{FloatingWidgets-DgIJkrEC.js → FloatingWidgets-FI1S4hdn.js} +1 -1
- package/web/assets/FocusRuntimeControls-CvAx-KDV.js +1 -0
- package/web/assets/{GitDiffViewer-CypHOHdP.js → GitDiffViewer-DwFfeFOA.js} +1 -1
- package/web/assets/{ManageProjectsDialog-DxiTEqYf.js → ManageProjectsDialog-BSLNf6qD.js} +1 -1
- package/web/assets/{MarkdownMessage-CuaozZah.js → MarkdownMessage-NK7Ixb4Y.js} +1 -1
- package/web/assets/{McpPage-BbmxMKuy.js → McpPage-Cn-yDgC5.js} +1 -1
- package/web/assets/MemoryEvolution-B8IeSLcd.js +1 -0
- package/web/assets/MemoryPage-ZwoG_oj6.js +2 -0
- package/web/assets/{MobileNavigation-IZrksubf.js → MobileNavigation-DK5a0kZU.js} +1 -1
- package/web/assets/{MorePage-DObfXE0e.js → MorePage-BL8nDnTQ.js} +1 -1
- package/web/assets/{NewFolderDialog-CeRiD1xe.js → NewFolderDialog-COkq83LW.js} +1 -1
- package/web/assets/{PageHeader-D8QTuWd6.js → PageHeader-BBTCMqXc.js} +1 -1
- package/web/assets/{PhoneDrawer-Dfmmixh5.js → PhoneDrawer-BcPKJWl-.js} +1 -1
- package/web/assets/{PhoneMenuButton-Bbna_Bcf.js → PhoneMenuButton-D6vdTZdF.js} +1 -1
- package/web/assets/{PhoneTopBar-Dz94PR8O.js → PhoneTopBar-MqNeI69v.js} +1 -1
- package/web/assets/{PluginsPage-0rmSVMfr.js → PluginsPage-Bp71HpKD.js} +1 -1
- package/web/assets/{SafeModePrompt-CAfT8lBS.js → SafeModePrompt-CpvvU5wL.js} +1 -1
- package/web/assets/SchedulesPage-Drs10rEV.js +1 -0
- package/web/assets/{SessionBrowserPane-DMTNqq-e.js → SessionBrowserPane-DjtB4MCI.js} +2 -2
- package/web/assets/SessionContextPanel-ETfnp4pT.js +2 -0
- package/web/assets/{SessionHome-047YRkeb.js → SessionHome-CHBw3ZvP.js} +1 -1
- package/web/assets/SessionInspector-DVaRflQy.js +1 -0
- package/web/assets/{SessionShell-BqNSjTbQ.js → SessionShell-CwfQAX7i.js} +1 -1
- package/web/assets/{SettingsSidebar-a9IEYCfr.js → SettingsSidebar-FgC-tlY2.js} +1 -1
- package/web/assets/{ShortcutHelpDialog-B1RT_EMe.js → ShortcutHelpDialog-DKbIkUnk.js} +1 -1
- package/web/assets/{ShortcutKeys-DIEI9JQZ.js → ShortcutKeys-BuHXNKVW.js} +1 -1
- package/web/assets/{SidebarUpdateStatus-phIx4K_T.js → SidebarUpdateStatus-LKwNKESF.js} +1 -1
- package/web/assets/{SkillsPage-CZuR-0QX.js → SkillsPage-BbnerW44.js} +1 -1
- package/web/assets/{TaskProcessesPane-x73TNzuV.js → TaskProcessesPane-B2fyZEK9.js} +1 -1
- package/web/assets/{TaskTerminalView-D2UVtmT1.js → TaskTerminalView-CKApgF75.js} +1 -1
- package/web/assets/{TerminalPanel-C0U35k57.js → TerminalPanel-D03WycYm.js} +1 -1
- package/web/assets/{WebDesktopPet-CJtB44aG.js → WebDesktopPet-K2dbcbnQ.js} +1 -1
- package/web/assets/WorkflowsPage-CmzftCtz.js +1 -0
- package/web/assets/{WorkspacePicker-C7hhcfZV.js → WorkspacePicker-DbdbTOV2.js} +1 -1
- package/web/assets/{api-BmSvZCuH.js → api-BW_X0FMZ.js} +1 -1
- package/web/assets/{app-update-DhpOY37a.js → app-update-DYFXTosD.js} +1 -1
- package/web/assets/{approval-confirm-Dc3BZGo4.js → approval-confirm-DQ5N_lJB.js} +1 -1
- package/web/assets/archive-ojKJT7Fp.js +1 -0
- package/web/assets/{board-projects-C7DazgZG.js → board-projects-CrejrMrn.js} +1 -1
- package/web/assets/book-open-BuHHD9os.js +1 -0
- package/web/assets/bots-store-CNXTx3UY.js +1 -0
- package/web/assets/{chat-api-DHqVwcpJ.js → chat-api-Bo6nhq40.js} +1 -1
- package/web/assets/chevrons-up-down-C2sEPdAh.js +1 -0
- package/web/assets/{client-store-Dif482Kx.js → client-store-DzgOPMlh.js} +1 -1
- package/web/assets/{config-search-CKpXm_hp.js → config-search-BiQmWst4.js} +1 -1
- package/web/assets/{dialog-DFcH7POi.js → dialog-DFZX_Dek.js} +1 -1
- package/web/assets/dist-BS3ekNDj.js +1 -0
- package/web/assets/{events-C7sXXop4.js → events-PfANjkHx.js} +1 -1
- package/web/assets/{focus-session-composer-bits-D2XiGLcj.js → focus-session-composer-bits-C_LOpJH_.js} +1 -1
- package/web/assets/{folder-paths-CsQLylLL.js → folder-paths-aRRH_MYq.js} +1 -1
- package/web/assets/{hosts-CwTc21QE.js → hosts-lvoPwC3T.js} +1 -1
- package/web/assets/i18n-EVP8yIdy.js +1 -0
- package/web/assets/index-D_zLThH_.js +2 -0
- package/web/assets/index-l96Dl6z6.css +2 -0
- package/web/assets/memory-api-DkPje--t.js +1 -0
- package/web/assets/message-circle-D-XrK6Ft.js +1 -0
- package/web/assets/{mobile-remote-fallback-C2Q0wAa6.js → mobile-remote-fallback-LLMZWoIu.js} +1 -1
- package/web/assets/mount-app-7pFSwVLO.js +9 -0
- package/web/assets/{permission-rules-api-D1Tbe4E9.js → permission-rules-api-CAJsSBA5.js} +1 -1
- package/web/assets/{pick-system-directory-CQS5pqM-.js → pick-system-directory-yk6L7wR2.js} +1 -1
- package/web/assets/pin-off-BpRu_vrC.js +1 -0
- package/web/assets/placements-CMrgmg3t.js +2 -0
- package/web/assets/{popover-CXB2yzW6.js → popover--q2hs_pT.js} +1 -1
- package/web/assets/{public-D1nVPEiV.js → public-62LVX7HU.js} +1 -1
- package/web/assets/public-DWbrDr0p.js +3 -0
- package/web/assets/{public-BVKkvQiF.js → public-DkqrpWXx.js} +2 -2
- package/web/assets/{public-components-B6uxO_ZB.js → public-components-DHMvCgH2.js} +1 -1
- package/web/assets/public-diff-WjbTu91T.js +1 -0
- package/web/assets/public-events-CTdTIu5Q.js +1 -0
- package/web/assets/{public-flags-KylDNCsK.js → public-flags-D9LdpQwJ.js} +1 -1
- package/web/assets/public-greeting-DEKYruJJ.js +1 -0
- package/web/assets/{public-session-DjI86F5J.js → public-session-B9UHA6rN.js} +1 -1
- package/web/assets/{public-sidebar-PhHPuas_.js → public-sidebar-Lne86i_K.js} +1 -1
- package/web/assets/{runtime-capabilities-store-CTtXyNjK.js → runtime-capabilities-store-BNM5Ug-5.js} +1 -1
- package/web/assets/{safe-mode-instance-_WZgKT1M.js → safe-mode-instance-DnTP7EUr.js} +1 -1
- package/web/assets/safe-mode-sentinel-DOhqH4gj.js +1 -0
- package/web/assets/select-Bbk9bmXO.js +1 -0
- package/web/assets/send-Cj-W03w_.js +1 -0
- package/web/assets/{session-change-summary-api-DENj-A9c.js → session-change-summary-api-DMTwGz7o.js} +1 -1
- package/web/assets/{session-home-D1MkpdBS.js → session-home-DUpZt2dn.js} +1 -1
- package/web/assets/session-list-BRMu9JWa.js +1 -0
- package/web/assets/{session-organization-api-Cm9HoIme.js → session-organization-api-BGyp66Uv.js} +1 -1
- package/web/assets/{session-scope-BnKeB5vZ.js → session-scope-DZITSvZr.js} +1 -1
- package/web/assets/{session-tree-actions-DhF8lJLn.js → session-tree-actions-CRWyFqAD.js} +1 -1
- package/web/assets/{session-tree-summary-DEJ52bdp.js → session-tree-summary-HTmAo_9V.js} +1 -1
- package/web/assets/{shortcuts-DnykOp5e.js → shortcuts-D72gQCwH.js} +1 -1
- package/web/assets/side-chat-context-D1hZOT7g.js +7 -0
- package/web/assets/{sidebar-bemTfe07.js → sidebar-sj8X80Y9.js} +1 -1
- package/web/assets/{sidebar-store-Be8dU3KV.js → sidebar-store-CXZ7QrOr.js} +1 -1
- package/web/assets/slider-De8rWVNs.js +1 -0
- package/web/assets/sliders-horizontal-Dryf1XyC.js +1 -0
- package/web/assets/{speech-session-4UWWW7HR.js → speech-session-D2GQEOAL.js} +1 -1
- package/web/assets/{startup-queries-iq2o5pqJ.js → startup-queries-CuEXV1Zu.js} +1 -1
- package/web/assets/{storage-8QW6lXuT.js → storage-DtvZ_lEu.js} +1 -1
- package/web/assets/tool-labels-Bexnwp5q.js +1 -0
- package/web/assets/undo-2-C-xQ0UVT.js +1 -0
- package/web/assets/{use-i18n-DCxQRXLH.js → use-i18n-_vdxObu5.js} +1 -1
- package/web/assets/{use-open-bot-BTTe7141.js → use-open-bot-BTxzOAbZ.js} +1 -1
- package/web/assets/{use-studio-actions-CvTVL6vy.js → use-studio-actions-CbMHRZpd.js} +1 -1
- package/web/assets/{useCatalogProjects-D0_Xilel.js → useCatalogProjects-BEkCpADy.js} +1 -1
- package/web/assets/{useNewProjectPicker-C3dVgDqI.js → useNewProjectPicker-CUtLjwYE.js} +2 -2
- package/web/assets/{useNow-BrhALV5l.js → useNow-eQeBCqQk.js} +1 -1
- package/web/assets/{usePhoneShell-BleJZMk4.js → usePhoneShell-DZHZWXnN.js} +1 -1
- package/web/assets/{useSessionListQuery-CSTrzBD6.js → useSessionListQuery-BoUzmjZC.js} +1 -1
- package/web/assets/{useSessionRowActions-CBOzJhLW.js → useSessionRowActions-DCqDrGZY.js} +1 -1
- package/web/assets/{useSidebarModel-AYsswvjm.js → useSidebarModel-CZAfH4Fa.js} +1 -1
- package/web/assets/{web-preview-B9ooQu6f.js → web-preview-XrRFo42l.js} +1 -1
- package/web/assets/{web-preview-events-DZb37WWK.js → web-preview-events-Ba6duwGi.js} +1 -1
- package/web/assets/workflow-messages-Cc4pX_oo.js +1 -0
- package/web/assets/{workspace-order-store-CQ4SHO-9.js → workspace-order-store-Ao4OZ13V.js} +1 -1
- package/web/index.html +2 -2
- package/web/assets/ChannelsPage-LM4bpKzy.js +0 -1
- package/web/assets/ChatHistoryPage-DcjG1hoQ.js +0 -1
- package/web/assets/ChatPage-HBq1cr2I.js +0 -553
- package/web/assets/ConfigPage-Bcjc5mbO.js +0 -5
- package/web/assets/FeaturePage-DGauTCbU.js +0 -1
- package/web/assets/FocusRuntimeControls-Bgq7LvMl.js +0 -1
- package/web/assets/MemoryPage-BeI2YTUn.js +0 -1
- package/web/assets/SchedulesPage-C3TpSm9t.js +0 -1
- package/web/assets/SessionContextPanel-DoS-Xqny.js +0 -2
- package/web/assets/SessionInspector-GXGZ9n87.js +0 -1
- package/web/assets/WorkflowsPage-o4p12fMI.js +0 -1
- package/web/assets/bots-store-CeTfxdyY.js +0 -1
- package/web/assets/dist-V8chnW6-.js +0 -1
- package/web/assets/i18n-YQ8mc9k7.js +0 -1
- package/web/assets/index-DJA4qaOu.css +0 -2
- package/web/assets/index-DjSjahBi.js +0 -2
- package/web/assets/mount-app-DAxz1ll-.js +0 -9
- package/web/assets/placements-BuU0Zuqy.js +0 -2
- package/web/assets/public-BVuJa7Dh.js +0 -3
- package/web/assets/public-diff-CCVYk91T.js +0 -1
- package/web/assets/public-events-CVn8fEHx.js +0 -1
- package/web/assets/safe-mode-sentinel-CVhmZl77.js +0 -1
- package/web/assets/select-DD_WO-gs.js +0 -1
- package/web/assets/send-QxBfLFo-.js +0 -1
- package/web/assets/session-list-BeyOEzyU.js +0 -1
- package/web/assets/side-chat-context-C2SzUmd5.js +0 -7
- package/web/assets/slider-DTmAZl-R.js +0 -1
- package/web/assets/tool-labels-ghvpPFmc.js +0 -1
- package/web/assets/workflow-messages-Cj35aJZc.js +0 -1
- package/web/memory-galaxy-background.webp +0 -0
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AnimatedList-DB5vqafO.js","assets/rolldown-runtime-B0Z9INg1.js","assets/vendor-react-DwNgTV1j.js","assets/utils-C8uzG5AZ.js","assets/vendor-ui-DvrYggeS.js","assets/vendor-motion-DSW3wzXK.js","assets/react-bits-BsPlLi8F.css","assets/public-session-DjI86F5J.js","assets/vendor-router-CSN_DGvx.js","assets/use-i18n-DCxQRXLH.js","assets/i18n-YQ8mc9k7.js","assets/index-DjSjahBi.js","assets/index-DJA4qaOu.css","assets/storage-8QW6lXuT.js","assets/vendor-state-GkUciC5H.js","assets/settings-2-CXJjXJS9.js","assets/createLucideIcon-Cd-3GVxJ.js","assets/button-CCcCN8tE.js","assets/dist-41X0pdUs.js","assets/BotAvatar-CNL-APwP.js","assets/motion-DTR4ZVle.js","assets/bots-store-CeTfxdyY.js","assets/startup-queries-iq2o5pqJ.js","assets/query-Bj-DUNYq.js","assets/mutation-CEbxdVYy.js","assets/api-BmSvZCuH.js","assets/abort-signal-f4JsiYKX.js","assets/public-flags-KylDNCsK.js","assets/runtime-capabilities-CHYOF_hE.js","assets/runtime-capabilities-store-CTtXyNjK.js","assets/events-C7sXXop4.js","assets/public-events-CVn8fEHx.js","assets/ClickSpark-B1Rn7ZwL.js","assets/approval-confirm-Dc3BZGo4.js","assets/shield-alert-oZqX6MNu.js","assets/kbd-CAufZTkl.js","assets/sheet-BTaIEX4w.js","assets/x-07u4-129.js","assets/dist-BHkR6BLP.js","assets/dist-BsRXXcSL.js","assets/es2015-DTZdOI9P.js","assets/card-presentation-1oph2b8P.js","assets/session-board-status-D2lpFPiI.js","assets/dialog-DFcH7POi.js","assets/HoldToConfirmButton-BxdJ7icc.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{h as t}from"./vendor-router-CSN_DGvx.js";import{i as n,n as r,r as i}from"./vendor-react-DwNgTV1j.js";import{f as a}from"./routes-DIeaqWVc.js";import{r as o}from"./i18n-YQ8mc9k7.js";import{t as s}from"./use-i18n-DCxQRXLH.js";import{o as c}from"./vendor-state-GkUciC5H.js";import{a as l}from"./api-BmSvZCuH.js";import{a as u}from"./session-board-status-D2lpFPiI.js";import{t as d}from"./usePhoneShell-BleJZMk4.js";import{t as f}from"./createLucideIcon-Cd-3GVxJ.js";import{a as p,i as m,n as h,t as g}from"./permission-rules-api-D1Tbe4E9.js";import{t as _}from"./arrow-down-CDGua-ue.js";import{t as v}from"./check-2vYc6QaP.js";import{t as y}from"./chevron-down-CxtxIjiP.js";import{t as b}from"./chevron-left-BAtyp3_6.js";import{t as x}from"./chevron-right-C3t2Rckj.js";import{t as S}from"./chevron-up-D_ZcXjqr.js";import{t as C}from"./copy-DHmIFc52.js";import{t as w}from"./download-BCfIiuaL.js";import{t as T}from"./ellipsis-CfGKfbq6.js";import{t as E}from"./eye-uWAPXNzJ.js";import{a as D,o as O,t as k}from"./GitDiffViewer-CypHOHdP.js";import{t as A}from"./file-Bllajneu.js";import{t as j}from"./folder-open-FIShC5Qk.js";import{t as M}from"./info-DATxy0fb.js";import{t as N}from"./loader-circle-BOwQzHB-.js";import{t as P}from"./monitor-ORxecA9m.js";import{t as F}from"./refresh-cw-TbWxTY4K.js";import{t as I}from"./rotate-ccw-clock-CO6Bw-sF.js";import{t as L}from"./rotate-ccw-C0v8V77_.js";import{t as R}from"./shield-alert-oZqX6MNu.js";import{t as z}from"./shield-check-Gvek4RJ7.js";import{t as B}from"./square-bHHVTT3G.js";import{t as V}from"./tag-CqkeJlBf.js";import{t as H}from"./trash-2-CNrPOoPR.js";import{t as ee}from"./x-07u4-129.js";import{i as U,p as te,r as W,t as ne}from"./dropdown-menu-Ds0gD8S8.js";import{i as re,n as G,r as ie,t as ae}from"./popover-CXB2yzW6.js";import{i as oe,n as se,t as ce}from"./tooltip-D4MFbqcG.js";import{t as K}from"./utils-C8uzG5AZ.js";import{n as le,t as q}from"./button-CCcCN8tE.js";import{a as ue,d as de,m as fe,o as pe,y as me}from"./events-C7sXXop4.js";import{a as he,c as ge,g as _e,n as ve}from"./shortcuts-DnykOp5e.js";import{t as ye}from"./chat-api-DHqVwcpJ.js";import{r as be}from"./format-DMJQzoZ7.js";import{t as xe}from"./StatusGlyph-1KgitlUg.js";import{d as Se,f as Ce,l as we,m as J,n as Te,p as Ee,r as De,s as Oe,t as ke}from"./run-activity-CwfO0cui.js";import{t as Ae}from"./input-CPw-zkYh.js";import{t as je}from"./PageState-Cz6vFMXv.js";import{t as Me}from"./alert-firawb0H.js";import{t as Ne}from"./vendor-motion-DSW3wzXK.js";import{i as Pe,n as Fe,r as Ie,t as Le}from"./MarkdownMessage-CuaozZah.js";import{t as Re}from"./route-context-DvWDul4T.js";import{t as ze}from"./esm-DCV8yILT.js";import{t as Be}from"./motion-DTR4ZVle.js";import{t as Ve}from"./HoldToConfirmButton-BxdJ7icc.js";import{t as He}from"./card-C3A0b5KR.js";import{t as Ue}from"./BrandLogo-k3CvJjd4.js";import{n as We,r as Ge,t as Ke}from"./collapsible-Dcoy-qnz.js";import{a as qe,o as Je,r as Ye,t as Xe}from"./session-tree-summary-DEJ52bdp.js";import{t as Ze}from"./FileAttachmentPreview-IZzA3f8k.js";var Qe=f(`files`,[[`path`,{d:`M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8`,key:`14sh0y`}],[`path`,{d:`M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z`,key:`1970lx`}],[`path`,{d:`M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1`,key:`l4dndm`}]]),$e=f(`git-fork`,[[`circle`,{cx:`12`,cy:`18`,r:`3`,key:`1mpf1b`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`path`,{d:`M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9`,key:`1uq4wg`}],[`path`,{d:`M12 12v3`,key:`158kv8`}]]),et=f(`hourglass`,[[`path`,{d:`M5 22h14`,key:`ehvnwv`}],[`path`,{d:`M5 2h14`,key:`pdyrp9`}],[`path`,{d:`M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22`,key:`1d314k`}],[`path`,{d:`M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2`,key:`1vvvr6`}]]),tt=f(`lightbulb`,[[`path`,{d:`M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5`,key:`1gvzjb`}],[`path`,{d:`M9 18h6`,key:`x1upvd`}],[`path`,{d:`M10 22h4`,key:`ceow96`}]]),nt=f(`list-todo`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]),rt=f(`message-square-plus`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M12 8v6`,key:`1ib9pf`}],[`path`,{d:`M9 11h6`,key:`1fldmi`}]]),it=f(`octagon-pause`,[[`path`,{d:`M10 15V9`,key:`1lckn7`}],[`path`,{d:`M14 15V9`,key:`1muqhk`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}]]),at=f(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),ot=f(`user`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),Y=e(n(),1),st=Object.freeze({messages:[],tools:[],approvals:[],questions:[],agents:[],team:null,currentActivity:null,activityFeed:[],lifecycle:null,sessionTreeRevision:0,thinkingText:``,queuedInputs:[],hadQueuedInput:!1,plan:null,executionMode:null,runMode:null,contextUsage:null,sessionUsage:null,promptCache:null,compaction:null,streaming:!1,error:``,loaded:!1,messageStart:null,hasOlder:!1,olderCursor:null});function ct(e,t){if(e===t)return!1;if(!e||!t)return!0;let n=new Set([...Object.keys(e),...Object.keys(t)]);for(let r of n)if(e[r]!==t[r])return!0;return!1}function lt(e,t){let n=e||st,r=typeof t==`function`?t(n):{...n,...t};return ct(n,r)?r:n}function ut(e,t){return t===void 0?e||[]:Array.isArray(t)?t:[]}function dt(e,t){return Number.isSafeInteger(e.queueRevision)&&Number.isSafeInteger(t.queueRevision)&&t.queueRevision<e.queueRevision}function ft(e,t){let n=t.removedInputId?[...new Set([...e.withdrawnInputIds||[],t.removedInputId])]:e.withdrawnInputIds||[],r=new Set(n),i=r.size?e.messages.filter(e=>!r.has(e.queuedInputId??``)):e.messages;if(dt(e,t))return{...e,messages:i,withdrawnInputIds:n};let a=ut(e.queuedInputs,t.queuedInputs);return{...e,messages:i,withdrawnInputIds:n,queuedInputs:r.size?a.filter(e=>!r.has(e.id)):a,...Number.isSafeInteger(t.queueRevision)?{queueRevision:t.queueRevision}:{},hadQueuedInput:!!(e.hadQueuedInput||a.length)}}function pt(e){return e?.role===`user`&&e.queuedPending===!0}function mt(e=[]){let t=e.length-1;for(;t>=0&&(pt(e[t])||e[t]?.role===`event`);)--t;return t}function ht(e=[],t){let n=Array.isArray(e)?e:[];if(pt(t))return[...n,t];let r=-1;for(let e=n.length-1;e>=0;--e)if(n[e]?.role===`agent`){r=e;break}return r<0?[...n,t]:[...n.slice(0,r),t,...n.slice(r)]}function gt(e,{agentId:t,deliveredIds:n,frozenText:r,interrupted:i}){if(!n.length)return e;let a=new Set(n),o=e=>e.role===`user`&&typeof e.queuedInputId==`string`&&a.has(e.queuedInputId),s=e.messages.filter(o).map(e=>({...e,queuedPending:!1})),c=e.messages.filter(e=>!o(e)),l=[...new Set([...e.deliveredInputIds||[],...n])],u=c.findIndex(e=>e.id===t);if(u<0)return{...e,deliveredInputIds:l};let d=c[u],f=c.filter(e=>e.id.startsWith(`${t}-part-`)).length,p=r?[{id:`${t}-part-${f+1}`,role:`agent`,text:r,streaming:!1,...i?{interrupted:!0}:{}}]:[];return{...e,deliveredInputIds:l,messages:[...c.slice(0,u),...p,...s,r?{...d,text:``}:d,...c.slice(u+1)]}}function _t(e){return!!(e?.streaming||e?.recovering||e?.pendingRuntimeSelection||e?.switchingModel||e?.switchingThinking||e?.agents?.some(e=>[`queued`,`starting`,`running`].includes(e.status)))}function vt(e){return!!(e&&(e.streaming||String(e.thinkingText||``).trim()||e.tools?.length||e.currentActivity?.type===`agent`||e.activityFeed?.some(e=>e.type===`agent`)||e.team))}function yt(e,t,n){return t&&vt(n)?n:vt(e.runActivity)?e.runActivity:null}function bt(e,t){if(e&&(e.loaded||e.streaming||Ee(e)!==void 0))return J(e,null);let n=Ee(t);return n===void 0?J(e,null):n}function xt(e,t={}){return!!e?.items?.length}var X=i(),St=e(r(),1);function Ct(e,t){return!!(t.sessionId&&e?.sessionId===t.sessionId&&e.streaming&&!e.completed&&!t.streaming&&t.completed&&e.runStartedAt&&Number.isFinite(Date.parse(e.runStartedAt))&&e.runStartedAt===t.runStartedAt)}function wt(e,t,n=[]){if(!Ct(e,t))return!1;let r=Date.parse(t.runStartedAt||``);return Number.isFinite(r)?n.some(e=>{let t=Date.parse(e.changedAt);return e.reverted||!Number.isFinite(t)||t<r?!1:e.added>0||e.removed>0||e.status===`created`||e.status===`deleted`||!e.snapshot&&e.pending}):!1}function Tt(e,t){let n=Math.min(400,t-280-8),r=Math.max(280,Math.min(720,t-n-8));return Math.min(r,Et(e))}function Et(e){return typeof e!=`number`||!Number.isFinite(e)?360:Math.min(720,Math.max(280,Math.round(e)))}var Dt=new Set([`changes`,`files`,`plan`,`processes`,`sources`,`side-chat`]);function Ot(e,t,n=``){return{id:e,kind:t,resourceId:n,draft:``,url:``,view:{reading:{},expandedFiles:[],expandedProcesses:[],processFollow:{},processScroll:{},query:``,filter:``,selectedSourceId:``,follow:!0}}}function kt(e){return{pages:e?[Ot(`page-1`,e)]:[],activeId:e?`page-1`:``,nextId:e?2:1,contentOpen:!1,summaryOpen:!1,contentWidth:null,conversationScrollTop:null}}function At(e,t){if(t.type===`workspace`)return{...e,...t.contentWidth===void 0?{}:{contentWidth:Et(t.contentWidth)},...t.contentOpen===void 0?{}:{contentOpen:t.contentOpen&&e.pages.length>0},...t.summaryOpen===void 0?{}:{summaryOpen:t.summaryOpen},...t.conversationScrollTop!==void 0&&Number.isFinite(t.conversationScrollTop)?{conversationScrollTop:Math.max(0,t.conversationScrollTop)}:{}};if(t.type===`add`||t.type===`open`||t.type===`kind`){let n=t.type===`kind`?t.id:t.type===`open`?t.replaceId:void 0,r=e.pages.find(e=>e.id===n);if(t.type===`kind`&&!r)return e;let i=`resourceId`in t&&t.resourceId||``,a=e.pages.find(e=>e.id!==n&&e.kind===t.kind&&e.resourceId===i&&(Dt.has(t.kind)||!!i));if(a){let t=r?.kind===`new`?e.pages.filter(e=>e.id!==n):e.pages;return{...e,pages:t,activeId:a.id,contentOpen:!0,summaryOpen:!1}}if(!r&&e.pages.length>=12)return e;let o=Ot(r?.id||`page-${e.nextId}`,t.kind,i);return{...e,pages:r?e.pages.map(e=>e.id===o.id?o:e):[...e.pages,o],activeId:o.id,nextId:e.nextId+ +!r,contentOpen:!0,summaryOpen:!1}}let n=e.pages.findIndex(e=>e.id===t.id);if(n<0)return e;if(t.type===`select`)return{...e,activeId:t.id,contentOpen:!0};if(t.type===`close`){let r=e.pages.filter(e=>e.id!==t.id);return{...e,pages:r,activeId:e.activeId===t.id?r[Math.min(n,r.length-1)]?.id||``:e.activeId,contentOpen:r.length>0&&e.contentOpen}}return{...e,pages:e.pages.map(e=>e.id===t.id?t.type===`resource`?{...e,resourceId:t.resourceId}:t.type===`view`?{...e,view:{...e.view,...t.patch,reading:{...e.view.reading,...t.patch.reading}}}:{...e,...t.draft===void 0?{}:{draft:t.draft},...t.url===void 0?{}:{url:t.url}}:e)}}var jt=c(e=>({sessions:{},update:(t,n,r)=>{let i=`unchanged`;return t&&e(e=>{let a=Object.prototype.hasOwnProperty.call(e.sessions,t)?e.sessions[t]:kt(`id`in r?n:void 0),o=At(a,r);return o===a?((r.type===`add`||r.type===`open`)&&a.pages.length>=12&&(i=`limit`),e):(i=`updated`,{sessions:{...e.sessions,[t]:o}})}),i},forget:t=>e(e=>{let n={...e.sessions};return delete n[t],{sessions:n}})})),Mt=(0,Y.createContext)(null);function Nt(e,t,n=!1){let r=Object.fromEntries(D(e).filter(e=>e.hunks.length>0).map(e=>{let t=0,n=0;for(let r of e.hunks)for(let e of r.rows)e.kind===`pair`&&(e.next.tone===`added`&&t++,e.old.tone===`deleted`&&n++);return[e.path,{added:t,removed:n}]}));return{added:Object.values(r).reduce((e,t)=>e+t.added,0),removed:Object.values(r).reduce((e,t)=>e+t.removed,0),partial:n||t.some(e=>!Object.hasOwn(r,e)),files:r}}var Pt=(0,Y.createContext)(null),Ft=(0,Y.createContext)(null),It=(0,Y.createContext)(null);function Lt({error:e,title:t,pending:n=!1,onRetry:r,className:i}){let{t:a}=s(),[o,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(!1);return(0,X.jsx)(Me,{role:`group`,className:K(`min-w-0 rounded-md border-stroke bg-surface-subtle px-3 py-2 text-content-secondary`,i),children:(0,X.jsxs)(Ke,{open:o,onOpenChange:c,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1`,children:[(0,X.jsxs)(`div`,{role:`status`,className:`flex min-w-0 flex-1 items-center gap-2 text-[13px]`,children:[n?(0,X.jsx)(le,{className:`size-4`}):(0,X.jsx)(M,{"aria-hidden":`true`,className:`size-4 shrink-0 text-content-muted`}),(0,X.jsx)(`span`,{children:t||a(`chat:requestNotice.incomplete`)})]}),r&&(0,X.jsxs)(q,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 shrink-0 gap-1 px-2 text-xs text-content-secondary max-[650px]:min-h-11 pointer-coarse:min-h-11`,disabled:n||l,onClick:async()=>{if(!l){u(!0);try{await r()}catch{}finally{u(!1)}}},children:[(0,X.jsx)(L,{"aria-hidden":`true`,className:K(`size-3.5`,l&&`animate-spin`)}),a(`chat:chatMessage.retry`)]}),e&&(0,X.jsx)(Ge,{asChild:!0,children:(0,X.jsxs)(q,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 shrink-0 gap-1 px-2 text-xs text-content-muted max-[650px]:min-h-11 pointer-coarse:min-h-11`,children:[a(o?`chat:requestNotice.hideDetails`:`chat:requestNotice.showDetails`),(0,X.jsx)(y,{"aria-hidden":`true`,className:K(`size-3 transition-transform`,o&&`rotate-180`)})]})})]}),(0,X.jsx)(We,{children:(0,X.jsx)(`pre`,{tabIndex:0,"aria-label":a(`chat:requestNotice.details`),className:`mt-2 max-h-48 overflow-auto rounded-sm border border-stroke-soft bg-code p-[8px_10px] font-mono text-[12px] leading-[1.6] whitespace-pre-wrap text-content-soft [overflow-wrap:anywhere] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus`,children:e})})]})})}var Rt=[`queued`,`starting`,`running`,`completed`,`failed`,`interrupted`];function zt(e){return e.status===`queued`||e.status===`starting`||e.status===`running`}function Z(e,t=500){return typeof e==`string`?e.slice(0,t):``}function Bt(e){let t=e&&typeof e==`object`?e.agents:void 0;return Array.isArray(t)?t.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e,n=Rt.find(e=>e===t.status);if(typeof t.id!=`string`||!t.id||!n)return[];let r=t.currentActivity&&typeof t.currentActivity==`object`?t.currentActivity:{},i=Number(t.toolCallCount);return[{id:t.id,kind:t.kind===`command`?`command`:`agent`,taskName:Z(t.title,120)||Z(t.taskName,120)||`agent`,status:n,message:Z(t.message),model:Z(t.model,120),output:Z(t.output),error:Z(t.error),startedAt:Z(t.startedAt,40),completedAt:Z(t.completedAt,40)||null,toolCallCount:Number.isInteger(i)&&i>0?i:0,activity:Z(r.name,80)||Z(r.stage,40)}]}):[]}var Vt=[`waiting`,`answered`,`stopped`];function Ht(e){let t=e&&typeof e==`object`?e.links:void 0;return Array.isArray(t)?t.flatMap(e=>{if(!e||typeof e!=`object`)return[];let t=e,n=Vt.find(e=>e===t.status);return typeof t.id!=`string`||!t.id||typeof t.botId!=`string`||!n?[]:[{id:t.id,botId:t.botId,direction:t.direction===`in`?`in`:`out`,text:Z(t.text,300),status:n,reason:Z(t.reason,20),openedAt:Z(t.openedAt,40)}]}):[]}function Ut(e,t){return l(`/api/sessions/${encodeURIComponent(e)}/agents`,{signal:t,parse:e=>({agents:Bt(e),links:Ht(e)})})}function Wt(e,t){return l(`/api/sessions/${encodeURIComponent(e)}/agents/${encodeURIComponent(t)}/stop`,{method:`POST`,data:{}})}var Gt=(0,Y.createContext)(null),Kt=2500,qt=15e3;function Jt(e,t,n){let[r,i]=(0,Y.useState)([]),[a,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(0),l=(0,Y.useRef)(!1),u=(0,Y.useRef)(null),d=(0,Y.useRef)(null),f=(0,Y.useRef)(new Set),p=(0,Y.useRef)(n);return p.current=n,(0,Y.useEffect)(()=>{i([]),o([]),u.current=null,d.current=null,f.current=new Set},[e]),(0,Y.useEffect)(()=>{if(!t||!e)return;let n=new AbortController,r=0,a=async()=>{try{let t=await Ut(e,n.signal);if(n.signal.aborted)return;let r=t.agents,a=new Set(t.links.filter(e=>e.status===`waiting`).map(e=>e.id));l.current=r.some(zt)||a.size>0;let s=new Set(r.filter(zt).map(e=>e.id)),c=u.current,m=d.current,h=[...f.current].some(e=>!a.has(e));u.current=s,d.current=new Set(r.map(e=>e.id)),f.current=a,(h||c&&m&&([...c].some(e=>!s.has(e))||r.some(e=>!m.has(e.id)&&!zt(e))))&&p.current?.(),i(r),o(t.links)}catch{}n.signal.aborted||(r=window.setTimeout(a,l.current?Kt:qt))};return a(),()=>{n.abort(),window.clearTimeout(r)}},[t,s,e]),{agents:r,links:a,reload:(0,Y.useCallback)(()=>c(e=>e+1),[])}}function Yt(e){return{id:`agent-event-${e.id}`,role:`event`,timestamp:e.startedAt,agentId:e.id}}function Xt(e){let t=e.timestamp;if(typeof t==`number`)return t;let n=typeof t==`string`?Date.parse(t):NaN;return Number.isFinite(n)?n:null}function Zt(e){return{id:`link-event-${e.id}`,role:`event`,timestamp:e.openedAt,linkId:e.id}}function Qt(e,t,n=[]){if(!t.length&&!n.length)return e;let r=[...t.map(Yt),...n.map(Zt)].sort((e,t)=>(Xt(e)??0)-(Xt(t)??0)),i=[],a=0,o=-1/0;for(let t of e){for(o=Xt(t)??o;a<r.length&&(Xt(r[a])??0)<o;)i.push(r[a++]);i.push(t)}for(;a<r.length;)i.push(r[a++]);return i}function $t(e,{threshold:t=64,onUnreadChange:n,requestFrame:r=e=>requestAnimationFrame(e),cancelFrame:i=e=>cancelAnimationFrame(e),reducedMotion:a}){let o=e.ownerDocument,s=o.defaultView?.matchMedia?.(`(prefers-reduced-motion: reduce)`),c=a||(()=>{let e=o.documentElement.dataset.motion;return e===`reduced`||e!==`full`&&!!s?.matches}),l=!0,u=!1,d=!1,f=null,p=null,m=null,h=e.scrollTop,g=!1,_=!1,v=null,y=()=>Math.max(0,e.scrollHeight-e.clientHeight),b=()=>_||v!==null,x=()=>h-e.scrollTop>Math.max(t,e.clientHeight/2)&&y()-e.scrollTop>t,S=e=>{u!==e&&(u=e,n(e))},C=()=>{p!==null&&i(p),p=null},w=()=>{f!==null&&i(f),f=null,m=null,C(),g=!1,h=e.scrollTop},T=()=>{C(),g=!0},E=()=>{C(),p=r(()=>{p=r(()=>{if(p=null,x()){A();return}if(l&&!b()&&Math.abs(y()-e.scrollTop)>1){k();return}g=!1,h=e.scrollTop})})},D=t=>{e.scrollTo({top:t,behavior:`instant`}),h=e.scrollTop},O=t=>{if(f=null,d||!l||b())return;if(x()){A();return}let n=y(),i=n-e.scrollTop,a=m===null?1e3/60:Math.min(64,t-m);m=t;let o=1-.85**(Math.max(0,a)/(1e3/60));if(c()||Math.abs(i)<=1){i!==0&&D(n),m=null,E();return}D(e.scrollTop+Math.sign(i)*Math.min(Math.abs(i),Math.max(1,Math.abs(i)*o))),f=r(O)},k=()=>{d||!l||b()||(T(),f===null&&(f=r(O)))},A=()=>{d||(l=!1,w())},j=()=>{l=!0,S(!1),k()},M=()=>{if(d)return;if(g){x()&&A();return}let n=e.scrollTop-h;h=e.scrollTop,n<-.5&&y()-e.scrollTop>1?A():n>.5&&y()-e.scrollTop<=t&&j()},N=t=>{t.ctrlKey||Math.abs(t.deltaX)>Math.abs(t.deltaY)||(t.deltaY<0?A():t.deltaY>0&&y()-e.scrollTop<=1&&j())},P=e=>{let t=e.touches[0];t&&(v={x:t.clientX,y:t.clientY},w())},F=e=>{let t=e.touches[0];if(!t||!v)return;let n=t.clientX-v.x,r=t.clientY-v.y;Math.abs(r)<2||(r>0&&r>Math.abs(n)&&A(),v={x:t.clientX,y:t.clientY})},I=()=>{v=null,k()},L=e=>{e.pointerType===`touch`||e.button>1||(_=!0,w())},R=()=>{_&&(_=!1,k())},z=e=>{let t=e.target;e.defaultPrevented||t?.closest?.(`input, textarea, select, [contenteditable]`)||(e.key===`ArrowUp`||e.key===`PageUp`||e.key===`Home`||e.key===` `&&e.shiftKey)&&A()};e.addEventListener(`scroll`,M,{passive:!0}),e.addEventListener(`wheel`,N,{passive:!0}),e.addEventListener(`touchstart`,P,{passive:!0}),e.addEventListener(`touchmove`,F,{passive:!0}),e.addEventListener(`touchend`,I,{passive:!0}),e.addEventListener(`touchcancel`,I,{passive:!0}),e.addEventListener(`pointerdown`,L,{passive:!0}),e.addEventListener(`keydown`,z),o.addEventListener(`pointerup`,R,{passive:!0}),o.addEventListener(`pointercancel`,R,{passive:!0}),s?.addEventListener?.(`change`,k);let B=typeof ResizeObserver>`u`?null:new ResizeObserver(k);return B?.observe(e),{maintainBottom:k,pauseFollowing:A,restorePosition(e){d||!Number.isFinite(e)||(A(),S(!1),D(Math.max(0,e)))},contentChanged(){d||(l?k():S(!0))},scrollToBottom(e=`auto`){d||(w(),l=!0,S(!1),e===`smooth`?k():(T(),D(y()),E()))},dispose(){d=!0,w(),B?.disconnect(),e.removeEventListener(`scroll`,M),e.removeEventListener(`wheel`,N),e.removeEventListener(`touchstart`,P),e.removeEventListener(`touchmove`,F),e.removeEventListener(`touchend`,I),e.removeEventListener(`touchcancel`,I),e.removeEventListener(`pointerdown`,L),e.removeEventListener(`keydown`,z),o.removeEventListener(`pointerup`,R),o.removeEventListener(`pointercancel`,R),s?.removeEventListener?.(`change`,k)}}}function en(e,{threshold:t=64,resetKey:n,readInitialPosition:r}={}){let i=(0,Y.useRef)(r);i.current=r;let a=(0,Y.useRef)(null),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1),u=(0,Y.useRef)(null),d=(0,Y.useCallback)(e=>{a.current=e,s(e)},[]);return(0,Y.useLayoutEffect)(()=>{if(!o)return;let e=$t(o,{threshold:t,onUnreadChange:l});u.current=e,l(!1);let n=i.current?.();return typeof n==`number`?e.restorePosition(n):e.scrollToBottom(),()=>{e.dispose(),u.current=null}},[n,o,t]),(0,Y.useEffect)(()=>{u.current?.contentChanged()},[e]),{scrollRef:a,scrollElement:o,setScrollRef:d,hasUnread:c,scrollToBottom:(0,Y.useCallback)((e=`auto`)=>{u.current?.scrollToBottom(e)},[]),maintainBottom:(0,Y.useCallback)(()=>{u.current?.maintainBottom()},[]),pauseFollowing:(0,Y.useCallback)(()=>{u.current?.pauseFollowing()},[])}}function tn(e){let t=e.runActivity,n=t?.activityFeed,r=t?.tools;return Array.isArray(n)&&n.length?n.length:Array.isArray(r)?r.length:0}function nn(e){return String(e||``).split(`
|
|
3
|
-
`).map(e=>e.trim()).find(Boolean)||``}function rn(e,{turnsKnown:t}){let n=-1;for(let t=mt(e);t>=0;--t)if(e[t]?.role===`user`){n=t;break}if(n<=0)return null;let r=-1,i=0;for(let t=0;t<n;t+=1)e[t]?.role===`user`&&(r=t,i+=1);let a=0,o=!1;for(let t=Math.max(0,r);t<n;t+=1){let n=e[t];n?.role===`agent`&&(a+=tn(n),o=!!n.error)}return{latestIndex:n,turnBase:i,previous:{turn:t&&r>=0?i:null,text:r>=0?nn(e[r]?.text):``,operations:a,failed:o}}}function an({text:e,copyLabel:t,getText:n}){let{t:r}=s(),[i,a]=(0,Y.useState)(`idle`),o=(0,Y.useRef)(0),c=(0,Y.useRef)(null);(0,Y.useEffect)(()=>(a(`idle`),()=>{o.current+=1,c.current!==null&&clearTimeout(c.current)}),[e]);let l=async()=>{if(i===`pending`||i===`copied`)return;let t=++o.current;c.current!==null&&clearTimeout(c.current),a(`pending`);try{if(await navigator.clipboard.writeText(n?.()||e),t!==o.current)return;a(`copied`),c.current=setTimeout(()=>a(`idle`),1800)}catch{t===o.current&&a(`failed`)}},u=i===`copied`?r(`common:markdownMessage.copied`):t??r(`chat:chatMessage.copyReply`);return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ce,{children:[(0,X.jsx)(oe,{asChild:!0,children:(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,disabledMode:`focusable`,"aria-label":u,"aria-busy":i===`pending`||void 0,"aria-disabled":i===`pending`||i===`copied`||void 0,onClick:i===`copied`||i===`pending`?void 0:()=>void l(),children:i===`copied`?(0,X.jsx)(v,{size:16,className:`text-success`}):i===`pending`?(0,X.jsx)(N,{size:16,className:`animate-spin`}):(0,X.jsx)(C,{size:16})})}),(0,X.jsx)(se,{children:u})]}),(0,X.jsx)(`span`,{role:`status`,className:i===`failed`?`order-last basis-full text-xs text-destructive`:`sr-only`,children:i===`failed`?r(`chat:chatMessage.copyReplyFailed`):i===`copied`?r(`common:markdownMessage.copied`):``})]})}var on=new Map,sn=e=>{let t=on.get(e);return t||(t=Ne.create(e),on.set(e,t)),t};(0,Y.memo)(({children:e,as:t=`p`,className:n,duration:r=2,spread:i=2})=>{let a=sn(t),o=(0,Y.useMemo)(()=>(e?.length??0)*i,[e,i]);return(0,X.jsx)(a,{animate:{backgroundPosition:`0% center`},className:K(`relative inline-block bg-[length:250%_100%,auto] bg-clip-text text-transparent`,`[--bg:linear-gradient(90deg,#0000_calc(50%-var(--spread)),var(--color-background),#0000_calc(50%+var(--spread)))] [background-repeat:no-repeat,padding-box]`,n),initial:{backgroundPosition:`100% center`},style:{"--spread":`${o}px`,backgroundImage:`var(--bg), linear-gradient(var(--color-muted-foreground), var(--color-muted-foreground))`},transition:{duration:r,ease:`linear`,repeat:1/0},children:e})});var cn=(0,Y.createContext)(null),ln=({className:e,isStreaming:t=!1,children:n,...r})=>{let i=(0,Y.useMemo)(()=>({isStreaming:t}),[t]);return(0,X.jsx)(cn.Provider,{value:i,children:(0,X.jsx)(Ke,{asChild:!0,"data-slot":`plan`,...r,children:(0,X.jsx)(He,{className:K(`shadow-none`,e),children:n})})})},un=({defaultOpen:e=!0,className:t,...n})=>(0,X.jsx)(Ke,{className:K(t),defaultOpen:e,...n}),dn=4e3,fn=`… earlier output omitted …`;function pn(e){let t=String(e||``),n=``;for(let e=0;e<t.length;e+=1){let r=t.charCodeAt(e);if(r===27){let n=t.charCodeAt(e+1);if(n===91)for(e+=2;e<t.length&&t.charCodeAt(e)<64;)e+=1;else if(n===93)for(e+=2;e<t.length;){let n=t.charCodeAt(e);if(n===7)break;if(n===27&&t.charCodeAt(e+1)===92){e+=1;break}e+=1}else e+=1;continue}(r===9||r===10||r===13||r>=32&&r!==127)&&(n+=t[e])}return n}function mn(e,t=dn){let n=String(e||``),r=Math.max(1,Math.floor(Number(t)||4e3));if(n.length<=r)return{text:pn(n),truncated:!1};let i=n.slice(-r),a=i.indexOf(`
|
|
4
|
-
`);return a>=0&&a<Math.floor(r/3)&&(i=i.slice(a+1)),{text:pn(`${fn}\n${i}`),truncated:!0}}function hn(){let e=globalThis.pisperDesktop;return e?.computerUseStartStream?e:null}function gn({target:e,fallbackImage:t,streaming:n}){let{t:r}=s(),i=Number(e.target?.windowId)||0,[a,o]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(`connecting`),[u,d]=(0,Y.useState)(!1),f=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(!n)return;let e=hn();if(!e?.computerUseSecureInputState)return;let t=!0,r=()=>{e.computerUseSecureInputState?.().then(e=>{t&&d(!!e?.active)}).catch(()=>{t&&d(!1)})};r();let i=window.setInterval(r,2e3);return()=>{t=!1,window.clearInterval(i)}},[n]),(0,Y.useEffect)(()=>{if(!n||!i)return;let e=hn();if(!e){l(`unavailable`);return}l(`connecting`);let t=!0;return e.computerUseStartStream?.(i,e=>{t&&(e.type===`frame`?(f.current=`data:image/jpeg;base64,${e.jpegBase64}`,o({url:f.current,width:e.width,height:e.height,timestampMs:e.timestampMs}),l(`live`)):e.type===`error`?l(`unavailable`):e.type===`downgraded`?l(e=>e===`live`?e:`connecting`):e.type===`stopped`&&l(`unavailable`))}).catch(()=>{t&&l(`unavailable`)}),()=>{t=!1,e.computerUseStopStream?.(i).catch(()=>{})}},[n,i]);let p=a?.url||(t?.url?String(t.url):``),m=String(e.target?.windowTitle||e.target?.app||``),h=c===`live`,g=(0,Y.useMemo)(()=>`${a?.width||16} / ${a?.height||10}`,[a?.width,a?.height]);return(0,X.jsxs)(`div`,{className:`computer-use-live-mirror my-0.5 w-full overflow-hidden rounded-md border border-stroke bg-code`,"data-pisper-live-mirror":h?`live`:c,children:[p?(0,X.jsx)(`img`,{alt:m||r(`chat:computerUseLive.previewAlt`),className:`computer-use-live-frame block max-h-[240px] w-full object-contain object-top`,src:p}):(0,X.jsx)(`div`,{className:`computer-use-live-placeholder grid min-h-[84px] w-full place-items-center text-xs text-content-muted`,style:{aspectRatio:g},children:r(`chat:computerUseLive.waitingForFirstFrame`)}),u?(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 border-t border-stroke-soft bg-warning-soft px-2.5 py-1 text-xs text-warning-strong`,"data-pisper-secure-input":`active`,children:[(0,X.jsx)(R,{size:12,className:`flex-none`}),(0,X.jsx)(`span`,{className:`min-w-0`,children:r(`chat:computerUseLive.secureInput`)})]}):null,(0,X.jsxs)(`div`,{className:`flex min-h-7 items-center justify-between gap-2 border-t border-stroke-soft bg-panel px-2.5 text-xs text-content-muted`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,X.jsx)(P,{size:12}),(0,X.jsx)(`span`,{className:`truncate`,title:m,children:m||r(`chat:computerUseLive.appWindow`)})]}),(0,X.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1.5 ${h?`font-medium text-accent-fg`:`text-content-muted`}`,"data-pisper-live-mirror-status":c,children:[h&&(0,X.jsx)(le,{className:`size-3`}),r(h?`chat:computerUseLive.live`:c===`connecting`?`chat:computerUseLive.connecting`:`chat:computerUseLive.staticPreview`)]})]})]})}var _n=(0,Y.memo)(gn),vn=new Set([`find_roots`,`observe_ui`,`search_ui`,`expand_ui`,`inspect_ui`,`act_ui`,`read_text`,`wait_for`,`launch_browser`,`navigate_browser`,`evaluate_browser`]);function yn(e){return vn.has(String(e||``))}function bn(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n?.type===`tool`&&yn(n.name)&&Number(n.target?.windowId)>0)return n}return null}function xn(e,t){return e===`read`?t(`chat:agentRunActivity.readingFiles`):e===`grep`?t(`chat:agentRunActivity.searchingContent`):e===`find`?t(`chat:agentRunActivity.findingFiles`):e===`ls`?t(`chat:agentRunActivity.browsingDirectories`):e===`edit`?t(`chat:agentRunActivity.editingFiles`):e===`write`?t(`chat:agentRunActivity.writingFiles`):e===`bash`?t(`chat:agentRunActivity.runningCommands`):e===`codemode`?t(`chat:agentRunActivity.runningScript`):e===`memory_search`?t(`chat:agentRunActivity.searchingMemory`):e===`memory_remember`?t(`chat:agentRunActivity.savingMemory`):e===`spawn_agent`?t(`chat:agentRunActivity.startingSubagent`):e===`list_agents`?t(`chat:agentRunActivity.checkingSubagents`):e===`send_message`?t(`chat:agentRunActivity.messagingSubagent`):e===`send_team_message`?t(`chat:agentRunActivity.messagingTeamMember`):e===`list_team_members`?t(`chat:agentRunActivity.checkingTeamMembers`):e===`run_team_workflow`?t(`chat:agentRunActivity.runningTeamWorkflow`):e===`followup_task`?t(`chat:agentRunActivity.addingSubagentTask`):e===`wait_agent`?t(`chat:agentRunActivity.waitingForSubagent`):e===`interrupt_agent`?t(`chat:agentRunActivity.interruptingSubagent`):we(e)?t(`chat:agentRunActivity.readingPlan`):Se(e)?t(`chat:agentRunActivity.updatingPlan`):e===`browser_automation`?t(`chat:agentRunActivity.controllingBrowser`):e===`observe_ui`||e===`inspect_ui`||e===`expand_ui`?t(`chat:agentRunActivity.observingInterface`):e===`act_ui`?t(`chat:agentRunActivity.operatingInterface`):e===`search_ui`?t(`chat:agentRunActivity.searchingInterface`):e===`find_roots`?t(`chat:agentRunActivity.findingAppWindows`):e===`ocr_ui`?t(`chat:agentRunActivity.readingInterfaceText`):e===`wait_for`?t(`chat:agentRunActivity.waitingForInterface`):e===`read_text`?t(`chat:agentRunActivity.readingInterfaceText`):e===`generate_visual`?t(`chat:agentRunActivity.generatingVisualContent`):e===`discover_tools`?t(`chat:agentRunActivity.discoveringTools`):t(`chat:agentRunActivity.usingTool`,{tool:String(e||t(`chat:agentRunActivity.tools`))})}function Sn(e,t){return e===`read`?t(`chat:agentRunActivity.filesRead`):e===`grep`?t(`chat:agentRunActivity.searchCompleted`):e===`find`?t(`chat:agentRunActivity.findCompleted`):e===`ls`?t(`chat:agentRunActivity.directoriesBrowsed`):e===`edit`?t(`chat:agentRunActivity.filesEdited`):e===`write`?t(`chat:agentRunActivity.filesWritten`):e===`bash`?t(`chat:agentRunActivity.commandCompleted`):e===`codemode`?t(`chat:agentRunActivity.scriptCompleted`):e===`spawn_agent`?t(`chat:agentRunActivity.subagentStarted`):e===`send_team_message`?t(`chat:agentRunActivity.teamMessageSent`):e===`list_team_members`?t(`chat:agentRunActivity.teamMembersListed`):e===`run_team_workflow`?t(`chat:agentRunActivity.teamWorkflowStarted`):e===`wait_agent`?t(`chat:agentRunActivity.subagentStatusUpdated`):e===`observe_ui`||e===`inspect_ui`||e===`expand_ui`?t(`chat:agentRunActivity.interfaceObserved`):e===`act_ui`?t(`chat:agentRunActivity.interfaceActionCompleted`):e===`ocr_ui`||e===`read_text`?t(`chat:agentRunActivity.interfaceTextRead`):Se(e)?t(`chat:agentRunActivity.planUpdated`):t(e===`discover_tools`?`chat:agentRunActivity.toolsDiscovered`:`chat:agentRunActivity.currentOperationCompleted`)}function Cn(e,t,n){return n(e===`queued`?`chat:agentRunActivity.agentQueued`:e===`starting`?`chat:agentRunActivity.agentStarting`:e===`running`?`chat:agentRunActivity.agentRunning`:e===`completed`?`chat:agentRunActivity.agentCompleted`:e===`interrupted`?`chat:agentRunActivity.agentInterrupted`:e===`failed`?`chat:agentRunActivity.agentFailed`:`chat:agentRunActivity.agentStatusUpdated`,{name:t})}function wn(e,t){let n=e?.items||[],r=e?.counts?.completed??n.filter(e=>e.status===`completed`).length,i=e?.counts?.inProgress??n.filter(e=>e.status===`in_progress`).length;return[n.length?t(`chat:agentRunActivity.completedTotalCompleted`,{completed:r,total:n.length}):``,i?t(`chat:agentRunActivity.countInProgress`,{count:i}):``].filter(Boolean).join(` · `)||t(`chat:agentRunActivity.planCleared`)}function Tn(e,t){return e.kind===`removed`?t(`chat:agentRunActivity.removedTitle`,{title:e.title}):e.status===`completed`?t(`chat:agentRunActivity.completedTitle`,{title:e.title}):e.status===`in_progress`?t(`chat:agentRunActivity.inProgressTitle`,{title:e.title}):e.status===`blocked`?t(`chat:agentRunActivity.blockedTitle`,{title:e.title}):e.kind===`added`?t(`chat:agentRunActivity.addedTitle`,{title:e.title}):t(`chat:agentRunActivity.pendingTitle`,{title:e.title})}function En(e,t){return e?.active?e.reason===`overflow`?t(`chat:agentRunActivity.contextIsFullTheRequestWillRetryAfterCompaction`):e.reason===`manual`?t(`chat:agentRunActivity.summarizingOlderMessagesAsRequested`):t(`chat:agentRunActivity.contextIsNearingItsLimitSummarizingOlderMessages`):e?.tokensBefore!=null&&e?.estimatedTokensAfter!=null?t(`chat:agentRunActivity.contextCompactedBeforeAfterTokens`,{before:be(e.tokensBefore),after:be(e.estimatedTokensAfter)}):t(`chat:agentRunActivity.summarizingOlderMessages`)}function Dn(e){if(typeof e!=`string`&&typeof e!=`number`)return 0;let t=new Date(e).getTime();return Number.isFinite(t)?t:0}function On(e){if(!e||e.status===`running`)return null;let t=e.type===`agent`&&e.agent||{},n=Dn(e.startedAt||t.startedAt),r=Dn(e.finishedAt||t.completedAt||e.updatedAt);return!n||!r||r<n?null:r-n}function kn(e,t=!1){let n=Math.max(0,Math.round(e));if(n<1e3)return t?`0 s`:`${n} ms`;if(n<1e4&&!t)return`${(n/1e3).toFixed(1)} s`;let r=Math.floor(n/1e3);if(r<60)return`${r} s`;let i=Math.floor(r/60),a=String(r%60).padStart(2,`0`);return i<60?`${i}:${a}`:`${Math.floor(i/60)}:${String(i%60).padStart(2,`0`)}:${a}`}function An(e){if(e?.type!==`tool`||e.status!==`error`)return null;let t=/Command exited with code (\d+)/.exec(`${String(e.output||``)}\n${String(e.message||``)}`);return t?t[1]:null}var jn=[],Mn=`flex min-h-[36px] min-w-0 items-center gap-[10px] px-[12px] py-[5px] text-[13px] max-[650px]:min-h-11 pointer-coarse:min-h-11 [.agent-run-activity.compact_&]:min-h-[30px]`,Nn=`cursor-pointer list-none transition-colors duration-(--d-fast) ease-precise focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus [&::-webkit-details-marker]:hidden`,Pn=`${Nn} hover:bg-surface-subtle [details[open]>&]:bg-surface-subtle`,Fn=`${Nn} bg-st-run-soft`,In=`agent-run-disclosure size-[14px] flex-none text-content-muted transition-transform duration-(--d-fast) ease-precise [details[open]>summary_&]:rotate-90`,Ln=(0,Y.lazy)(()=>t(()=>import(`./AnimatedList-DB5vqafO.js`).then(e=>({default:e.AnimatedList})),__vite__mapDeps([0,1,2,3,4,5,6])));function Rn(e,t){return t(e===`queued`?`chat:agentRunActivity.teamTaskQueued`:e===`starting`?`chat:agentRunActivity.teamTaskStarting`:e===`running`?`chat:agentRunActivity.teamTaskRunning`:e===`completed`?`chat:agentRunActivity.teamTaskCompleted`:e===`failed`?`chat:agentRunActivity.teamTaskFailed`:e===`interrupted`?`chat:agentRunActivity.teamTaskInterrupted`:e===`blocked`?`chat:agentRunActivity.teamTaskBlocked`:`chat:agentRunActivity.teamTaskStatusUpdated`)}function zn(e){let[t,n]=(0,Y.useState)(()=>Date.now());return(0,Y.useEffect)(()=>{if(n(Date.now()),!e)return;let t=window.setInterval(()=>n(Date.now()),1e3);return()=>window.clearInterval(t)},[e]),t}function Bn({startedAt:e,finishedAt:t,streaming:n}){let r=zn(n),i=Oe(e,t,r);return!i&&!n?null:(0,X.jsx)(`span`,{className:`agent-run-duration flex-none text-[12px] whitespace-nowrap text-content-muted tabular-nums`,children:kn(i,!!n)})}function Q(e){return String(e||``).replace(/\s+/g,` `).trim()}function Vn(e){let t=e?.args||{};return e?.name===`bash`?{text:String(t.command||``).trim(),command:!0}:e?.name===`codemode`?{text:String(t.code||``).split(`
|
|
5
|
-
`).map(e=>e.trim()).find(e=>e&&!e.startsWith(`// @options:`))||``,command:!0}:[`read`,`edit`,`write`,`ls`].includes(e?.name)?{text:Q(t.path)}:e?.name===`grep`?{text:[t.pattern?`“${Q(t.pattern)}”`:``,Q(t.path)].filter(Boolean).join(` · `)}:e?.name===`find`?{text:[Q(t.pattern),Q(t.path)].filter(Boolean).join(` · `)}:e?.name===`browser_automation`?{text:[Q(t.action),Q(t.url||t.selector)].filter(Boolean).join(` · `)}:e?.name===`observe_ui`?{text:Q(t.root||t.mode)}:e?.name===`act_ui`?{text:Array.isArray(t.actions)?t.actions.slice(0,3).map(e=>Q(e?.action)).filter(Boolean).join(` · `):``}:e?.name===`search_ui`?{text:Q(t.text||t.role)}:e?.name===`find_roots`?{text:Q(t.app||t.text)}:e?.name===`ocr_ui`?{text:Q(t.language)}:e?.name===`spawn_agent`?{text:Q(t.taskName)}:[`send_message`,`followup_task`,`wait_agent`,`interrupt_agent`].includes(e?.name)?{text:Q(t.target)}:e?.name===`generate_visual`?{text:Q(t.outputName||t.kind)}:e?.name===`discover_tools`?{text:Q(t.query)}:{text:``}}function Hn(e,{t,streaming:n,text:r,thinkingText:i,compaction:a,error:o,stopped:s,notice:c,lastActivityAt:l,now:u}){let d=`running`,f=t(`chat:agentRunActivity.understandingTheTask`),p=c||``,m=``,h=!1,g=e.startedAt,_=jn;if(e.type===`tool`){let n=e.status===`error`,r=e.status===`done`;d=n?`failed`:r?`completed`:`running`,f=n?t(`chat:agentRunActivity.toolFailed`,{tool:xn(e.name,t)}):r?Sn(e.name,t):xn(e.name,t);let i=Vn(e);p=i.text,h=!!i.command,m=Q(e.message)}else if(e.type===`plan`){d=`plan`;let n=Ce(e);f=n?.items?.length?t(`chat:agentRunActivity.planUpdated`):t(`chat:agentRunActivity.planCleared`),_=e.changes||jn,p=_.length?t(`chat:agentRunActivity.countPlanChanges`,{count:_.length}):wn(n,t)}else if(e.type===`agent`){let n=e.agent||{},r=Q(n.taskName)||t(`chat:agentRunActivity.subagent`),i=Q(n.agentProfile),a=Q(n.modelTier),o=Q(n.model),s=i||a?t(`chat:agentRunActivity.subagentWithProfile`,{name:r,profile:i||a,model:o}):r,c=!Array.isArray(n.modelFallbackReasons)||!n.modelFallbackReasons.length?``:n.modelSource===`tier`?t(`chat:agentRunActivity.subagentTierModelFallback`,{model:o}):t(i?`chat:agentRunActivity.subagentParentModelFallback`:`chat:agentRunActivity.subagentTierUnavailableFallback`,{model:o}),l=De(n.status);f=Cn(n.status,s,t),d=l.tone,p=(n.currentActivity?.type===`tool`?Vn(n.currentActivity).text||n.currentActivity.name:``)||Q(n.error)||c||Q(n.message),m=n.status===`running`?Q(n.output):``,g=n.startedAt||g}else if(e.type===`communication`){let n=e.communication||{};d=`running`,f=t(`chat:agentRunActivity.teamMessageActivity`),p=t(`chat:agentRunActivity.teamMessageDetail`,{from:n.fromTaskName||n.fromAgentId||`lead`,to:n.toTaskName||n.toAgentId||``}),m=Q(n.message)}else if(e.type===`compaction`)d=`compacting`,f=t(`chat:agentRunActivity.compactingContext`),p=En(e.compaction||a,t);else if(e.type===`retry`)d=`waiting`,f=t(`chat:agentRunActivity.retryingRequest`),p=e.summary||c||``;else{let a=Math.max(0,u-new Date(l||u).getTime());o?(d=`failed`,f=t(`chat:agentRunActivity.thisRunFailed`),p=o):s?(d=`stopped`,f=t(`chat:agentRunActivity.runStopped`)):n?a>=1e4?(d=`waiting`,f=t(`chat:agentRunActivity.waitingForTheModel`),p=t(`chat:agentRunActivity.noNewProgressForCountS`,{count:Math.floor(a/1e3)})):f=e.stage===`starting`?t(`chat:agentRunActivity.startingTheModel`):e.stage===`responding`?t(`chat:agentRunActivity.preparingTheResponse`):e.stage===`processing_result`?t(`chat:agentRunActivity.processingToolResult`):e.stage===`waiting_retry`?t(`chat:agentRunActivity.waitingToRetry`):e.stage===`finalizing`?t(`chat:agentRunActivity.finalizingTheRun`):e.stage===`working`?t(`chat:agentRunActivity.advancingTheTask`):String(i||``).trim()?t(`chat:agentRunActivity.reasoningAboutTheNextStep`):String(r||``).trim()?t(`chat:agentRunActivity.preparingTheResponse`):t(`chat:agentRunActivity.understandingTheTask`):(d=`completed`,f=t(`chat:agentRunActivity.reasoningCompleted`),p=Q(i)),String(i||``).trim()&&(p=Q(i))}return{tone:d,title:f,detail:p,output:m,command:h,startedAt:g,changes:_}}var Un={running:{kind:`run`,color:`text-st-run`},compacting:{kind:`run`,color:`text-st-run`},completed:{kind:`done`,color:`text-st-done`},plan:{kind:`done`,color:`text-st-done`},failed:{kind:`failed`,color:`text-st-fail`},stopped:{kind:`stopped`,color:`text-st-queue`},waiting:{kind:`queued`,color:`text-st-queue`}};function Wn({tone:e,spin:t=!0}){let n=Un[e]??{kind:`queued`,color:`text-st-queue`};return(0,X.jsx)(`span`,{className:`agent-run-status-icon grid size-[18px] flex-none place-items-center`,children:(0,X.jsx)(xe,{status:n.kind,spin:t&&n.kind===`run`,className:`size-[15px] ${n.color}`})})}function Gn(e,t){let n=e.type===`agent`?e.agent?.status:e.status;return n===`error`||n===`failed`?`failed`:t&&[`running`,`starting`,`queued`].includes(String(n))||t&&e.type===`compaction`?`running`:`done`}function Kn(e,t){let n={total:e.length,done:0,running:0,failed:0};for(let r of e)n[Gn(r,t)]+=1;return n}function qn({activity:e,className:t,children:n}){return e.type===`tool`?(0,X.jsx)(`div`,{className:t,"data-pisper-activity-type":`tool`,children:n}):e.type===`plan`?(0,X.jsx)(ln,{className:`${t} !gap-0 !rounded-none !border-0 !bg-transparent !p-0 !shadow-none`,"data-pisper-activity-type":`plan`,children:n}):e.type===`agent`?(0,X.jsx)(un,{className:t,"data-pisper-activity-type":`agent`,children:n}):(0,X.jsx)(`div`,{className:t,"data-pisper-activity-type":e.type,children:n})}var Jn=/^\s*(?:●|✗|✕|×|npm ERR!|ERR!|(?:Error|TypeError|SyntaxError|ReferenceError)\b:?)|^Command exited with code \d+/,Yn=/^\s*[✓✔]/;function Xn({line:e}){let t=/^(PASS|FAIL)(?=\s|$)/.exec(e)?.[1];if(t)return(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`b`,{className:`mr-[6px] rounded-[3px] px-[5px] text-[11.5px] font-semibold tracking-[.02em] ${t===`PASS`?`bg-success-soft text-success`:`bg-danger-soft text-danger`}`,children:t}),e.slice(t.length).trimStart()]});let n=Jn.test(e)?`text-danger`:Yn.test(e)?`text-success`:void 0;return(0,X.jsx)(`span`,{className:n,children:e})}function Zn({output:e,command:t,streaming:n,t:r,children:i}){let a=mn(e),o=(0,Y.useRef)(null);return(0,Y.useEffect)(()=>{if(!n)return;let e=window.requestAnimationFrame(()=>{let e=o.current;e&&(e.scrollTop=e.scrollHeight)});return()=>window.cancelAnimationFrame(e)},[a.text,n]),!a.text.trim()&&!(n&&t)?(0,X.jsx)(`div`,{className:Mn,children:i}):(0,X.jsxs)(`details`,{className:`agent-run-command-output [.agent-run-feed:has(&[open])]:max-h-[320px] [&_>_pre]:max-h-[112px] [&_>_pre]:overflow-auto [&_>_pre]:m-0 [&_>_pre]:relative [&_>_pre]:border-t [&_>_pre]:border-well-stroke [&_>_pre]:bg-well [&_>_pre]:py-[8px] [&_>_pre]:pr-[14px] [&_>_pre]:pl-[40px] [&_>_pre]:font-mono [&_>_pre]:text-[12px] [&_>_pre]:leading-[1.7] [&_>_pre]:text-well-text [&_>_pre]:whitespace-pre-wrap [&_>_pre]:[overflow-wrap:anywhere] [&_>_pre>span]:block [&_>_pre>span]:min-h-[1.7em] [&_>_pre]:before:absolute [&_>_pre]:before:top-0 [&_>_pre]:before:bottom-[12px] [&_>_pre]:before:left-[20px] [&_>_pre]:before:w-px [&_>_pre]:before:bg-well-stroke max-[650px]:[&_>_pre]:pl-[12px] max-[650px]:[&_>_pre]:before:hidden min-w-0`,"data-truncated":a.truncated||void 0,"data-running":n||void 0,open:n||void 0,children:[(0,X.jsxs)(`summary`,{className:`${Mn} ${n?Fn:Pn}`,children:[i,(0,X.jsx)(`span`,{className:`sr-only`,children:r(n?`chat:agentRunActivity.liveCommandOutput`:`chat:agentRunActivity.commandOutput`)}),(0,X.jsx)(x,{className:In,"aria-hidden":`true`})]}),(0,X.jsxs)(`pre`,{ref:o,children:[t?(0,X.jsxs)(`span`,{className:`text-well-text`,children:[(0,X.jsx)(`span`,{className:`text-well-muted select-none`,children:`$ `}),t]}):null,a.text?a.text.split(`
|
|
6
|
-
`).map((e,t)=>(0,X.jsx)(Xn,{line:e},t)):null]})]})}function Qn({image:e,t}){let n=String(e.url||``);return n?(0,X.jsx)(`a`,{className:`agent-run-tool-preview block w-full overflow-hidden rounded-sm border border-stroke-soft bg-surface-subtle`,href:n,target:`_blank`,rel:`noreferrer`,title:String(e.name||``),children:(0,X.jsx)(`img`,{alt:String(e.name||t(`chat:agentRunActivity.toolPreviewAlt`)),className:`block max-h-[168px] w-full object-contain object-top`,loading:`lazy`,src:n})}):null}function $n(e,t){return e.activity!==t.activity||e.latest!==t.latest||e.t!==t.t||e.streaming!==t.streaming?!1:[`tool`,`plan`,`agent`].includes(t.activity.type)?!0:e.text===t.text&&e.thinkingText===t.thinkingText&&e.compaction===t.compaction&&e.error===t.error&&e.stopped===t.stopped&&e.notice===t.notice&&e.lastActivityAt===t.lastActivityAt}var er=(0,Y.memo)(function({activity:e,latest:t,t:n,streaming:r,text:i,thinkingText:a,compaction:o,error:s,stopped:c,notice:l,lastActivityAt:u}){let d=Hn(e,{t:n,streaming:r,text:i,thinkingText:a,compaction:o,error:s,stopped:c,notice:l,lastActivityAt:u,now:Date.now()}),f=!!(r&&e.type===`tool`&&e.status===`running`),p=e.name===`bash`&&!!(e.output||f);if(e.type===`retry`)return(0,X.jsx)(Lt,{title:e.summary||n(`chat:agentRunActivity.retryingRequest`),error:String(e.message||``),pending:!!(r&&t),className:`rounded-none border-0 bg-transparent`});let m=e.type===`tool`?String(e.name||``):``,h=An(e),g=On(e),_=d.tone===`failed`,v=!p&&d.output&&d.output!==d.detail?d.output:``,y=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Wn,{tone:d.tone,spin:!!r}),m?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`agent-run-verb max-w-[40%] min-w-[34px] flex-none truncate font-mono text-[12px] font-semibold ${f?`text-st-run`:`text-content-secondary`}`,children:m}),(0,X.jsx)(`span`,{className:`agent-run-arg min-w-0 flex-1 truncate font-mono text-[12.5px] ${d.detail?`text-foreground`:`text-content-muted`}`,title:d.detail||d.title,children:d.detail||d.title}),d.detail?(0,X.jsx)(`span`,{className:`sr-only`,children:d.title}):null]}):(0,X.jsxs)(`span`,{className:`agent-run-arg min-w-0 flex-1 truncate`,title:[d.title,d.detail].filter(Boolean).join(` · `),children:[(0,X.jsx)(`span`,{className:`text-foreground`,children:d.title}),d.detail?(0,X.jsxs)(`span`,{className:`text-content-muted`,children:[` · `,d.detail]}):null]}),h!==null&&(0,X.jsx)(`span`,{className:`flex-none font-mono text-[12px] font-medium text-st-fail`,children:n(`chat:agentRunActivity.exitCode`,{code:h})}),g===null?f&&e.startedAt?(0,X.jsx)(Bn,{startedAt:String(e.startedAt),streaming:!0}):null:(0,X.jsx)(`span`,{className:`agent-run-elapsed min-w-[44px] flex-none text-right font-mono text-[12px] text-content-muted tabular-nums`,children:kn(g)})]});return(0,X.jsxs)(qn,{activity:e,className:`agent-run-summary flex w-full min-w-0 flex-none flex-col [transition:background_var(--d-fast)_var(--ease)] ${d.tone} ${t?`current [.agent-run-feed.live_&]:bg-surface-subtle`:``}`,children:[p?(0,X.jsx)(Zn,{output:e.output,command:d.detail,streaming:f,t:n,children:y}):(0,X.jsxs)(`div`,{className:`${Mn} ${f?`bg-st-run-soft`:``}`,children:[y,(0,X.jsx)(`span`,{className:`size-[14px] flex-none`,"aria-hidden":`true`})]}),(d.changes.length>0||v||e.previewImage?.url)&&(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-[4px] pr-[12px] pb-[8px] pl-[40px] text-[12px] leading-[1.45]`,children:[d.changes.length>0&&(0,X.jsxs)(`span`,{className:`agent-run-plan-changes flex min-w-0 flex-col gap-[1px] border-l border-stroke pl-[8px] text-content-secondary`,children:[d.changes.slice(0,4).map(e=>(0,X.jsx)(`small`,{className:`truncate text-[12px]`,children:Tn(e,n)},`${e.id}-${e.kind}-${e.status}`)),d.changes.length>4&&(0,X.jsx)(`small`,{className:`text-[12px] text-content-muted`,children:n(`chat:agentRunActivity.countMoreChanges`,{count:d.changes.length-4})})]}),v?(0,X.jsx)(`small`,{className:`truncate text-[12px] ${_?`text-st-fail`:`text-content-muted`}`,title:v,children:v}):null,e.previewImage&&e.previewImage.url?(0,X.jsx)(Qn,{image:e.previewImage,t:n}):null]})]})},$n);function tr({streaming:e,text:t,thinkingText:n,team:r,activityFeed:i=jn,tools:a=jn,compaction:o,error:c,stopped:l,notice:u,startedAt:d,lastActivityAt:f,finishedAt:h,compact:g=!1}){let{t:_}=s(),v=String(n||``).trim(),y=(0,Y.useRef)(null),b=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(!v)return;let e=window.requestAnimationFrame(()=>{let e=y.current;e&&(e.scrollTop=e.scrollHeight)});return()=>window.cancelAnimationFrame(e)},[v]);let S=i.length?i:a,[C,w]=(0,Y.useState)(!!e),T=(0,Y.useRef)(!!e);(0,Y.useEffect)(()=>{T.current!==!!e&&(T.current=!!e,w(!!e))},[e]);let E=(0,Y.useContext)(Ft),D=m(e=>e.tab),O=!!(E?.open&&D===`preview`),k=e&&!g&&!O?bn(S):null,A=Te(S),j=Array.isArray(r?.tasks)?r.tasks:[],M=Number(r?.completedTaskCount??0),N=Number(r?.taskCount??j.length),P=Number(r?.tokenUsed??r?.tokensUsed??0),F=Number(r?.tokenBudget??r?.teamTokenBudget??0),I=Array.isArray(r?.communications)?r.communications:[],L=N>0?Math.min(100,Math.round(M/N*100)):0;if((0,Y.useEffect)(()=>{if(!e||!S.length)return;let t=window.requestAnimationFrame(()=>{let e=b.current;e&&(e.scrollTop=e.scrollHeight)});return()=>window.cancelAnimationFrame(t)},[A,S.length,e]),!v&&!S.length&&!r)return null;let R=Kn(S,e),z=(r=>r.map((i,a)=>(0,X.jsx)(er,{activity:i,compaction:o,error:c,lastActivityAt:f,latest:a===r.length-1,notice:u,stopped:l,streaming:e,t:_,text:t,thinkingText:v?``:n},ke(i,a))))(S),B=!!(r&&(j.length>0||I.length>0||(r.blockers?.length??0)>0||(r.conflicts?.length??0)>0||r.scriptPath||r.summary?.text)),V=!!(B||S.length>0),H=[_(`board:transcript.operations`,{count:R.total}),R.running?_(`board:transcript.running`,{count:R.running}):``,R.failed?_(`board:transcript.failed`,{count:R.failed}):``,!e&&!R.failed&&!R.running?_(`board:transcript.allDone`):``].filter(Boolean);return(0,X.jsxs)(`section`,{className:`agent-run-activity flex w-full flex-col items-start gap-[10px] [margin:2px_0_14px] text-foreground [&.compact]:m-[4px_0_0_40px] ${g?`compact`:``}`,"aria-live":`polite`,children:[v&&(0,X.jsxs)(`details`,{className:`agent-thinking-window group/thinking w-full min-w-0 ${e?`running`:`completed`}`,"data-pisper-activity-type":`reasoning`,children:[(0,X.jsxs)(`summary`,{className:`agent-thinking-head inline-flex h-7 max-w-full items-center gap-[6px] rounded-sm pr-[8px] pl-[6px] text-[12px] text-content-secondary ring-1 ring-stroke ring-inset ${Nn} hover:bg-surface-hover max-[650px]:h-11 pointer-coarse:h-11`,"aria-label":_(`chat:agentRunActivity.toggleReasoning`),children:[e?(0,X.jsx)(xe,{status:`run`,className:`size-[14px] text-st-run`}):(0,X.jsx)(tt,{className:`size-[14px] flex-none text-content-muted`,strokeWidth:1.75}),(0,X.jsxs)(`strong`,{className:`flex min-w-0 items-center truncate font-medium`,children:[_(e?`chat:agentRunActivity.reasoningInProgress`:`chat:agentRunActivity.reasoningCompleted`),e?(0,X.jsxs)(`span`,{className:`agent-thinking-dots [&_i]:w-[3px] [&_i]:h-[3px] [&_i]:rounded-[50%] [&_i]:bg-[currentColor] [&_i]:[animation:agent-thinking-dot_1.15s_ease-in-out_infinite] [&_i:nth-child(2)]:[animation-delay:.14s] [&_i:nth-child(3)]:[animation-delay:.28s] inline-flex items-end gap-[2px] [margin-left:5px]`,"aria-hidden":`true`,children:[(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{}),(0,X.jsx)(`i`,{})]}):null]}),!S.length&&(0,X.jsx)(Bn,{startedAt:d,finishedAt:h,streaming:e}),(0,X.jsx)(x,{className:In,"aria-hidden":`true`})]}),(0,X.jsx)(`div`,{ref:y,className:`agent-thinking-scroll mt-[8px] max-h-[190px] overflow-auto rounded-md border border-stroke-soft bg-surface-subtle px-[14px] py-[9px] text-content-secondary [scroll-behavior:smooth]`,children:(0,X.jsx)(Le,{streaming:e,children:v})})]}),V&&(0,X.jsxs)(`div`,{className:`agent-run-log w-full overflow-hidden rounded-[var(--r-md)] border border-stroke bg-solid [&>*+*]:border-t [&>*+*]:border-stroke-soft`,children:[r&&B&&(0,X.jsxs)(`details`,{className:`agent-team-panel min-w-0`,children:[(0,X.jsxs)(`summary`,{className:`${Mn} ${Pn} justify-between`,children:[(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-[10px]`,children:[(0,X.jsx)(`span`,{className:`grid size-[18px] flex-none place-items-center`,"aria-hidden":`true`,children:(0,X.jsx)(`span`,{className:`team-status-dot h-[7px] w-[7px] shrink-0 rounded-full ${r.status===`complete`?`bg-success`:r.status===`stalled`||r.status===`budget_limited`?`bg-warning-strong`:r.status===`paused`?`bg-content-muted`:`bg-star [animation:agent-status-pulse_1.6s_ease-in-out_infinite]`}`})}),(0,X.jsx)(`span`,{className:`min-w-0 truncate font-medium text-content-secondary`,children:r.status===`complete`?_(`chat:agentRunActivity.teamComplete`):r.status===`budget_limited`?_(`chat:agentRunActivity.teamBudgetLimited`):r.status===`paused`?_(`chat:agentRunActivity.teamPaused`):r.status===`stalled`?_(`chat:agentRunActivity.teamStalled`):_(`chat:agentRunActivity.teamActive`)}),N>0&&(0,X.jsxs)(`small`,{className:`shrink-0 text-[12px] text-content-muted tabular-nums`,children:[M,`/`,N,` · `,L,`%`]})]}),(0,X.jsxs)(`span`,{className:`flex shrink-0 items-center gap-[8px]`,children:[F>0&&(0,X.jsx)(`small`,{className:`text-[12px] whitespace-nowrap text-content-muted tabular-nums`,children:_(`chat:agentRunActivity.teamBudget`,{used:P,budget:F})}),(0,X.jsx)(x,{className:In,"aria-hidden":`true`})]})]}),N>0&&(0,X.jsx)(`div`,{"aria-hidden":`true`,className:`team-progress-track mx-[12px] mb-[6px] h-[4px] overflow-hidden rounded-full bg-surface-active`,children:(0,X.jsx)(`div`,{className:`team-progress-fill h-full rounded-full bg-content-secondary [transition:width_var(--d-base)_var(--ease)]`,style:{width:`${L}%`}})}),(0,X.jsxs)(`div`,{className:`grid max-h-[min(42vh,360px)] grid-cols-[repeat(auto-fit,minmax(190px,1fr))] gap-[6px] overflow-y-auto overscroll-contain border-t border-stroke-soft bg-surface-subtle p-[8px_12px]`,children:[j.map(e=>{let t=typeof e.role==`string`?e.role.trim():``,n=Rn(e.status,_);return(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-[4px] rounded-sm border border-stroke-soft bg-panel p-[7px_8px] text-[12px]`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-start gap-[6px]`,children:[(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`team-task-dot mt-[5px] h-[6px] w-[6px] shrink-0 rounded-full ${e.status===`running`?`bg-star [animation:agent-status-pulse_1.6s_ease-in-out_infinite]`:e.status===`completed`?`bg-success`:e.status===`failed`||e.status===`interrupted`?`bg-danger`:e.status===`blocked`?`bg-warning-strong`:`bg-stroke-strong`}`}),(0,X.jsxs)(`span`,{className:`grid min-w-0 gap-[1px]`,children:[(0,X.jsx)(`strong`,{className:`font-medium break-words`,children:t?_(`chat:agentRunActivity.teamTaskStatus`,{name:e.taskName,role:t,status:n}):_(`chat:agentRunActivity.teamTaskStatusWithoutRole`,{name:e.taskName,status:n})}),(0,X.jsx)(`small`,{className:`text-[12px] text-content-muted`,children:n})]})]}),e.error&&(0,X.jsx)(`small`,{className:`text-[12px] break-words text-danger`,children:e.error}),e.output&&(0,X.jsx)(`small`,{className:`text-[12px] break-words text-content-muted`,children:e.output})]},e.id||e.taskName)}),(r.blockers?.length??0)>0&&(0,X.jsx)(`small`,{className:`text-[12px] text-warning-strong`,children:_(`chat:agentRunActivity.teamBlocked`,{count:r.blockers?.length??0})}),(r.conflicts?.length??0)>0&&(0,X.jsx)(`small`,{className:`text-[12px] text-danger`,children:_(`chat:agentRunActivity.teamConflicts`,{count:r.conflicts?.length??0})}),r.scriptPath&&(0,X.jsx)(`small`,{className:`font-mono text-[12px] break-all text-content-muted`,children:_(`chat:agentRunActivity.teamScript`,{path:r.scriptPath})}),I.length>0&&(0,X.jsxs)(`div`,{className:`grid gap-[3px] border-t border-stroke-soft pt-[6px]`,children:[(0,X.jsx)(`small`,{className:`text-[12px] text-content-muted`,children:_(`chat:agentRunActivity.teamCommunicationCount`,{count:I.length})}),I.slice(-6).map(e=>(0,X.jsxs)(`div`,{className:`grid min-w-0 gap-[1px] rounded-xs border-l-2 border-stroke-strong bg-panel p-[4px_8px]`,children:[(0,X.jsxs)(`strong`,{className:`font-mono text-[12px] font-medium break-all`,children:[e.fromTaskName||e.fromAgentId||`lead`,` ->`,` `,e.toTaskName||e.toAgentId]}),(0,X.jsx)(`small`,{className:`text-[12px] break-words text-content-secondary`,children:e.message})]},e.id))]}),r.summary?.text&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`small`,{className:`text-[12px] text-content-muted`,children:_(`chat:agentRunActivity.teamSummary`)}),r.summary.text&&(0,X.jsx)(`p`,{className:`m-0 line-clamp-4 text-[12px] leading-[1.45] text-content-secondary`,children:r.summary.text})]})]})]},String(r.id||r.scriptPath||`team`)),S.length>0&&(0,X.jsxs)(`details`,{className:`agent-run-history min-w-0`,open:C,onToggle:e=>w(e.currentTarget.open),"data-tool-group":e?`running`:`done`,children:[(0,X.jsxs)(`summary`,{className:`flex min-h-[38px] min-w-0 items-center gap-[8px] px-[12px] py-[4px] text-[13px] text-content-secondary ${Nn} hover:bg-surface-hover max-[650px]:min-h-11 pointer-coarse:min-h-11`,"data-tool-group-summary":!0,children:[(0,X.jsx)(p,{className:`size-[14px] flex-none text-content-muted`,"aria-hidden":`true`}),(0,X.jsx)(`span`,{className:`flex min-w-0 flex-1 items-center gap-[6px] truncate tabular-nums`,children:H.map((e,t)=>(0,X.jsxs)(`span`,{className:t===0?`font-semibold text-content`:void 0,children:[t>0&&(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`mr-[6px] text-content-muted`,children:`·`}),e]},t))}),(0,X.jsx)(Bn,{startedAt:d,finishedAt:h,streaming:e}),(0,X.jsx)(x,{className:In,"aria-hidden":`true`})]}),(0,X.jsx)(`div`,{ref:b,className:`agent-run-feed focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus flex max-h-[184px] flex-col overflow-y-auto [overscroll-behavior:contain] border-t border-stroke-soft [&>*+*]:border-t [&>*+*]:border-stroke-soft ${e?`live`:`completed`}`,"aria-label":_(`chat:agentRunActivity.toolActivityAriaLabel`),tabIndex:S.length>3?0:void 0,children:e?(0,X.jsx)(Y.Suspense,{fallback:z,children:(0,X.jsx)(Ln,{children:z})}):(0,X.jsx)(Y.Suspense,{fallback:z,children:z})})]})]}),e&&!g&&k?(0,X.jsx)(_n,{fallbackImage:k.previewImage,streaming:e,target:k}):null]})}function nr(e,t){return e.streaming===t.streaming&&e.text===t.text&&e.thinkingText===t.thinkingText&&e.currentActivity===t.currentActivity&&e.team===t.team&&e.activityFeed===t.activityFeed&&e.compaction===t.compaction&&e.error===t.error&&e.stopped===t.stopped&&e.notice===t.notice&&e.startedAt===t.startedAt&&e.lastActivityAt===t.lastActivityAt&&e.finishedAt===t.finishedAt&&e.compact===t.compact&&e.tools===t.tools}var rr=(0,Y.memo)(tr,nr);function ir({className:e,from:t,...n}){return(0,X.jsx)(`div`,{"data-ai-element":`message`,"data-role":t,className:K(`group flex w-full max-w-[95%] flex-col gap-2`,t===`user`?`is-user ml-auto justify-end`:`is-assistant`,e),...n})}var ar=(0,Y.lazy)(()=>t(()=>import(`./public-session-DjI86F5J.js`),__vite__mapDeps([7,1,8,2,9,10,11,12,13,14,15,16,17,4,18,3,19,20,21,22,23,24,25,26,27,28,29,30,31])));function or({images:e,index:t,onClose:n,onNavigate:r}){let{t:i}=s(),a=(0,Y.useRef)(null),o=e[t],c=t>0,l=t<e.length-1,u=(0,Y.useCallback)(t=>{t>=0&&t<e.length&&r(t)},[e.length,r]);return(0,Y.useEffect)(()=>{let e=document.body.style.overflow,r=e=>{e.key===`Escape`?n():e.key===`ArrowLeft`?(e.preventDefault(),u(t-1)):e.key===`ArrowRight`&&(e.preventDefault(),u(t+1))};return document.body.style.overflow=`hidden`,window.addEventListener(`keydown`,r),()=>{document.body.style.overflow=e,window.removeEventListener(`keydown`,r)}},[t,u,n]),o?(0,X.jsxs)(`div`,{className:`image-lightbox [&_img]:h-full [&_img]:min-h-0 [&_img]:w-full [&_img]:object-contain fixed z-[100] inset-0 grid grid-rows-[auto_minmax(0,1fr)] gap-[12px] bg-[var(--lightbox-bg)] [padding:18px_72px_24px_24px] max-sm:[padding:12px_56px_16px_12px]`,role:`dialog`,"aria-modal":`true`,"aria-label":i(`chat:chatMessage.fullScreenImagePreview`),children:[(0,X.jsxs)(`div`,{className:`image-lightbox-toolbar flex min-w-0 items-center justify-between gap-[16px] text-[var(--on-ink)]`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-[10px]`,children:[(0,X.jsx)(`span`,{className:`overflow-hidden text-[13px] font-medium text-ellipsis whitespace-nowrap`,title:o.attachment.name,children:o.attachment.name||i(`chat:chatMessage.generatedImage`)}),e.length>1&&(0,X.jsxs)(`span`,{className:`flex-none text-[12px] text-[var(--on-ink)]/70 tabular-nums`,children:[t+1,` / `,e.length]})]}),(0,X.jsxs)(`div`,{className:`flex flex-none items-center gap-[8px]`,children:[(0,X.jsx)(q,{asChild:!0,size:`lg`,className:`border border-[var(--lightbox-action-border)] bg-[var(--lightbox-action-bg)] text-[var(--lightbox-action-text)] shadow-[0_8px_24px_var(--lightbox-action-shadow)] hover:bg-[var(--accent-soft)] hover:text-[var(--star-strong)]`,children:(0,X.jsxs)(`a`,{href:o.attachment.downloadUrl||o.source,download:o.attachment.name||`generated-image`,"aria-label":i(`chat:chatMessage.downloadOriginal`),title:i(`chat:chatMessage.downloadOriginal`),children:[(0,X.jsx)(w,{size:14}),(0,X.jsx)(`span`,{className:`max-sm:hidden`,children:i(`chat:chatMessage.downloadOriginal`)})]})}),(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-lg`,className:`size-11 bg-[var(--lightbox-control-bg)] text-[var(--on-ink)] hover:bg-[var(--lightbox-control-bg)] hover:text-[var(--on-ink)]`,"aria-label":i(`chat:chatMessage.closePreview`),title:i(`chat:chatMessage.closePreview`),onClick:n,children:(0,X.jsx)(ee,{size:20})})]})]}),(0,X.jsxs)(`div`,{className:`relative flex min-h-0 items-center justify-center [touch-action:pan-y]`,onTouchStart:e=>{a.current=e.changedTouches[0]?.clientX??null},onTouchEnd:e=>{let n=a.current;a.current=null;let r=e.changedTouches[0]?.clientX;n===null||r===void 0||Math.abs(r-n)<48||u(t+(r<n?1:-1))},onTouchCancel:()=>{a.current=null},children:[e.length>1&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-lg`,className:`absolute left-0 z-10 size-11 rounded-full bg-[var(--lightbox-control-bg)] text-[var(--on-ink)] shadow-[0_8px_24px_var(--lightbox-action-shadow)] hover:bg-[var(--lightbox-control-bg)] hover:text-[var(--on-ink)] disabled:opacity-30`,"aria-label":i(`chat:chatMessage.previousImage`),title:i(`chat:chatMessage.previousImage`),disabled:!c,onClick:()=>u(t-1),children:(0,X.jsx)(b,{size:22})}),(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-lg`,className:`absolute right-0 z-10 size-11 rounded-full bg-[var(--lightbox-control-bg)] text-[var(--on-ink)] shadow-[0_8px_24px_var(--lightbox-action-shadow)] hover:bg-[var(--lightbox-control-bg)] hover:text-[var(--on-ink)] disabled:opacity-30`,"aria-label":i(`chat:chatMessage.nextImage`),title:i(`chat:chatMessage.nextImage`),disabled:!l,onClick:()=>u(t+1),children:(0,X.jsx)(x,{size:22})})]}),(0,X.jsx)(`img`,{alt:o.attachment.name||i(`chat:chatMessage.generatedImage`),decoding:`async`,src:o.source})]})]}):null}function sr(e,t){window.dispatchEvent(new CustomEvent(Re,{detail:{message:e,tone:t}}))}function cr({icon:e,label:t,onClick:n,disabled:r=!1}){return(0,X.jsxs)(`button`,{type:`button`,disabled:r,onClick:n,className:`flex min-h-[30px] cursor-pointer items-center gap-[8px] rounded-sm border-0 bg-transparent px-[8px] text-left text-[13px] text-content-secondary transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50 pointer-coarse:min-h-11`,children:[e,t]})}var lr=6,ur=4;function dr(e){let t=!!(e.url||e.data);return(e.kind===`image`||e.kind===`video`)&&t}function fr({attachments:e,compact:t=!1,sessionId:n,sessionStreaming:r=!1}){let{t:i}=s(),[a,o]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(null),[f,p]=(0,Y.useState)(null),[m,h]=(0,Y.useState)(null),g=(0,Y.useRef)(null),[_,v]=(0,Y.useState)(null),[b,x]=(0,Y.useState)(null),[C,T]=(0,Y.useState)(null),[D,M]=(0,Y.useState)({}),P=e.flatMap((e,t)=>{let n=e.url||(e.data?`data:${e.mimeType};base64,${e.data}`:``);return e.kind===`image`&&n?[{attachment:e,source:n,attachmentIndex:t}]:[]}),F=new Map;e.forEach((e,t)=>{dr(e)||F.set(t,F.size)});let I=!c&&F.size>lr?F.size-ur:0,L=async e=>{try{await Ie(e,Pe),sr(i(`common:markdownMessage.revealLocalPathOk`,{path:e}),`info`)}catch(t){sr(t instanceof Fe&&t.reason===`unavailable`?i(`common:markdownMessage.revealLocalPathUnavailable`):t instanceof Fe&&t.reason===`timeout`?i(`common:markdownMessage.revealLocalPathTimeout`):i(`common:markdownMessage.revealLocalPathFailed`,{path:e}),`error`)}},R=async(e,t)=>{if(n)try{let r=await ye.getFileDiff(n,t);M(t=>({...t,[e]:r.diff?.trim()?{diff:r.diff,truncated:!!r.diffTruncated,canRevert:!!r.canRevert}:null}))}catch{M(t=>({...t,[e]:null}))}},z=async(e,t)=>{if(!(!n||r||b)){if(_!==e){v(e);return}v(null),x(e);try{await ye.revertSessionFileChanges(n,t),M(t=>({...t,[e]:null})),sr(i(`chat:chatMessage.fileActionRevertDone`,{path:t}),`info`)}catch(e){sr(i(`chat:chatMessage.fileActionRevertFailed`,{path:t}),`error`),console.error(`[chat] 撤销文件改动失败。`,e)}finally{x(null)}}},B=async(e,t)=>{if(!(!n||m)){h(e);try{let e=await ye.getFileDiff(n,t);e.diff?.trim()?(d(null),T({diff:e.diff,truncated:!!e.diffTruncated})):sr(i(`chat:chatMessage.fileDiffEmpty`),`info`)}catch(e){sr(e instanceof Error?e.message:i(`chat:chatMessage.fileDiffFailed`),`error`)}finally{h(null)}}},V=e=>{if(!e.downloadUrl)return;let t=document.createElement(`a`);t.href=e.downloadUrl,e.name&&(t.download=e.name),t.click()};return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`message-attachments flex flex-wrap gap-[6px] [margin-top:6px] ${t?`compact`:``}`,children:[e.map((e,t)=>{if(I&&(F.get(t)??-1)>=ur)return null;let a=String(e.id||t),s=e.url||(e.data?`data:${e.mimeType};base64,${e.data}`:``);return e.kind===`image`&&s?(0,X.jsxs)(`button`,{type:`button`,className:`generated-media [.message-attachments_&]:flex [.message-attachments_&]:w-[min(360px,100%)] [.message-attachments_&]:flex-col [.message-attachments_&]:gap-[5px] [.message-attachments_&]:text-[var(--text-muted)] [.message-attachments_&]:no-underline [.message-attachments_button&]:border-0 [.message-attachments_button&]:bg-transparent [.message-attachments_button&]:p-0 [.message-attachments_button&]:text-left [.message-attachments_button&]:[cursor:zoom-in] [.message-attachments_&_img]:w-full [.message-attachments_&_img]:max-h-[320px] [.message-attachments_&_img]:[border:1px_solid_var(--stroke)] [.message-attachments_&_img]:rounded-[var(--r-sm)] [.message-attachments_&_img]:object-contain [.message-attachments_&_img]:bg-[var(--media-bg)] [.message-attachments_&_video]:w-full [.message-attachments_&_video]:max-h-[320px] [.message-attachments_&_video]:[border:1px_solid_var(--stroke)] [.message-attachments_&_video]:rounded-[var(--r-sm)] [.message-attachments_&_video]:object-contain [.message-attachments_&_video]:bg-[var(--media-bg)] [.message-attachments_&_small]:overflow-hidden [.message-attachments_&_small]:text-[13px] [.message-attachments_&_small]:text-ellipsis [.message-attachments_&_small]:whitespace-nowrap [.message-attachments.compact_&]:w-[min(190px,100%)] [.message-attachments.compact_&_img]:max-h-[130px] [.message-attachments.compact_&_video]:max-h-[130px]`,onClick:()=>{let e=P.findIndex(e=>e.attachmentIndex===t);e>=0&&o({images:P,index:e})},title:i(`chat:chatMessage.openFullScreenPreview`),children:[(0,X.jsx)(`img`,{alt:e.name||i(`chat:chatMessage.imageAttachment`),decoding:`async`,loading:`lazy`,src:s}),(0,X.jsx)(`small`,{children:e.name||i(`chat:chatMessage.generatedImage`)})]},a):e.kind===`video`&&s?(0,X.jsxs)(`div`,{className:`generated-media [.message-attachments_&]:flex [.message-attachments_&]:w-[min(360px,100%)] [.message-attachments_&]:flex-col [.message-attachments_&]:gap-[5px] [.message-attachments_&]:text-[var(--text-muted)] [.message-attachments_&]:no-underline [.message-attachments_button&]:border-0 [.message-attachments_button&]:bg-transparent [.message-attachments_button&]:p-0 [.message-attachments_button&]:text-left [.message-attachments_button&]:[cursor:zoom-in] [.message-attachments_&_img]:w-full [.message-attachments_&_img]:max-h-[320px] [.message-attachments_&_img]:[border:1px_solid_var(--stroke)] [.message-attachments_&_img]:rounded-[var(--r-sm)] [.message-attachments_&_img]:object-contain [.message-attachments_&_img]:bg-[var(--media-bg)] [.message-attachments_&_video]:w-full [.message-attachments_&_video]:max-h-[320px] [.message-attachments_&_video]:[border:1px_solid_var(--stroke)] [.message-attachments_&_video]:rounded-[var(--r-sm)] [.message-attachments_&_video]:object-contain [.message-attachments_&_video]:bg-[var(--media-bg)] [.message-attachments_&_small]:overflow-hidden [.message-attachments_&_small]:text-[13px] [.message-attachments_&_small]:text-ellipsis [.message-attachments_&_small]:whitespace-nowrap [.message-attachments.compact_&]:w-[min(190px,100%)] [.message-attachments.compact_&_img]:max-h-[130px] [.message-attachments.compact_&_video]:max-h-[130px] video`,children:[(0,X.jsx)(`video`,{controls:!0,preload:`metadata`,src:s}),(0,X.jsx)(`small`,{children:e.name||i(`chat:chatMessage.generatedVideo`)})]},a):e.kind===`link`?(0,X.jsxs)(`a`,{className:`inline-flex min-h-[28px] max-w-full min-w-0 items-center gap-[6px] rounded-sm border border-stroke bg-panel px-[9px] text-[13px] text-content-secondary no-underline transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-foreground max-[650px]:min-h-11`,href:e.downloadUrl||void 0,children:[(0,X.jsx)(A,{size:14,className:`shrink-0 text-content-muted`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.name||i(`chat:chatMessage.fileAttachment`)})]},a):(0,X.jsxs)(ae,{open:u===a,onOpenChange:t=>{d(t?a:null),t&&e.path&&n?R(a,String(e.path)):v(null)},children:[(0,X.jsx)(re,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,onClick:e=>{g.current=e.currentTarget},className:`inline-flex min-h-[28px] max-w-full min-w-0 cursor-pointer items-center gap-[6px] rounded-sm border border-stroke bg-panel px-[9px] text-[13px] text-content-secondary transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-foreground max-[650px]:min-h-11`,children:[(0,X.jsx)(A,{size:14,className:`shrink-0 text-content-muted`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.name||i(`chat:chatMessage.fileAttachment`)})]})}),(0,X.jsxs)(G,{align:`start`,sideOffset:6,className:`flex w-[190px] max-w-[calc(100vw-2rem)] flex-col gap-[2px] p-[4px]`,children:[(0,X.jsx)(cr,{icon:(0,X.jsx)(E,{size:13}),label:i(`chat:chatMessage.fileActionPreview`),onClick:()=>{d(null),p(e)}}),(0,X.jsx)(cr,{icon:(0,X.jsx)(w,{size:13}),label:i(`chat:chatMessage.fileActionDownload`),disabled:!e.downloadUrl,onClick:()=>V(e)}),e.path&&(0,X.jsx)(cr,{icon:(0,X.jsx)(j,{size:13}),label:i(`chat:chatMessage.fileActionReveal`),onClick:()=>void L(String(e.path))}),n&&e.path&&(0,X.jsx)(cr,{icon:m===a?(0,X.jsx)(N,{size:13,className:`animate-spin`}):(0,X.jsx)(O,{size:13}),label:i(`chat:chatMessage.fileActionDiff`),disabled:!!m,onClick:()=>void B(a,String(e.path))}),D[String(a)]?.canRevert&&(0,X.jsx)(cr,{icon:b===String(a)?(0,X.jsx)(N,{className:`animate-spin`,size:13}):(0,X.jsx)(at,{size:13}),label:i(_===String(a)?`chat:chatMessage.fileActionConfirmRevert`:`chat:chatMessage.fileActionRevert`),disabled:!!(r||b),onClick:()=>void z(String(a),String(e.path))})]})]},a)}),F.size>lr&&(0,X.jsx)(`button`,{type:`button`,"aria-expanded":!I,onClick:()=>l(e=>!e),className:`inline-flex min-h-[28px] cursor-pointer items-center gap-[4px] rounded-sm border border-dashed border-stroke bg-transparent px-[9px] text-[13px] text-content-muted transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-foreground max-[650px]:min-h-11`,children:I?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(y,{size:14,className:`shrink-0`}),i(`chat:chatMessage.moreFiles`,{count:I})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(S,{size:14,className:`shrink-0`}),i(`chat:chatMessage.fewerFiles`)]})})]}),a&&(0,St.createPortal)((0,X.jsx)(or,{images:a.images,index:a.index,onClose:()=>o(null),onNavigate:e=>o(t=>t&&{...t,index:e})}),document.body),f&&(0,X.jsx)(Ze,{attachment:f,onClose:()=>p(null),onRestoreFocus:()=>g.current?.focus(),onDownload:()=>V(f)}),C&&(0,X.jsx)(k,{diff:C.diff,truncated:C.truncated,onClose:()=>T(null)})]})}function pr({sessionId:e,entryId:t,savedLabel:n,openRequest:r=0}){let{t:i}=s(),[a,o]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{r&&o(!0)},[r]);let[c,l]=(0,Y.useState)(``),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(``);(0,Y.useEffect)(()=>{if(!a)return;let n=!0;return d(!0),h(``),Ye(e).then(e=>n&&l(e.labels[t]||``)).catch(e=>n&&h(Je(e))).finally(()=>n&&d(!1)),()=>{n=!1}},[t,a,e]);let g=async()=>{if(!(f||u)){p(!0),h(``);try{let n=await ye.setSessionTreeLabel(e,t,c);Xe(e,n),o(!1)}catch(e){h(Je(e))}finally{p(!1)}}},_=async()=>{if(!(f||u)){p(!0),h(``);try{let n=await ye.setSessionTreeLabel(e,t,``);Xe(e,n),l(``),o(!1)}catch(e){h(Je(e))}finally{p(!1)}}};return(0,X.jsxs)(ae,{open:a,onOpenChange:o,children:[(0,X.jsxs)(ce,{children:[(0,X.jsx)(oe,{asChild:!0,children:(0,X.jsx)(re,{asChild:!0,children:(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,className:n?`bg-surface-hover text-brand`:void 0,"aria-label":i(`chat:chatMessage.labelThisTurn`),"aria-pressed":!!n,"data-pisper-label-entry":t,children:(0,X.jsx)(V,{size:14})})})}),(0,X.jsx)(se,{side:`top`,sideOffset:6,children:i(`chat:chatMessage.labelThisTurn`)})]}),(0,X.jsx)(G,{className:`message-label-popover [&_form]:grid [&_form]:gap-[10px] [&_[data-slot='popover-title']]:text-[12px]`,align:`end`,sideOffset:6,children:(0,X.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),g()},children:[(0,X.jsx)(ie,{children:i(`chat:sessionTree.nodeLabel`)}),(0,X.jsx)(Ae,{autoFocus:!0,value:c,maxLength:80,disabled:u||f,placeholder:i(`chat:sessionTree.labelPlaceholder`),onChange:e=>l(e.target.value)}),m&&(0,X.jsx)(`small`,{className:`danger-text`,children:m}),(0,X.jsxs)(`div`,{className:`message-label-actions flex items-center justify-between gap-[8px]`,children:[(0,X.jsx)(q,{type:`button`,size:`icon-sm`,variant:`ghost`,title:i(`chat:sessionTree.removeLabel`),"aria-label":i(`chat:sessionTree.removeLabel`),disabled:u||f,onClick:()=>void _(),children:(0,X.jsx)(H,{})}),(0,X.jsxs)(q,{className:`message-label-save [.message-label-actions_&]:min-w-[104px] [.message-label-actions_&]:text-[var(--primary-foreground)]`,type:`submit`,disabled:u||f,children:[f?(0,X.jsx)(N,{className:`animate-spin`}):(0,X.jsx)(v,{}),i(f?`chat:sessionTree.savingLabel`:`chat:sessionTree.saveLabel`)]})]})]})})]})}function mr(e){if(e<6e4)return`${(Math.max(e,100)/1e3).toFixed(1)}s`;let t=Math.round(e/1e3);return`${Math.floor(t/60)}m ${t%60}s`}function hr(e,t){if(typeof e!=`number`&&typeof e!=`string`)return null;let n=new Date(e);if(!Number.isFinite(n.getTime()))return null;let r=new Date().toDateString()===n.toDateString();return{iso:n.toISOString(),label:n.toLocaleString(t,{...r?{}:{month:`2-digit`,day:`2-digit`},hour:`2-digit`,minute:`2-digit`,hour12:!1}),full:n.toLocaleString(t)}}function gr(e,t){return e.sessionId===t.sessionId&&e.message===t.message&&e.agentState===t.agentState&&e.showRunActivity===t.showRunActivity&&e.runProps===t.runProps&&e.cwd===t.cwd&&e.sessionStreaming===t.sessionStreaming&&e.onBranchFromHere===t.onBranchFromHere&&e.onCreateChildSession===t.onCreateChildSession&&e.retryUserMessageId===t.retryUserMessageId&&e.hideErrorNotice===t.hideErrorNotice&&e.onRetryLastTurn===t.onRetryLastTurn&&e.latest===t.latest&&e.turn===t.turn}var _r=(0,Y.memo)(function({sessionId:e,message:t,agentState:n,showRunActivity:r,runProps:i,cwd:a,sessionStreaming:o,onBranchFromHere:c,onCreateChildSession:l,retryUserMessageId:u,hideErrorNotice:d,onRetryLastTurn:f,latest:p=!1,turn:m}){let{t:h,language:g}=s(),_=(0,Y.useContext)(It),[v,y]=(0,Y.useState)(!1),[b,x]=(0,Y.useState)(!1),[S,w]=(0,Y.useState)(!1),[E,D]=(0,Y.useState)(0),O=(0,Y.useRef)(!1),k=(0,Y.useRef)(null),A=!!(t.turnBoundaryEntryId&&c&&l),j=qe(e,A?t.turnBoundaryEntryId:void 0),M=!!t.streaming,P=t.text||``,F=t.error&&P===t.error?``:P,R=!!(i&&(String(i.thinkingText||``).trim()||(i.activityFeed?.length??0)>0||(i.tools?.length??0)>0||i.team)),z=t.role===`agent`?hr(t.timestamp,g):null,B=t.role===`agent`&&typeof t.thinkingMs==`number`&&Number.isFinite(t.thinkingMs)&&t.thinkingMs>0?t.thinkingMs:null,H=B===null?``:h(`chat:chatMessage.thinkingTime`,{duration:mr(B)}),ee=t.role===`agent`&&!!(M||F||R||t.error||t.attachments?.length);return(0,X.jsxs)(ir,{from:t.role===`agent`?`assistant`:`user`,className:K(`message group/message mx-auto mb-[var(--chat-message-gap,32px)] w-full max-w-[var(--chat-content-width,1040px)] min-w-0 gap-0`,t.role===`agent`?`items-stretch`:`items-end [[data-chat-message-style='plain']_&]:items-start`,t.role),"data-pisper-message-id":t.id,"data-pisper-role":t.role,"data-pisper-turn":m,"data-pisper-streaming":M||void 0,"data-pisper-error":t.error?`true`:void 0,children:[ee&&(0,X.jsxs)(`div`,{className:`agent-message-head mb-2 flex h-6 min-w-0 items-center gap-2 text-[13px]`,children:[(0,X.jsx)(`span`,{className:`agent-message-mark grid size-[22px] flex-none place-items-center`,"data-state":n,"aria-hidden":`true`,children:_?.botId?(0,X.jsx)(Y.Suspense,{fallback:(0,X.jsx)(Ue,{size:22}),children:(0,X.jsx)(ar,{botId:_.botId,part:`mark`,animate:p,fallback:(0,X.jsx)(Ue,{size:22})})}):(0,X.jsx)(Ue,{size:22})}),(0,X.jsx)(`span`,{className:`min-w-0 truncate font-medium text-content-secondary`,"data-agent-model":_&&p&&_.model?_.model:void 0,title:_?.botId&&p&&_.model?_.model:void 0,children:_?.botId?(0,X.jsx)(Y.Suspense,{fallback:p&&_.model?_.model:`Pisper`,children:(0,X.jsx)(ar,{botId:_.botId,part:`name`,fallback:p&&_.model?_.model:`Pisper`})}):_&&p&&_.model?_.model:`Pisper`}),H&&(0,X.jsx)(`span`,{className:`flex-none text-[12px] text-content-muted tabular-nums`,"data-agent-thinking":B??void 0,children:H}),n===`thinking`&&(0,X.jsx)(le,{className:`size-3.5`}),j&&(0,X.jsxs)(`button`,{type:`button`,className:`inline-flex h-[22px] min-w-0 max-w-[45%] items-center gap-1 rounded-full bg-surface-muted px-2 text-[12px] text-content-secondary transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-content focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-focus max-[650px]:h-11 pointer-coarse:h-11`,"aria-label":h(`chat:chatMessage.turnLabel`,{label:j}),title:h(`chat:chatMessage.turnLabel`,{label:j}),"data-turn-label":t.turnBoundaryEntryId,disabled:M,onClick:()=>D(e=>e+1),children:[(0,X.jsx)(V,{size:12,"aria-hidden":`true`,className:`flex-none`}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:j})]}),z&&(0,X.jsx)(`time`,{className:`ml-auto flex-none text-[12px] text-content-muted tabular-nums`,dateTime:z.iso,title:z.full,children:z.label})]}),t.role===`user`&&t.fromBot&&(0,X.jsxs)(`div`,{className:`mb-1.5 flex h-6 min-w-0 items-center gap-1.5 text-[13px] text-content-secondary`,"data-message-from-bot":t.fromBot,children:[(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(ar,{botId:t.fromBot,part:`mark`,animate:!1})}),(0,X.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(ar,{botId:t.fromBot,part:`name`})})})]}),(0,X.jsxs)(`div`,{ref:k,className:K(`message-content relative min-w-0`,t.role===`agent`?`w-full`:`w-fit max-w-[min(640px,88%)] [[data-chat-message-style='plain']_&]:w-full [[data-chat-message-style='plain']_&]:max-w-full`),children:[r&&i&&(0,X.jsx)(rr,{...i}),F&&(0,X.jsx)(Le,{cwd:a,streaming:M,className:K(`min-h-[34px] [overflow-wrap:anywhere] text-[length:var(--app-message-font-size)] [font-family:var(--font-content-family)] font-[400]`,t.role===`agent`?`w-full max-w-full rounded-none border-0 bg-transparent pt-1 leading-[1.625] [&_h1]:text-[1.5em]! [&_h1]:leading-[1.333333]! [&_h2]:text-[1.25em]! [&_h2]:leading-[1.4]! [&_h3]:text-[1.125em]! [&_h3]:leading-[1.555556]! [&_h1]:mt-[1em]! [&_h2]:mt-[1em]! [&_h3]:mt-[1em]! [&_h1]:mb-[.25em]! [&_h2]:mb-[.25em]! [&_h3]:mb-[.25em]! [&_li]:py-0! [&_li+li]:mt-[.25em]! [&_p]:mt-0! [&_p]:mb-[.25em]! [&_ul]:my-[.25em]! [&_ol]:my-[.25em]! [&_.markdown-content>p:first-child]:mt-0! [&_.markdown-content>p:last-child]:mb-0!`:`rounded-[18px] border-0 bg-[var(--user-bubble-bg)] px-4 py-2.5 text-[length:calc(var(--app-message-font-size)*.9375)]! leading-[1.65] text-[var(--user-bubble-text)] [&_.markdown-content>p]:my-0! [&_h1]:text-inherit! [&_h2]:text-inherit! [&_h3]:text-inherit! [&_h4]:text-inherit! [&_a]:text-inherit! [&_blockquote]:text-inherit! [&_code]:bg-panel [&_code]:shadow-[0_0_0_1px_var(--stroke-soft)] [[data-chat-message-style='plain']_&]:rounded-none [[data-chat-message-style='plain']_&]:bg-transparent [[data-chat-message-style='plain']_&]:px-0 [[data-chat-message-style='plain']_&]:py-1`),children:F}),t.attachments&&t.attachments.length>0&&(0,X.jsx)(fr,{attachments:t.attachments,sessionId:e,sessionStreaming:o}),t.role===`user`&&F&&(0,X.jsxs)(`div`,{className:`message-actions mt-1 -mr-1.5 flex flex-wrap justify-end min-h-5 gap-0 text-muted-foreground opacity-0 group-hover/message:opacity-100 focus-within:opacity-100 [@media(hover:none)]:opacity-100 max-[650px]:opacity-100 min-[651px]:absolute min-[651px]:right-full min-[651px]:bottom-0 min-[651px]:mr-1 min-[651px]:mt-0 [[data-chat-message-style='plain']_&]:static [[data-chat-message-style='plain']_&]:mr-0 [[data-chat-message-style='plain']_&]:justify-start [&_button]:size-7 [&_button]:min-h-7 max-[650px]:[&_button]:size-11 max-[650px]:[&_button]:min-h-11 pointer-coarse:[&_button]:size-11 pointer-coarse:[&_button]:min-h-11 [&_button]:rounded-md`,children:[t.queuedPending&&(0,X.jsx)(`span`,{className:`mr-auto self-center px-1.5 text-xs text-content-muted`,"data-message-queued":!0,children:h(`chat:chatMessage.queued`)}),(0,X.jsx)(an,{text:F,copyLabel:h(`chat:chatMessage.copyMessage`)})]})]}),t.role===`agent`&&t.interrupted&&(0,X.jsx)(`p`,{className:`mt-1 text-xs text-content-muted`,"data-message-interrupted":!0,children:h(`chat:chatMessage.interrupted`)}),t.error&&!M&&!d&&(0,X.jsx)(Lt,{error:String(t.error),className:`mt-3`}),t.role===`agent`&&!M&&(F||t.turnBoundaryEntryId||u)&&(0,X.jsxs)(`div`,{className:`message-actions mt-2 -ml-1.5 flex flex-wrap items-center min-h-5 gap-0 text-[var(--text-muted)] opacity-0 transition-opacity duration-(--d-fast) group-hover/message:opacity-100 focus-within:opacity-100 has-[[data-state=open]]:opacity-100 has-[[aria-busy=true]]:opacity-100 [@media(hover:none)]:opacity-100 max-[650px]:opacity-100 [&_button]:size-7 [&_button]:min-h-7 max-[650px]:[&_button]:size-11 max-[650px]:[&_button]:min-h-11 pointer-coarse:[&_button]:size-11 pointer-coarse:[&_button]:min-h-11 [&_button]:rounded-md [&_button]:text-[var(--text-muted)] [&_button:hover]:bg-[var(--surface-hover)] [&_button:hover]:text-[var(--text)]`,"data-reply-actions":!0,children:[F&&(0,X.jsx)(an,{text:F,getText:()=>k.current?.querySelector(`.markdown-content`)?.innerText.trim()||``}),A&&t.turnBoundaryEntryId&&(0,X.jsx)(pr,{sessionId:e,entryId:t.turnBoundaryEntryId,savedLabel:j,openRequest:E}),u&&(0,X.jsxs)(ce,{children:[(0,X.jsx)(oe,{asChild:!0,children:(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,"aria-label":h(`chat:chatMessage.retry`),"data-pisper-retry-message":u,disabled:S||o,onClick:async()=>{w(!0);try{await f()}finally{w(!1)}},children:S?(0,X.jsx)(N,{className:`animate-spin`,size:14}):(0,X.jsx)(L,{size:14})})}),(0,X.jsx)(se,{side:`top`,sideOffset:6,children:h(`chat:chatMessage.retry`)})]}),(F||A)&&(0,X.jsxs)(ne,{children:[(0,X.jsx)(te,{asChild:!0,children:(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,"aria-label":h(`chat:chatMessage.moreReplyActions`),"data-reply-more":!0,children:(0,X.jsx)(T,{size:16})})}),(0,X.jsxs)(W,{align:`start`,className:`min-w-52 p-1 [&_[role=menuitem]]:min-h-9 max-[650px]:[&_[role=menuitem]]:min-h-11`,onCloseAutoFocus:e=>{O.current&&(O.current=!1,e.preventDefault())},children:[A&&t.turnBoundaryEntryId&&(0,X.jsxs)(U,{"data-pisper-derive-entry":t.turnBoundaryEntryId,disabled:v||b||o,onSelect:async()=>{let e=t.turnBoundaryEntryId;if(!(!e||!c)){y(!0);try{await c(e)}finally{y(!1)}}},children:[(0,X.jsx)($e,{size:16}),h(`chat:chatMessage.deriveFromHere`)]}),A&&t.turnBoundaryEntryId&&(0,X.jsxs)(U,{"data-pisper-rewind-entry":t.turnBoundaryEntryId,disabled:v||b||o,onSelect:async()=>{let e=t.turnBoundaryEntryId;if(!(!e||!c)){y(!0);try{await c(e,{rewindFiles:!0})}finally{y(!1)}}},children:[(0,X.jsx)(I,{size:16}),h(`chat:chatMessage.rewindHere`)]}),A&&t.turnBoundaryEntryId&&(0,X.jsxs)(U,{"data-reply-label":!0,onSelect:()=>{O.current=!0,window.setTimeout(()=>D(e=>e+1),0)},children:[(0,X.jsx)(V,{size:16}),h(`chat:chatMessage.labelThisTurn`)]}),F&&(0,X.jsxs)(U,{"data-reply-copy-markdown":!0,onSelect:()=>{navigator.clipboard?.writeText(F).catch(()=>void 0)},children:[(0,X.jsx)(C,{size:16}),h(`board:transcript.copyMarkdown`)]}),A&&t.turnBoundaryEntryId&&(0,X.jsxs)(U,{"data-pisper-child-entry":t.turnBoundaryEntryId,disabled:v||b,onSelect:async()=>{let e=t.turnBoundaryEntryId;if(!(!e||!l)){x(!0);try{await l(e)}finally{x(!1)}}},children:[(0,X.jsx)(rt,{size:16}),h(`chat:chatMessage.createChildChat`)]})]})]})]})]})},gr);function vr(e,t){return e.message===t.message}(0,Y.memo)(function({message:e}){return(0,X.jsxs)(ir,{from:e.role===`agent`?`assistant`:`user`,className:`[&_>_span]:pt-[5px] [&_>_span]:text-[var(--text-muted)] [&_>_span]:font-[ui-monospace,_SFMono-Regular,_Consolas,_'Liberation_Mono',_monospace] [&_>_span]:text-[12px] [&_>_span]:font-medium [&.agent_>_span::before]:[content:'✦'] [&.agent_>_span::before]:mr-[4px] [&.agent_>_span::before]:text-content-muted [&_.markdown-body]:rounded-[var(--r-xs)] [&_.markdown-body]:bg-[var(--surface-subtle)] [&_.markdown-body]:[padding:6px_8px] [&_.markdown-body]:text-[13px] [&_.markdown-body]:leading-[1.45] [&_.markdown-body]:[overflow-wrap:anywhere] [&.agent_.markdown-body]:bg-[var(--surface-muted)] [&_.markdown-body_pre]:max-h-[130px] [&_.markdown-body_pre]:[padding:7px] grid grid-cols-[34px_minmax(0,1fr)] gap-[6px] [margin-bottom:6px] [align-items:start] ${e.role}`,"data-pisper-message-id":e.id,"data-pisper-role":e.role,"data-pisper-streaming":e.streaming||void 0,children:[(0,X.jsx)(`span`,{children:e.role===`agent`?`Pisper`:`You`}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(e.text||!e.streaming)&&(0,X.jsx)(Le,{streaming:e.streaming,children:e.text}),e.attachments&&e.attachments.length>0&&(0,X.jsx)(fr,{attachments:e.attachments,compact:!0})]})]})},vr);function yr(e,t,n){let r=Date.parse(e),i=t?Date.parse(t):n;if(!Number.isFinite(r)||!Number.isFinite(i))return``;let a=Math.max(0,Math.round((i-r)/1e3)),o=Math.floor(a/60);return o?`${o}:${String(a%60).padStart(2,`0`)}`:`${a}s`}function br({sessionId:e,agent:t,onChanged:n}){let{t:r}=s(),[i,a]=(0,Y.useState)(!1),[o,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(()=>Date.now()),d=zt(t);(0,Y.useEffect)(()=>{if(!d)return;let e=window.setInterval(()=>u(Date.now()),1e3);return()=>window.clearInterval(e)},[d]);let f=t.status===`completed`?r(`chat:agentJob.completed`):t.status===`failed`?r(`chat:agentJob.failed`):t.status===`interrupted`?r(`chat:agentJob.interrupted`):t.status===`running`?r(`chat:agentJob.running`):r(`chat:agentJob.queued`),p=yr(t.startedAt,t.completedAt,l),m=`agent-job-${t.id}`,h=async()=>{c(!0);try{await Wt(e,t.id)}catch{}finally{c(!1),n()}};return(0,X.jsxs)(`div`,{"data-agent-job":t.id,"data-agent-job-status":t.status,className:`mx-auto mb-[var(--chat-message-gap,32px)] w-full max-w-[var(--chat-content-width,1040px)] min-w-0 rounded-lg border border-stroke-soft bg-surface-subtle text-[13px]`,children:[(0,X.jsxs)(`div`,{className:`flex min-h-10 items-center gap-2 px-3 py-1.5`,children:[(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`grid size-4 flex-none place-items-center`,children:d?(0,X.jsx)(le,{className:`size-3.5`}):t.status===`completed`?(0,X.jsx)(v,{size:14,className:`text-st-done`}):(0,X.jsx)(ee,{size:14,className:`text-content-muted`})}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,children:[(0,X.jsx)(`span`,{className:`font-medium text-content`,children:t.kind===`command`?r(`chat:agentJob.command`,{command:t.taskName}):r(`chat:agentJob.title`,{task:t.taskName})}),(0,X.jsxs)(`span`,{className:`text-content-muted`,children:[` · `,f,d&&t.activity?` · ${t.activity}`:``]})]}),p&&(0,X.jsx)(`span`,{className:`flex-none font-mono text-xs text-content-muted tabular-nums`,children:p}),d&&(0,X.jsxs)(q,{type:`button`,variant:`ghost`,size:`sm`,className:`flex-none pointer-coarse:h-11`,disabled:o,onClick:()=>void h(),children:[(0,X.jsx)(B,{"aria-hidden":`true`}),r(`chat:agentJob.stop`)]}),(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`flex-none pointer-coarse:size-11`,"aria-expanded":i,"aria-controls":m,"aria-label":r(i?`chat:agentJob.collapse`:`chat:agentJob.expand`),title:r(i?`chat:agentJob.collapse`:`chat:agentJob.expand`),onClick:()=>a(e=>!e),children:(0,X.jsx)(y,{"aria-hidden":`true`,className:K(`transition-transform`,i&&`rotate-180`)})})]}),i&&(0,X.jsxs)(`div`,{id:m,className:`flex flex-col gap-2 border-t border-stroke-soft px-3 py-2.5`,children:[(0,X.jsx)(`p`,{className:`m-0 text-xs text-content-muted`,children:[t.model?r(`chat:agentJob.model`,{model:t.model}):``,t.toolCallCount?r(`chat:agentJob.tools`,{count:t.toolCallCount}):``].filter(Boolean).join(` · `)}),(0,X.jsx)(`p`,{className:`m-0 line-clamp-4 whitespace-pre-wrap text-content-secondary`,children:t.message}),(t.output||t.error)&&(0,X.jsx)(`p`,{className:`m-0 line-clamp-6 whitespace-pre-wrap text-content`,children:t.error||t.output})]})]})}var xr=(0,Y.lazy)(()=>t(()=>import(`./public-session-DjI86F5J.js`),__vite__mapDeps([7,1,8,2,9,10,11,12,13,14,15,16,17,4,18,3,19,20,21,22,23,24,25,26,27,28,29,30,31])));function Sr({link:e}){let{t}=s(),n=e.status===`stopped`?e.reason===`rate`?t(`chat:botLink.stoppedRate`):t(`chat:botLink.stoppedHops`):e.status===`answered`?t(`chat:botLink.answered`):t(`chat:botLink.waiting`);return(0,X.jsxs)(`div`,{"data-bot-link":e.id,"data-bot-link-status":e.status,className:`mx-auto mb-[var(--chat-message-gap,32px)] flex min-h-10 w-full max-w-[var(--chat-content-width,1040px)] min-w-0 items-center gap-2 rounded-lg border border-stroke-soft bg-surface-subtle px-3 py-1.5 text-[13px]`,children:[(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`grid size-4 flex-none place-items-center`,children:e.status===`waiting`?(0,X.jsx)(et,{size:14,className:`text-content-muted`}):e.status===`answered`?(0,X.jsx)(v,{size:14,className:`text-st-done`}):(0,X.jsx)(it,{size:14,className:`text-content-muted`})}),(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`flex flex-none items-center`,children:(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(xr,{botId:e.botId,part:`mark`,animate:!1})})}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,children:[(0,X.jsx)(`span`,{className:`font-medium text-content`,children:(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(xr,{botId:e.botId,part:`name`})})}),(0,X.jsxs)(`span`,{className:`text-content-muted`,children:[` · `,n,e.direction===`out`&&e.text?` — ${e.text}`:``]})]})]})}function Cr(e){return(e||0)>0&&Number(e)<650?260:164}function wr(e,t){let n=t?.borderBoxSize?.[0];return Math.ceil(n?.blockSize??e.getBoundingClientRect().height)}function Tr(e,t,n){let[r,i]=(0,Y.useState)(0);return(0,Y.useLayoutEffect)(()=>{let r=n.current;if(!e||!r)return;let a=()=>{let t=Math.max(0,r.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop);i(e=>Math.abs(e-t)<1?e:t)},o=null,s=()=>{o===null&&(o=window.requestAnimationFrame(()=>{o=null,a()}))};a();let c=typeof ResizeObserver>`u`?null:new ResizeObserver(s);return c?.observe(e),t.current&&c?.observe(t.current),c?.observe(r),window.addEventListener(`resize`,s),()=>{c?.disconnect(),window.removeEventListener(`resize`,s),o!==null&&window.cancelAnimationFrame(o)}},[n,t,e]),r}var Er=(0,Y.memo)(function({sessionId:e,layoutMeasurementKey:t,messages:n,historical:r=!1,streaming:i,latestRunProps:a,scrollElement:o,prefixRef:s,cwd:c,targetEntryId:l,onContentSizeChange:u,onTargetScroll:d,onTargetLocated:f,onBranchFromHere:p,onCreateChildSession:m,onRetryLastTurn:h,turnsKnown:g=!1,turnBase:_=0}){let v=(0,Y.useContext)(Gt),y=(0,Y.useRef)(null),[b,x]=(0,Y.useState)(``),S=n.map(e=>e.id),C=(0,Y.useRef)(S);(C.current.length!==S.length||C.current.some((e,t)=>e!==S[t]))&&(C.current=S);let w=C.current,T=(0,Y.useMemo)(()=>{let e=Array.from({length:n.length}),t;for(let r=0;r<n.length;r+=1)n[r]?.role===`user`&&(t=n[r].id),e[r]=t;return e},[n]),E=(0,Y.useMemo)(()=>{if(!g)return null;let e=Array.from({length:n.length}),t=_;for(let r=0;r<n.length;r+=1)n[r]?.role===`user`&&(t+=1),e[r]=t;return e},[n,_,g]),D=Tr(o,s,y),O=(0,Y.useCallback)(e=>w[e]??`transcript-message-${e}`,[w]),k=(0,Y.useCallback)(()=>Cr(o?.clientWidth),[o]),A=ze({useFlushSync:!1,anchorTo:`end`,followOnAppend:!1,count:n.length,getScrollElement:()=>o,getItemKey:O,estimateSize:k,measureElement:wr,overscan:6,scrollMargin:D,useAnimationFrameWithResizeObserver:!0}),j=A.getVirtualItems(),M=A.getTotalSize(),N=(0,Y.useCallback)(()=>{let e=y.current;if(!e||!o||e.getBoundingClientRect().width<1)return;let t=o.scrollTop,n=A.getVirtualItems().find(e=>e.end>t),r=n?Math.max(0,t-n.start):0;A.measure(),A.getTotalSize();for(let t of e.children)t instanceof HTMLDivElement&&A.measureElement(t);if(A.getTotalSize(),n){let e=A.getOffsetForIndex(n.index,`start`)?.[0];e!==void 0&&A.scrollToOffset(e+r)}u()},[u,o,A]);(0,Y.useLayoutEffect)(()=>{N()},[t,N]),(0,Y.useLayoutEffect)(()=>{let e=y.current;if(!e||typeof ResizeObserver>`u`)return;let t=e.getBoundingClientRect().width,n=null,r=new ResizeObserver(()=>{let r=e.getBoundingClientRect().width;Math.abs(r-t)<1||(t=r,n!==null&&window.cancelAnimationFrame(n),n=window.requestAnimationFrame(()=>{n=null,N()}))});return r.observe(e),()=>{r.disconnect(),n!==null&&window.cancelAnimationFrame(n)}},[N]),(0,Y.useLayoutEffect)(()=>{u()},[u,M]),(0,Y.useEffect)(()=>{if(!l)return;let e=n.findIndex(e=>e.turnBoundaryEntryId===l);if(e<0)return;d(),A.scrollToIndex(e,{align:`center`}),x(l);let t=window.requestAnimationFrame(()=>{A.scrollToIndex(e,{align:`center`}),f(l)});return()=>window.cancelAnimationFrame(t)},[n,f,d,l,A]),(0,Y.useEffect)(()=>{if(!b)return;let e=window.setTimeout(()=>x(``),2200);return()=>window.clearTimeout(e)},[b]);let P=mt(n);return(0,X.jsx)(`div`,{className:`relative w-full`,"data-pisper-transcript-size":n.length,"data-pisper-rendered-count":j.length,ref:y,style:{height:`${M}px`},children:j.map(t=>{let o=n[t.index];if(!o)return null;if(o.role===`event`){let e=v?.agents.get(String(o.agentId||``)),n=v?.links.get(String(o.linkId||``));return(0,X.jsx)(`div`,{className:`virtual-transcript-item absolute left-0 [display:flow-root] w-full`,"data-index":t.index,"data-pisper-virtual-item":o.id,ref:A.measureElement,style:{top:`${t.start-D}px`},children:e&&v?(0,X.jsx)(br,{sessionId:v.sessionId,agent:e,onChanged:v.reload}):n?(0,X.jsx)(Sr,{link:n}):null},t.key)}let s=!r&&o.role===`agent`&&t.index===P,l=o.streaming||s&&i?`thinking`:s&&!o.error?`waiting`:`idle`,u=yt(o,s,a);return(0,X.jsx)(`div`,{className:`virtual-transcript-item absolute left-0 [display:flow-root] w-full rounded-[var(--r-sm)] ${o.turnBoundaryEntryId===b?`targeted [.virtual-transcript-item&]:bg-[var(--star-soft)] [.virtual-transcript-item&]:shadow-[inset_3px_0_0_var(--star-strong)]`:``}`,"data-index":t.index,"data-pisper-target-entry":o.turnBoundaryEntryId===b?o.turnBoundaryEntryId:void 0,"data-pisper-virtual-item":o.id,ref:A.measureElement,style:{top:`${t.start-D}px`},children:(0,X.jsx)(_r,{sessionId:e,message:o,agentState:l,showRunActivity:!!u,runProps:u,cwd:c,sessionStreaming:i,onBranchFromHere:p,onCreateChildSession:m,retryUserMessageId:s?T[t.index]:void 0,hideErrorNotice:s&&!!o.error,onRetryLastTurn:h,latest:s,turn:E?.[t.index]||void 0})},t.key)})})});function Dr({label:e}){return(0,X.jsxs)(`div`,{className:`session-history-loading grid min-h-[100%] place-content-center justify-items-center gap-[20px] text-content-muted [animation:transcript-stage-enter_.18s_var(--ease-out)_both]`,role:`status`,"aria-live":`polite`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-[10px]`,children:[(0,X.jsx)(Ue,{size:22}),(0,X.jsx)(`strong`,{className:`text-[13px] font-medium text-content-secondary`,children:e}),(0,X.jsx)(le,{className:`size-4`})]}),(0,X.jsxs)(`div`,{className:`grid w-[min(560px,78vw)] gap-[12px]`,"aria-hidden":`true`,children:[(0,X.jsx)(`div`,{className:`h-[40px] w-[46%] justify-self-end rounded-[12px_12px_3px_12px] bg-[var(--user-bubble-bg)]`}),(0,X.jsxs)(`div`,{className:`grid gap-[8px]`,children:[(0,X.jsx)(`div`,{className:`h-[34px] rounded-md border border-stroke-soft bg-surface-subtle`}),(0,X.jsx)(`div`,{className:`h-[10px] w-[82%] rounded-full bg-surface-muted`}),(0,X.jsx)(`div`,{className:`h-[10px] w-[64%] rounded-full bg-surface-muted`})]})]})]})}function Or(e){return e.map(e=>e.id).join(`
|
|
7
|
-
`)}function kr(e){let{pathname:t,search:n,hash:r}=window.location;return r.startsWith(`#/`)?`${t}${n}#${a(e)}`:a(e)}function Ar({sessionId:e,emptyState:t,messages:n,layoutMeasurementKey:r,transcriptLoadState:i=`ready`,messageStart:a,hasOlder:o,hasNewer:c,onLoadLatest:l,loadingOlder:u,olderError:d,currentActivity:f,team:p,activityFeed:m,tools:h,thinkingText:g,compaction:v,streaming:y,runStartedAt:b,lastActivityAt:S,runFinishedAt:C,runStopped:w,runNotice:T,error:E,scrollRequest:D,cwd:O,lineage:k,onLoadOlder:A,onBranchFromHere:j,onCreateChildSession:M,onRetryLastTurn:N,collapseEarlierTurns:P=!1}){let{t:I}=s(),[L,R]=(0,Y.useState)(!1),z=(0,Y.useRef)(null),[B,V]=(0,Y.useState)(!1),H=(0,Y.useRef)(e);H.current=e,(0,Y.useEffect)(()=>{z.current=null,V(!1)},[e]);let ee=(0,Y.useRef)(null),[U,te]=(0,Y.useState)(()=>fe(e)),W=(0,Y.useMemo)(()=>P?rn(n,{turnsKnown:!o}):null,[P,o,n]),ne=!!W&&!L&&!U,re=ne&&W?n.slice(W.latestIndex):n,G=n[mt(n)],ie=Math.floor((G?.text?.length||0)/64),ae=Te(m),oe=Math.floor(String(g||``).length/128),se=`${e}:${n.length}:${G?.id||``}:${ie}:${oe}:${G?.attachments?.length||0}:${ae}:${v?.status||``}:${v?.finishedAt||``}:${E||``}:${y?`1`:`0`}`,ce=(0,Y.useRef)(!1),he=(0,Y.useRef)(jt.getState().sessions[e]?.conversationScrollTop??null),{scrollRef:ge,scrollElement:_e,setScrollRef:ve,hasUnread:ye,scrollToBottom:be,maintainBottom:Se,pauseFollowing:Ce}=en(se,{resetKey:`${e}:${i}`,readInitialPosition:()=>i===`ready`?he.current:null});(0,Y.useEffect)(()=>{let t=null,n=()=>{let t=_e;if(!t||i!==`ready`||t.clientHeight<=0)return;let n=jt.getState();n.sessions[e]?.conversationScrollTop!==t.scrollTop&&n.update(e,`files`,{type:`workspace`,conversationScrollTop:t.scrollTop})},r=()=>{n(),ce.current=!0,t!==null&&cancelAnimationFrame(t),t=requestAnimationFrame(()=>{ce.current=!1,t=null})};return window.addEventListener(ue,r),window.addEventListener(`pointerdown`,n,!0),()=>{window.removeEventListener(ue,r),t!==null&&cancelAnimationFrame(t),window.removeEventListener(`pointerdown`,n,!0)}},[e,_e,i]),(0,Y.useLayoutEffect)(()=>{let t=_e;if(!(!t||i!==`ready`))return()=>{if(t.clientHeight<=0)return;let n=jt.getState();n.sessions[e]?.conversationScrollTop!==t.scrollTop&&n.update(e,`files`,{type:`workspace`,conversationScrollTop:t.scrollTop})}},[e,_e,i]);let we=(0,Y.useMemo)(()=>({streaming:y,text:G?.role===`agent`?G.text:``,currentActivity:f,team:p,activityFeed:m,tools:h,thinkingText:g,compaction:v,error:E||(G?.role===`agent`?G.error:``),stopped:w,notice:T,startedAt:b,lastActivityAt:S,finishedAt:C}),[y,G,f,p,m,h,g,v,E,w,T,b,S,C]),J=(0,Y.useCallback)(async()=>{if(!ge.current||!o||u||z.current)return;Ce();let t={};z.current=t;let n=e,r=await A?.();H.current===n&&!r&&z.current===t&&(z.current=null)},[o,u,A,Ce,e,ge]),Ee=(0,Y.useCallback)(t=>{!ce.current&&i===`ready`&&t.currentTarget.clientHeight>0&&jt.getState().update(e,`files`,{type:`workspace`,conversationScrollTop:t.currentTarget.scrollTop}),!ne&&t.currentTarget.scrollTop<=96&&J()},[ne,J,e,i]);(0,Y.useLayoutEffect)(()=>{z.current=null},[a]);let De=(0,Y.useRef)(n);(0,Y.useEffect)(()=>{De.current=n});let Oe=(0,Y.useRef)(null),[ke,Ae]=(0,Y.useState)(0);return(0,Y.useEffect)(()=>{te(fe(e));let t=0,n=n=>{let r=n.detail;r?.sessionId===e&&r.targetEntryId&&(Oe.current=Or(De.current),window.clearTimeout(t),t=window.setTimeout(()=>{Oe.current=null,Ae(e=>e+1)},4e3),te(r.targetEntryId))};return window.addEventListener(pe,n),()=>{window.clearTimeout(t),Oe.current=null,window.removeEventListener(pe,n)}},[e]),(0,Y.useEffect)(()=>{if(!(!U||a==null)&&!n.some(e=>e.turnBoundaryEntryId===U)){if(Oe.current!==null){if(Oe.current===Or(n))return;Oe.current=null}if(!u){if(o){J();return}de(e,U),te(``)}}},[o,J,u,a,n,e,U,ke]),(0,Y.useEffect)(()=>{D&&be(`smooth`)},[D,be]),(0,X.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`transcript flex flex-col [.focus-session.has-conversation_&]:p-[var(--chat-transcript-block-padding,30px)_max(24px,calc((100%_-_var(--chat-content-width,1040px))/2))] [.focus-session.has-conversation_&]:[scroll-padding-bottom:32px] @max-[700px]:p-[20px_14px] @max-[700px]:[.focus-session.has-conversation_&]:p-[24px_16px] @max-[470px]:[padding-inline:10px] max-[650px]:p-[20px_14px] min-h-0 h-full flex-1 overflow-auto overscroll-contain scroll-auto [overflow-anchor:none] [scrollbar-gutter:stable_both-edges] m-0 border-0 [padding:26px_max(24px,calc((100%_-_var(--chat-content-width,1040px))/2))] [padding-bottom:70px] [scroll-padding-bottom:70px]`,"data-pisper-transcript-state":i,"aria-busy":i===`loading`,ref:ve,onScroll:Ee,tabIndex:0,children:[(0,X.jsxs)(`div`,{className:`[display:flow-root] w-full ${i===`ready`&&n.length>0?`mt-auto`:``}`,ref:ee,children:[typeof k?.parentSessionId==`string`&&k.parentSessionId&&(0,X.jsx)(`div`,{className:`history-page-loader flex w-[min(var(--chat-content-width,1040px),100%)] min-h-[42px] items-center justify-center [margin:0_auto_18px] text-[var(--text-muted)] text-[12px] session-lineage`,children:(0,X.jsxs)(`a`,{href:kr(k.parentSessionId),className:`inline-flex min-h-8 max-w-full items-center gap-[7px] rounded-md px-2 text-inherit underline-offset-2 transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-content hover:underline focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-focus max-[650px]:min-h-11`,"data-pisper-parent-session":k.parentSessionId,title:I(`chat:focusSession.openSourceTurn`),onClick:e=>{e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),me(String(k.parentSessionId),`open`,typeof k.sourceEntryId==`string`?k.sourceEntryId:``))},children:[(0,X.jsx)($e,{size:13,"aria-hidden":`true`,className:`flex-none`}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:I(`chat:focusSession.derivedFromSession`,{name:k.sourceSessionName||I(`chat:focusSession.unknownSourceSession`)})})]})}),ne&&W&&(0,X.jsx)(`div`,{className:`flex justify-center pb-3`,children:(0,X.jsxs)(`button`,{type:`button`,"data-earlier-turns":W.turnBase,"aria-expanded":!1,"aria-label":I(`board:phone.earlierTurns`,{summary:[W.previous.turn?I(`board:transcript.turn`,{count:W.previous.turn}):I(`board:phone.previousTurn`),W.previous.text].filter(Boolean).join(` · `)}),className:`inline-flex min-h-11 max-w-full min-w-0 items-center gap-1.5 rounded-full px-3 text-xs text-content-muted ring-1 ring-stroke ring-inset transition-colors duration-(--d-fast) hover:bg-surface-hover focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-focus`,onClick:()=>R(!0),children:[(0,X.jsx)(xe,{status:W.previous.failed?`failed`:`done`,className:K(`size-3.5 flex-none`,W.previous.failed?`text-st-fail`:`text-st-done`)}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:[W.previous.turn?I(`board:transcript.turn`,{count:W.previous.turn}):I(`board:phone.previousTurn`),W.previous.text,W.previous.operations?I(`board:transcript.operations`,{count:W.previous.operations}):``].filter(Boolean).join(` · `)}),(0,X.jsx)(x,{className:`size-3.5 flex-none`,"aria-hidden":`true`})]})}),!ne&&(o||u||d)&&(0,X.jsx)(`div`,{className:`history-page-loader flex w-[min(var(--chat-content-width,1040px),100%)] min-h-[42px] items-center justify-center gap-[7px] [margin:0_auto_18px] text-[var(--text-muted)] text-[12px]`,children:d?(0,X.jsxs)(q,{type:`button`,variant:`secondary`,size:`sm`,className:`max-[650px]:h-11`,onClick:J,children:[(0,X.jsx)(F,{size:13}),I(`chat:focusSession.retryOlderMessages`)]}):u?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(le,{className:`size-3.5`}),I(`chat:focusSession.loadingOlderMessages`)]}):(0,X.jsxs)(q,{type:`button`,variant:`secondary`,size:`sm`,className:`max-[650px]:h-11`,onClick:J,children:[(0,X.jsx)(_,{className:`history-up-arrow [.history-page-loader_&]:[transform:rotate(180deg)]`,size:14}),I(`chat:focusSession.loadOlderMessages`)]})})]}),i===`loading`&&(0,X.jsx)(Dr,{label:I(`chat:focusSession.loadingConversationHistory`)}),i===`ready`&&!n.length&&(t??(0,X.jsx)(je,{compact:!0,className:`min-h-full`,title:I(`chat:focusSession.emptyTitle`),description:I(`chat:focusSession.emptyDescription`)})),i===`ready`&&n.length>0&&(0,X.jsx)(`div`,{className:`[animation:transcript-reveal-enter_.22s_var(--ease-out)_both]`,children:(0,X.jsx)(Er,{layoutMeasurementKey:r,sessionId:e,messages:re,historical:c,streaming:y,latestRunProps:we,scrollElement:_e,prefixRef:ee,cwd:O,targetEntryId:U,onContentSizeChange:Se,onTargetScroll:Ce,onTargetLocated:t=>{de(e,t),te(``)},onBranchFromHere:j,onCreateChildSession:M,onRetryLastTurn:N,turnsKnown:!o,turnBase:ne&&W?W.turnBase:0},e)})]}),i===`ready`&&n.length>0&&(0,X.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-x-0 top-0 z-[2] h-6 bg-linear-to-b from-panel to-transparent max-[650px]:h-10`}),(ye||c)&&(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 bottom-[6px] z-[5] flex justify-center`,children:(0,X.jsxs)(q,{type:`button`,variant:`secondary`,size:`sm`,className:`pointer-events-auto rounded-full px-3 shadow-float max-[650px]:h-11`,disabled:B,"aria-busy":B||void 0,onClick:async()=>{if(!c){be(`smooth`);return}let t=e;if(c){V(!0);try{await l?.()}finally{H.current===t&&V(!1)}}H.current===t&&requestAnimationFrame(()=>be(`auto`))},children:[(0,X.jsx)(_,{size:14}),I(c?`chat:focusSession.returnToLatest`:`chat:focusSession.newContent`)]})})]})}(0,Y.lazy)(()=>t(()=>import(`./ClickSpark-B1Rn7ZwL.js`).then(e=>({default:e.ClickSpark})),__vite__mapDeps([32,1,2,3,4,6])));var jr=(0,Y.createContext)(null),Mr=({className:e,approval:t,state:n,...r})=>{let i=(0,Y.useMemo)(()=>({approval:t,state:n}),[t,n]);return!t||n===`input-streaming`||n===`input-available`?null:(0,X.jsx)(jr.Provider,{value:i,children:(0,X.jsx)(Me,{className:K(`flex flex-col gap-2`,e),...r})})},Nr=(0,Y.lazy)(async()=>{let[{ApprovalConfirm:e}]=await Promise.all([t(()=>import(`./approval-confirm-Dc3BZGo4.js`),__vite__mapDeps([33,1,2,9,10,8,11,12,13,14,34,16,3,4,17,18,35,36,37,38,39,40,41,42,43,44])),o()]);return{default:e}});function $(e){return typeof e==`string`?e:``}function Pr(e){let t=e.args&&typeof e.args==`object`&&!Array.isArray(e.args)?e.args:{};return{id:$(e.id),toolName:$(e.toolName),toolCallId:$(e.toolCallId),args:t,command:$(t.command),path:$(t.path),reason:$(e.reason),risk:$(e.risk),severity:`critical`,createdAt:$(e.createdAt)||null}}function Fr(e){return e.trimStart().startsWith(`命令守卫拦截`)&&e.trimStart().slice(6).replace(/^[\s::·-]+/u,``).split(/[\n。;;]/u)[0]?.trim()||``}function Ir({text:e,prefix:t}){let{t:n}=s(),r=(0,Y.useRef)(null),[i,a]=(0,Y.useState)(!1),[o,c]=(0,Y.useState)(!1);return(0,Y.useLayoutEffect)(()=>{let e=r.current;if(!e||o)return;let t=()=>a(e.scrollHeight>e.clientHeight+1);if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[o,e]),(0,X.jsxs)(`div`,{className:`min-w-0 rounded-sm border border-well-stroke bg-well`,"data-approval-command":!0,children:[(0,X.jsx)(`div`,{className:`px-2.5 py-1.5`,children:(0,X.jsxs)(`pre`,{ref:r,className:K(`min-w-0 font-mono text-xs leading-5 whitespace-pre-wrap wrap-anywhere text-well-text`,!o&&`line-clamp-3`),children:[t&&(0,X.jsxs)(`span`,{className:`text-well-muted select-none`,children:[t,` `]}),e]})}),(i||o)&&(0,X.jsx)(`button`,{type:`button`,className:`w-full border-t border-well-stroke px-2.5 py-1 text-left text-xs text-content-secondary hover:text-content focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus max-[650px]:min-h-11 pointer-coarse:min-h-11`,"aria-expanded":o,onClick:()=>c(e=>!e),children:n(o?`board:card.collapse`:`board:card.expand`)})]})}function Lr({approvals:e,onResolve:t,compact:n=!1,sessionTitle:r=``,cwd:i=``}){let{t:a}=s(),o=d(),[c,l]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(!1),[m,_]=(0,Y.useState)(!1),[y]=(0,Y.useState)(()=>Be()),b=(0,Y.useRef)(!1),[S,C]=(0,Y.useState)(``),w=(0,Y.useRef)(null),T=ge(e=>e.boardBindings),E=e[0];(0,Y.useEffect)(()=>{p(!1),_(!1),C(``)},[E?.id]);let D=E?.id;if((0,Y.useEffect)(()=>{if(!D)return;let e=e=>{if(he(e)||ve(e.target)||e.target instanceof Element&&e.target.closest(`[data-shell-sidebar]`))return;let t=w.current;if(!t||t.getClientRects().length===0)return;let n=_e(e,T.boardApprove)?`[data-approval-primary]`:_e(e,T.boardDeny)?`[data-approval-deny]`:``,r=n?t.querySelector(n):null;!r||r.disabled||(e.preventDefault(),r.focus())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[D,T.boardApprove,T.boardDeny]),!E)return null;let A=u(E)===`critical`,j=E.fileChange,M=typeof j?.diff==`string`?j.diff:``,N=E.args&&typeof E.args==`object`&&!Array.isArray(E.args)?E.args:{},P=$(N.command)||$(N.path),I=A?Fr($(E.reason)):``,L=I?``:$(E.reason),B=A&&!y,V=async e=>{if(!b.current){b.current=!0,l(!0);try{await t(E.id,e)}finally{b.current=!1,l(!1)}}},H=!A&&E.toolName===`bash`&&i?h($(N.command)):``,ee=async()=>{if(!(b.current||!H)){b.current=!0,l(!0),C(``);try{await g.add({effect:`allow`,tool:`bash`,pattern:H,cwd:i}),await t(E.id,!0)}catch(e){C(e instanceof Error?e.message:String(e))}finally{b.current=!1,l(!1)}}};return(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,ref:w,"data-approval-stack":!0,children:[(0,X.jsxs)(Mr,{approval:{id:E.id},state:`approval-requested`,className:`tool-approval grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-3 gap-y-2.5 rounded-(--r-lg) border border-st-attn-border bg-st-attn-soft px-3.5 py-3 text-foreground [&.compact]:px-2.5 [&.compact]:py-1.5 max-[470px]:grid-cols-1 ${n?`compact`:``}`,"data-pisper-approval-id":E.id,"data-approval-current":!0,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2.5 [grid-column:1/-1]`,children:[(0,X.jsx)(`span`,{className:`grid size-[18px] flex-none place-items-center text-st-attn`,children:A?(0,X.jsx)(R,{size:16,strokeWidth:1.75}):(0,X.jsx)(z,{size:16,strokeWidth:1.75})}),(0,X.jsx)(`strong`,{className:`min-w-0 flex-1 truncate text-[13.5px] font-medium`,children:a(`chat:focusSession.toolRequestsApproval`,{tool:E.toolName})}),(0,X.jsx)(`span`,{className:K(`min-w-0 flex-none truncate text-xs`,A?`font-medium text-st-attn`:`text-content-muted`),"data-severity":A?`critical`:`standard`,children:A?I?a(`board:card.criticalWithReason`,{reason:I}):a(`board:card.critical`):a(`board:card.standard`)})]}),P&&(0,X.jsx)(`div`,{className:`min-w-0 [grid-column:1/-1]`,children:(0,X.jsx)(Ir,{text:P,prefix:N.command?`$`:``})}),L&&(0,X.jsx)(`p`,{className:`min-w-0 text-xs text-content-secondary [grid-column:1/-1] [overflow-wrap:anywhere]`,children:L}),!n&&(M||Object.keys(N).length>0)&&(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-start gap-x-3 gap-y-1.5 [grid-column:1/-1]`,children:[M&&(0,X.jsxs)(`button`,{type:`button`,className:`tool-approval-view-diff inline-flex min-h-7 flex-none cursor-pointer items-center gap-1.5 rounded-sm border border-stroke-strong bg-solid px-2 text-xs font-medium text-content-secondary transition-colors duration-(--d-fast) hover:bg-surface-hover hover:text-foreground max-[650px]:min-h-11`,onClick:()=>p(!0),children:[(0,X.jsx)(O,{size:13}),a(`chat:focusSession.gitViewDiff`)]}),(0,X.jsxs)(`details`,{className:`group/args min-w-0 flex-1 text-xs text-content-muted`,children:[(0,X.jsxs)(`summary`,{className:`inline-flex min-h-7 cursor-pointer list-none items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-2 focus-visible:outline-focus max-[650px]:min-h-11 [&::-webkit-details-marker]:hidden`,children:[(0,X.jsx)(x,{size:13,className:`transition-transform duration-(--d-fast) group-open/args:rotate-90`}),a(`chat:focusSession.viewCallArguments`)]}),(0,X.jsx)(`pre`,{className:`mt-1.5 max-h-[130px] overflow-auto rounded-sm border border-well-stroke bg-well p-[8px_10px] font-mono text-xs leading-[1.6] whitespace-pre-wrap text-well-text`,children:JSON.stringify(E.args,null,2)})]})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2 [grid-column:1/-1]`,children:[(0,X.jsx)(q,{type:`button`,variant:`outline`,size:`sm`,className:`bg-solid max-[650px]:h-11 max-[650px]:px-4`,disabled:c,"data-approval-deny":!0,onClick:()=>V(!1),children:a(`chat:focusSession.deny`)}),(0,X.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2.5`,children:[B&&(0,X.jsx)(`span`,{className:`min-w-0 truncate text-xs text-content-muted max-[470px]:hidden`,children:a(o?`board:confirm.hintTouch`:`board:card.holdHint`)}),H&&(0,X.jsx)(q,{type:`button`,variant:`outline`,size:`sm`,className:`min-w-0 bg-solid max-[650px]:h-11 max-[650px]:px-4`,disabled:c,"data-approval-allow-rule":!0,title:a(`chat:focusSession.allowAlwaysHint`,{prefix:H}),onClick:()=>void ee(),children:(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:a(`chat:focusSession.allowAlways`,{prefix:H})})}),B?(0,X.jsxs)(Ve,{size:`sm`,className:`max-[650px]:h-11 max-[650px]:px-4`,disabled:c,"data-approval-critical":!0,"data-approval-primary":!0,"data-approval-hold":!0,"aria-label":a(`board:card.holdToApprove`),onConfirm:()=>void V(!0),onActivate:()=>_(!0),children:[c?(0,X.jsx)(F,{className:`animate-spin`,size:12}):(0,X.jsx)(v,{size:12}),a(`board:card.holdToApprove`)]}):(0,X.jsxs)(q,{type:`button`,size:`sm`,variant:A?`outline`:`default`,className:K(`max-[650px]:h-11 max-[650px]:px-4`,A&&`bg-solid`),disabled:c,"data-approval-critical":A||void 0,"data-approval-primary":!0,"aria-haspopup":A?`dialog`:void 0,onClick:()=>A?_(!0):V(!0),children:[c?(0,X.jsx)(F,{className:`animate-spin`,size:12}):(0,X.jsx)(v,{size:12}),a(A?`board:card.approveCritical`:`chat:focusSession.allow`)]})]})]}),S&&(0,X.jsx)(`p`,{role:`alert`,className:`min-w-0 text-xs text-danger [grid-column:1/-1]`,children:S}),A&&m&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(Nr,{target:{sessionId:``,title:r||$(E.toolName),cwd:i,approval:Pr(E)},phone:o,pending:c,error:``,onConfirm:()=>{V(!0).then(()=>_(!1),()=>void 0)},onOpenChange:e=>{e||_(!1)}})}),f&&(0,X.jsx)(k,{diff:M,truncated:!!j?.truncated,onClose:()=>p(!1)})]}),e.length>1&&(0,X.jsxs)(`p`,{className:`flex min-h-8 min-w-0 items-center gap-2 rounded-(--r-md) border border-st-attn-border px-3 text-xs text-st-attn`,"data-approval-more":e.length-1,children:[(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`size-2 flex-none rounded-full bg-st-attn-fill`}),a(`board:card.moreWaiting`,{count:e.length-1})]})]})}function Rr(e,t){return e?.streaming?!0:!e?.loaded&&!!t?.streaming}var zr={session:null,expiresAt:null,created:!1,loading:!1,error:``,draft:``,expired:!1},Br=(0,Y.createContext)(null);function Vr(e){let t=(0,Y.useContext)(Br);if(!t)throw Error(`Side chat requires its runtime provider`);return{...t,entry:t.entries[e]??zr}}export{xt as A,Qe as B,Tt as C,gt as D,lt as E,ot as F,at as I,rt as L,ft as M,bt as N,ht as O,_t as P,nt as R,Et as S,st as T,Mt as _,Lr as a,At as b,_n as c,Qt as d,Lt as f,Nt as g,It as h,Rr as i,mt as j,pt as k,Gt as l,Pt as m,Br as n,Ar as o,Ft as p,Vr as r,bn as s,zr as t,Jt as u,jt as v,wt as w,Ct as x,kt as y,$e as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,r as n}from"./vendor-react-DwNgTV1j.js";import{n as r,t as i}from"./dist-V8chnW6-.js";import{a}from"./dist-41X0pdUs.js";import{c as o,i as s,o as c,s as l}from"./dist-BsRXXcSL.js";import{n as u,t as d}from"./dist-DzGQ7sLi.js";import{t as f}from"./dist-OB2r6Xsr.js";import{t as p}from"./utils-C8uzG5AZ.js";var m=e(t(),1),h=n(),g=Object.defineProperty,_=(e,t)=>g(e,`name`,{value:t,configurable:!0}),v=[`PageUp`,`PageDown`],y=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],b={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},x=`Slider`,[S,C,w]=u(x),[T,E]=l(x,[w]),[D,O]=T(x),k=m.forwardRef(_(function(e,t){let{name:n,min:r=0,max:o=100,step:l=1,orientation:u=`horizontal`,disabled:d=!1,minStepsBetweenThumbs:f=0,defaultValue:p=[r],value:g,onValueChange:b=_(()=>{},`onValueChange`),onValueCommit:x=_(()=>{},`onValueCommit`),inverted:C=!1,form:w,...T}=e,E=m.useRef(new Set),O=m.useRef(0),k=m.useRef(!1),A=u===`horizontal`?ee:te,[j,M]=m.useState(null),N=a(t,M),[P=[],F]=s({prop:g,defaultProp:p,onChange:_(e=>{[...E.current][O.current]?.focus({preventScroll:!0,focusVisible:k.current}),k.current=!1,b(e)},`onChange`)}),I=m.useRef(P),L=m.useRef(P);m.useEffect(()=>{let e=w?j?.ownerDocument.getElementById(w):j?.closest(`form`);if(e instanceof HTMLFormElement){let t=_(()=>F(L.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[j,w,F]);function R(e){V(e,G(P,e))}_(R,`handleSlideStart`);function z(e){V(e,O.current)}_(z,`handleSlideMove`);function B(){String(P)!==String(I.current)&&x(P)}_(B,`handleSlideEnd`);function V(e,t,{commit:n}={commit:!1}){let a=X(l),s=Z(Math.round((e-r)/l)*l+r,a),c=i(s,[r,o]);F((e=[])=>{let r=H(e,c,t);if(J(r,f*l)){O.current=r.indexOf(c);let t=String(r)!==String(e);return t&&n&&x(r),t?r:e}return e})}return _(V,`updateValues`),(0,h.jsx)(D,{scope:e.__scopeSlider,name:n,disabled:d,min:r,max:o,valueIndexToChangeRef:O,thumbs:E.current,values:P,orientation:u,form:w,children:(0,h.jsx)(S.Provider,{scope:e.__scopeSlider,children:(0,h.jsx)(S.Slot,{scope:e.__scopeSlider,children:(0,h.jsx)(A,{"aria-disabled":d,"data-disabled":d?``:void 0,...T,ref:N,onPointerDown:c(T.onPointerDown,()=>{d||(I.current=P,k.current=!1)}),min:r,max:o,inverted:C,onSlideStart:d?void 0:R,onSlideMove:d?void 0:z,onSlideEnd:d?void 0:B,onHomeKeyDown:()=>{d||(k.current=!0,V(r,0,{commit:!0}))},onEndKeyDown:()=>{d||(k.current=!0,V(o,P.length-1,{commit:!0}))},onStepKeyDown:({event:e,direction:t})=>{if(!d){k.current=!0;let n=v.includes(e.key)||e.shiftKey&&y.includes(e.key)?10:1,i=O.current,a=P[i];V(Q(a,{min:r,step:l,direction:t,multiplier:n}),i,{commit:!0})}}})})})})},`Slider`)),[A,j]=T(x,{startEdge:`left`,endEdge:`right`,size:`width`,direction:1}),ee=m.forwardRef(_(function(e,t){let{min:n,max:r,dir:i,inverted:o,onSlideStart:s,onSlideMove:c,onSlideEnd:l,onStepKeyDown:u,...f}=e,[p,g]=m.useState(null),v=a(t,g),y=m.useRef(void 0),x=d(i),S=x===`ltr`,C=S&&!o||!S&&o;function w(e){let t=y.current||p.getBoundingClientRect(),i=Y([0,t.width],C?[n,r]:[r,n]);return y.current=t,i(e-t.left)}return _(w,`getValueFromPointer`),(0,h.jsx)(A,{scope:e.__scopeSlider,startEdge:C?`left`:`right`,endEdge:C?`right`:`left`,direction:C?1:-1,size:`width`,children:(0,h.jsx)(M,{dir:x,"data-orientation":`horizontal`,...f,ref:v,style:{...f.style,"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:e=>{let t=w(e.clientX);s?.(t)},onSlideMove:e=>{let t=w(e.clientX);c?.(t)},onSlideEnd:()=>{y.current=void 0,l?.()},onStepKeyDown:e=>{let t=b[C?`from-left`:`from-right`].includes(e.key);u?.({event:e,direction:t?-1:1})}})})},`SliderHorizontal`)),te=m.forwardRef(_(function(e,t){let{min:n,max:r,inverted:i,onSlideStart:o,onSlideMove:s,onSlideEnd:c,onStepKeyDown:l,...u}=e,d=m.useRef(null),f=a(t,d),p=m.useRef(void 0),g=!i;function v(e){let t=p.current||d.current.getBoundingClientRect(),i=Y([0,t.height],g?[r,n]:[n,r]);return p.current=t,i(e-t.top)}return _(v,`getValueFromPointer`),(0,h.jsx)(A,{scope:e.__scopeSlider,startEdge:g?`bottom`:`top`,endEdge:g?`top`:`bottom`,size:`height`,direction:g?1:-1,children:(0,h.jsx)(M,{"data-orientation":`vertical`,...u,ref:f,style:{...u.style,"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:e=>{let t=v(e.clientY);o?.(t)},onSlideMove:e=>{let t=v(e.clientY);s?.(t)},onSlideEnd:()=>{p.current=void 0,c?.()},onStepKeyDown:e=>{let t=b[g?`from-bottom`:`from-top`].includes(e.key);l?.({event:e,direction:t?-1:1})}})})},`SliderVertical`)),M=m.forwardRef(_(function(e,t){let{__scopeSlider:n,onSlideStart:r,onSlideMove:i,onSlideEnd:a,onHomeKeyDown:s,onEndKeyDown:l,onStepKeyDown:u,...d}=e,f=O(x,n);return(0,h.jsx)(o.span,{...d,ref:t,onKeyDown:c(e.onKeyDown,e=>{e.key===`Home`?(s(e),e.preventDefault()):e.key===`End`?(l(e),e.preventDefault()):v.concat(y).includes(e.key)&&(u(e),e.preventDefault())}),onPointerDown:c(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),f.thumbs.has(t)?t.focus({preventScroll:!0,focusVisible:!1}):r(e)}),onPointerMove:c(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&i(e)}),onPointerUp:c(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),a(e))})})},`SliderImpl`)),N=`SliderTrack`,P=m.forwardRef(_(function(e,t){let{__scopeSlider:n,...r}=e,i=O(N,n);return(0,h.jsx)(o.span,{"data-disabled":i.disabled?``:void 0,"data-orientation":i.orientation,...r,ref:t})},`SliderTrack`)),F=`SliderRange`,I=m.forwardRef(_(function(e,t){let{__scopeSlider:n,...r}=e,i=O(F,n),s=j(F,n),c=m.useRef(null),l=a(t,c),u=i.values.length,d=i.values.map(e=>U(e,i.min,i.max)),f=u>1?Math.min(...d):0,p=100-Math.max(...d);return(0,h.jsx)(o.span,{"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,...r,ref:l,style:{...e.style,[s.startEdge]:f+`%`,[s.endEdge]:p+`%`}})},`SliderRange`)),[L,R]=T(`SliderThumb`),z=`SliderThumbProvider`;function B(e){let{__scopeSlider:t,name:n,children:r,internal_do_not_use_render:i}=e,a=O(z,t),o=C(t),[s,c]=m.useState(null),l=m.useMemo(()=>s?o().findIndex(e=>e.ref.current===s):-1,[o,s]),u=f(s),d=!s||!!a.form||!!s.closest(`form`),p=a.values[l],g=n??(a.name?a.name+(a.values.length>1?`[]`:``):void 0),_=p===void 0?0:U(p,a.min,a.max);m.useEffect(()=>{if(s)return a.thumbs.add(s),()=>{a.thumbs.delete(s)}},[s,a.thumbs]);let v={value:p,name:g,form:a.form,isFormControl:d,index:l,thumb:s,onThumbChange:c,percent:_,size:u};return(0,h.jsx)(L,{scope:t,...v,children:$(i)?i(v):r})}_(B,`SliderThumbProvider`);var V=`SliderThumbTrigger`,ne=m.forwardRef(_(function(e,t){let{__scopeSlider:n,...r}=e,i=O(V,n),s=j(V,n),{index:l,value:u,percent:d,size:f,onThumbChange:p}=R(V,n),m=a(t,p),g=W(l,i.values.length),_=f?.[s.size],v=_?K(_,d,s.direction):0;return(0,h.jsx)(`span`,{style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[s.startEdge]:`calc(${d}% + ${v}px)`},children:(0,h.jsx)(S.ItemSlot,{scope:n,children:(0,h.jsx)(o.span,{role:`slider`,"aria-label":e[`aria-label`]||g,"aria-valuemin":i.min,"aria-valuenow":u,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,tabIndex:i.disabled?void 0:0,...r,ref:m,style:u===void 0?{display:`none`}:e.style,onFocus:c(e.onFocus,()=>{i.valueIndexToChangeRef.current=l})})})})},`SliderThumbTrigger`)),re=m.forwardRef(_(function(e,t){let{__scopeSlider:n,name:r,...i}=e;return(0,h.jsx)(B,{__scopeSlider:n,name:r,internal_do_not_use_render:({index:e,isFormControl:r})=>(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(ne,{...i,ref:t,__scopeSlider:n}),r?(0,h.jsx)(ae,{__scopeSlider:n},e):null]})})},`SliderThumb`)),ie=`SliderBubbleInput`,ae=m.forwardRef(_(function({__scopeSlider:e,...t},n){let{value:i,name:s,form:c}=R(ie,e),l=m.useRef(null),u=a(l,n),d=r(i);return m.useEffect(()=>{let e=l.current;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set;if(d!==i&&n){let t=new Event(`input`,{bubbles:!0});n.call(e,i),e.dispatchEvent(t)}},[d,i]),(0,h.jsx)(o.input,{style:{display:`none`},name:s,form:c,...t,ref:u,defaultValue:i})},`SliderBubbleInput`));function H(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}_(H,`getNextSortedValues`);function U(e,t,n){let r=100/(n-t)*(e-t);return i(r,[0,100])}_(U,`convertValueToPercentage`);function W(e,t){if(t>2)return`Value ${e+1} of ${t}`;if(t===2)return[`Minimum`,`Maximum`][e]}_(W,`getLabel`);function G(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}_(G,`getClosestValueIndex`);function K(e,t,n){let r=e/2;return(r-Y([0,50],[0,r])(t)*n)*n}_(K,`getThumbInBoundsOffset`);function q(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}_(q,`getStepsBetweenValues`);function J(e,t){if(t>0){let n=q(e);return Math.min(...n)>=t}return!0}_(J,`hasMinStepsBetweenValues`);function Y(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}_(Y,`linearScale`);function X(e){if(!Number.isFinite(e))return 0;let t=e.toString();if(t.includes(`e`)){let[e,n]=t.split(`e`),r=e.split(`.`)[1]||``,i=Number(n);return Math.max(0,r.length-i)}let n=t.split(`.`)[1];return n?n.length:0}_(X,`getDecimalCount`);function Z(e,t){let n=10**t;return Math.round(e*n)/n}_(Z,`roundValue`);function Q(e,{min:t,step:n,direction:r,multiplier:i}){let a=X(n),o=(e-t)/n,s=Math.round(o),c=Z(s*n+t,a)===Z(e,a),l;return l=c?s+i*r:r>0?Math.ceil(o):Math.floor(o),Z(l*n+t,a)}_(Q,`getNextStepValue`);function $(e){return typeof e==`function`}_($,`isFunction`);function oe({className:e,defaultValue:t,value:n,min:r=0,max:i=100,step:a=1,showSteps:o=!1,valueText:s,"aria-label":c,...l}){let u=m.useMemo(()=>Array.isArray(n)?n:Array.isArray(t)?t:[r,i],[n,t,r,i]);return(0,h.jsxs)(k,{"data-slot":`slider`,defaultValue:t,value:n,min:r,max:i,step:a,className:p(`relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-vertical:h-full data-vertical:min-h-40 data-vertical:w-auto data-vertical:flex-col`,e),...l,children:[(0,h.jsxs)(P,{"data-slot":`slider-track`,className:`relative grow overflow-hidden rounded-full bg-surface-active data-horizontal:h-1 data-horizontal:w-full data-vertical:h-full data-vertical:w-1`,children:[(0,h.jsx)(I,{"data-slot":`slider-range`,className:`absolute bg-star select-none data-horizontal:h-full data-vertical:w-full`}),o&&i>r&&Array.from({length:Math.max(0,Math.round((i-r)/a)-1)},(e,t)=>(0,h.jsx)(`span`,{"data-slot":`slider-step`,"aria-hidden":`true`,className:`absolute top-0 h-full w-0.5 -translate-x-1/2 bg-popover`,style:{left:`${(t+1)*a/(i-r)*100}%`}},t))]}),Array.from({length:u.length},(e,t)=>(0,h.jsx)(re,{"data-slot":`slider-thumb`,"aria-label":c,"aria-valuetext":s,className:`relative block size-3.5 shrink-0 rounded-full border border-control bg-key shadow-key ring-focus-ring transition-shadow select-none after:absolute after:-inset-2 hover:ring-3 focus-visible:border-focus focus-visible:ring-3 focus-visible:outline-hidden active:ring-3 disabled:pointer-events-none disabled:opacity-50`},t))]})}export{oe as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e,t){return e?.id===`image_assets`?t(`plugins:toolLabels.imageAssets`):e?.id===`read`?t(`plugins:toolLabels.read`):e?.id===`ls`?t(`plugins:toolLabels.list`):e?.id===`grep`?t(`plugins:toolLabels.grep`):e?.id===`find`?t(`plugins:toolLabels.find`):e?.id===`edit`?t(`plugins:toolLabels.edit`):e?.id===`write`?t(`plugins:toolLabels.write`):e?.id===`bash`?t(`plugins:toolLabels.shell`):e?.id===`web_search`?t(`plugins:toolLabels.webSearch`):e?.id===`browser_automation`?t(`plugins:toolLabels.browserControl`):e?.id===`generate_visual`?t(`plugins:toolLabels.visualGeneration`):e?.id===`skill_create`?t(`plugins:toolLabels.skillCreate`):e?.id===`plugin_create`?t(`plugins:toolLabels.pluginCreate`):e?.id===`memory_search`?t(`plugins:toolLabels.memorySearch`):e?.id===`memory_remember`?t(`plugins:toolLabels.memoryRemember`):e?.id===`mcp_list`?t(`plugins:toolLabels.mcpList`):e?.id===`mcp_manage`?t(`plugins:toolLabels.mcpManage`):e?.id===`schedule_list`?t(`plugins:toolLabels.scheduleList`):e?.id===`schedule_manage`?t(`plugins:toolLabels.scheduleManage`):e?.id===`workflow_list`?t(`plugins:toolLabels.workflowList`):e?.id===`workflow_run`?t(`plugins:toolLabels.workflowRun`):e?.id===`codemode`?t(`plugins:toolLabels.codemode`):String(e?.name||e?.id||``)}function t(e,t){return e?.id===`image_assets`?t(`plugins:toolLabels.imageAssetsDescription`):e?.id===`read`?t(`plugins:toolLabels.readDescription`):e?.id===`ls`?t(`plugins:toolLabels.listDescription`):e?.id===`grep`?t(`plugins:toolLabels.grepDescription`):e?.id===`find`?t(`plugins:toolLabels.findDescription`):e?.id===`edit`?t(`plugins:toolLabels.editDescription`):e?.id===`write`?t(`plugins:toolLabels.writeDescription`):e?.id===`bash`?t(`plugins:toolLabels.shellDescription`):e?.id===`web_search`?t(`plugins:toolLabels.webSearchDescription`):e?.id===`browser_automation`?t(`plugins:toolLabels.browserControlDescription`):e?.id===`generate_visual`?t(`plugins:toolLabels.visualGenerationDescription`):e?.id===`skill_create`?t(`plugins:toolLabels.skillCreateDescription`):e?.id===`plugin_create`?t(`plugins:toolLabels.pluginCreateDescription`):e?.id===`memory_search`?t(`plugins:toolLabels.memorySearchDescription`):e?.id===`memory_remember`?t(`plugins:toolLabels.memoryRememberDescription`):e?.id===`mcp_list`?t(`plugins:toolLabels.mcpListDescription`):e?.id===`mcp_manage`?t(`plugins:toolLabels.mcpManageDescription`):e?.id===`schedule_list`?t(`plugins:toolLabels.scheduleListDescription`):e?.id===`schedule_manage`?t(`plugins:toolLabels.scheduleManageDescription`):e?.id===`workflow_list`?t(`plugins:toolLabels.workflowListDescription`):e?.id===`workflow_run`?t(`plugins:toolLabels.workflowRunDescription`):e?.id===`codemode`?t(`plugins:toolLabels.codemodeDescription`):String(e?.description||``)}function n(e,t){return e===`high`||e===`高风险`?t(`plugins:toolLabels.highRisk`):e===`medium`||e===`中风险`?t(`plugins:toolLabels.mediumRisk`):e===`low`||e===`低风险`?t(`plugins:toolLabels.lowRisk`):String(e||``)}function r(e,t){return e===`filesystem`||e===`文件系统`?t(`plugins:toolLabels.fileSystem`):e===`search`||e===`搜索`?t(`plugins:toolLabels.search`):e===`terminal`||e===`终端`?t(`plugins:toolLabels.terminal`):e===`visual`||e===`视觉`?t(`plugins:toolLabels.visual`):e===`skills`||e===`技能`?t(`plugins:toolLabels.skills`):e===`plugins`||e===`插件`?t(`plugins:toolLabels.plugins`):e===`browser`||e===`浏览器`?t(`plugins:toolLabels.browser`):e===`memory`||e===`星忆`?t(`plugins:toolLabels.memory`):e===`mcp`||e===`MCP`?t(`plugins:toolLabels.mcp`):e===`schedules`?t(`plugins:toolLabels.schedules`):e===`workflows`?t(`plugins:toolLabels.workflows`):e===`collaboration`||e===`协作`?t(`plugins:toolLabels.collaboration`):e===`orchestration`?t(`plugins:toolLabels.orchestration`):String(e||``)}function i(e,t){return e.id===`image_assets`?t(`plugins:toolLabels.imageAssetsScope`):[`read`,`ls`,`grep`,`find`,`edit`,`write`].includes(String(e.id))?t(`plugins:toolLabels.currentChatWorkspace`):e.id===`bash`?t(`plugins:toolLabels.currentOsUser`):e.id===`web_search`?t(`plugins:toolLabels.bingPublicWebSearch`):e.id===`browser_automation`?t(`plugins:toolLabels.isolatedSessionBrowser`):e.id===`generate_visual`?t(`plugins:toolLabels.visualProviderAndWorkspace`):e.id===`skill_create`?t(`plugins:toolLabels.projectAndGlobalSkills`):e.id===`plugin_create`?t(`plugins:toolLabels.globalPluginSources`):e.id===`memory_search`||e.id===`memory_remember`?t(`plugins:toolLabels.globalAndProjectMemory`):e.id===`mcp_list`||e.id===`mcp_manage`?t(`plugins:toolLabels.applicationMcpConfiguration`):e.id===`schedule_list`||e.id===`schedule_manage`?t(`plugins:toolLabels.applicationSchedules`):e.id===`workflow_list`||e.id===`workflow_run`?t(`plugins:toolLabels.applicationWorkflows`):e.id===`codemode`?t(`plugins:toolLabels.codemodeScope`):String(e.scope||``)}function a(e){return e===`high`||e===`高风险`}function o(e){return e===`medium`||e===`中风险`}export{e as a,t as i,o as n,n as o,r,i as s,a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={zh:{"workflowsPage.packageTooLarge":`工作流压缩包不能超过 128 MiB。`,"workflowsPage.packageFailed":`工作流包处理失败,请检查文件是否完整及所需依赖是否齐全。`,"workflowsPage.workflowDuplicated":`工作流已复制`,"workflowsPage.workflowImported":`工作流已导入`,"workflowsPage.skillNode":`Skill`,"workflowsPage.callSkill":`调用 Skill`,"workflowsPage.conditionBranch":`条件分支`,"workflowsPage.parallelJoin":`并行汇合`,"workflowsPage.humanApproval":`人工审批`,"workflowsPage.waitingApproval":`等待审批`,"workflowsPage.interrupted":`已中断`,"workflowsPage.runHistory":`运行记录`,"workflowsPage.templates":`模板`,"workflowsPage.import":`导入`,"workflowsPage.neverRun":`尚未运行`,"workflowsPage.moreActionsFor":`{name} 的更多操作`,"workflowsPage.duplicateWorkflow":`复制工作流`,"workflowsPage.export":`导出`,"workflowsPage.countAttempts":`{count} 次尝试`,"workflowsPage.approve":`批准`,"workflowsPage.reject":`拒绝`,"workflowsPage.retryRun":`重试运行`,"workflowsPage.averageDuration":`平均耗时`,"workflowsPage.visibility":`可见范围`,"workflowsPage.private":`仅自己`,"workflowsPage.shared":`工作区共享`,"workflowsPage.tags":`标签`,"workflowsPage.revision":`当前修订`,"workflowsPage.inputParameters":`运行输入`,"workflowsPage.addInput":`添加输入`,"workflowsPage.newInput":`新参数`,"workflowsPage.parameterName":`变量名`,"workflowsPage.parameterType":`内容类型`,"workflowsPage.required":`必填`,"workflowsPage.chooseSkill":`选择已启用的 Skill`,"workflowsPage.mcpToolNames":`MCP 工具名称`,"workflowsPage.executionMode":`执行模式`,"workflowsPage.workspaceWrite":`自动审批`,"workflowsPage.fullAccess":`完全访问`,"workflowsPage.workspaceWriteHelp":`允许修改当前工作目录并自动批准常规命令;目录外访问仍受限制。`,"workflowsPage.fullAccessHelp":`允许访问本机文件和网络,并以当前系统用户权限运行 Shell。`,"workflowsPage.outputFormat":`输出格式`,"workflowsPage.dataPath":`数据路径`,"workflowsPage.operator":`比较方式`,"workflowsPage.comparisonValue":`比较值`,"workflowsPage.approvalMessage":`审批说明`,"workflowsPage.approvalTimeout":`审批超时(分钟)`,"workflowsPage.all":`全部`,"workflowsPage.custom":`自定义`,"workflowsPage.triggerNode":`触发器`,"workflowsPage.fileNode":`文件`,"workflowsPage.mcpNode":`MCP`,"workflowsPage.notificationNode":`通知`,"workflowsPage.notificationTitle":`通知标题`,"workflowsPage.notificationContent":`通知内容`,"workflowsPage.notificationChannels":`通知渠道`,"workflowsPage.notificationChannelEnabled":`渠道已启用`,"workflowsPage.notificationChannelNotEnabled":`该渠道尚未启用,请先前往渠道设置启用`,"workflowsPage.noExternalNotificationChannelsEnabled":`尚未启用飞书或微信渠道。系统通知仍可单独授权使用。`,"workflowsPage.openChannelSettings":`前往渠道`,"workflowsPage.openSystemNotificationSettings":`通知设置`,"workflowsPage.systemNotificationPermissionRequired":`系统通知权限未开启,请在浏览器或操作系统设置中允许 Pisper 发送通知。`,"workflowsPage.systemNotificationReady":`点击后将请求系统通知权限`,"workflowsPage.systemNotificationsEnabled":`系统通知已启用`,"workflowsPage.systemNotificationsUnsupported":`当前环境不支持系统通知。`,"workflowsPage.conditionNode":`判断`,"workflowsPage.parallelNode":`并行`,"workflowsPage.approvalNode":`审批`,"workflowsPage.manualTrigger":`手动触发`,"workflowsPage.readWriteFiles":`读写文件`,"workflowsPage.callMcp":`调用 MCP`,"workflowsPage.sendNotification":`发送通知`,"workflowsPage.runPrompt":`运行 Prompt`,"workflowsPage.browserNotification":`通知`,"workflowsPage.feishu":`飞书`,"workflowsPage.weChat":`微信`,"workflowsPage.qq":`QQ`,"workflowsPage.telegram":`Telegram`,"workflowsPage.codeReview":`代码审查`,"workflowsPage.codeReviewDescription":`读取 diff → 运行测试 → 生成 review`,"workflowsPage.prFix":`PR 修复`,"workflowsPage.prFixDescription":`定位失败 → 修改代码 → 回归测试`,"workflowsPage.research":`资料调研`,"workflowsPage.researchDescription":`搜索资料 → 提取引用 → 点亮星忆`,"workflowsPage.dailyWeeklyReport":`日报周报`,"workflowsPage.reportDescription":`汇总会话 → 生成摘要 → 渠道通知`,"workflowsPage.assetGeneration":`资产生成`,"workflowsPage.assetDescription":`生成图片 → 存入资产库 → 通知验收`,"workflowsPage.releasePreparation":`发布准备`,"workflowsPage.releaseDescription":`版本检查 → changelog → 创建发布单`,"workflowsPage.aConnectionIsCurrentlySelected":`当前选中的是连线。`,"workflowsPage.aTriggerCannotHaveAnUpstreamConnection":`触发器不能连接上游节点`,"workflowsPage.aWorkflowCannotContainCyclicConnections":`工作流不能包含循环连接`,"workflowsPage.completed":`已完成`,"workflowsPage.connectionCreated":`连线已建立`,"workflowsPage.connectionDeleted":`连线已删除`,"workflowsPage.defaultModel":`默认模型`,"workflowsPage.delete":`删除`,"workflowsPage.deleteConnection":`删除连线`,"workflowsPage.deleteNode":`删除节点`,"workflowsPage.deleteWorkflow":`删除工作流`,"workflowsPage.deleteWorkflowNameAndItsRunHistory":`删除工作流「{name}」及其运行记录?`,"workflowsPage.describeTheWorkTheAgentShouldCompleteInThisNode":`描述该节点需要 Agent 完成的工作`,"workflowsPage.description":`描述`,"workflowsPage.draft":`草稿`,"workflowsPage.drag":`拖拽`,"workflowsPage.dragFromANodeOutputToTheTargetInputToConnectThem":`从节点右侧端口拖到目标节点左侧端口建立连线`,"workflowsPage.dragNodesFromTheLeftToStartBuildingTheWorkflow":`选择画布中的节点来编辑,或点击「添加节点」开始组合工作流。`,"workflowsPage.duplicateNode":`复制节点`,"workflowsPage.edit":`编辑`,"workflowsPage.failed":`失败`,"workflowsPage.failureHandling":`失败处理`,"workflowsPage.inheritWorkflowDefaultModel":`继承工作流默认模型`,"workflowsPage.inputPort":`输入端口`,"workflowsPage.latestRun":`最近运行`,"workflowsPage.loadingWorkflowEditor":`正在加载工作流编辑器`,"workflowsPage.workflowEditorLoadFailed":`无法加载工作流编辑器。`,"workflowsPage.retryLoading":`重试`,"workflowsPage.loadingWorkflows":`正在加载工作流`,"workflowsPage.name":`名称`,"workflowsPage.nodeDeleted":`节点已删除`,"workflowsPage.nodeDuplicated":`节点已复制`,"workflowsPage.nodeLibrary":`节点库`,"workflowsPage.nodeModel":`节点模型`,"workflowsPage.nodeName":`节点名称`,"workflowsPage.noMatchingWorkflows":`还没有符合条件的工作流`,"workflowsPage.emptyHint":`点“新建工作流”开始,或从模板、文件导入。`,"workflowsPage.noRunHistory":`暂无运行记录`,"workflowsPage.outputPort":`输出端口`,"workflowsPage.preparing":`准备中`,"workflowsPage.presets":`预设`,"workflowsPage.pressDeleteOrBackspaceToRemoveThisConnection":`按 Delete 或 Backspace 也可以删除这条连线。`,"workflowsPage.published":`已发布`,"workflowsPage.retryCount":`重试次数`,"workflowsPage.run":`运行`,"workflowsPage.running":`正在运行`,"workflowsPage.runningNode":`正在执行:{node}`,"workflowsPage.runningNodeCompletedTotalCompleted":`正在执行:{node} · 已完成 {completed}/{total}`,"workflowsPage.selectedConnection":`选中连线`,"workflowsPage.skipThisNode":`跳过此节点`,"workflowsPage.stop":`停止`,"workflowsPage.stopImmediately":`立即停止`,"workflowsPage.stopped":`已停止`,"workflowsPage.stoppingWorkflow":`正在停止工作流`,"workflowsPage.task":`任务`,"workflowsPage.thisConnectionAlreadyExists":`这条连线已经存在`,"workflowsPage.timeoutMinutes":`超时(分钟)`,"workflowsPage.unknownNode":`未知节点`,"workflowsPage.useSystemDefault":`跟随系统默认`,"workflowsPage.workflowCompleted":`工作流已完成`,"workflowsPage.workflowDeleted":`工作流已删除`,"workflowsPage.workflowDraftSaved":`工作流草稿已保存`,"workflowsPage.workflowFailed":`工作流执行失败`,"workflowsPage.workflowNotFoundABlankEditorWasOpened":`工作流不存在,已打开空白编辑器。`,"workflowsPage.workflowPublished":`工作流已发布`,"workflowsPage.workflowRunning":`工作流运行中`,"workflowsPage.workflows":`工作流`,"workflowsPage.workflowSettings":`工作流设置`,"workflowsPage.workflowStarted":`工作流已开始运行`,"workflowsPage.workingDirectory":`工作目录`,"sprite.cancel":`取消`,"inputs.invalidName":`变量名只能使用英文字母、数字和下划线,不能以数字开头或使用保留名称。`,"inputs.duplicateName":`变量名「{name}」重复,请使用唯一名称。`,"inputs.requiredValue":`请填写「{name}」。`,"inputs.definitionHint":`每次试运行时填写图片、提示词等内容。这里可以调整运行时需要提供哪些内容。`,"inputs.deleteInput":`删除输入「{name}」`,"inputs.label":`显示名称`,"inputs.description":`填写说明`,"inputs.shortText":`短文本`,"inputs.longText":`长文本`,"inputs.number":`数字`,"inputs.boolean":`开关`,"inputs.defaultValue":`默认值(可选)`,"inputs.task":`本次任务`,"inputs.taskHint":`描述这次运行需要完成的目标。`,"inputs.materials":`参考材料`,"inputs.materialsHint":`填写文件路径、链接、代码片段或需要处理的内容。`,"inputs.constraints":`约束与输出要求`,"inputs.constraintsHint":`说明范围、格式、禁止操作及验收条件。`,"inputs.contextHint":`为这一次运行补充任务和背景。这里的内容不会改写工作流模板。`,"inputs.startFailed":`工作流未能启动,请检查输入或页面错误后重试。`,"inputs.runTitle":`运行「{name}」`,"inputs.runHint":`输入只用于本次运行。下次运行可以换一项任务,处理步骤和模板保持复用。`,"inputs.nodeRules":`节点处理规则`,"inputs.nodeRulesHint":`描述这个节点如何处理数据。具体任务在运行时填写,点击变量可插入到光标位置。`,"inputs.insertVariable":`插入「{name}」变量`,"inputs.invalidDefinition":`输入定义不完整或格式无效,请检查变量名、名称、类型及默认值。`,"inputs.valueTooLong":`「{name}」的内容过长,最多 16000 字符。`,"inputs.unknownInput":`存在未声明的输入「{name}」。`,"inputs.image":`图片`,"inputs.video":`视频`,"inputs.invalidValue":`「{name}」的值不符合所选类型。`,"inputs.chooseImage":`选择图片`,"inputs.chooseVideo":`选择视频`,"inputs.removeMedia":`移除素材`,"inputs.uploading":`正在上传素材…`,"inputs.uploadFailed":`素材上传失败,请重试。`,"inputs.previewFailed":`素材预览加载失败,运行仍可使用已上传的素材。`,"inputs.oneFile":`每个输入只选择一个素材文件。`,"inputs.mediaType":`请选择该输入支持的图片或视频格式。`,"inputs.imageLimit":`图片不得超过 8 MB。`,"inputs.videoLimit":`视频不得超过 64 MB。`,"imageNodes.input":`图片输入`,"imageNodes.background":`去背景`,"imageNodes.generate":`动作生成`,"imageNodes.frames":`拆分帧`,"imageNodes.transform":`帧处理`,"imageNodes.preview":`动画预览`,"imageNodes.export":`图集输出`,"imageNodes.inpaint":`区域修补`,"imageNodes.templateName":`游戏精灵图生成`,"imageNodes.templateDescription":`分方向生成动作,去背景、拆帧对齐并导出图集;每个节点均可调整。`,"imageNodes.reference":`角色参考图`,"imageNodes.referenceHint":`上传角色图片,生成时保留原图风格。`,"imageNodes.requestEstimate":`预计调用图像模型 {count} 次,每次生成一个方向的连续动作帧。可返回画布调整方向、动作节点和帧数。`,"imageNodes.inputField":`工作流图片输入`,"imageNodes.chooseInput":`请选择图片输入字段`,"imageNodes.inputHint":`图片通过工作流运行表单上传;在工作流设置中添加或修改输入字段。`,"imageNodes.imageModel":`图像模型`,"imageNodes.defaultImageModel":`使用已配置的默认图像模型`,"imageNodes.modelsFailed":`图像模型加载失败,请稍后重试。`,"imageNodes.action":`动作`,"imageNodes.prompt":`动作要求`,"imageNodes.frameCount":`每个方向的帧数`,"imageNodes.directions":`方向`,"imageNodes.generateHint":`本节点预计 {count} 次图像调用。每次只处理一个方向;保留参考图的风格、比例和配色。`,"imageNodes.method":`处理方式`,"imageNodes.colorKey":`色键抠图(无需下载)`,"imageNodes.localModel":`本地模型`,"imageNodes.modelHint":`算法按需下载,安装后可离线运行,不调用图像生成 API。`,"imageNodes.engineReady":`算法已安装`,"imageNodes.engineMissing":`缺少本地算法,请先下载依赖。`,"imageNodes.engineDownloading":`下载中 {percent}%`,"imageNodes.engineFailed":`算法下载失败,请检查网络后重试。`,"imageNodes.download":`下载算法`,"imageNodes.colors":`抠除颜色`,"imageNodes.colorsHint":`留空时按图片边缘自动选色。也可指定最多 8 种颜色。`,"imageNodes.colorAt":`抠除颜色 {index}`,"imageNodes.removeColor":`移除颜色`,"imageNodes.addColor":`添加颜色`,"imageNodes.tolerance":`颜色容差`,"imageNodes.softness":`软边`,"imageNodes.edgeConnected":`仅移除与边缘连通的背景`,"imageNodes.gridHint":`生成节点的网格信息优先;普通图片使用下方行列数。`,"imageNodes.columns":`列数`,"imageNodes.rows":`行数`,"imageNodes.duration":`帧时长(毫秒)`,"imageNodes.trim":`裁去透明边`,"imageNodes.align":`帧对齐`,"imageNodes.bottomCenter":`底部居中(脚底对齐)`,"imageNodes.center":`居中`,"imageNodes.noAlign":`不对齐`,"imageNodes.padding":`留白(像素)`,"imageNodes.frameEdits":`逐帧调整与顺序`,"imageNodes.frameNumber":`帧序号(从 1 开始)`,"imageNodes.frameEnabled":`保留此帧`,"imageNodes.rotation":`旋转(度)`,"imageNodes.scale":`缩放`,"imageNodes.opacity":`不透明度`,"imageNodes.orderHint":`添加的帧优先按列表顺序排列,其余帧跟在后面;关闭“保留此帧”可移除帧。`,"imageNodes.addToOrder":`将此帧加入排列`,"imageNodes.frameAt":`第 {index} 帧`,"imageNodes.earlier":`向前移动`,"imageNodes.later":`向后移动`,"imageNodes.resetOrder":`恢复此帧默认顺序`,"imageNodes.previewHint":`运行后在下方检查动画、方向、前后帧叠影;可连接多个动作分支。`,"imageNodes.filename":`输出名称`,"imageNodes.exportHint":`将所有输入帧烘焙为透明 PNG 图集,同时保留动作、方向与时长信息。`,"imageNodes.noResult":`运行此工作流后,这里会显示节点处理结果。`,"imageNodes.result":`节点结果`,"imageNodes.sourceRequired":`请先连接有效的图片输入节点。`,"imageNodes.decodeFailed":`图片无法解码,请检查格式和大小。`,"imageNodes.generationFailed":`部分图像未能生成。已生成的结果保留在下方,可调整提示词后重试。`,"imageNodes.tooLarge":`图片尺寸或帧数超过限制,请缩小输入或减少帧数。`,"imageNodes.cancelled":`处理已取消。`,"imageNodes.timeout":`处理超时,请减少本次处理的帧数后重试。`,"imageNodes.invalidOutput":`图像参数或输出无效,请检查节点配置。`,"imageNodes.previousFrame":`上一帧`,"imageNodes.nextFrame":`下一帧`,"imageNodes.play":`播放动画`,"imageNodes.pause":`暂停动画`,"imageNodes.onionSkin":`前后帧叠影(洋葱皮)`,"imageNodes.showInput":`对比处理前的输入`,"imageNodes.saveFrame":`保存此帧`,"imageNodes.downloadFailed":`下载失败,请重试。`,"imageNodes.regionHint":`仅修补指定的矩形区域。用于去除水印或小面积瑕疵;请先在预览中确认位置。`,"imageNodes.regionX":`左侧位置(%)`,"imageNodes.regionY":`顶部位置(%)`,"imageNodes.regionWidth":`区域宽度(%)`,"imageNodes.regionHeight":`区域高度(%)`,"imageNodes.idle":`待机呼吸`,"imageNodes.walk":`走路`,"imageNodes.run":`跑步`,"imageNodes.attack":`攻击`,"imageNodes.runNode":`仅运行此节点`,"imageNodes.runNodeHint":`复用上次已完成的上游结果,不重新运行其他节点。先完成一次上游运行即可使用。`,"imageNodes.sourceStale":`上游节点已修改或缺少已完成的结果,请先运行上游节点或整个工作流。`,"imageNodes.maxFrameSize":`最大帧边长(像素)`,"imageNodes.maxFrameSizeHint":`每帧最长边不超过 {size} 像素(默认 256)。超出时等比例缩小,小图不会放大。`,"workflowsPage.backToWorkflows":`返回工作流`,"workflowsPage.editorNavigation":`工作流导航`,"inputs.optional":`选填`,"inputs.emptyDefinition":`还没有运行输入。添加图片、文字或视频,让这个工作流可以重复使用。`,"inputs.editInput":`编辑输入`,"inputs.editNamedInput":`编辑输入:{name}`,"inputs.advancedSettings":`高级设置`,"inputs.removeInput":`移除此输入`,"editor.addNode":`添加节点`,"editor.searchNodes":`搜索节点`,"editor.flowNodes":`流程控制`,"editor.agentNodes":`任务与工具`,"editor.imageNodes":`图像与动画`,"editor.noMatchingNodes":`没有匹配的节点`,"editor.canvas":`工作流画布`,"editor.nodeProperties":`节点属性`,"editor.settingsDescription":`设置工作流名称、运行输入和默认行为。每次试运行时再填写具体内容。`,"editor.inspectorDescription":`编辑选中节点,查看输出和运行记录。`,"editor.manualTriggerHint":`点击「试运行」启动工作流,并填写本次需要的图片、提示词等内容。`,"editor.parallelHint":`等待所有上游分支完成后,再运行后续节点。`,"editor.executionSettings":`运行与错误处理`,"workflowsPage.lede":`把多步任务连成节点图,手动、定时或从渠道触发运行。`,"workflowsPage.loadFailed":`工作流读取失败`,"workflowsPage.newWorkflow":`新建工作流`,"workflowsPage.publishedCount":`{count} 个已发布`,"workflowsPage.noWorkflowsYet":`还没有工作流`,"workflowsPage.waitingApprovalCount":`{count} 个等你审批`,"workflowsPage.toggleRunDetails":`展开或收起 {name} 的运行明细`,"workflowsPage.templatesHint":`选一个模板,在编辑器里打开一份新的草稿。`,"workflowsPage.useTemplate":`用模板新建:{name}`,"workflowsPage.noMatchingTemplates":`没有符合搜索的模板`,"editor.saveDraft":`保存草稿`,"editor.testRun":`试运行`,"editor.publish":`发布`},en:{"workflowsPage.packageTooLarge":`Workflow packages must not exceed 128 MiB.`,"workflowsPage.packageFailed":`Could not process the workflow package. Check its files and required dependencies.`,"workflowsPage.workflowDuplicated":`Workflow duplicated`,"workflowsPage.workflowImported":`Workflow imported`,"workflowsPage.skillNode":`Skill`,"workflowsPage.callSkill":`Invoke Skill`,"workflowsPage.conditionBranch":`Condition branch`,"workflowsPage.parallelJoin":`Parallel join`,"workflowsPage.humanApproval":`Human approval`,"workflowsPage.waitingApproval":`Waiting for approval`,"workflowsPage.interrupted":`Interrupted`,"workflowsPage.runHistory":`Run history`,"workflowsPage.templates":`Templates`,"workflowsPage.import":`Import`,"workflowsPage.neverRun":`Never run`,"workflowsPage.moreActionsFor":`More actions for {name}`,"workflowsPage.duplicateWorkflow":`Duplicate workflow`,"workflowsPage.export":`Export`,"workflowsPage.countAttempts":`{count} attempts`,"workflowsPage.approve":`Approve`,"workflowsPage.reject":`Reject`,"workflowsPage.retryRun":`Retry run`,"workflowsPage.averageDuration":`Average duration`,"workflowsPage.visibility":`Visibility`,"workflowsPage.private":`Private`,"workflowsPage.shared":`Shared in workspace`,"workflowsPage.tags":`Tags`,"workflowsPage.revision":`Current revision`,"workflowsPage.inputParameters":`Run inputs`,"workflowsPage.addInput":`Add input`,"workflowsPage.newInput":`New input`,"workflowsPage.parameterName":`Variable name`,"workflowsPage.parameterType":`Content type`,"workflowsPage.required":`Required`,"workflowsPage.chooseSkill":`Choose an enabled Skill`,"workflowsPage.mcpToolNames":`MCP tool names`,"workflowsPage.executionMode":`Execution mode`,"workflowsPage.workspaceWrite":`Auto-approve`,"workflowsPage.fullAccess":`Full access`,"workflowsPage.workspaceWriteHelp":`Write to the current working directory and auto-approve routine commands; external access remains restricted.`,"workflowsPage.fullAccessHelp":`Access host files and the network, and run Shell as the current OS user.`,"workflowsPage.outputFormat":`Output format`,"workflowsPage.dataPath":`Data path`,"workflowsPage.operator":`Operator`,"workflowsPage.comparisonValue":`Comparison value`,"workflowsPage.approvalMessage":`Approval message`,"workflowsPage.approvalTimeout":`Approval timeout (minutes)`,"workflowsPage.all":`All`,"workflowsPage.custom":`Custom`,"workflowsPage.triggerNode":`Trigger`,"workflowsPage.fileNode":`File`,"workflowsPage.mcpNode":`MCP`,"workflowsPage.notificationNode":`Notification`,"workflowsPage.notificationTitle":`Notification title`,"workflowsPage.notificationContent":`Notification content`,"workflowsPage.notificationChannels":`Notification channels`,"workflowsPage.notificationChannelEnabled":`Channel enabled`,"workflowsPage.notificationChannelNotEnabled":`This channel is not enabled. Enable it in Channel settings first`,"workflowsPage.noExternalNotificationChannelsEnabled":`No Feishu or WeChat channel is enabled. System notifications can still be authorized separately.`,"workflowsPage.openChannelSettings":`Open Channels`,"workflowsPage.openSystemNotificationSettings":`Notification settings`,"workflowsPage.systemNotificationPermissionRequired":`System notification permission is off. Allow Pisper to send notifications in your browser or operating system settings.`,"workflowsPage.systemNotificationReady":`Click to request system notification permission`,"workflowsPage.systemNotificationsEnabled":`System notifications enabled`,"workflowsPage.systemNotificationsUnsupported":`System notifications are not supported in this environment.`,"workflowsPage.conditionNode":`Condition`,"workflowsPage.parallelNode":`Parallel`,"workflowsPage.approvalNode":`Approval`,"workflowsPage.manualTrigger":`Manual trigger`,"workflowsPage.readWriteFiles":`Read/write files`,"workflowsPage.callMcp":`Call MCP`,"workflowsPage.sendNotification":`Send notification`,"workflowsPage.runPrompt":`Run Prompt`,"workflowsPage.browserNotification":`Notification`,"workflowsPage.feishu":`Feishu`,"workflowsPage.weChat":`WeChat`,"workflowsPage.qq":`QQ`,"workflowsPage.telegram":`Telegram`,"workflowsPage.codeReview":`Code review`,"workflowsPage.codeReviewDescription":`Read diff → run tests → generate review`,"workflowsPage.prFix":`PR fix`,"workflowsPage.prFixDescription":`Locate failure → modify code → regression test`,"workflowsPage.research":`Research`,"workflowsPage.researchDescription":`Search sources → extract citations → save memory`,"workflowsPage.dailyWeeklyReport":`Daily/weekly report`,"workflowsPage.reportDescription":`Collect chats → generate summary → notify channel`,"workflowsPage.assetGeneration":`Asset generation`,"workflowsPage.assetDescription":`Generate image → save to assets → request review`,"workflowsPage.releasePreparation":`Release preparation`,"workflowsPage.releaseDescription":`Check version → changelog → create release checklist`,"workflowsPage.aConnectionIsCurrentlySelected":`A connection is currently selected.`,"workflowsPage.aTriggerCannotHaveAnUpstreamConnection":`A trigger cannot have an upstream connection`,"workflowsPage.aWorkflowCannotContainCyclicConnections":`A workflow cannot contain cyclic connections`,"workflowsPage.completed":`Completed`,"workflowsPage.connectionCreated":`Connection created`,"workflowsPage.connectionDeleted":`Connection deleted`,"workflowsPage.defaultModel":`Default model`,"workflowsPage.delete":`Delete`,"workflowsPage.deleteConnection":`Delete connection`,"workflowsPage.deleteNode":`Delete node`,"workflowsPage.deleteWorkflow":`Delete workflow`,"workflowsPage.deleteWorkflowNameAndItsRunHistory":`Delete workflow “{name}” and its run history?`,"workflowsPage.describeTheWorkTheAgentShouldCompleteInThisNode":`Describe the work the agent should complete in this node`,"workflowsPage.description":`Description`,"workflowsPage.draft":`Draft`,"workflowsPage.drag":`Drag`,"workflowsPage.dragFromANodeOutputToTheTargetInputToConnectThem":`Drag from a node output to the target input to connect them`,"workflowsPage.dragNodesFromTheLeftToStartBuildingTheWorkflow":`Select a node on the canvas to edit it, or choose Add node to build your workflow.`,"workflowsPage.duplicateNode":`Duplicate node`,"workflowsPage.edit":`Edit`,"workflowsPage.failed":`Failed`,"workflowsPage.failureHandling":`Failure handling`,"workflowsPage.inheritWorkflowDefaultModel":`Inherit workflow default model`,"workflowsPage.inputPort":`Input port`,"workflowsPage.latestRun":`Latest run`,"workflowsPage.loadingWorkflowEditor":`Loading workflow editor`,"workflowsPage.workflowEditorLoadFailed":`Could not load the workflow editor.`,"workflowsPage.retryLoading":`Retry`,"workflowsPage.loadingWorkflows":`Loading workflows`,"workflowsPage.name":`Name`,"workflowsPage.nodeDeleted":`Node deleted`,"workflowsPage.nodeDuplicated":`Node duplicated`,"workflowsPage.nodeLibrary":`Node library`,"workflowsPage.nodeModel":`Node model`,"workflowsPage.nodeName":`Node name`,"workflowsPage.noMatchingWorkflows":`No matching workflows`,"workflowsPage.emptyHint":`Start with “New workflow”, or import from a template or file.`,"workflowsPage.noRunHistory":`No run history`,"workflowsPage.outputPort":`Output port`,"workflowsPage.preparing":`Preparing`,"workflowsPage.presets":`Presets`,"workflowsPage.pressDeleteOrBackspaceToRemoveThisConnection":`Press Delete or Backspace to remove this connection.`,"workflowsPage.published":`Published`,"workflowsPage.retryCount":`Retry count`,"workflowsPage.run":`Run`,"workflowsPage.running":`Running`,"workflowsPage.runningNode":`Running: {node}`,"workflowsPage.runningNodeCompletedTotalCompleted":`Running: {node} · {completed}/{total} completed`,"workflowsPage.selectedConnection":`Selected connection`,"workflowsPage.skipThisNode":`Skip this node`,"workflowsPage.stop":`Stop`,"workflowsPage.stopImmediately":`Stop immediately`,"workflowsPage.stopped":`Stopped`,"workflowsPage.stoppingWorkflow":`Stopping workflow`,"workflowsPage.task":`Task`,"workflowsPage.thisConnectionAlreadyExists":`This connection already exists`,"workflowsPage.timeoutMinutes":`Timeout (minutes)`,"workflowsPage.unknownNode":`Unknown node`,"workflowsPage.useSystemDefault":`Use system default`,"workflowsPage.workflowCompleted":`Workflow completed`,"workflowsPage.workflowDeleted":`Workflow deleted`,"workflowsPage.workflowDraftSaved":`Workflow draft saved`,"workflowsPage.workflowFailed":`Workflow failed`,"workflowsPage.workflowNotFoundABlankEditorWasOpened":`Workflow not found. A blank editor was opened.`,"workflowsPage.workflowPublished":`Workflow published`,"workflowsPage.workflowRunning":`Workflow running`,"workflowsPage.workflows":`Workflows`,"workflowsPage.workflowSettings":`Workflow settings`,"workflowsPage.workflowStarted":`Workflow started`,"workflowsPage.workingDirectory":`Working directory`,"sprite.cancel":`Cancel`,"inputs.invalidName":`Variable names may contain letters, numbers and underscores, must not start with a number, and cannot use reserved names.`,"inputs.duplicateName":`Variable “{name}” is duplicated. Use a unique name.`,"inputs.requiredValue":`Enter a value for “{name}”.`,"inputs.definitionHint":`Provide images, prompts, and other content each time you run. Choose here what the workflow asks for.`,"inputs.deleteInput":`Delete input “{name}”`,"inputs.label":`Display label`,"inputs.description":`Input instructions`,"inputs.shortText":`Short text`,"inputs.longText":`Long text`,"inputs.number":`Number`,"inputs.boolean":`Boolean`,"inputs.defaultValue":`Default value (optional)`,"inputs.task":`Task for this run`,"inputs.taskHint":`Describe what this run should accomplish.`,"inputs.materials":`Reference materials`,"inputs.materialsHint":`Provide file paths, links, code snippets, or content to process.`,"inputs.constraints":`Constraints and output requirements`,"inputs.constraintsHint":`Specify scope, format, prohibited actions, and acceptance criteria.`,"inputs.contextHint":`Add task details and context for this run. This does not change the workflow template.`,"inputs.startFailed":`The workflow could not start. Check the inputs or page error and retry.`,"inputs.runTitle":`Run “{name}”`,"inputs.runHint":`Inputs apply only to this run. Use a different task next time while reusing the same processing steps and template.`,"inputs.nodeRules":`Node processing rules`,"inputs.nodeRulesHint":`Describe how this node processes data. Provide the actual task at run time; click a variable to insert it at the cursor.`,"inputs.insertVariable":`Insert “{name}” variable`,"inputs.invalidDefinition":`Input definitions are incomplete or invalid. Check variable names, labels, types, and defaults.`,"inputs.valueTooLong":`“{name}” is too long. Use at most 16,000 characters.`,"inputs.unknownInput":`Input “{name}” is not declared by this workflow.`,"inputs.image":`Image`,"inputs.video":`Video`,"inputs.invalidValue":`The value for “{name}” does not match its type.`,"inputs.chooseImage":`Choose image`,"inputs.chooseVideo":`Choose video`,"inputs.removeMedia":`Remove media`,"inputs.uploading":`Uploading media…`,"inputs.uploadFailed":`Media upload failed. Please retry.`,"inputs.previewFailed":`The preview could not load. The uploaded media can still be used for this run.`,"inputs.oneFile":`Choose one media file per input.`,"inputs.mediaType":`Choose an image or video format supported by this input.`,"inputs.imageLimit":`Images must be no larger than 8 MB.`,"inputs.videoLimit":`Videos must be no larger than 64 MB.`,"imageNodes.input":`Image input`,"imageNodes.background":`Remove background`,"imageNodes.generate":`Generate action`,"imageNodes.frames":`Split frames`,"imageNodes.transform":`Process frames`,"imageNodes.preview":`Animation preview`,"imageNodes.export":`Export atlas`,"imageNodes.inpaint":`Region inpainting`,"imageNodes.templateName":`Game sprite generation`,"imageNodes.templateDescription":`Generate actions by direction, remove backgrounds, align frames and export an atlas. Every node is editable.`,"imageNodes.reference":`Character reference`,"imageNodes.referenceHint":`Upload a character image; generation preserves its original style.`,"imageNodes.requestEstimate":`Estimated image model calls: {count}. Each call generates one direction of an action. Adjust directions, action nodes and frame counts on the canvas.`,"imageNodes.inputField":`Workflow image input`,"imageNodes.chooseInput":`Choose an image input`,"imageNodes.inputHint":`Upload the image in the run form. Add or edit input fields in workflow settings.`,"imageNodes.imageModel":`Image model`,"imageNodes.defaultImageModel":`Use configured default image model`,"imageNodes.modelsFailed":`Could not load image models. Try again later.`,"imageNodes.action":`Action`,"imageNodes.prompt":`Action instructions`,"imageNodes.frameCount":`Frames per direction`,"imageNodes.directions":`Directions`,"imageNodes.generateHint":`This node makes approximately {count} image calls, one direction per call, preserving the reference style, proportions and palette.`,"imageNodes.method":`Method`,"imageNodes.colorKey":`Color key (no download)`,"imageNodes.localModel":`Local model`,"imageNodes.modelHint":`Download the algorithm on demand. Once installed it works offline without a generative image API.`,"imageNodes.engineReady":`Algorithm installed`,"imageNodes.engineMissing":`Local algorithm missing. Download its dependencies first.`,"imageNodes.engineDownloading":`Downloading {percent}%`,"imageNodes.engineFailed":`Algorithm download failed. Check the connection and retry.`,"imageNodes.download":`Download algorithm`,"imageNodes.colors":`Colors to remove`,"imageNodes.colorsHint":`Leave empty to detect colors at the image edges, or choose up to 8 colors.`,"imageNodes.colorAt":`Color {index}`,"imageNodes.removeColor":`Remove color`,"imageNodes.addColor":`Add color`,"imageNodes.tolerance":`Color tolerance`,"imageNodes.softness":`Edge softness`,"imageNodes.edgeConnected":`Only remove background connected to edges`,"imageNodes.gridHint":`Generated grid metadata takes precedence. Other images use the grid below.`,"imageNodes.columns":`Columns`,"imageNodes.rows":`Rows`,"imageNodes.duration":`Frame duration (ms)`,"imageNodes.trim":`Trim transparent edges`,"imageNodes.align":`Frame alignment`,"imageNodes.bottomCenter":`Bottom center (foot baseline)`,"imageNodes.center":`Center`,"imageNodes.noAlign":`No alignment`,"imageNodes.padding":`Padding (pixels)`,"imageNodes.frameEdits":`Per-frame adjustments and order`,"imageNodes.frameNumber":`Frame number (starting at 1)`,"imageNodes.frameEnabled":`Keep this frame`,"imageNodes.rotation":`Rotation (degrees)`,"imageNodes.scale":`Scale`,"imageNodes.opacity":`Opacity`,"imageNodes.orderHint":`Listed frames come first in the chosen order; remaining frames follow. Turn off “Keep this frame” to remove one.`,"imageNodes.addToOrder":`Add this frame to order`,"imageNodes.frameAt":`Frame {index}`,"imageNodes.earlier":`Move earlier`,"imageNodes.later":`Move later`,"imageNodes.resetOrder":`Reset this frame order`,"imageNodes.previewHint":`After running, inspect the animation, direction and onion skins below. Multiple action branches can connect here.`,"imageNodes.filename":`Output name`,"imageNodes.exportHint":`Bake all input frames into a transparent PNG atlas with action, direction and timing metadata.`,"imageNodes.noResult":`Run the workflow to see this node’s results.`,"imageNodes.result":`Node result`,"imageNodes.sourceRequired":`Connect a valid image input node first.`,"imageNodes.decodeFailed":`Could not decode the image. Check its format and size.`,"imageNodes.generationFailed":`Some images could not be generated. Completed results are kept below. Adjust the prompt and retry.`,"imageNodes.tooLarge":`Image dimensions or frame count exceed the limit. Reduce the input size or number of frames.`,"imageNodes.cancelled":`Processing cancelled.`,"imageNodes.timeout":`Processing timed out. Reduce the number of frames and retry.`,"imageNodes.invalidOutput":`Invalid image settings or output. Check the node configuration.`,"imageNodes.previousFrame":`Previous frame`,"imageNodes.nextFrame":`Next frame`,"imageNodes.play":`Play animation`,"imageNodes.pause":`Pause animation`,"imageNodes.onionSkin":`Onion skins (adjacent frames)`,"imageNodes.showInput":`Compare input before processing`,"imageNodes.saveFrame":`Save frame`,"imageNodes.downloadFailed":`Download failed. Please retry.`,"imageNodes.regionHint":`Inpaint only the chosen rectangle, for watermarks or small blemishes. Check its position in the preview first.`,"imageNodes.regionX":`Left (%)`,"imageNodes.regionY":`Top (%)`,"imageNodes.regionWidth":`Width (%)`,"imageNodes.regionHeight":`Height (%)`,"imageNodes.idle":`Breathing idle`,"imageNodes.walk":`Walk`,"imageNodes.run":`Run`,"imageNodes.attack":`Attack`,"imageNodes.runNode":`Run only this node`,"imageNodes.runNodeHint":`Reuse completed upstream outputs without rerunning other nodes. Complete an upstream run first.`,"imageNodes.sourceStale":`Upstream settings changed or completed outputs are missing. Run the upstream nodes or the full workflow first.`,"imageNodes.maxFrameSize":`Maximum frame edge (pixels)`,"imageNodes.maxFrameSizeHint":`Keep each frame’s longest edge within {size} pixels (default: 256). Larger frames are scaled down proportionally; smaller frames are not enlarged.`,"workflowsPage.backToWorkflows":`Back to workflows`,"workflowsPage.editorNavigation":`Workflow navigation`,"inputs.optional":`Optional`,"inputs.emptyDefinition":`No run inputs yet. Add images, text, or video to reuse this workflow with new content.`,"inputs.editInput":`Edit input`,"inputs.editNamedInput":`Edit input: {name}`,"inputs.advancedSettings":`Advanced settings`,"inputs.removeInput":`Remove this input`,"editor.addNode":`Add node`,"editor.searchNodes":`Search nodes`,"editor.flowNodes":`Flow control`,"editor.agentNodes":`Tasks and tools`,"editor.imageNodes":`Images and animation`,"editor.noMatchingNodes":`No matching nodes`,"editor.canvas":`Workflow canvas`,"editor.nodeProperties":`Node properties`,"editor.settingsDescription":`Set the workflow name, run inputs, and defaults. Provide the actual content each time you run.`,"editor.inspectorDescription":`Edit the selected node and inspect its output and run history.`,"editor.manualTriggerHint":`Choose Test run to start the workflow and provide images, prompts, and other inputs for this run.`,"editor.parallelHint":`Wait for every upstream branch to finish before running the next nodes.`,"editor.executionSettings":`Execution and error handling`,"workflowsPage.lede":`Chain multi-step work into a node graph and run it manually, on a schedule or from a channel.`,"workflowsPage.loadFailed":`Could not load workflows`,"workflowsPage.newWorkflow":`New workflow`,"workflowsPage.publishedCount":`{count} published`,"workflowsPage.noWorkflowsYet":`No workflows yet`,"workflowsPage.waitingApprovalCount":`{count} waiting for your approval`,"workflowsPage.toggleRunDetails":`Show or hide run details for {name}`,"workflowsPage.templatesHint":`Pick a template to open a new draft in the editor.`,"workflowsPage.useTemplate":`New from template: {name}`,"workflowsPage.noMatchingTemplates":`No templates match your search`,"editor.saveDraft":`Save draft`,"editor.testRun":`Test run`,"editor.publish":`Publish`}};export{e as workflowMessages};
|
|
Binary file
|