decocms 2.291.1 → 2.292.0
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/dist/client/assets/{AlertCircle-BYbLY8JK.js → AlertCircle-BJZjcLR8.js} +1 -1
- package/dist/client/assets/{ArrowNarrowLeft-CcXLWn5B.js → ArrowNarrowLeft-Yoaq7-cz.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-BYnm98Tt.js → ArrowUpRight-DoZ1aCQb.js} +1 -1
- package/dist/client/assets/{CheckCircle-YokVYrIX.js → CheckCircle-BbLUS0ek.js} +1 -1
- package/dist/client/assets/{ChevronDown-BRURl2T5.js → ChevronDown-CGHjchOw.js} +1 -1
- package/dist/client/assets/{ChevronRight-CZmvUfnf.js → ChevronRight-Do3Je1ER.js} +1 -1
- package/dist/client/assets/{ChevronUp-VkkFTpbv.js → ChevronUp-dSBPqUJ1.js} +1 -1
- package/dist/client/assets/{Container-DQZzI4AA.js → Container-CDgY_XYz.js} +1 -1
- package/dist/client/assets/{DotsVertical-D5rWkx3C.js → DotsVertical-BxL7Owtq.js} +1 -1
- package/dist/client/assets/{LinkExternal01-tSCOf-pQ.js → LinkExternal01-DxLyrYeW.js} +1 -1
- package/dist/client/assets/{Lock01-CQvbe2FZ.js → Lock01-BI0K2L_g.js} +1 -1
- package/dist/client/assets/{Palette-DZWPAJiP.js → Palette-CWiKw0AC.js} +1 -1
- package/dist/client/assets/{Play-BwrtIjN9.js → Play-C7K9es-c.js} +1 -1
- package/dist/client/assets/{Plus-Mx814qi5.js → Plus-BpCTKUfi.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-Bmm2OZFs.js → RefreshCcw01-BEGaV3W5.js} +1 -1
- package/dist/client/assets/{SearchMd-CHEkvskM.js → SearchMd-fRD_HHud.js} +1 -1
- package/dist/client/assets/{Settings02-dtOggDtm.js → Settings02-DtQ4_bLf.js} +1 -1
- package/dist/client/assets/{Shield01-BlIkj6ml.js → Shield01-Di_q_zxl.js} +1 -1
- package/dist/client/assets/{Star01-CwajHHth.js → Star01-CIsSx9uE.js} +1 -1
- package/dist/client/assets/{Sun-1eccYZOi.js → Sun-CgyDUxcQ.js} +1 -1
- package/dist/client/assets/{Tool01-D25llKlN.js → Tool01-By8ElVEn.js} +1 -1
- package/dist/client/assets/{Trash01-D1oxn083.js → Trash01-BzOKZIoE.js} +1 -1
- package/dist/client/assets/{User01-Dg6LRSNl.js → User01-B6EEMzxh.js} +1 -1
- package/dist/client/assets/{Users03-B2xVime7.js → Users03-CKRT_0yR.js} +1 -1
- package/dist/client/assets/{X-BQvMOHsX.js → X-DXjTCsIF.js} +1 -1
- package/dist/client/assets/{XCircle-TXbF29VJ.js → XCircle-Ce7DOyui.js} +1 -1
- package/dist/client/assets/{XClose-B4M7R7X8.js → XClose-Bnw2tzQy.js} +1 -1
- package/dist/client/assets/{Zap-CxY8TS-o.js → Zap-BEX7Xuxl.js} +1 -1
- package/dist/client/assets/{ZapSquare-B1TVYj8i.js → ZapSquare-CsTKlylz.js} +1 -1
- package/dist/client/assets/{accordion-CUfbS6Fc.js → accordion-rxim1ZAp.js} +1 -1
- package/dist/client/assets/{agent-icon-6Uu6lwox.js → agent-icon-DtvDglSH.js} +1 -1
- package/dist/client/assets/{agents-list-Dm4llAHx.js → agents-list-Dn30Me50.js} +1 -1
- package/dist/client/assets/ai-providers-CC7AZG4I.js +1 -0
- package/dist/client/assets/{alert-dialog-C3PpULXm.js → alert-dialog-DkRKYqdD.js} +1 -1
- package/dist/client/assets/{auth-catchall-CbCG99Oq.js → auth-catchall-BgWDU-In.js} +1 -1
- package/dist/client/assets/{automation-list-row-R7WEZP_X.js → automation-list-row-Dk3EbUOn.js} +1 -1
- package/dist/client/assets/{automations-BE-SV3bv.js → automations-CbjDzR7F.js} +1 -1
- package/dist/client/assets/{avatar-B0cDdI_p.js → avatar-CAgGCSe2.js} +1 -1
- package/dist/client/assets/{badge-BSF0KEBD.js → badge-DBxFBhAO.js} +1 -1
- package/dist/client/assets/{brand-context-VMfIPbNw.js → brand-context-C1u8HhCR.js} +1 -1
- package/dist/client/assets/{card-G-uvOmaX.js → card-DWuJsQ-l.js} +1 -1
- package/dist/client/assets/{chat-context-a-h1Wy9R.js → chat-context-w7qWGRrL.js} +2 -2
- package/dist/client/assets/{checkbox-BtVeTd73.js → checkbox-CgUCf0vo.js} +1 -1
- package/dist/client/assets/collection-detail-miARxdMD.js +1 -0
- package/dist/client/assets/{collection-display-button-Cf7kfBzQ.js → collection-display-button-IHUVDN00.js} +1 -1
- package/dist/client/assets/{collection-search-LJG0dGzi.js → collection-search-9iq4cHBD.js} +1 -1
- package/dist/client/assets/{collection-search-RkDibt87.js → collection-search-Dz-DfctK.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-DTmKWr0a.js → collection-table-wrapper-zolZkVPt.js} +1 -1
- package/dist/client/assets/{collection-tabs-B22z1W7w.js → collection-tabs-DQLxqY5f.js} +1 -1
- package/dist/client/assets/{collections-BGqKPyxO.js → collections-U39XM2D0.js} +1 -1
- package/dist/client/assets/{command-dXSQcSlQ.js → command-YWTBTzZ-.js} +1 -1
- package/dist/client/assets/{connection-card-BoKVGqSP.js → connection-card-CzIrL4EL.js} +1 -1
- package/dist/client/assets/{connection-detail-BpVjCTHj.js → connection-detail-BAaKFeAe.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BDjJZ0p-.js → connection-form-helpers-CkuYmS0Y.js} +1 -1
- package/dist/client/assets/{connections-CLSd3E4v.js → connections-BhrD0IQp.js} +1 -1
- package/dist/client/assets/{constants-CkE3mXX3.js → constants-3nmHZB7k.js} +1 -1
- package/dist/client/assets/{constants-D02ovwi8.js → constants-C9aLxYHE.js} +1 -1
- package/dist/client/assets/{dialog-iad61Myk.js → dialog-Dh1iMW0s.js} +1 -1
- package/dist/client/assets/{domain-settings-k6ahG8fL.js → domain-settings-AVM0VKvz.js} +1 -1
- package/dist/client/assets/{drawer-C5RmZfRn.js → drawer-BVsQgzeD.js} +1 -1
- package/dist/client/assets/{dropdown-menu-C-rtkqLf.js → dropdown-menu-BFB_BhxE.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-8vOtH5cT.js → dynamic-plugin-layout-89eFL9j5.js} +1 -1
- package/dist/client/assets/{empty-state-DjHmeRj3.js → empty-state-Ccngpo14.js} +1 -1
- package/dist/client/assets/{empty-state-C0ZLSTKp.js → empty-state-DaBJGn03.js} +1 -1
- package/dist/client/assets/{extract-connection-data-CGvP9gW4.js → extract-connection-data-DTYSYxBG.js} +1 -1
- package/dist/client/assets/{features-Bd6dY_zE.js → features-DyBQ3hAD.js} +1 -1
- package/dist/client/assets/{form-338sOp4I.js → form-D1t1amOF.js} +1 -1
- package/dist/client/assets/{general-OtnfMwVI.js → general-BSxOk1qz.js} +1 -1
- package/dist/client/assets/{github-repo-picker-BAv1s-16.js → github-repo-picker-DSEipb9O.js} +1 -1
- package/dist/client/assets/{index-COtqJC_1.js → index-BXJluhPl.js} +1 -1
- package/dist/client/assets/index-BZi9riJ2.css +1 -0
- package/dist/client/assets/{index-CMjtYUqI.js → index-Bgh3Fg-W.js} +1 -1
- package/dist/client/assets/{index-B9v7UxaA.js → index-CfcY28zS.js} +1 -1
- package/dist/client/assets/{index-Dm9FQcLA.js → index-CiGNH6-A.js} +1 -1
- package/dist/client/assets/{index-BnYwAGzg.js → index-CxNPMl3z.js} +20 -20
- package/dist/client/assets/{index-D47or-uW.js → index-D0Y3Q7N3.js} +1 -1
- package/dist/client/assets/{index-CNpuYwrQ.js → index-DDmmZL9v.js} +1 -1
- package/dist/client/assets/{index-DqsW5LHB.js → index-DKd6U8ZD.js} +2 -2
- package/dist/client/assets/{index-BG1X1tQ7.js → index-DskwxDSD.js} +1 -1
- package/dist/client/assets/{index-DgSb8QXs.js → index-aI7M0qEI.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-CFInfc2M.js → infiniteQueryObserver-RFzqIOTQ.js} +1 -1
- package/dist/client/assets/{input-DH-CzXJx.js → input-rXpcOW54.js} +1 -1
- package/dist/client/assets/{integration-icon-DJA_3Fr4.js → integration-icon-wh5nd5gB.js} +1 -1
- package/dist/client/assets/{label-BMXaeGTS.js → label-KG6f6ypV.js} +1 -1
- package/dist/client/assets/{layout-BI4iFO9A.js → layout-C1dBBrJO.js} +1 -1
- package/dist/client/assets/{login-DyuwfRcj.js → login-aCzD1yj3.js} +1 -1
- package/dist/client/assets/{members-BmJR_VlS.js → members-CcYrdU9b.js} +1 -1
- package/dist/client/assets/{monaco-editor-B5JuMABe.js → monaco-editor-CetiEdE3.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-BY0X8hB4.js → monitoring-stats-row-Bpsycv3a.js} +1 -1
- package/dist/client/assets/{oauth-callback-inWmNv4q.js → oauth-callback-Bgqii5KN.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-CBxSFNpp.js → oauth-callback-ai-provider-BM8V8XSD.js} +1 -1
- package/dist/client/assets/{onboarding-G7MEDE1s.js → onboarding-BstJNU1_.js} +1 -1
- package/dist/client/assets/{org-layout-DArAUzhp.js → org-layout-Cbl-bpnq.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-VUKw0cT4.js → org-plugin-layout-D5W8iJ__.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-DQpnGoua.js → plugin-empty-state-ClLmoORa.js} +1 -1
- package/dist/client/assets/{plugin-header-TbxBcKQZ.js → plugin-header-BfIRczN-.js} +1 -1
- package/dist/client/assets/{plugin-layout-DKyHA-wW.js → plugin-layout-CSlooCiQ.js} +1 -1
- package/dist/client/assets/{popover-OC7XhGTw.js → popover-oHy7A2NB.js} +1 -1
- package/dist/client/assets/{profile-DwshPh0T.js → profile--BcrwHZB.js} +1 -1
- package/dist/client/assets/{project-app-view-CxpGmDTt.js → project-app-view-7T_TcCNb.js} +1 -1
- package/dist/client/assets/registry-CDfXAwnP.js +2 -0
- package/dist/client/assets/{registry-layout-IXiQGtRE.js → registry-layout-DSvJ6NrU.js} +1 -1
- package/dist/client/assets/{required-auth-layout-CBJCEsxt.js → required-auth-layout-C9I2Cbbq.js} +1 -1
- package/dist/client/assets/{reset-password-B3HQhCgj.js → reset-password-CIaSK0Sp.js} +1 -1
- package/dist/client/assets/{roles-Avtsbj8b.js → roles-BquZRSxB.js} +1 -1
- package/dist/client/assets/{scroll-area-BISJlmBG.js → scroll-area-UNfVJI8t.js} +1 -1
- package/dist/client/assets/{search-input-A-4PeF_2.js → search-input-DfM3hp54.js} +1 -1
- package/dist/client/assets/{select-AHhRGkyu.js → select-CIfh_MBY.js} +1 -1
- package/dist/client/assets/{select-model-fOLzezFa.js → select-model-BuijBTi2.js} +1 -1
- package/dist/client/assets/{settings-layout-BZX4Y4xJ.js → settings-layout-7GZHLZ6d.js} +1 -1
- package/dist/client/assets/{settings-section-BhzOkUnI.js → settings-section-DU0g5n0Q.js} +1 -1
- package/dist/client/assets/{shell-layout-Bd7V-GQY.js → shell-layout-CcnEVz8S.js} +1 -1
- package/dist/client/assets/{skeleton-CbxzlXux.js → skeleton-DWxGcluE.js} +1 -1
- package/dist/client/assets/{sso-ouyQ9HV-.js → sso-BwOkQ_ww.js} +1 -1
- package/dist/client/assets/{store-DpB4YfFG.js → store-R02TTTNN.js} +1 -1
- package/dist/client/assets/store-registry-DdbRGyFG.js +2 -0
- package/dist/client/assets/{switch-BLGfVBVR.js → switch-CWaKO_3R.js} +1 -1
- package/dist/client/assets/{table-D4DE3XhH.js → table-UpR-J_t9.js} +1 -1
- package/dist/client/assets/{tabs-DfV1qdcL.js → tabs-CgpYNCZH.js} +1 -1
- package/dist/client/assets/{task-status-_49KQk_a.js → task-status-CPd-pzw_.js} +1 -1
- package/dist/client/assets/{textarea-JSK2UtRe.js → textarea-CVs7u-e-.js} +1 -1
- package/dist/client/assets/{toggle-group-BEFyXqZD.js → toggle-group-DIrVgcK0.js} +1 -1
- package/dist/client/assets/{tools-list-DOfn3EJA.js → tools-list-C1Tdz1hL.js} +1 -1
- package/dist/client/assets/{types-D3_Ra7Fv.js → types-DqiNUavs.js} +1 -1
- package/dist/client/assets/{use-ai-providers-MLk3Pb1b.js → use-ai-providers-D5Tufg2O.js} +1 -1
- package/dist/client/assets/{use-collections-CIiKPdXz.js → use-collections-DpIHOTql.js} +1 -1
- package/dist/client/assets/{use-connection-CkaOLOkA.js → use-connection-1SSSHaHs.js} +1 -1
- package/dist/client/assets/{use-copy-DMw5YQy5.js → use-copy-CDfDyhwS.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CoqQQKD_.js → use-create-virtual-mcp-Bkn7rT3M.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-C20Bt8AR.js → use-decopilot-events-CN5jq2Ax.js} +1 -1
- package/dist/client/assets/{use-delete-connection-c6u3Mju0.js → use-delete-connection-3pf7Gnxc.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BAxtK59M.js → use-infinite-scroll-DknIuIQ2.js} +1 -1
- package/dist/client/assets/{use-list-state-WpMLgcH5.js → use-list-state-8iqNUJS2.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-B89VuP8B.js → use-mcp-tools-qxi4PxSc.js} +1 -1
- package/dist/client/assets/{use-members-tE1Czmvr.js → use-members-Ck6hn7xk.js} +1 -1
- package/dist/client/assets/{use-mobile-DtcdfNhs.js → use-mobile-DrlR5BbG.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-51gjX2Pz.js → use-navigate-to-agent-DlV84y97.js} +1 -1
- package/dist/client/assets/{use-org-sso-CMd7BViF.js → use-org-sso-CWrx0G98.js} +1 -1
- package/dist/client/assets/{use-organization-roles-VhRwvnOU.js → use-organization-roles-DsSbdLcn.js} +1 -1
- package/dist/client/assets/{use-organization-settings-BAET96Uw.js → use-organization-settings-DoI0c_Gi.js} +1 -1
- package/dist/client/assets/{use-registry-connections-yAbn5ElM.js → use-registry-connections-BZXVzsNL.js} +1 -1
- package/dist/client/assets/{use-status-sounds-Du7S3ua5.js → use-status-sounds-UAO5zXMo.js} +1 -1
- package/dist/client/assets/{use-tasks-DZowuTKu.js → use-tasks-BGCdXCFh.js} +1 -1
- package/dist/client/assets/{use-view-mode-DPPBVyNk.js → use-view-mode-Cobet5rP.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-aaTK8HuA.js → use-virtual-mcp-G7jm3TGl.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-J4O9iX8k.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-BBJXEpEL.js +1 -0
- package/dist/client/assets/{user-BGPKZele.js → user-BXlY7NuV.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-BRLuTNh9.js → view-mode-toggle-PXHnKZlc.js} +1 -1
- package/dist/client/assets/workflow-detail-FemzGjdG.js +1 -0
- package/dist/client/assets/{workflow-iBn2uqrM.js → workflow-q8JEUlLD.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +1 -1
- package/dist/server/node_modules/escape-string-regexp/index.d.ts +18 -0
- package/dist/server/node_modules/escape-string-regexp/index.js +11 -0
- package/dist/server/node_modules/escape-string-regexp/package.json +43 -0
- package/dist/server/node_modules/escape-string-regexp/readme.md +29 -0
- package/dist/server/node_modules/{scheduler → pg}/LICENSE +1 -1
- package/dist/server/node_modules/pg/README.md +95 -0
- package/dist/server/node_modules/pg/esm/index.mjs +20 -0
- package/dist/server/node_modules/pg/lib/client.js +743 -0
- package/dist/server/node_modules/pg/lib/connection-parameters.js +171 -0
- package/dist/server/node_modules/pg/lib/connection.js +221 -0
- package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +122 -0
- package/dist/server/node_modules/pg/lib/crypto/sasl.js +212 -0
- package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +43 -0
- package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +89 -0
- package/dist/server/node_modules/pg/lib/crypto/utils.js +9 -0
- package/dist/server/node_modules/pg/lib/defaults.js +91 -0
- package/dist/server/node_modules/pg/lib/index.js +73 -0
- package/dist/server/node_modules/pg/lib/native/client.js +323 -0
- package/dist/server/node_modules/pg/lib/native/index.js +2 -0
- package/dist/server/node_modules/pg/lib/native/query.js +165 -0
- package/dist/server/node_modules/pg/lib/query.js +252 -0
- package/dist/server/node_modules/pg/lib/result.js +109 -0
- package/dist/server/node_modules/pg/lib/stream.js +83 -0
- package/dist/server/node_modules/pg/lib/type-overrides.js +35 -0
- package/dist/server/node_modules/pg/lib/utils.js +217 -0
- package/dist/server/node_modules/pg/package.json +76 -0
- package/package.json +1 -1
- package/dist/client/assets/ai-providers-CWrtqiFu.js +0 -1
- package/dist/client/assets/collection-detail-CQv-EfCg.js +0 -1
- package/dist/client/assets/index-BHUL0rr0.css +0 -1
- package/dist/client/assets/registry-DZhwyNLq.js +0 -2
- package/dist/client/assets/store-registry-DUx3wL94.js +0 -2
- package/dist/client/assets/useInfiniteQuery-Emg6p2ky.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-Dfyjunjm.js +0 -1
- package/dist/client/assets/workflow-detail-C1edh6mx.js +0 -1
- package/dist/server/node_modules/ansi-regex/index.d.ts +0 -33
- package/dist/server/node_modules/ansi-regex/index.js +0 -14
- package/dist/server/node_modules/ansi-regex/license +0 -9
- package/dist/server/node_modules/ansi-regex/package.json +0 -61
- package/dist/server/node_modules/ansi-regex/readme.md +0 -66
- package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
- package/dist/server/node_modules/emoji-regex/README.md +0 -107
- package/dist/server/node_modules/emoji-regex/index.d.ts +0 -3
- package/dist/server/node_modules/emoji-regex/index.js +0 -4
- package/dist/server/node_modules/emoji-regex/index.mjs +0 -4
- package/dist/server/node_modules/emoji-regex/package.json +0 -45
- package/dist/server/node_modules/environment/index.d.ts +0 -74
- package/dist/server/node_modules/environment/index.js +0 -47
- package/dist/server/node_modules/environment/license +0 -9
- package/dist/server/node_modules/environment/package.json +0 -74
- package/dist/server/node_modules/environment/readme.md +0 -94
- package/dist/server/node_modules/is-unicode-supported/index.d.ts +0 -12
- package/dist/server/node_modules/is-unicode-supported/index.js +0 -21
- package/dist/server/node_modules/is-unicode-supported/license +0 -9
- package/dist/server/node_modules/is-unicode-supported/package.json +0 -47
- package/dist/server/node_modules/is-unicode-supported/readme.md +0 -35
- package/dist/server/node_modules/mimic-fn/index.d.ts +0 -54
- package/dist/server/node_modules/mimic-fn/index.js +0 -13
- package/dist/server/node_modules/mimic-fn/package.json +0 -42
- package/dist/server/node_modules/mimic-fn/readme.md +0 -69
- package/dist/server/node_modules/pg-int8/LICENSE +0 -13
- package/dist/server/node_modules/pg-int8/README.md +0 -16
- package/dist/server/node_modules/pg-int8/index.js +0 -100
- package/dist/server/node_modules/pg-int8/package.json +0 -24
- package/dist/server/node_modules/postgres-array/index.d.ts +0 -4
- package/dist/server/node_modules/postgres-array/index.js +0 -97
- package/dist/server/node_modules/postgres-array/license +0 -21
- package/dist/server/node_modules/postgres-array/package.json +0 -35
- package/dist/server/node_modules/postgres-array/readme.md +0 -43
- package/dist/server/node_modules/postgres-bytea/index.js +0 -33
- package/dist/server/node_modules/postgres-bytea/license +0 -21
- package/dist/server/node_modules/postgres-bytea/package.json +0 -34
- package/dist/server/node_modules/postgres-bytea/readme.md +0 -34
- package/dist/server/node_modules/postgres-date/index.js +0 -116
- package/dist/server/node_modules/postgres-date/license +0 -21
- package/dist/server/node_modules/postgres-date/package.json +0 -33
- package/dist/server/node_modules/postgres-date/readme.md +0 -49
- package/dist/server/node_modules/postgres-interval/index.d.ts +0 -20
- package/dist/server/node_modules/postgres-interval/index.js +0 -125
- package/dist/server/node_modules/postgres-interval/license +0 -21
- package/dist/server/node_modules/postgres-interval/package.json +0 -36
- package/dist/server/node_modules/postgres-interval/readme.md +0 -48
- package/dist/server/node_modules/restore-cursor/index.d.ts +0 -11
- package/dist/server/node_modules/restore-cursor/index.js +0 -11
- package/dist/server/node_modules/restore-cursor/license +0 -9
- package/dist/server/node_modules/restore-cursor/package.json +0 -55
- package/dist/server/node_modules/restore-cursor/readme.md +0 -31
- package/dist/server/node_modules/scheduler/README.md +0 -9
- package/dist/server/node_modules/scheduler/cjs/scheduler-unstable_mock.development.js +0 -414
- package/dist/server/node_modules/scheduler/cjs/scheduler-unstable_mock.production.js +0 -406
- package/dist/server/node_modules/scheduler/cjs/scheduler-unstable_post_task.development.js +0 -150
- package/dist/server/node_modules/scheduler/cjs/scheduler-unstable_post_task.production.js +0 -140
- package/dist/server/node_modules/scheduler/cjs/scheduler.development.js +0 -364
- package/dist/server/node_modules/scheduler/cjs/scheduler.native.development.js +0 -350
- package/dist/server/node_modules/scheduler/cjs/scheduler.native.production.js +0 -330
- package/dist/server/node_modules/scheduler/cjs/scheduler.production.js +0 -340
- package/dist/server/node_modules/scheduler/index.js +0 -7
- package/dist/server/node_modules/scheduler/index.native.js +0 -7
- package/dist/server/node_modules/scheduler/package.json +0 -27
- package/dist/server/node_modules/scheduler/unstable_mock.js +0 -7
- package/dist/server/node_modules/scheduler/unstable_post_task.js +0 -7
- package/dist/server/node_modules/slice-ansi/index.d.ts +0 -19
- package/dist/server/node_modules/slice-ansi/index.js +0 -260
- package/dist/server/node_modules/slice-ansi/license +0 -10
- package/dist/server/node_modules/slice-ansi/package.json +0 -59
- package/dist/server/node_modules/slice-ansi/readme.md +0 -54
- package/dist/server/node_modules/slice-ansi/tokenize-ansi.js +0 -752
- package/dist/server/node_modules/split2/LICENSE +0 -13
- package/dist/server/node_modules/split2/README.md +0 -85
- package/dist/server/node_modules/split2/bench.js +0 -27
- package/dist/server/node_modules/split2/index.js +0 -141
- package/dist/server/node_modules/split2/package.json +0 -39
- package/dist/server/node_modules/split2/test.js +0 -409
- package/dist/server/node_modules/string-width/index.d.ts +0 -39
- package/dist/server/node_modules/string-width/index.js +0 -82
- package/dist/server/node_modules/string-width/license +0 -9
- package/dist/server/node_modules/string-width/package.json +0 -64
- package/dist/server/node_modules/string-width/readme.md +0 -66
- /package/dist/server/node_modules/{mimic-fn → escape-string-regexp}/license +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/project-app-view-
|
|
2
|
-
import{o as bt,r as j,p as wf,q as Vf,e as B,s as xe,K as Ze,n as ji,a as Ni,v as as,w as gr,x as Ai,j as r,B as oe,y as pt,c as Y,E as ls,z as he,C as ei,_ as Cf,t as re,f as Oe,D as wa,F as kf,R as vd,G as jf,H as rs,I as Kn,J as Ei,L as Nf,M as qn,P as Af,Q as Ef,T as If,U as Tf,V as bd,W as Rf,X as Mf,Y as Df,Z as Pf,$ as pl,l as Ne,b as dt,u as Lf,a0 as Zi,a1 as Yr,a2 as Va,a3 as Ca,g as _r,a4 as yd,d as ti,a5 as Of,a6 as Bf,a7 as $f,a8 as zf,a9 as Sd,aa as wd,ab as Ff,ac as Uf,ad as Hf,ae as Wf,af as Kf,ag as qf,ah as Gf,ai as Li,aj as Yf,ak as Xf,al as Jf,am as Qf,an as Vd,ao as Zf,ap as em,aq as tm,ar as sm,as as im,at as rm,au as nm,av as om,aw as am,ax as lm,ay as Cd,az as Xr,aA as cm,aB as pi,aC as Pr,aD as kd,aE as dm,aF as hm}from"./index-DqsW5LHB.js";import{u as $s,a as Ii,b as Lt,A as um,C as fm,t as jd,c as Co,d as mm,e as Cn,f as gl}from"./chat-context-a-h1Wy9R.js";import{d as kn,g as Ls,c as pm,s as ka,t as ko,a as gm,M as _m,i as xm,b as or,e as vm,F as bm,f as Nd,S as ym,u as Sm,h as _l,j as wm,k as Vm,l as jo,r as Cm,m as km,p as Ad,n as jm,o as Nm,q as ja,G as Am,L as Em,v as Im,w as Tm,x as Rm,y as Mm}from"./task-status-_49KQk_a.js";import{S as ar,u as jn,P as No,a as Dm,b as Pm,c as Lm,E as Om,i as Bm,d as $m,e as Ed}from"./scroll-area-BISJlmBG.js";import{T as bi,u as ms,a as qe,b as Ge,c as Ye}from"./use-mobile-DtcdfNhs.js";import{D as qt,a as Gt,b as Na,c as Ot,d as Bt,e as Nn}from"./dialog-iad61Myk.js";import{D as An,a as si,b as ii,c as ri,d as zm,e as Fm,f as Um}from"./drawer-C5RmZfRn.js";import{C as Id}from"./collection-search-LJG0dGzi.js";import{S as yt,u as Ae,g as En,i as lr,c as Hm,W as jt,a as Wm,b as Aa}from"./constants-D02ovwi8.js";import{u as Td,g as Ea,T as Rd,a as Jr,l as hn,b as Gn,c as Km}from"./tabs-DfV1qdcL.js";import{F as yi,a as gt,b as _t,c as Ht,d as xt,e as vt,f as qm}from"./form-338sOp4I.js";import{I as at}from"./input-DH-CzXJx.js";import{i as Md,u as xr,r as Dd}from"./shell-layout-Bd7V-GQY.js";import{D as Qe,a as Qr,b as Zr,c as cs,d as ds,e as hs,f as Pd,g as Ld,h as xl}from"./dropdown-menu-C-rtkqLf.js";import{s as Os,i as Od}from"./XClose-B4M7R7X8.js";import{t as Gm,i as Bd,n as $d,A as Qt,a as zd,b as Ia,c as Ym,d as Xm,e as Fd,f as Jm,g as Ta,h as er,j as Qm,k as Ra,s as Zm,l as ep,p as vr,m as br,o as tp,q as vl,r as bl,u as sp,v as yl,w as ip,x as Ma,y as Ud,z as Ao,B as Yn,C as Sl,D as rp,E as np,F as op,G as ap,H as Hd,I as Wd,J as Kd,K as qd,L as wl,M as lp,N as tr,O as cp,P as dp,Q as hp,R as Gd}from"./agent-icon-6Uu6lwox.js";import{n as Yd,a as Eo,i as up,b as fp,c as mp}from"./ZapSquare-B1TVYj8i.js";import{i as Mt,t as cr}from"./ChevronDown-BRURl2T5.js";import{s as vi}from"./Star01-CwajHHth.js";import{a as Io,t as Da}from"./Tool01-D25llKlN.js";import{i as Xd}from"./Lock01-CQvbe2FZ.js";import{s as Dt}from"./Plus-Mx814qi5.js";import{i as In,t as pp,a as gp,b as _p,c as Jd,d as xp,e as vp,f as Si,g as Qd}from"./XCircle-TXbF29VJ.js";import{i as Es}from"./X-BQvMOHsX.js";import{i as Bs}from"./AlertCircle-BYbLY8JK.js";import{S as Ts,a as Rs,b as Nt,c as Ms,d as Ds}from"./select-AHhRGkyu.js";import{i as Pa}from"./RefreshCcw01-Bmm2OZFs.js";import{T as Zd,a as un}from"./toggle-group-BEFyXqZD.js";import{u as La,a as eh}from"./use-ai-providers-MLk3Pb1b.js";import{m as Tn,g as bp,i as yp,a as th,M as sh,N as Sp}from"./select-model-fOLzezFa.js";import{S as wp,A as Vp,a as Cp,b as kp,c as jp,R as ih,d as Np,e as Ap}from"./accordion-CUfbS6Fc.js";import{r as rh,l as sr,u as Ep,g as Ip}from"./types-D3_Ra7Fv.js";import{u as Rn,a as $t,b as Oa}from"./use-virtual-mcp-aaTK8HuA.js";import{u as yr,a as Mn,b as Ba}from"./use-connection-CkaOLOkA.js";import{p as Tp,q as Vl}from"./question-004-sINsf4GQ.js";import{g as Cl}from"./ai-providers-logos-D6a8kmGH.js";import{g as nh,s as oh}from"./connection-slug-eyAPH6o3.js";import{u as ah,a as lh,g as Rp,C as Xn}from"./connection-card-BoKVGqSP.js";import{C as ch}from"./collection-tabs-B22z1W7w.js";import{g as dh}from"./constants-CkE3mXX3.js";import{T as To}from"./textarea-JSK2UtRe.js";import{n as en}from"./Container-DQZzI4AA.js";import{c as Mp,i as Lr,a as kl,E as Dp,p as Pp,b as Lp,d as Op}from"./connection-form-helpers-BDjJZ0p-.js";import{u as jl}from"./use-infinite-scroll-BAxtK59M.js";import{u as Bp}from"./useSuspenseInfiniteQuery-Dfyjunjm.js";import{g as $p,e as zp,a as Fp}from"./extract-connection-data-CGvP9gW4.js";import{B as Nl}from"./badge-BSF0KEBD.js";import{i as $a}from"./ChevronRight-CZmvUfnf.js";import{I as ps}from"./integration-icon-DJA_3Fr4.js";import{S as wi}from"./skeleton-CbxzlXux.js";import{u as Up}from"./use-organization-settings-BAET96Uw.js";import{a as Dn}from"./Users03-B2xVime7.js";import{G as hh,u as Hp,I as fn,S as uh,L as fh,a as mh,b as ph}from"./github-repo-picker-BAv1s-16.js";import{u as Sr,a as gh}from"./use-navigate-to-agent-51gjX2Pz.js";import{S as mn}from"./switch-BLGfVBVR.js";import{u as _h}from"./use-create-virtual-mcp-CoqQQKD_.js";import{i as Wp}from"./CheckCircle-YokVYrIX.js";import{C as Kp,a as Al,b as El,c as qp,d as Gp,e as Yp,f as Xp}from"./command-dXSQcSlQ.js";import{P as zs,a as Fs,b as Us}from"./popover-OC7XhGTw.js";import{u as ni,a as Jp}from"./use-mcp-tools-B89VuP8B.js";import{E as Vi}from"./empty-state-C0ZLSTKp.js";import{u as Qp}from"./use-decopilot-events-C20Bt8AR.js";import{i as Ci}from"./Zap-CxY8TS-o.js";import{i as xh,S as wr,a as Vr,b as es,u as Cr,c as Zt,d as Pt,e as vh,f as bh,g as Zp,h as yh,j as Sh,P as Jt,k as eg,l as tg,m as sg,n as ig,o as rg,p as ng}from"./index-CMjtYUqI.js";import{A as Il}from"./avatar-B0cDdI_p.js";import{n as og,a as ag,i as lg}from"./Sun-1eccYZOi.js";import{a as kr}from"./Settings02-dtOggDtm.js";import{i as cg}from"./Shield01-BlIkj6ml.js";import{A as za,a as Fa,b as Ua,c as Ha,d as Wa,e as Ka,f as qa,g as wh}from"./alert-dialog-C3PpULXm.js";import"./index-DgSb8QXs.js";import{u as dg,a as Tl,K as hg,P as ug,S as fg,v as mg,D as pg,c as gg,s as _g,b as xg,d as vg,C as bg,e as yg}from"./collection-search-RkDibt87.js";import{u as Vh}from"./use-tasks-DZowuTKu.js";import{u as Sg}from"./use-status-sounds-Du7S3ua5.js";import{T as wg,u as Ch}from"./tools-list-DOfn3EJA.js";import{u as Jn}from"./unwrap-tool-result-BYXdCQMg.js";import{C as Vg,a as Rl}from"./card-G-uvOmaX.js";import{L as ir}from"./label-BMXaeGTS.js";import{i as tn}from"./Play-BwrtIjN9.js";import{s as Ro}from"./Trash01-D1oxn083.js";import{i as kh,a as Cg}from"./SearchMd-CHEkvskM.js";import{C as kg}from"./checkbox-BtVeTd73.js";import{n as oi}from"./LinkExternal01-tSCOf-pQ.js";import{V as jg}from"./view-mode-toggle-BRLuTNh9.js";import{U as Ng}from"./user-BGPKZele.js";import{u as jr,a as Ag,b as Eg,c as Ig,A as Tg,d as Rg}from"./automation-list-row-R7WEZP_X.js";import{S as Mg}from"./search-input-A-4PeF_2.js";import"./use-collections-CIiKPdXz.js";import"./use-copy-DMw5YQy5.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./content-blocks-o63cs2vh.js";import"./DotsVertical-D5rWkx3C.js";import"./required-auth-layout-CBJCEsxt.js";import"./use-org-sso-CMd7BViF.js";import"./ArrowNarrowLeft-CcXLWn5B.js";import"./ArrowUpRight-BYnm98Tt.js";import"./ChevronUp-VkkFTpbv.js";import"./Palette-DZWPAJiP.js";import"./User01-Dg6LRSNl.js";import"./settings-section-BhzOkUnI.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./use-registry-connections-yAbn5ElM.js";import"./useInfiniteQuery-Emg6p2ky.js";import"./infiniteQueryObserver-CFInfc2M.js";import"./collections-BGqKPyxO.js";import"./index-D47or-uW.js";import"./create-sse-subscription-CxkOgzKf.js";function Dg(t,e){const s=bt(e);return Pg({filters:{...t,status:"pending"}},s).length}function Ml(t,e){return t.findAll(e.filters).map(s=>e.select?e.select(s):s.state)}function Pg(t={},e){const s=bt(e).getMutationCache(),i=j.useRef(t),n=j.useRef(null);return n.current===null&&(n.current=Ml(s,t)),j.useEffect(()=>{i.current=t}),j.useSyncExternalStore(j.useCallback(o=>s.subscribe(()=>{const a=wf(n.current,Ml(s,i.current));n.current!==a&&(n.current=a,Vf.schedule(o))}),[s]),()=>n.current,()=>n.current)}function Lg(t,e){const s=B.c(37),{org:i,locator:n}=xe();let o;s[0]!==i.id?(o={connectionId:yt,orgId:i.id},s[0]=i.id,s[1]=o):o=s[1];const a=Ae(o),l=bt();let c;s[2]!==t||s[3]!==i.id?(c=Ze.ensureTask(i.id,t),s[2]=t,s[3]=i.id,s[4]=c):c=s[4];let d;s[5]!==a||s[6]!==t?(d=async()=>(await a.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}})).structuredContent?.item??null,s[5]=a,s[6]=t,s[7]=d):d=s[7];let u;s[8]!==c||s[9]!==d?(u={queryKey:c,queryFn:d,retry:!1,refetchOnWindowFocus:!1},s[8]=c,s[9]=d,s[10]=u):u=s[10];const h=ji(u);let f;s[11]!==a||s[12]!==e?(f=async b=>{const y=await a.callTool({name:"COLLECTION_THREADS_CREATE",arguments:{data:{id:b,virtual_mcp_id:e}}});if(y.isError){const C=y.content,S=Array.isArray(C)&&C[0]&&typeof C[0]=="object"?C[0].text??"Create failed":"Create failed";throw new Error(S)}return y.structuredContent.item},s[11]=a,s[12]=e,s[13]=f):f=s[13];let m;s[14]!==n||s[15]!==i.id||s[16]!==h||s[17]!==l?(m=()=>{l.invalidateQueries({predicate:b=>b.queryKey[1]===i.id&&b.queryKey[3]==="collection"&&b.queryKey[4]==="THREADS"}),l.invalidateQueries({queryKey:Ze.tasksPrefix(n)}),h.refetch()},s[14]=n,s[15]=i.id,s[16]=h,s[17]=l,s[18]=m):m=s[18];let p;s[19]!==f||s[20]!==m?(p={mutationFn:f,onSuccess:m},s[19]=f,s[20]=m,s[21]=p):p=s[21];const g=Ni(p);let _,v;if(s[22]!==g||s[23]!==t||s[24]!==h.data||s[25]!==h.isSuccess?(_=()=>{!h.isSuccess||h.data||g.isPending||g.variables!==t&&g.mutate(t)},v=[t,h.isSuccess,h.data,g],s[22]=g,s[23]=t,s[24]=h.data,s[25]=h.isSuccess,s[26]=_,s[27]=v):(_=s[26],v=s[27]),j.useEffect(_,v),h.isLoading){let b;return s[28]===Symbol.for("react.memo_cache_sentinel")?(b={status:"loading"},s[28]=b):b=s[28],b}if(h.isError){const b=h.error;let y;return s[29]!==b?(y={status:"error",error:b},s[29]=b,s[30]=y):y=s[30],y}if(h.isSuccess&&h.data){let b;return s[31]!==h.data?(b={status:"ready",task:h.data},s[31]=h.data,s[32]=b):b=s[32],b}if(g.isPending||h.isSuccess&&!h.data){let b;return s[33]===Symbol.for("react.memo_cache_sentinel")?(b={status:"creating"},s[33]=b):b=s[33],b}if(g.isError){let b;return s[34]!==g.error?(b={status:"error",error:g.error},s[34]=g.error,s[35]=b):b=s[35],b}let x;return s[36]===Symbol.for("react.memo_cache_sentinel")?(x={status:"loading"},s[36]=x):x=s[36],x}function Og(t){const e={};for(const s of t.arguments??[])e[s.name]=s.required?pt().min(1,"Required"):pt();return as(e)}function Bg(t){const e={};for(const s of t.arguments??[])e[s.name]="";return e}function Ga(t){const e=B.c(65),{prompt:s,setPrompt:i,onSubmit:n}=t,o=j.useId();let a;if(e[0]!==s){const R=s?Og(s):as({});a=gr(R),e[0]=s,e[1]=a}else a=e[1];const c=a;let d;e[2]!==s?(d=s?Bg(s):{},e[2]=s,e[3]=d):d=e[3];let u;e[4]!==c||e[5]!==d?(u={resolver:c,defaultValues:d,mode:"onChange"},e[4]=c,e[5]=d,e[6]=u):u=e[6];const h=Ai(u);let f;e[7]!==s?.arguments?(f=s?.arguments??[],e[7]=s?.arguments,e[8]=f):f=e[8];const m=f;let p;e[9]!==h||e[10]!==n||e[11]!==i?(p=async R=>{await n(R),i(null),h.reset()},e[9]=h,e[10]=n,e[11]=i,e[12]=p):p=e[12];const g=p;let _;e[13]!==h||e[14]!==i?(_=R=>{R||(h.reset(),i(null))},e[13]=h,e[14]=i,e[15]=_):_=e[15];const v=_;if(!s)return null;let x;e[16]!==s._meta||e[17]!==s.name||e[18]!==s.title?(x=s.title||kn(s.name,Ls(s._meta)),e[16]=s._meta,e[17]=s.name,e[18]=s.title,e[19]=x):x=e[19];let b;e[20]!==x?(b=r.jsx(qt,{children:r.jsx("span",{className:"capitalize",children:x})}),e[20]=x,e[21]=b):b=e[21];let y;e[22]!==s.description?(y=s.description&&r.jsx("p",{className:"text-sm text-muted-foreground",children:s.description}),e[22]=s.description,e[23]=y):y=e[23];let V;e[24]!==y||e[25]!==b?(V=r.jsxs(Gt,{children:[b,y]}),e[24]=y,e[25]=b,e[26]=V):V=e[26];let C;e[27]!==h||e[28]!==g?(C=R=>{R.stopPropagation(),h.handleSubmit(g)(R)},e[27]=h,e[28]=g,e[29]=C):C=e[29];let S;if(e[30]!==m||e[31]!==h.control||e[32]!==h.formState.isSubmitting){let R;e[34]!==h.control||e[35]!==h.formState.isSubmitting?(R=P=>r.jsx(gt,{control:h.control,name:P.name,render:O=>{const{field:z}=O;return r.jsxs(_t,{children:[r.jsxs(Ht,{className:"text-xs",children:[P.name,P.required?null:r.jsxs("span",{className:"text-muted-foreground font-normal",children:[" ","(optional)"]})]}),r.jsx(xt,{children:r.jsx(at,{...z,value:z.value??"",required:P.required,placeholder:P.description??"",className:"h-9",disabled:h.formState.isSubmitting})}),r.jsx(vt,{})]})}},P.name),e[34]=h.control,e[35]=h.formState.isSubmitting,e[36]=R):R=e[36],S=m.map(R),e[30]=m,e[31]=h.control,e[32]=h.formState.isSubmitting,e[33]=S}else S=e[33];let w;e[37]!==v?(w=()=>v(!1),e[37]=v,e[38]=w):w=e[38];let k;e[39]!==h.formState.isSubmitting||e[40]!==w?(k=r.jsx(oe,{type:"button",variant:"ghost",onClick:w,disabled:h.formState.isSubmitting,children:"Cancel"}),e[39]=h.formState.isSubmitting,e[40]=w,e[41]=k):k=e[41];const T=!h.formState.isValid||h.formState.isSubmitting;let M;e[42]!==h.formState.isSubmitting?(M=h.formState.isSubmitting?r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(ar,{size:"xs"}),"Loading..."]}):"Use prompt",e[42]=h.formState.isSubmitting,e[43]=M):M=e[43];let I;e[44]!==o||e[45]!==T||e[46]!==M?(I=r.jsx(oe,{type:"submit",form:o,disabled:T,children:M}),e[44]=o,e[45]=T,e[46]=M,e[47]=I):I=e[47];let E;e[48]!==k||e[49]!==I?(E=r.jsxs(Na,{children:[k,I]}),e[48]=k,e[49]=I,e[50]=E):E=e[50];let N;e[51]!==o||e[52]!==C||e[53]!==S||e[54]!==E?(N=r.jsxs("form",{id:o,className:"space-y-4 py-4",autoComplete:"off",onSubmit:C,children:[S,E]}),e[51]=o,e[52]=C,e[53]=S,e[54]=E,e[55]=N):N=e[55];let A;e[56]!==h||e[57]!==N?(A=r.jsx(yi,{...h,children:N}),e[56]=h,e[57]=N,e[58]=A):A=e[58];let D;e[59]!==V||e[60]!==A?(D=r.jsxs(Ot,{className:"sm:max-w-lg max-h-[80vh] overflow-y-auto",children:[V,A]}),e[59]=V,e[60]=A,e[61]=D):D=e[61];let L;return e[62]!==v||e[63]!==D?(L=r.jsx(Bt,{open:!0,onOpenChange:v,children:D}),e[62]=v,e[63]=D,e[64]=L):L=e[64],L}function $g(t){return!t||!t.content||t.content.length===0?!0:t.content.every(e=>e.type==="paragraph"?!e.content||e.content.length===0?!0:e.content.every(s=>s.type==="hardBreak"||s.type==="text"&&(!s.text||s.text.trim()==="")):!1)}function zg(t,e){return{type:"doc",content:[...t?.content??[],e].filter(Boolean)}}const Dl=3,jh="inline-flex items-center gap-2 px-5 py-2.5 rounded-full bg-muted text-muted-foreground text-sm font-medium transition-colors cursor-pointer",Fg="flex flex-col gap-1.5 p-4 rounded-xl bg-accent/40 text-sm leading-snug transition-colors cursor-pointer text-left";function Nh(t){const e=B.c(46),{item:s,onSelect:i,isLoading:n,isDisabled:o,variant:a}=t,l=a===void 0?"pill":a,{prompt:c}=s;let d;if(e[0]!==c._meta||e[1]!==c.name||e[2]!==c.title){const S=Ls(c._meta);d=c.title??kn(c.name,S),e[0]=c._meta,e[1]=c.name,e[2]=c.title,e[3]=d}else d=e[3];const u=d,h=c.description||null;if(l==="card"){let S;e[4]!==i||e[5]!==c?(S=()=>i(c),e[4]=i,e[5]=c,e[6]=S):S=e[6];const w=o||n,k=n&&"bg-accent/40",T=(o||n)&&"cursor-not-allowed opacity-50";let M;e[7]!==k||e[8]!==T?(M=Y(Fg,"hover:bg-accent/60 text-foreground",k,T),e[7]=k,e[8]=T,e[9]=M):M=e[9];let I;e[10]!==u?(I=r.jsx("span",{className:"font-medium truncate capitalize",children:u}),e[10]=u,e[11]=I):I=e[11];let E;e[12]!==n?(E=n&&r.jsx(ar,{size:"xs"}),e[12]=n,e[13]=E):E=e[13];let N;e[14]!==I||e[15]!==E?(N=r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[I,E]}),e[14]=I,e[15]=E,e[16]=N):N=e[16];let A;e[17]!==h?(A=h&&r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:h}),e[17]=h,e[18]=A):A=e[18];let D;return e[19]!==N||e[20]!==A||e[21]!==S||e[22]!==w||e[23]!==M?(D=r.jsxs("button",{type:"button",onClick:S,disabled:w,className:M,children:[N,A]}),e[19]=N,e[20]=A,e[21]=S,e[22]=w,e[23]=M,e[24]=D):D=e[24],D}let f;e[25]!==i||e[26]!==c?(f=()=>i(c),e[25]=i,e[26]=c,e[27]=f):f=e[27];const m=o||n,p=n&&"bg-muted/50",g=(o||n)&&"cursor-not-allowed opacity-50";let _;e[28]!==p||e[29]!==g?(_=Y(jh,"hover:bg-muted/70 hover:text-foreground",p,g),e[28]=p,e[29]=g,e[30]=_):_=e[30];let v;e[31]!==u?(v=r.jsx("span",{className:"capitalize",children:u}),e[31]=u,e[32]=v):v=e[32];let x;e[33]!==n?(x=n&&r.jsx(ar,{size:"xs"}),e[33]=n,e[34]=x):x=e[34];let b;e[35]!==f||e[36]!==m||e[37]!==_||e[38]!==v||e[39]!==x?(b=r.jsx(qe,{asChild:!0,children:r.jsxs("button",{type:"button",onClick:f,disabled:m,className:_,children:[v,x]})}),e[35]=f,e[36]=m,e[37]=_,e[38]=v,e[39]=x,e[40]=b):b=e[40];const y=h??u;let V;e[41]!==y?(V=r.jsx(Ge,{side:"top",className:"max-w-xs",children:r.jsx("p",{className:"text-xs",children:y})}),e[41]=y,e[42]=V):V=e[42];let C;return e[43]!==b||e[44]!==V?(C=r.jsxs(Ye,{delayDuration:400,children:[b,V]}),e[43]=b,e[44]=V,e[45]=C):C=e[45],C}function Ug(t){const e=B.c(41),{items:s,open:i,onOpenChange:n,onSelect:o,loadingPrompt:a}=t,[l,c]=j.useState(""),d=!!a;let u;e[0]!==s||e[1]!==l?(u=l.trim()?s.filter(w=>{const k=l.toLowerCase();return w.prompt.name.toLowerCase().includes(k)||(w.prompt.title??"").toLowerCase().includes(k)||(w.prompt.description??"").toLowerCase().includes(k)}):s,e[0]=s,e[1]=l,e[2]=u):u=e[2];const h=u,f=ms();let m;e[3]!==h.length||e[4]!==l?(m=h.length===0&&r.jsxs("p",{className:"col-span-4 text-sm text-muted-foreground text-center py-8",children:["No prompts match “",l,"”"]}),e[3]=h.length,e[4]=l,e[5]=m):m=e[5];let p;if(e[6]!==h||e[7]!==d||e[8]!==a?.name||e[9]!==n||e[10]!==o){let w;e[12]!==d||e[13]!==a?.name||e[14]!==n||e[15]!==o?(w=k=>r.jsx(Nh,{item:k,variant:"card",onSelect:T=>{n(!1),o(T)},isLoading:a?.name===k.prompt.name,isDisabled:d&&a?.name!==k.prompt.name},k.prompt.name),e[12]=d,e[13]=a?.name,e[14]=n,e[15]=o,e[16]=w):w=e[16],p=h.map(w),e[6]=h,e[7]=d,e[8]=a?.name,e[9]=n,e[10]=o,e[11]=p}else p=e[11];let g;e[17]!==m||e[18]!==p?(g=r.jsx("div",{className:"flex-1 overflow-y-auto [scrollbar-gutter:stable]",children:r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3 p-5",children:[m,p]})}),e[17]=m,e[18]=p,e[19]=g):g=e[19];const _=g;let v;e[20]===Symbol.for("react.memo_cache_sentinel")?(v=w=>{w.key==="Escape"&&c("")},e[20]=v):v=e[20];let x;e[21]!==l?(x=r.jsx(Id,{value:l,onChange:c,placeholder:"Search prompts...",onKeyDown:v}),e[21]=l,e[22]=x):x=e[22];const b=x;if(f){let w;e[23]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx(An,{className:"sr-only",children:r.jsx(si,{children:"All prompts"})}),e[23]=w):w=e[23];let k;e[24]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 shrink-0",children:r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Prompts"})}),e[24]=k):k=e[24];let T;e[25]!==_||e[26]!==b?(T=r.jsxs(ii,{className:"h-[85vh] flex flex-col p-0 gap-0",children:[w,k,b,_]}),e[25]=_,e[26]=b,e[27]=T):T=e[27];let M;return e[28]!==n||e[29]!==i||e[30]!==T?(M=r.jsx(bi,{delayDuration:400,children:r.jsx(ri,{open:i,onOpenChange:n,children:T})}),e[28]=n,e[29]=i,e[30]=T,e[31]=M):M=e[31],M}let y;e[32]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(Gt,{className:"sr-only",children:r.jsx(qt,{children:"All prompts"})}),e[32]=y):y=e[32];let V;e[33]===Symbol.for("react.memo_cache_sentinel")?(V=r.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 shrink-0",children:r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Prompts"})}),e[33]=V):V=e[33];let C;e[34]!==_||e[35]!==b?(C=r.jsxs(Ot,{className:"sm:max-w-[1100px] h-[680px] p-0 gap-0 overflow-hidden flex flex-col",children:[y,V,b,_]}),e[34]=_,e[35]=b,e[36]=C):C=e[36];let S;return e[37]!==n||e[38]!==i||e[39]!==C?(S=r.jsx(bi,{delayDuration:400,children:r.jsx(Bt,{open:i,onOpenChange:n,children:C})}),e[37]=n,e[38]=i,e[39]=C,e[40]=S):S=e[40],S}function Hg(t){const e=B.c(29),{items:s,onSelect:i,loadingPrompt:n,className:o}=t,[a,l]=j.useState(!1);if(s.length===0)return null;let c,d,u;if(e[0]!==s||e[1]!==n||e[2]!==i){const v=s.slice(0,Dl);let x;e[6]!==s?(x=s.slice(Dl),e[6]=s,e[7]=x):x=e[7],c=x,d=!!n;let b;e[8]!==d||e[9]!==n?.name||e[10]!==i?(b=y=>r.jsx(Nh,{item:y,onSelect:i,isLoading:n?.name===y.prompt.name,isDisabled:d&&n?.name!==y.prompt.name},y.prompt.name),e[8]=d,e[9]=n?.name,e[10]=i,e[11]=b):b=e[11],u=v.map(b),e[0]=s,e[1]=n,e[2]=i,e[3]=c,e[4]=d,e[5]=u}else c=e[3],d=e[4],u=e[5];const h=u;let f;e[12]!==o?(f=Y("w-full flex flex-wrap gap-2 justify-center",o),e[12]=o,e[13]=f):f=e[13];let m;e[14]!==c.length||e[15]!==d?(m=c.length>0&&r.jsxs("button",{type:"button",disabled:d,onClick:()=>l(!0),className:Y(jh,"hover:bg-muted/70 hover:text-foreground",d&&"opacity-50 cursor-not-allowed"),children:["+",c.length," more"]}),e[14]=c.length,e[15]=d,e[16]=m):m=e[16];let p;e[17]!==h||e[18]!==f||e[19]!==m?(p=r.jsxs("div",{className:f,children:[h,m]}),e[17]=h,e[18]=f,e[19]=m,e[20]=p):p=e[20];let g;e[21]!==s||e[22]!==n||e[23]!==a||e[24]!==i?(g=r.jsx(Ug,{items:s,open:a,onOpenChange:l,onSelect:i,loadingPrompt:n}),e[21]=s,e[22]=n,e[23]=a,e[24]=i,e[25]=g):g=e[25];let _;return e[26]!==p||e[27]!==g?(_=r.jsxs(bi,{delayDuration:400,children:[p,g]}),e[26]=p,e[27]=g,e[28]=_):_=e[28],_}function Wg(){return null}function Kg(t,e){switch(e.type){case"SELECT_PROMPT":return!e.prompt.arguments||e.prompt.arguments.length===0?{stage:"loading",prompt:e.prompt}:{stage:"idle"};case"START_LOADING":return{stage:"loading",prompt:e.prompt,arguments:e.arguments};case"RESET":return{stage:"idle"};default:return t}}function qg(t){const e=B.c(30),{connectionId:s}=t,{sendMessage:i}=Ii(),{tiptapDocRef:n}=$s(),{org:o}=xe();let a;e[0]!==s||e[1]!==o.id?(a={connectionId:s,orgId:o.id},e[0]=s,e[1]=o.id,e[2]=a):a=e[2];const l=Ae(a);let c;e[3]!==l?(c={client:l,staleTime:6e4},e[3]=l,e[4]=c):c=e[4];const{data:d}=Td(c);let u;e[5]!==d?.prompts?(u=d?.prompts??[],e[5]=d?.prompts,e[6]=u):u=e[6];const h=u;let f;e[7]!==h?(f=h.map(Gg),e[7]=h,e[8]=f):f=e[8];const m=f;let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p={stage:"idle"},e[9]=p):p=e[9];const[g,_]=j.useReducer(Kg,p),[v,x]=j.useState(null);let b;e[10]!==l||e[11]!==i||e[12]!==n?(b=async(N,A)=>{if(!l){he.error("MCP client not available"),_({type:"RESET"});return}try{const D=await Ea(l,N.name,A);_({type:"RESET"});const L=zg(n.current,{type:"paragraph",content:[pm({id:N.name,name:ka(N.name,Ls(N._meta)),metadata:D.messages,char:"/"})]});await i(L)}catch(D){console.error("[ice-breakers] Failed to fetch prompt:",D),he.error("Failed to load prompt. Please try again."),_({type:"RESET"})}},e[10]=l,e[11]=i,e[12]=n,e[13]=b):b=e[13];const y=b;let V;e[14]!==y?(V=async N=>{if(N.arguments&&N.arguments.length>0){_({type:"SELECT_PROMPT",prompt:N}),x(N);return}_({type:"START_LOADING",prompt:N}),await y(N)},e[14]=y,e[15]=V):V=e[15];const C=V;let S;e[16]!==v||e[17]!==y?(S=async N=>{v&&(_({type:"START_LOADING",prompt:v,arguments:N}),x(null),await y(v,N))},e[16]=v,e[17]=y,e[18]=S):S=e[18];const w=S;if(m.length===0)return null;const k=g.stage==="loading"?g.prompt:null;let T;e[19]!==C||e[20]!==m||e[21]!==k?(T=r.jsx(Hg,{items:m,onSelect:C,loadingPrompt:k}),e[19]=C,e[20]=m,e[21]=k,e[22]=T):T=e[22];let M;e[23]===Symbol.for("react.memo_cache_sentinel")?(M=()=>{x(null),_({type:"RESET"})},e[23]=M):M=e[23];let I;e[24]!==v||e[25]!==w?(I=r.jsx(Ga,{prompt:v,setPrompt:M,onSubmit:w}),e[24]=v,e[25]=w,e[26]=I):I=e[26];let E;return e[27]!==T||e[28]!==I?(E=r.jsxs(r.Fragment,{children:[T,I]}),e[27]=T,e[28]=I,e[29]=E):E=e[29],E}function Gg(t){return{prompt:t}}function Yg(t){const e=B.c(13),{className:s}=t,{selectedVirtualMcp:i}=$s(),{org:n}=xe();let o;e[0]!==n.id?(o=En(n.id),e[0]=n.id,e[1]=o):o=e[1];const a=o.id,l=i?.id??a;let c;e[2]!==s?(c=Y("w-full @container",s),e[2]=s,e[3]=c):c=e[3];const d=l??"default";let u;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(Wg,{}),e[4]=u):u=e[4];let h;e[5]!==l?(h=r.jsx(qg,{connectionId:l}),e[5]=l,e[6]=h):h=e[6];let f;e[7]!==d||e[8]!==h?(f=r.jsx(ls,{fallback:null,children:r.jsx(j.Suspense,{fallback:u,children:h},d)}),e[7]=d,e[8]=h,e[9]=f):f=e[9];let m;return e[10]!==c||e[11]!==f?(m=r.jsx("div",{className:c,children:f}),e[10]=c,e[11]=f,e[12]=m):m=e[12],m}function Ah(t){const e=B.c(21),{current:s,total:i,onPrev:n,onNext:o}=t;if(i<=1)return null;const a=s===0,l=s===0?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let c;e[0]!==l?(c=Y("p-0.5 rounded transition-colors",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(Pa,{size:14}),e[2]=d):d=e[2];let u;e[3]!==n||e[4]!==a||e[5]!==c?(u=r.jsx("button",{type:"button",onClick:n,disabled:a,className:c,"aria-label":"Previous question",children:d}),e[3]=n,e[4]=a,e[5]=c,e[6]=u):u=e[6];const h=s+1;let f;e[7]!==h||e[8]!==i?(f=r.jsxs("span",{className:"tabular-nums text-xs",children:[h," of ",i]}),e[7]=h,e[8]=i,e[9]=f):f=e[9];const m=s===i-1,p=s===i-1?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let g;e[10]!==p?(g=Y("p-0.5 rounded transition-colors",p),e[10]=p,e[11]=g):g=e[11];let _;e[12]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx(In,{size:14}),e[12]=_):_=e[12];let v;e[13]!==o||e[14]!==g||e[15]!==m?(v=r.jsx("button",{type:"button",onClick:o,disabled:m,className:g,"aria-label":"Next question",children:_}),e[13]=o,e[14]=g,e[15]=m,e[16]=v):v=e[16];let x;return e[17]!==v||e[18]!==u||e[19]!==f?(x=r.jsxs("div",{className:"flex items-center gap-1 text-sm text-muted-foreground",children:[u,f,v]}),e[17]=v,e[18]=u,e[19]=f,e[20]=x):x=e[20],x}function pn(t){const e=B.c(18),{title:s,children:i,footerLeft:n,footerRight:o,className:a}=t,l=a??"border-border";let c;e[0]!==l?(c=Y("flex flex-col rounded-xl bg-background border shadow-md w-[calc(100%-16px)] max-w-[584px] mx-auto mb-[-16px]",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]!==s?(d=r.jsx("div",{className:"flex items-center gap-2 p-4",children:r.jsx("p",{className:"flex-1 text-base font-medium text-foreground min-w-0",children:s})}),e[2]=s,e[3]=d):d=e[3];let u;e[4]!==i?(u=r.jsx("div",{className:"overflow-clip pb-4",children:i}),e[4]=i,e[5]=u):u=e[5];let h;e[6]!==n?(h=r.jsx("div",{children:n}),e[6]=n,e[7]=h):h=e[7];let f;e[8]!==o?(f=r.jsx("div",{className:"flex items-center gap-2",children:o}),e[8]=o,e[9]=f):f=e[9];let m;e[10]!==h||e[11]!==f?(m=r.jsx("div",{className:"border-t border-border px-3 py-3 pb-6",children:r.jsxs("div",{className:"flex items-center justify-between",children:[h,f]})}),e[10]=h,e[11]=f,e[12]=m):m=e[12];let p;return e[13]!==c||e[14]!==d||e[15]!==u||e[16]!==m?(p=r.jsxs("div",{className:c,children:[d,u,m]}),e[13]=c,e[14]=d,e[15]=u,e[16]=m,e[17]=p):p=e[17],p}const Xg="User denied this tool call, give other alternatives.",Jg=[{value:"readonly",label:"Ask before edit"},{value:"auto",label:"Auto approve"}];function Qg(t){const e=B.c(9),{onYolo:s}=t,[i,n]=ei();let o;e[0]!==s||e[1]!==i||e[2]!==n?(o=u=>{const h=u;n({...i,toolApprovalLevel:h}),h==="auto"&&s()},e[0]=s,e[1]=i,e[2]=n,e[3]=o):o=e[3];const a=o;let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Ms,{size:"xs",className:"text-xs text-muted-foreground border-border/60 bg-transparent hover:bg-accent/60 h-7 gap-1",onClick:e_,children:r.jsx(Ds,{})}),e[4]=l):l=e[4];let c;e[5]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(Ts,{children:Jg.map(Zg)}),e[5]=c):c=e[5];let d;return e[6]!==a||e[7]!==i.toolApprovalLevel?(d=r.jsxs(Rs,{value:i.toolApprovalLevel,onValueChange:a,children:[l,c]}),e[6]=a,e[7]=i.toolApprovalLevel,e[8]=d):d=e[8],d}function Zg(t){return r.jsx(Nt,{value:t.value,children:t.label},t.value)}function e_(t){return t.stopPropagation()}function t_(t){const e=B.c(5),{input:s}=t;if(s==null){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"px-4 text-xs text-muted-foreground",children:"No input"}),e[0]=o):o=e[0],o}let i;try{let o;e[1]!==s?(o=JSON.stringify(s,null,2),e[1]=s,e[2]=o):o=e[2],i=o}catch{i=String(s)}let n;return e[3]!==i?(n=r.jsx("div",{className:"px-4",children:r.jsx("pre",{className:"text-xs font-mono text-muted-foreground/70 whitespace-pre-wrap wrap-break-word max-h-32 overflow-y-auto rounded-md bg-muted/30 px-3 py-2",children:i})}),e[3]=i,e[4]=n):n=e[4],n}function s_(t){const e=B.c(42),{approvals:s,onRespond:i}=t,[n,o]=j.useState(0),a=Math.min(n,s.length-1),l=s[a];if(!l)return null;let c;e[0]!==l.approvalId||e[1]!==i?(c=()=>{i(l.approvalId,!1,Xg)},e[0]=l.approvalId,e[1]=i,e[2]=c):c=e[2];const d=c;let u;e[3]!==l.approvalId||e[4]!==i?(u=()=>{i(l.approvalId,!0)},e[3]=l.approvalId,e[4]=i,e[5]=u):u=e[5];const h=u;let f;e[6]!==s||e[7]!==i?(f=()=>{for(const E of s)i(E.approvalId,!0)},e[6]=s,e[7]=i,e[8]=f):f=e[8];const m=f;let p;e[9]!==a?(p=()=>{a>0&&o(a-1)},e[9]=a,e[10]=p):p=e[10];const g=p;let _;e[11]!==s.length||e[12]!==a?(_=()=>{a<s.length-1&&o(a+1)},e[11]=s.length,e[12]=a,e[13]=_):_=e[13];const v=_;let x;e[14]!==m?(x=r.jsx(Qg,{onYolo:m}),e[14]=m,e[15]=x):x=e[15];let b;e[16]!==s.length||e[17]!==v||e[18]!==g||e[19]!==a?(b=r.jsx(Ah,{current:a,total:s.length,onPrev:g,onNext:v}),e[16]=s.length,e[17]=v,e[18]=g,e[19]=a,e[20]=b):b=e[20];let y;e[21]!==x||e[22]!==b?(y=r.jsxs("div",{className:"flex items-center gap-2",children:[x,b]}),e[21]=x,e[22]=b,e[23]=y):y=e[23];const V=y;let C;e[24]!==d?(C=r.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:d,children:"Deny"}),e[24]=d,e[25]=C):C=e[25];let S;e[26]!==s.length||e[27]!==m?(S=s.length>1&&r.jsx(oe,{type:"button",variant:"outline",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:m,children:"Accept All"}),e[26]=s.length,e[27]=m,e[28]=S):S=e[28];let w;e[29]!==h?(w=r.jsx(oe,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:h,children:"Accept"}),e[29]=h,e[30]=w):w=e[30];let k;e[31]!==S||e[32]!==w||e[33]!==C?(k=r.jsxs(r.Fragment,{children:[C,S,w]}),e[31]=S,e[32]=w,e[33]=C,e[34]=k):k=e[34];const T=k;let M;e[35]!==l.input?(M=r.jsx(t_,{input:l.input}),e[35]=l.input,e[36]=M):M=e[36];let I;return e[37]!==l.friendlyName||e[38]!==V||e[39]!==T||e[40]!==M?(I=r.jsx(pn,{title:l.friendlyName,footerLeft:V,footerRight:T,children:M}),e[37]=l.friendlyName,e[38]=V,e[39]=T,e[40]=M,e[41]=I):I=e[41],I}function i_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(Gm,{className:"size-5 text-muted-foreground shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing approval request..."})]}),t[0]=e):e=t[0],e}function r_(t){const e=B.c(4),{approvals:s,isStreaming:i,onRespond:n}=t;if(i&&s.length===0){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(i_,{}),e[0]=a):a=e[0],a}if(s.length===0)return null;let o;return e[1]!==s||e[2]!==n?(o=r.jsx(s_,{approvals:s,onRespond:n}),e[1]=s,e[2]=n,e[3]=o):o=e[3],o}function n_(t){const e=[];for(const s of t)if("state"in s&&s.state==="approval-requested"&&"approval"in s&&s.approval?.id&&"toolCallId"in s&&s.toolCallId){const i="toolName"in s&&typeof s.toolName=="string"?s.toolName:s.type.startsWith("tool-")?s.type.replace("tool-",""):"Tool";e.push({approvalId:s.approval.id,toolCallId:s.toolCallId,toolName:i,friendlyName:ko(gm(i)),input:s.input})}return e}function o_(t){const e=B.c(15),{plan:s,onApprove:i,onDismiss:n}=t;let o;e[0]!==i||e[1]!==s.plan?(o=()=>{i(s.plan)},e[0]=i,e[1]=s.plan,e[2]=o):o=e[2];const a=o;let l;e[3]!==n?(l=r.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:n,children:"Keep iterating"}),e[3]=n,e[4]=l):l=e[4];let c;e[5]!==a?(c=r.jsx(oe,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs bg-purple-600 hover:bg-purple-700 text-white active:scale-[0.97] transition-transform",onClick:a,children:"Let's go"}),e[5]=a,e[6]=c):c=e[6];let d;e[7]!==l||e[8]!==c?(d=r.jsxs(r.Fragment,{children:[l,c]}),e[7]=l,e[8]=c,e[9]=d):d=e[9];const u=d;let h;e[10]!==s.plan?(h=r.jsx("div",{className:"px-4 max-h-64 overflow-y-auto",children:r.jsx("div",{className:"prose prose-sm max-w-none text-sm",children:r.jsx(_m,{id:"plan-preview",part:{type:"text",text:s.plan}})})}),e[10]=s.plan,e[11]=h):h=e[11];let f;return e[12]!==u||e[13]!==h?(f=r.jsx(pn,{title:"Implementation Plan",footerRight:u,className:"border-dashed border-purple-500",children:h}),e[12]=u,e[13]=h,e[14]=f):f=e[14],f}function a_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed border-purple-500/30 rounded-lg bg-purple-500/5 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(Mt,{className:"size-5 text-purple-500 shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing plan..."})]}),t[0]=e):e=t[0],e}function l_(t){const e=B.c(7),{plans:s,isStreaming:i,onApprove:n,onDismiss:o}=t;if(i&&s.length===0){let d;return e[0]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(a_,{}),e[0]=d):d=e[0],d}let a;e[1]!==s?(a=s.at(-1),e[1]=s,e[2]=a):a=e[2];const l=a;if(!l)return null;let c;return e[3]!==l||e[4]!==n||e[5]!==o?(c=r.jsx(o_,{plan:l,onApprove:n,onDismiss:o}),e[3]=l,e[4]=n,e[5]=o,e[6]=c):c=e[6],c}function c_(t){const e=[];for(const s of t)if("type"in s&&s.type==="tool-propose_plan"&&"state"in s&&s.state==="input-available"&&"toolCallId"in s&&"input"in s){const i=s.input;e.push({toolCallId:s.toolCallId,plan:i.plan,state:s.state})}return e}const Pl=as({response:pt().min(1,"Response is required")}),d_=as({response:pt().min(1,"Please select or enter an option")}),h_=as({response:Cf(["yes","no"])});function u_(t){switch(t.type){case"text":return Pl;case"choice":return d_;case"confirm":return h_;default:return Pl}}function f_(t){const e={};for(const s of t)e[s.toolCallId]=u_(s.input);return as(e)}function m_(t){const e=B.c(6),{control:s,name:i,placeholder:n}=t;let o;e[0]!==n?(o=l=>{const{field:c}=l;return r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsx("div",{className:"px-2",children:r.jsxs("div",{className:"flex items-center gap-3 px-2 py-3 rounded-lg bg-accent/50",children:[r.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:r.jsx(Bd,{size:16,className:"text-muted-foreground"})}),r.jsx("input",{...c,type:"text",placeholder:n||"Type your response...",autoFocus:!0,"aria-label":"Text response input",className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"})]})})}),r.jsx(vt,{})]})},e[0]=n,e[1]=o):o=e[1];let a;return e[2]!==s||e[3]!==i||e[4]!==o?(a=r.jsx(gt,{control:s,name:i,render:o}),e[2]=s,e[3]=i,e[4]=o,e[5]=a):a=e[5],a}function Eh(t,e){const s=B.c(4);let i,n;s[0]!==t||s[1]!==e?(i=()=>{const o=a=>{const l=a.target.tagName;if(l==="INPUT"||l==="TEXTAREA"||a.metaKey||a.ctrlKey||a.altKey)return;const c=Number.parseInt(a.key,10);c>=1&&c<=t&&(a.preventDefault(),e(c-1))};return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},n=[t,e],s[0]=t,s[1]=e,s[2]=i,s[3]=n):(i=s[2],n=s[3]),j.useEffect(i,n)}function p_(t){const e=B.c(9),{control:s,name:i,options:n}=t,[o,a]=j.useState(!1),l=j.useRef(null),c=j.useRef(null);let d;if(e[0]!==n?(d=f=>{c.current?.onChange(n[f]??""),a(!1)},e[0]=n,e[1]=d):d=e[1],Eh(n.length,d),n.length===0)return null;let u;e[2]!==o||e[3]!==n?(u=f=>{const{field:m}=f;c.current=m;const p=o||!!m.value&&!n.includes(m.value);return r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsxs("div",{className:"flex flex-col px-2",role:"group","aria-label":"Choice options",children:[n.map((g,_)=>{const v=m.value===g;return r.jsxs("button",{type:"button",onClick:()=>{m.onChange(g??""),a(!1)},className:Y("flex items-center gap-3 px-2 py-3 rounded-lg text-left transition-colors w-full",v&&"bg-accent/50",!v&&"hover:bg-accent/30"),"aria-label":`Select ${g}`,children:[r.jsx("span",{className:Y("flex items-center justify-center size-6 rounded-md text-sm shrink-0",v?"bg-chart-1 text-white":"bg-muted text-foreground"),children:_+1}),r.jsx("span",{className:"text-sm text-foreground truncate",children:g})]},`${_}-${g}`)}),r.jsxs("div",{className:Y("flex items-center gap-3 px-2 py-3 rounded-lg transition-colors w-full cursor-text",p&&"bg-accent/50",!p&&"hover:bg-accent/30"),onClick:()=>{a(!0),n.includes(m.value)&&m.onChange(""),setTimeout(()=>l.current?.focus(),0)},children:[r.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:r.jsx(Bd,{size:16,className:"text-muted-foreground"})}),p?r.jsx("input",{ref:l,type:"text",value:m.value,onChange:g=>m.onChange(g.target.value),placeholder:"Something else...",autoFocus:!0,"aria-label":"Custom choice input",className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"}):r.jsx("span",{className:"text-sm text-foreground/25",children:"Something else..."})]})]})}),r.jsx(vt,{})]})},e[2]=o,e[3]=n,e[4]=u):u=e[4];let h;return e[5]!==s||e[6]!==i||e[7]!==u?(h=r.jsx(gt,{control:s,name:i,render:u}),e[5]=s,e[6]=i,e[7]=u,e[8]=h):h=e[8],h}function g_(t){const e=B.c(6),{control:s,name:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=["yes","no"],e[0]=n):n=e[0];const o=n,a=j.useRef(null);let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=u=>{a.current?.onChange(o[u]??"")},e[1]=l):l=e[1],Eh(o.length,l);let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=u=>{const{field:h}=u;return a.current=h,r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsx("div",{className:"flex gap-2 px-2",role:"group","aria-label":"Confirmation options",children:o.map(f=>{const m=h.value===f;return r.jsxs("button",{type:"button",onClick:()=>h.onChange(f),className:Y("flex items-center gap-3 px-4 py-3 rounded-lg text-left transition-colors flex-1",m&&"bg-accent/50",!m&&"hover:bg-accent/30"),"aria-label":`Confirm ${f}`,children:[r.jsx("span",{className:Y("flex items-center justify-center size-6 rounded-md text-sm shrink-0",m?"bg-chart-1 text-white":"bg-muted text-foreground"),children:f==="yes"?1:2}),r.jsx("span",{className:"text-sm text-foreground capitalize",children:f})]},f)})})}),r.jsx(vt,{})]})},e[2]=c):c=e[2];let d;return e[3]!==s||e[4]!==i?(d=r.jsx(gt,{control:s,name:i,render:c}),e[3]=s,e[4]=i,e[5]=d):d=e[5],d}function Ll(t){const e=B.c(13),{input:s,control:i,name:n}=t;switch(s.type){case"text":{let o;return e[0]!==i||e[1]!==s.default||e[2]!==n?(o=r.jsx(m_,{control:i,name:n,placeholder:s.default}),e[0]=i,e[1]=s.default,e[2]=n,e[3]=o):o=e[3],o}case"choice":{let o;e[4]!==s.options?(o=s.options?.filter(Boolean)??[],e[4]=s.options,e[5]=o):o=e[5];const a=o;let l;return e[6]!==i||e[7]!==n||e[8]!==a?(l=r.jsx(p_,{control:i,name:n,options:a}),e[6]=i,e[7]=n,e[8]=a,e[9]=l):l=e[9],l}case"confirm":{let o;return e[10]!==i||e[11]!==n?(o=r.jsx(g_,{control:i,name:n}),e[10]=i,e[11]=n,e[12]=o):o=e[12],o}default:return null}}function __({parts:t,onSubmit:e}){const[s,i]=j.useState(t[0]?.toolCallId??""),n=f_(t.map(x=>({toolCallId:x.toolCallId,input:x.input}))),o=Ai({resolver:gr(n),defaultValues:Object.fromEntries(t.map(x=>[x.toolCallId,{response:""}]))}),a=o.watch(),l=t.findIndex(x=>x.toolCallId===s),c=!!a[s]?.response,d=t.every(x=>!!a[x.toolCallId]?.response),u=x=>{for(const b of t){const y=x[b.toolCallId]?.response;y&&e(b,y)}},h=x=>t.find(b=>!x[b.toolCallId]?.response&&b.toolCallId!==s)??null,f=()=>{const x=o.getValues();if(t.every(y=>!!x[y.toolCallId]?.response))o.handleSubmit(u)();else{const y=h(x);y&&i(y.toolCallId)}},m=()=>{o.setValue(`${s}.response`,"user has skip this question"),f()},p=()=>{if(l>0){const x=t[l-1];x&&i(x.toolCallId)}},g=()=>{if(l<t.length-1){const x=t[l+1];x&&i(x.toolCallId)}},_=r.jsxs(r.Fragment,{children:[r.jsx(oe,{type:"button",variant:"outline",size:"sm",onClick:m,className:"h-7",children:"Skip"}),r.jsx(oe,{type:"button",size:"sm",disabled:!c,onClick:f,className:Y("h-7",c?"":"opacity-50"),children:d?"Submit":"Next"})]}),v=r.jsx(Ah,{current:l,total:t.length,onPrev:p,onNext:g});if(t.length===1){const x=t[0];return x?.input?r.jsx(yi,{...o,children:r.jsx("form",{onSubmit:o.handleSubmit(u),autoComplete:"off",children:r.jsx(pn,{title:x.input?.prompt??"Question",footerRight:_,children:r.jsx(Ll,{input:x.input,control:o.control,name:`${x.toolCallId}.response`})})})}):null}return r.jsx(yi,{...o,children:r.jsx("form",{onSubmit:o.handleSubmit(u),autoComplete:"off",children:r.jsx(Rd,{value:s,onValueChange:i,children:t.map(x=>r.jsx(Jr,{value:x.toolCallId,className:"mt-0",children:r.jsx(pn,{title:x.input?.prompt??"Question",footerLeft:v,footerRight:_,children:r.jsx(Ll,{input:x.input,control:o.control,name:`${x.toolCallId}.response`})})},x.toolCallId))})})})}function x_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(pp,{className:"size-5 text-muted-foreground shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing question..."})]}),t[0]=e):e=t[0],e}function Ih(t){const e=B.c(6),{userAskParts:s,isStreaming:i,onSubmit:n}=t;let o;e[0]!==s?(o=s.filter(v_),e[0]=s,e[1]=o):o=e[1];const a=o;if(i){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(x_,{}),e[2]=c):c=e[2],c}if(a.length===0)return null;let l;return e[3]!==n||e[4]!==a?(l=r.jsx(__,{parts:a,onSubmit:n}),e[3]=n,e[4]=a,e[5]=l):l=e[5],l}function v_(t){return t.state==="input-available"}const Ol=new Map;function Pn(){const{org:t}=xe(),e=Ae({connectionId:yt,orgId:t.id}),s=La(),i=s.find(_=>_.providerId==="deco"),{data:n,isLoading:o,refetch:a,isFetching:l}=ji({queryKey:Ze.aiProviderCredits(t.id,"deco"),enabled:!!i,staleTime:6e4,queryFn:async()=>{const _=await e.callTool({name:"AI_PROVIDER_CREDITS",arguments:{providerId:"deco"}});return _?.isError?null:_.structuredContent??null}}),c=n?.balanceCents??null,d=c!=null?c/100:null,u=j.useRef(new Map);if(c!=null){const _=Ol.get(t.id);u.current.get(t.id)&&_!=null&&c>_&&re("credits_topped_up_detected",{organization_id:t.id,delta_cents:c-_,previous_balance_cents:_,new_balance_cents:c}),Ol.set(t.id,c),u.current.set(t.id,!0)}const h=!!i,f=c!=null&&c>0,m=c!=null&&c===0,p=c!=null&&c===200,g=s.length>0&&s.every(_=>_.providerId==="deco");return{hasDecoKey:h,decoKeyId:i?.id??null,balanceCents:c,balanceDollars:d,hasCredits:f,isZeroBalance:m,isInitialFreeCredit:p,hasOnlyDecoProvider:g,isLoading:o,isFetching:l,refetch:a}}function b_(t){return t?t.message.startsWith("[CREDITS]"):!1}const y_={usd:[{dollars:10,label:"Starter"},{dollars:20,label:"Popular"},{dollars:100,label:"Best value"}],brl:[{dollars:50,label:"Starter"},{dollars:100,label:"Popular"},{dollars:500,label:"Best value"}]},S_=["Access to 100+ AI models","Unified API, no separate keys needed","Pay only for what you use"];function Th(t){const e=B.c(43),{onDismiss:s}=t,{org:i}=xe(),n=Oe(),{decoKeyId:o}=Pn();let a;e[0]!==i.id?(a={connectionId:yt,orgId:i.id},e[0]=i.id,e[1]=a):a=e[1];const l=Ae(a),[c,d]=j.useState(""),[u,h]=j.useState(!1),[f,m]=j.useState("usd"),p=f==="brl"?"R$":"$";let g,_;e[2]!==i.id?(g=()=>{re("credits_exhausted_shown",{organization_id:i.id})},_=[i.id],e[2]=i.id,e[3]=g,e[4]=_):(g=e[3],_=e[4]),j.useEffect(g,_);let v;e[5]!==l||e[6]!==f?(v=async R=>{const P=await l.callTool({name:"AI_PROVIDER_TOPUP_URL",arguments:{providerId:"deco",amountCents:R,currency:f}});if(P?.isError)throw new Error(P.content?.[0]?.text??"Failed to get top-up URL");return P.structuredContent?.url},e[5]=l,e[6]=f,e[7]=v):v=e[7];let x;e[8]!==s?(x=R=>{R&&window.open(R,"_blank","noopener,noreferrer"),s?.()},e[8]=s,e[9]=x):x=e[9];let b;e[10]!==v||e[11]!==x?(b={mutationFn:v,onSuccess:x,onError:C_},e[10]=v,e[11]=x,e[12]=b):b=e[12];const{mutate:y,isPending:V}=Ni(b),C=parseFloat(c),S=!isNaN(C)&&C>=1;let w;e[13]!==s?(w=R=>!R&&s?.(),e[13]=s,e[14]=w):w=e[14];let k;e[15]===Symbol.for("react.memo_cache_sentinel")?(k=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(165,149,255,0.5) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(208,236,26,0.45) 0%, transparent 100%)"],e[15]=k):k=e[15];let T;e[16]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:k.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[16]=T):T=e[16];let M;e[17]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[T,r.jsxs(Gt,{className:"relative gap-4",children:[r.jsx("img",{src:"/logos/deco%20logo.svg",alt:"Deco AI Gateway",className:"size-9 rounded-lg object-contain dark:bg-white dark:p-0.5"}),r.jsxs("div",{children:[r.jsx(qt,{className:"text-xl font-semibold tracking-tight",children:"Top up to keep building"}),r.jsx(Nn,{className:"mt-1.5 text-sm leading-relaxed",children:"Your credits are used up. Add more to continue using AI across all your agents."})]})]})]}),e[17]=M):M=e[17];let I;e[18]!==f||e[19]!==p||e[20]!==c||e[21]!==C||e[22]!==o||e[23]!==S||e[24]!==V||e[25]!==u||e[26]!==y?(I=o&&r.jsxs("div",{className:"px-8 pt-5 pb-6",children:[r.jsx("div",{className:"mb-4",children:r.jsxs(Zd,{type:"single",variant:"outline",size:"sm",value:f,onValueChange:R=>{R&&m(R)},children:[r.jsx(un,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),r.jsx(un,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"})]})}),r.jsxs("div",{className:"rounded-xl border border-border p-5",children:[r.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:y_[f].map(R=>{const{dollars:P,label:O}=R;return r.jsxs("button",{type:"button",disabled:V,onClick:()=>{re("credits_topup_clicked",{amount_cents:P*100,currency:f,tier_label:O,source:"exhausted_banner"}),y(P*100)},className:Y("relative flex flex-col items-center gap-1 py-5 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[r.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[p,P]}),r.jsx("span",{className:"text-xs text-muted-foreground",children:O})]},P)})}),u?r.jsxs("div",{className:"flex gap-2 mt-3",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:p}),r.jsx(at,{type:"number",min:"1",step:"1",placeholder:"50",value:c,onChange:R=>d(R.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),r.jsx(oe,{className:"h-10",disabled:!S||V,onClick:()=>{re("credits_topup_clicked",{amount_cents:Math.round(C*100),currency:f,tier_label:"custom",source:"exhausted_banner"}),y(Math.round(C*100))},children:V?"Opening...":"Add"})]}):r.jsx("button",{type:"button",className:"w-full mt-3 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>h(!0),children:"Enter custom amount"})]}),r.jsx("div",{className:"mt-5 rounded-xl bg-muted/25 border border-border/50 p-4 space-y-3",children:S_.map(w_)})]}),e[18]=f,e[19]=p,e[20]=c,e[21]=C,e[22]=o,e[23]=S,e[24]=V,e[25]=u,e[26]=y,e[27]=I):I=e[27];let E;e[28]!==s?(E=r.jsx(oe,{variant:"ghost",size:"sm",onClick:s,children:"Dismiss"}),e[28]=s,e[29]=E):E=e[29];let N;e[30]!==n||e[31]!==s||e[32]!==i.slug?(N=r.jsx("button",{type:"button",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:()=>{n({to:"/$org/settings/ai-providers",params:{org:i.slug}}),s?.()},children:"Manage providers"}),e[30]=n,e[31]=s,e[32]=i.slug,e[33]=N):N=e[33];let A;e[34]!==E||e[35]!==N?(A=r.jsxs("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-between",children:[E,N]}),e[34]=E,e[35]=N,e[36]=A):A=e[36];let D;e[37]!==I||e[38]!==A?(D=r.jsxs(Ot,{className:"sm:max-w-[520px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:V_,children:[M,I,A]}),e[37]=I,e[38]=A,e[39]=D):D=e[39];let L;return e[40]!==D||e[41]!==w?(L=r.jsx(Bt,{open:!0,onOpenChange:w,children:D}),e[40]=D,e[41]=w,e[42]=L):L=e[42],L}function w_(t){return r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-[hsl(var(--chart-1))]/15 shrink-0",children:r.jsx(Mt,{size:12,className:"text-[hsl(var(--chart-1))]"})}),r.jsx("span",{className:"text-sm text-foreground/80",children:t})]},t)}function V_(t){return t.preventDefault()}function C_(t){he.error(`Top-up failed: ${t.message}`)}const k_={length:"Response reached the model's output limit. Different models have different limits. Try switching models or asking it to continue.","content-filter":"Response was filtered due to content policy.","tool-calls":"Response paused after tool execution to prevent infinite loops and save costs. Click continue to keep working."};function gn(t){const e=B.c(32),{variant:s,onDismiss:i}=t,n=s==="error",o=n?"Error occurred":"Response incomplete",a=n?t.error.message:k_[t.finishReason]??`Response stopped unexpectedly: ${t.finishReason}`,l=n?"border-destructive/30 bg-destructive/5":"border-amber-500/30 bg-amber-500/5",c=n?"text-destructive":"text-amber-600 dark:text-amber-500",d=n?Bs:wa;let u;e[0]!==l?(u=Y("flex items-start gap-2 px-3 py-2.5 rounded-lg border border-dashed text-sm w-full mb-2 shadow",l),e[0]=l,e[1]=u):u=e[1];let h;e[2]!==c?(h=Y("mt-0.5 shrink-0",c),e[2]=c,e[3]=h):h=e[3];let f;e[4]!==d?(f=r.jsx(d,{size:16}),e[4]=d,e[5]=f):f=e[5];let m;e[6]!==h||e[7]!==f?(m=r.jsx("div",{className:h,children:f}),e[6]=h,e[7]=f,e[8]=m):m=e[8];let p;e[9]!==c?(p=Y("text-xs mb-1 font-medium",c),e[9]=c,e[10]=p):p=e[10];let g;e[11]!==p||e[12]!==o?(g=r.jsx("div",{className:p,children:o}),e[11]=p,e[12]=o,e[13]=g):g=e[13];let _;e[14]!==a?(_=r.jsx("div",{className:"text-xs line-clamp-2 text-muted-foreground mb-2",children:a}),e[14]=a,e[15]=_):_=e[15];let v;e[16]!==n||e[17]!==t.onContinue||e[18]!==t.onFixInChat?(v=r.jsx("div",{className:"flex gap-2",children:n?r.jsxs(r.Fragment,{children:[r.jsx(oe,{size:"sm",variant:"outline",onClick:t.onFixInChat,className:"h-7 text-xs",children:"Fix in chat"}),r.jsx(oe,{size:"sm",variant:"outline",disabled:!0,className:"h-7 text-xs",children:"Report"})]}):r.jsx(oe,{size:"sm",variant:"outline",onClick:t.onContinue,className:"h-7 text-xs",children:"Continue"})}),e[16]=n,e[17]=t.onContinue,e[18]=t.onFixInChat,e[19]=v):v=e[19];let x;e[20]!==g||e[21]!==_||e[22]!==v?(x=r.jsxs("div",{className:"flex-1 min-w-0",children:[g,_,v]}),e[20]=g,e[21]=_,e[22]=v,e[23]=x):x=e[23];let b;e[24]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Es,{size:14}),e[24]=b):b=e[24];let y;e[25]!==i?(y=r.jsx("button",{type:"button",onClick:i,className:"text-muted-foreground hover:text-foreground transition-colors shrink-0",title:"Dismiss",children:b}),e[25]=i,e[26]=y):y=e[26];let V;return e[27]!==u||e[28]!==y||e[29]!==m||e[30]!==x?(V=r.jsx("div",{className:"px-0.5",children:r.jsxs("div",{className:u,children:[m,x,y]})}),e[27]=u,e[28]=y,e[29]=m,e[30]=x,e[31]=V):V=e[31],V}function Ln(){const t=B.c(41),{error:e,clearError:s,finishReason:i,clearFinishReason:n,messages:o,isStreaming:a,isWaitingForApprovals:l,addToolOutput:c,addToolApprovalResponse:d,sendMessage:u}=Ii(),[h,f]=ei(),{virtualMcpId:m,createTaskWithMessage:p}=Lt();let g,_,v,x;if(t[0]!==o){const A=o.at(-1);x=A?.role==="assistant"?A.parts.filter(A_):null,g=x?.filter(N_)?.length,_=A?.role==="assistant"?c_(A.parts):[],v=A?.role==="assistant"?n_(A.parts):[],t[0]=o,t[1]=g,t[2]=_,t[3]=v,t[4]=x}else g=t[1],_=t[2],v=t[3],x=t[4];const b=v;let y;t[5]!==e||t[6]!==u?(y=()=>{if(e){const D={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:`I encountered this error: ${e.message}. Can you help me fix it?`}]}]};u(D)}},t[5]=e,t[6]=u,t[7]=y):y=t[7];const V=y;let C;t[8]!==u?(C=()=>{u({type:"doc",content:[{type:"paragraph",content:[{type:"text",text:"Please continue."}]}]})},t[8]=u,t[9]=C):C=t[9];const S=C;let w;t[10]!==c?(w=(A,D)=>{c({tool:"user_ask",toolCallId:A.toolCallId,output:{response:D}})},t[10]=c,t[11]=w):w=t[11];const k=w;let T;t[12]!==p||t[13]!==h||t[14]!==f||t[15]!==m?(T=A=>{f({...h,toolApprovalLevel:"auto"}),p({virtualMcpId:m,message:{parts:[{type:"text",text:`Implement this plan:
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/project-app-view-7T_TcCNb.js","assets/index-DKd6U8ZD.js","assets/index-BZi9riJ2.css","assets/task-status-CPd-pzw_.js","assets/agent-icon-DtvDglSH.js","assets/AlertCircle-BJZjcLR8.js","assets/Tool01-By8ElVEn.js","assets/XClose-Bnw2tzQy.js","assets/RefreshCcw01-BEGaV3W5.js","assets/ArrowNarrowLeft-Yoaq7-cz.js","assets/XCircle-Ce7DOyui.js","assets/ArrowUpRight-DoZ1aCQb.js","assets/ZapSquare-CsTKlylz.js","assets/Users03-CKRT_0yR.js","assets/CheckCircle-BbLUS0ek.js","assets/ChevronDown-CGHjchOw.js","assets/ChevronRight-Do3Je1ER.js","assets/ChevronUp-dSBPqUJ1.js","assets/DotsVertical-BxL7Owtq.js","assets/Container-CDgY_XYz.js","assets/Star01-CIsSx9uE.js","assets/Palette-CWiKw0AC.js","assets/SearchMd-fRD_HHud.js","assets/index-Bgh3Fg-W.js","assets/use-mobile-DrlR5BbG.js","assets/X-DXjTCsIF.js","assets/LinkExternal01-DxLyrYeW.js","assets/Lock01-BI0K2L_g.js","assets/Sun-CgyDUxcQ.js","assets/Play-C7K9es-c.js","assets/Plus-BpCTKUfi.js","assets/Settings02-DtQ4_bLf.js","assets/Shield01-Di_q_zxl.js","assets/Trash01-BzOKZIoE.js","assets/User01-B6EEMzxh.js","assets/Zap-BEX7Xuxl.js","assets/scroll-area-UNfVJI8t.js","assets/select-CIfh_MBY.js","assets/use-copy-CDfDyhwS.js","assets/differenceInSeconds-NQ4PDo0z.js","assets/dialog-Dh1iMW0s.js","assets/content-blocks-o63cs2vh.js","assets/types-DqiNUavs.js","assets/constants-C9aLxYHE.js","assets/chat-context-w7qWGRrL.js","assets/use-virtual-mcp-G7jm3TGl.js","assets/use-collections-DpIHOTql.js","assets/use-ai-providers-D5Tufg2O.js","assets/use-decopilot-events-CN5jq2Ax.js","assets/create-sse-subscription-CxkOgzKf.js","assets/use-tasks-BGCdXCFh.js","assets/use-organization-settings-DoI0c_Gi.js","assets/shell-layout-CcnEVz8S.js","assets/required-auth-layout-C9I2Cbbq.js","assets/use-org-sso-CWrx0G98.js","assets/integration-icon-wh5nd5gB.js","assets/use-mcp-tools-qxi4PxSc.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as bt,r as j,p as Vf,q as Cf,e as B,s as xe,K as Ze,n as ji,a as Ni,v as as,w as gr,x as Ai,j as r,B as oe,y as pt,c as Y,E as ls,z as he,C as ei,_ as kf,t as re,f as Oe,D as wa,F as jf,R as vd,G as Nf,H as rs,I as Kn,J as Ei,L as Af,M as qn,P as Ef,Q as If,T as Tf,U as Rf,V as bd,W as Mf,X as Df,Y as Pf,Z as Lf,$ as pl,l as Ne,b as dt,u as Of,a0 as Zi,a1 as Yr,a2 as Va,a3 as Ca,g as _r,a4 as yd,d as ti,a5 as Bf,a6 as $f,a7 as zf,a8 as Ff,a9 as Sd,aa as wd,ab as Uf,ac as Hf,ad as Wf,ae as Kf,af as qf,ag as Gf,ah as Yf,ai as Li,aj as Xf,ak as Jf,al as Qf,am as Zf,an as Vd,ao as em,ap as tm,aq as sm,ar as im,as as rm,at as nm,au as om,av as am,aw as lm,ax as cm,ay as Cd,az as Xr,aA as dm,aB as pi,aC as Pr,aD as kd,aE as hm,aF as um}from"./index-DKd6U8ZD.js";import{u as $s,a as Ii,b as Lt,A as fm,C as mm,t as jd,c as Co,d as pm,e as Cn,f as gl}from"./chat-context-w7qWGRrL.js";import{d as kn,g as Ls,c as gm,s as ka,t as ko,a as _m,M as xm,i as vm,b as or,e as bm,F as ym,f as Nd,S as Sm,u as wm,h as _l,j as Vm,k as Cm,l as jo,r as km,m as jm,p as Ad,n as Nm,o as Am,q as ja,G as Em,L as Im,v as Tm,w as Rm,x as Mm,y as Dm}from"./task-status-CPd-pzw_.js";import{S as ar,u as jn,P as No,a as Pm,b as Lm,c as Om,E as Bm,i as $m,d as zm,e as Ed}from"./scroll-area-UNfVJI8t.js";import{T as bi,u as ms,a as qe,b as Ge,c as Ye}from"./use-mobile-DrlR5BbG.js";import{D as qt,a as Gt,b as Na,c as Ot,d as Bt,e as Nn}from"./dialog-Dh1iMW0s.js";import{D as An,a as si,b as ii,c as ri,d as Fm,e as Um,f as Hm}from"./drawer-BVsQgzeD.js";import{C as Id}from"./collection-search-9iq4cHBD.js";import{S as yt,u as Ae,g as En,i as lr,c as Wm,W as jt,a as Km,b as Aa}from"./constants-C9aLxYHE.js";import{u as Td,g as Ea,T as Rd,a as Jr,l as hn,b as Gn,c as qm}from"./tabs-CgpYNCZH.js";import{F as yi,a as gt,b as _t,c as Ht,d as xt,e as vt,f as Gm}from"./form-D1t1amOF.js";import{I as at}from"./input-rXpcOW54.js";import{i as Md,u as xr,r as Dd}from"./shell-layout-CcnEVz8S.js";import{D as Qe,a as Qr,b as Zr,c as cs,d as ds,e as hs,f as Pd,g as Ld,h as xl}from"./dropdown-menu-BFB_BhxE.js";import{s as Os,i as Od}from"./XClose-Bnw2tzQy.js";import{t as Ym,i as Bd,n as $d,A as Qt,a as zd,b as Ia,c as Xm,d as Jm,e as Fd,f as Qm,g as Ta,h as er,j as Zm,k as Ra,s as ep,l as tp,p as vr,m as br,o as sp,q as vl,r as bl,u as ip,v as yl,w as rp,x as Ma,y as Ud,z as Ao,B as Yn,C as Sl,D as np,E as op,F as ap,G as lp,H as Hd,I as Wd,J as Kd,K as qd,L as wl,M as cp,N as tr,O as dp,P as hp,Q as up,R as Gd}from"./agent-icon-DtvDglSH.js";import{n as Yd,a as Eo,i as fp,b as mp,c as pp}from"./ZapSquare-CsTKlylz.js";import{i as Mt,t as cr}from"./ChevronDown-CGHjchOw.js";import{s as vi}from"./Star01-CIsSx9uE.js";import{a as Io,t as Da}from"./Tool01-By8ElVEn.js";import{i as Xd}from"./Lock01-BI0K2L_g.js";import{s as Dt}from"./Plus-BpCTKUfi.js";import{i as In,t as gp,a as _p,b as xp,c as Jd,d as vp,e as bp,f as Si,g as Qd}from"./XCircle-Ce7DOyui.js";import{i as Es}from"./X-DXjTCsIF.js";import{i as Bs}from"./AlertCircle-BJZjcLR8.js";import{S as Ts,a as Rs,b as Nt,c as Ms,d as Ds}from"./select-CIfh_MBY.js";import{i as Pa}from"./RefreshCcw01-BEGaV3W5.js";import{T as Zd,a as un}from"./toggle-group-DIrVgcK0.js";import{u as La,a as eh}from"./use-ai-providers-D5Tufg2O.js";import{m as Tn,g as yp,i as Sp,a as th,M as sh,N as wp}from"./select-model-BuijBTi2.js";import{S as Vp,A as Cp,a as kp,b as jp,c as Np,R as ih,d as Ap,e as Ep}from"./accordion-rxim1ZAp.js";import{r as rh,l as sr,u as Ip,g as Tp}from"./types-DqiNUavs.js";import{u as Rn,a as $t,b as Oa}from"./use-virtual-mcp-G7jm3TGl.js";import{u as yr,a as Mn,b as Ba}from"./use-connection-1SSSHaHs.js";import{p as Rp,q as Vl}from"./question-004-sINsf4GQ.js";import{g as Cl}from"./ai-providers-logos-D6a8kmGH.js";import{g as nh,s as oh}from"./connection-slug-eyAPH6o3.js";import{u as ah,a as lh,g as Mp,C as Xn}from"./connection-card-CzIrL4EL.js";import{C as ch}from"./collection-tabs-DQLxqY5f.js";import{g as dh}from"./constants-3nmHZB7k.js";import{T as To}from"./textarea-CVs7u-e-.js";import{n as en}from"./Container-CDgY_XYz.js";import{c as Dp,i as Lr,a as kl,E as Pp,p as Lp,b as Op,d as Bp}from"./connection-form-helpers-CkuYmS0Y.js";import{u as jl}from"./use-infinite-scroll-DknIuIQ2.js";import{u as $p}from"./useSuspenseInfiniteQuery-BBJXEpEL.js";import{g as zp,e as Fp,a as Up}from"./extract-connection-data-DTYSYxBG.js";import{B as Nl}from"./badge-DBxFBhAO.js";import{i as $a}from"./ChevronRight-Do3Je1ER.js";import{I as ps}from"./integration-icon-wh5nd5gB.js";import{S as wi}from"./skeleton-DWxGcluE.js";import{u as Hp}from"./use-organization-settings-DoI0c_Gi.js";import{a as Dn}from"./Users03-CKRT_0yR.js";import{G as hh,u as Wp,I as fn,S as uh,L as fh,a as mh,b as ph}from"./github-repo-picker-DSEipb9O.js";import{u as Sr,a as gh}from"./use-navigate-to-agent-DlV84y97.js";import{S as mn}from"./switch-CWaKO_3R.js";import{u as _h}from"./use-create-virtual-mcp-Bkn7rT3M.js";import{i as Kp}from"./CheckCircle-BbLUS0ek.js";import{C as qp,a as Al,b as El,c as Gp,d as Yp,e as Xp,f as Jp}from"./command-YWTBTzZ-.js";import{P as zs,a as Fs,b as Us}from"./popover-oHy7A2NB.js";import{u as ni,a as Qp}from"./use-mcp-tools-qxi4PxSc.js";import{E as Vi}from"./empty-state-DaBJGn03.js";import{u as Zp}from"./use-decopilot-events-CN5jq2Ax.js";import{i as Ci}from"./Zap-BEX7Xuxl.js";import{i as xh,S as wr,a as Vr,b as es,u as Cr,c as Zt,d as Pt,e as vh,f as bh,g as eg,h as yh,j as Sh,P as Jt,k as tg,l as sg,m as ig,n as rg,o as ng,p as og}from"./index-Bgh3Fg-W.js";import{A as Il}from"./avatar-CAgGCSe2.js";import{n as ag,a as lg,i as cg}from"./Sun-CgyDUxcQ.js";import{a as kr}from"./Settings02-DtQ4_bLf.js";import{i as dg}from"./Shield01-Di_q_zxl.js";import{A as za,a as Fa,b as Ua,c as Ha,d as Wa,e as Ka,f as qa,g as wh}from"./alert-dialog-DkRKYqdD.js";import"./index-aI7M0qEI.js";import{u as hg,a as Tl,K as ug,P as fg,S as mg,v as pg,D as gg,c as _g,s as xg,b as vg,d as bg,C as yg,e as Sg}from"./collection-search-Dz-DfctK.js";import{u as Vh}from"./use-tasks-BGCdXCFh.js";import{u as wg}from"./use-status-sounds-UAO5zXMo.js";import{U as Ch}from"./user-BXlY7NuV.js";import{T as Vg,u as kh}from"./tools-list-C1Tdz1hL.js";import{u as Jn}from"./unwrap-tool-result-BYXdCQMg.js";import{C as Cg,a as Rl}from"./card-DWuJsQ-l.js";import{L as ir}from"./label-KG6f6ypV.js";import{i as tn}from"./Play-C7K9es-c.js";import{s as Ro}from"./Trash01-BzOKZIoE.js";import{i as jh,a as kg}from"./SearchMd-fRD_HHud.js";import{C as jg}from"./checkbox-CgUCf0vo.js";import{n as oi}from"./LinkExternal01-DxLyrYeW.js";import{V as Ng}from"./view-mode-toggle-PXHnKZlc.js";import{u as jr,a as Ag,b as Eg,c as Ig,A as Tg,d as Rg}from"./automation-list-row-Dk3EbUOn.js";import{S as Mg}from"./search-input-DfM3hp54.js";import"./use-collections-DpIHOTql.js";import"./use-copy-CDfDyhwS.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./content-blocks-o63cs2vh.js";import"./DotsVertical-BxL7Owtq.js";import"./required-auth-layout-C9I2Cbbq.js";import"./use-org-sso-CWrx0G98.js";import"./ArrowNarrowLeft-Yoaq7-cz.js";import"./ArrowUpRight-DoZ1aCQb.js";import"./ChevronUp-dSBPqUJ1.js";import"./Palette-CWiKw0AC.js";import"./User01-B6EEMzxh.js";import"./settings-section-DU0g5n0Q.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./use-registry-connections-BZXVzsNL.js";import"./useInfiniteQuery-J4O9iX8k.js";import"./infiniteQueryObserver-RFzqIOTQ.js";import"./collections-U39XM2D0.js";import"./index-D0Y3Q7N3.js";import"./create-sse-subscription-CxkOgzKf.js";function Dg(t,e){const s=bt(e);return Pg({filters:{...t,status:"pending"}},s).length}function Ml(t,e){return t.findAll(e.filters).map(s=>e.select?e.select(s):s.state)}function Pg(t={},e){const s=bt(e).getMutationCache(),i=j.useRef(t),n=j.useRef(null);return n.current===null&&(n.current=Ml(s,t)),j.useEffect(()=>{i.current=t}),j.useSyncExternalStore(j.useCallback(o=>s.subscribe(()=>{const a=Vf(n.current,Ml(s,i.current));n.current!==a&&(n.current=a,Cf.schedule(o))}),[s]),()=>n.current,()=>n.current)}function Lg(t,e){const s=B.c(37),{org:i,locator:n}=xe();let o;s[0]!==i.id?(o={connectionId:yt,orgId:i.id},s[0]=i.id,s[1]=o):o=s[1];const a=Ae(o),l=bt();let c;s[2]!==t||s[3]!==i.id?(c=Ze.ensureTask(i.id,t),s[2]=t,s[3]=i.id,s[4]=c):c=s[4];let d;s[5]!==a||s[6]!==t?(d=async()=>(await a.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}})).structuredContent?.item??null,s[5]=a,s[6]=t,s[7]=d):d=s[7];let u;s[8]!==c||s[9]!==d?(u={queryKey:c,queryFn:d,retry:!1,refetchOnWindowFocus:!1},s[8]=c,s[9]=d,s[10]=u):u=s[10];const h=ji(u);let f;s[11]!==a||s[12]!==e?(f=async b=>{const y=await a.callTool({name:"COLLECTION_THREADS_CREATE",arguments:{data:{id:b,virtual_mcp_id:e}}});if(y.isError){const C=y.content,S=Array.isArray(C)&&C[0]&&typeof C[0]=="object"?C[0].text??"Create failed":"Create failed";throw new Error(S)}return y.structuredContent.item},s[11]=a,s[12]=e,s[13]=f):f=s[13];let m;s[14]!==n||s[15]!==i.id||s[16]!==h||s[17]!==l?(m=()=>{l.invalidateQueries({predicate:b=>b.queryKey[1]===i.id&&b.queryKey[3]==="collection"&&b.queryKey[4]==="THREADS"}),l.invalidateQueries({queryKey:Ze.tasksPrefix(n)}),h.refetch()},s[14]=n,s[15]=i.id,s[16]=h,s[17]=l,s[18]=m):m=s[18];let p;s[19]!==f||s[20]!==m?(p={mutationFn:f,onSuccess:m},s[19]=f,s[20]=m,s[21]=p):p=s[21];const g=Ni(p);let _,v;if(s[22]!==g||s[23]!==t||s[24]!==h.data||s[25]!==h.isSuccess?(_=()=>{!h.isSuccess||h.data||g.isPending||g.variables!==t&&g.mutate(t)},v=[t,h.isSuccess,h.data,g],s[22]=g,s[23]=t,s[24]=h.data,s[25]=h.isSuccess,s[26]=_,s[27]=v):(_=s[26],v=s[27]),j.useEffect(_,v),h.isLoading){let b;return s[28]===Symbol.for("react.memo_cache_sentinel")?(b={status:"loading"},s[28]=b):b=s[28],b}if(h.isError){const b=h.error;let y;return s[29]!==b?(y={status:"error",error:b},s[29]=b,s[30]=y):y=s[30],y}if(h.isSuccess&&h.data){let b;return s[31]!==h.data?(b={status:"ready",task:h.data},s[31]=h.data,s[32]=b):b=s[32],b}if(g.isPending||h.isSuccess&&!h.data){let b;return s[33]===Symbol.for("react.memo_cache_sentinel")?(b={status:"creating"},s[33]=b):b=s[33],b}if(g.isError){let b;return s[34]!==g.error?(b={status:"error",error:g.error},s[34]=g.error,s[35]=b):b=s[35],b}let x;return s[36]===Symbol.for("react.memo_cache_sentinel")?(x={status:"loading"},s[36]=x):x=s[36],x}function Og(t){const e={};for(const s of t.arguments??[])e[s.name]=s.required?pt().min(1,"Required"):pt();return as(e)}function Bg(t){const e={};for(const s of t.arguments??[])e[s.name]="";return e}function Ga(t){const e=B.c(65),{prompt:s,setPrompt:i,onSubmit:n}=t,o=j.useId();let a;if(e[0]!==s){const R=s?Og(s):as({});a=gr(R),e[0]=s,e[1]=a}else a=e[1];const c=a;let d;e[2]!==s?(d=s?Bg(s):{},e[2]=s,e[3]=d):d=e[3];let u;e[4]!==c||e[5]!==d?(u={resolver:c,defaultValues:d,mode:"onChange"},e[4]=c,e[5]=d,e[6]=u):u=e[6];const h=Ai(u);let f;e[7]!==s?.arguments?(f=s?.arguments??[],e[7]=s?.arguments,e[8]=f):f=e[8];const m=f;let p;e[9]!==h||e[10]!==n||e[11]!==i?(p=async R=>{await n(R),i(null),h.reset()},e[9]=h,e[10]=n,e[11]=i,e[12]=p):p=e[12];const g=p;let _;e[13]!==h||e[14]!==i?(_=R=>{R||(h.reset(),i(null))},e[13]=h,e[14]=i,e[15]=_):_=e[15];const v=_;if(!s)return null;let x;e[16]!==s._meta||e[17]!==s.name||e[18]!==s.title?(x=s.title||kn(s.name,Ls(s._meta)),e[16]=s._meta,e[17]=s.name,e[18]=s.title,e[19]=x):x=e[19];let b;e[20]!==x?(b=r.jsx(qt,{children:r.jsx("span",{className:"capitalize",children:x})}),e[20]=x,e[21]=b):b=e[21];let y;e[22]!==s.description?(y=s.description&&r.jsx("p",{className:"text-sm text-muted-foreground",children:s.description}),e[22]=s.description,e[23]=y):y=e[23];let V;e[24]!==y||e[25]!==b?(V=r.jsxs(Gt,{children:[b,y]}),e[24]=y,e[25]=b,e[26]=V):V=e[26];let C;e[27]!==h||e[28]!==g?(C=R=>{R.stopPropagation(),h.handleSubmit(g)(R)},e[27]=h,e[28]=g,e[29]=C):C=e[29];let S;if(e[30]!==m||e[31]!==h.control||e[32]!==h.formState.isSubmitting){let R;e[34]!==h.control||e[35]!==h.formState.isSubmitting?(R=P=>r.jsx(gt,{control:h.control,name:P.name,render:O=>{const{field:z}=O;return r.jsxs(_t,{children:[r.jsxs(Ht,{className:"text-xs",children:[P.name,P.required?null:r.jsxs("span",{className:"text-muted-foreground font-normal",children:[" ","(optional)"]})]}),r.jsx(xt,{children:r.jsx(at,{...z,value:z.value??"",required:P.required,placeholder:P.description??"",className:"h-9",disabled:h.formState.isSubmitting})}),r.jsx(vt,{})]})}},P.name),e[34]=h.control,e[35]=h.formState.isSubmitting,e[36]=R):R=e[36],S=m.map(R),e[30]=m,e[31]=h.control,e[32]=h.formState.isSubmitting,e[33]=S}else S=e[33];let w;e[37]!==v?(w=()=>v(!1),e[37]=v,e[38]=w):w=e[38];let k;e[39]!==h.formState.isSubmitting||e[40]!==w?(k=r.jsx(oe,{type:"button",variant:"ghost",onClick:w,disabled:h.formState.isSubmitting,children:"Cancel"}),e[39]=h.formState.isSubmitting,e[40]=w,e[41]=k):k=e[41];const T=!h.formState.isValid||h.formState.isSubmitting;let M;e[42]!==h.formState.isSubmitting?(M=h.formState.isSubmitting?r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(ar,{size:"xs"}),"Loading..."]}):"Use prompt",e[42]=h.formState.isSubmitting,e[43]=M):M=e[43];let I;e[44]!==o||e[45]!==T||e[46]!==M?(I=r.jsx(oe,{type:"submit",form:o,disabled:T,children:M}),e[44]=o,e[45]=T,e[46]=M,e[47]=I):I=e[47];let E;e[48]!==k||e[49]!==I?(E=r.jsxs(Na,{children:[k,I]}),e[48]=k,e[49]=I,e[50]=E):E=e[50];let N;e[51]!==o||e[52]!==C||e[53]!==S||e[54]!==E?(N=r.jsxs("form",{id:o,className:"space-y-4 py-4",autoComplete:"off",onSubmit:C,children:[S,E]}),e[51]=o,e[52]=C,e[53]=S,e[54]=E,e[55]=N):N=e[55];let A;e[56]!==h||e[57]!==N?(A=r.jsx(yi,{...h,children:N}),e[56]=h,e[57]=N,e[58]=A):A=e[58];let D;e[59]!==V||e[60]!==A?(D=r.jsxs(Ot,{className:"sm:max-w-lg max-h-[80vh] overflow-y-auto",children:[V,A]}),e[59]=V,e[60]=A,e[61]=D):D=e[61];let L;return e[62]!==v||e[63]!==D?(L=r.jsx(Bt,{open:!0,onOpenChange:v,children:D}),e[62]=v,e[63]=D,e[64]=L):L=e[64],L}function $g(t){return!t||!t.content||t.content.length===0?!0:t.content.every(e=>e.type==="paragraph"?!e.content||e.content.length===0?!0:e.content.every(s=>s.type==="hardBreak"||s.type==="text"&&(!s.text||s.text.trim()==="")):!1)}function zg(t,e){return{type:"doc",content:[...t?.content??[],e].filter(Boolean)}}const Dl=3,Nh="inline-flex items-center gap-2 px-5 py-2.5 rounded-full bg-muted text-muted-foreground text-sm font-medium transition-colors cursor-pointer",Fg="flex flex-col gap-1.5 p-4 rounded-xl bg-accent/40 text-sm leading-snug transition-colors cursor-pointer text-left";function Ah(t){const e=B.c(46),{item:s,onSelect:i,isLoading:n,isDisabled:o,variant:a}=t,l=a===void 0?"pill":a,{prompt:c}=s;let d;if(e[0]!==c._meta||e[1]!==c.name||e[2]!==c.title){const S=Ls(c._meta);d=c.title??kn(c.name,S),e[0]=c._meta,e[1]=c.name,e[2]=c.title,e[3]=d}else d=e[3];const u=d,h=c.description||null;if(l==="card"){let S;e[4]!==i||e[5]!==c?(S=()=>i(c),e[4]=i,e[5]=c,e[6]=S):S=e[6];const w=o||n,k=n&&"bg-accent/40",T=(o||n)&&"cursor-not-allowed opacity-50";let M;e[7]!==k||e[8]!==T?(M=Y(Fg,"hover:bg-accent/60 text-foreground",k,T),e[7]=k,e[8]=T,e[9]=M):M=e[9];let I;e[10]!==u?(I=r.jsx("span",{className:"font-medium truncate capitalize",children:u}),e[10]=u,e[11]=I):I=e[11];let E;e[12]!==n?(E=n&&r.jsx(ar,{size:"xs"}),e[12]=n,e[13]=E):E=e[13];let N;e[14]!==I||e[15]!==E?(N=r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[I,E]}),e[14]=I,e[15]=E,e[16]=N):N=e[16];let A;e[17]!==h?(A=h&&r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:h}),e[17]=h,e[18]=A):A=e[18];let D;return e[19]!==N||e[20]!==A||e[21]!==S||e[22]!==w||e[23]!==M?(D=r.jsxs("button",{type:"button",onClick:S,disabled:w,className:M,children:[N,A]}),e[19]=N,e[20]=A,e[21]=S,e[22]=w,e[23]=M,e[24]=D):D=e[24],D}let f;e[25]!==i||e[26]!==c?(f=()=>i(c),e[25]=i,e[26]=c,e[27]=f):f=e[27];const m=o||n,p=n&&"bg-muted/50",g=(o||n)&&"cursor-not-allowed opacity-50";let _;e[28]!==p||e[29]!==g?(_=Y(Nh,"hover:bg-muted/70 hover:text-foreground",p,g),e[28]=p,e[29]=g,e[30]=_):_=e[30];let v;e[31]!==u?(v=r.jsx("span",{className:"capitalize",children:u}),e[31]=u,e[32]=v):v=e[32];let x;e[33]!==n?(x=n&&r.jsx(ar,{size:"xs"}),e[33]=n,e[34]=x):x=e[34];let b;e[35]!==f||e[36]!==m||e[37]!==_||e[38]!==v||e[39]!==x?(b=r.jsx(qe,{asChild:!0,children:r.jsxs("button",{type:"button",onClick:f,disabled:m,className:_,children:[v,x]})}),e[35]=f,e[36]=m,e[37]=_,e[38]=v,e[39]=x,e[40]=b):b=e[40];const y=h??u;let V;e[41]!==y?(V=r.jsx(Ge,{side:"top",className:"max-w-xs",children:r.jsx("p",{className:"text-xs",children:y})}),e[41]=y,e[42]=V):V=e[42];let C;return e[43]!==b||e[44]!==V?(C=r.jsxs(Ye,{delayDuration:400,children:[b,V]}),e[43]=b,e[44]=V,e[45]=C):C=e[45],C}function Ug(t){const e=B.c(41),{items:s,open:i,onOpenChange:n,onSelect:o,loadingPrompt:a}=t,[l,c]=j.useState(""),d=!!a;let u;e[0]!==s||e[1]!==l?(u=l.trim()?s.filter(w=>{const k=l.toLowerCase();return w.prompt.name.toLowerCase().includes(k)||(w.prompt.title??"").toLowerCase().includes(k)||(w.prompt.description??"").toLowerCase().includes(k)}):s,e[0]=s,e[1]=l,e[2]=u):u=e[2];const h=u,f=ms();let m;e[3]!==h.length||e[4]!==l?(m=h.length===0&&r.jsxs("p",{className:"col-span-4 text-sm text-muted-foreground text-center py-8",children:["No prompts match “",l,"”"]}),e[3]=h.length,e[4]=l,e[5]=m):m=e[5];let p;if(e[6]!==h||e[7]!==d||e[8]!==a?.name||e[9]!==n||e[10]!==o){let w;e[12]!==d||e[13]!==a?.name||e[14]!==n||e[15]!==o?(w=k=>r.jsx(Ah,{item:k,variant:"card",onSelect:T=>{n(!1),o(T)},isLoading:a?.name===k.prompt.name,isDisabled:d&&a?.name!==k.prompt.name},k.prompt.name),e[12]=d,e[13]=a?.name,e[14]=n,e[15]=o,e[16]=w):w=e[16],p=h.map(w),e[6]=h,e[7]=d,e[8]=a?.name,e[9]=n,e[10]=o,e[11]=p}else p=e[11];let g;e[17]!==m||e[18]!==p?(g=r.jsx("div",{className:"flex-1 overflow-y-auto [scrollbar-gutter:stable]",children:r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3 p-5",children:[m,p]})}),e[17]=m,e[18]=p,e[19]=g):g=e[19];const _=g;let v;e[20]===Symbol.for("react.memo_cache_sentinel")?(v=w=>{w.key==="Escape"&&c("")},e[20]=v):v=e[20];let x;e[21]!==l?(x=r.jsx(Id,{value:l,onChange:c,placeholder:"Search prompts...",onKeyDown:v}),e[21]=l,e[22]=x):x=e[22];const b=x;if(f){let w;e[23]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx(An,{className:"sr-only",children:r.jsx(si,{children:"All prompts"})}),e[23]=w):w=e[23];let k;e[24]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 shrink-0",children:r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Prompts"})}),e[24]=k):k=e[24];let T;e[25]!==_||e[26]!==b?(T=r.jsxs(ii,{className:"h-[85vh] flex flex-col p-0 gap-0",children:[w,k,b,_]}),e[25]=_,e[26]=b,e[27]=T):T=e[27];let M;return e[28]!==n||e[29]!==i||e[30]!==T?(M=r.jsx(bi,{delayDuration:400,children:r.jsx(ri,{open:i,onOpenChange:n,children:T})}),e[28]=n,e[29]=i,e[30]=T,e[31]=M):M=e[31],M}let y;e[32]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(Gt,{className:"sr-only",children:r.jsx(qt,{children:"All prompts"})}),e[32]=y):y=e[32];let V;e[33]===Symbol.for("react.memo_cache_sentinel")?(V=r.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 shrink-0",children:r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Prompts"})}),e[33]=V):V=e[33];let C;e[34]!==_||e[35]!==b?(C=r.jsxs(Ot,{className:"sm:max-w-[1100px] h-[680px] p-0 gap-0 overflow-hidden flex flex-col",children:[y,V,b,_]}),e[34]=_,e[35]=b,e[36]=C):C=e[36];let S;return e[37]!==n||e[38]!==i||e[39]!==C?(S=r.jsx(bi,{delayDuration:400,children:r.jsx(Bt,{open:i,onOpenChange:n,children:C})}),e[37]=n,e[38]=i,e[39]=C,e[40]=S):S=e[40],S}function Hg(t){const e=B.c(29),{items:s,onSelect:i,loadingPrompt:n,className:o}=t,[a,l]=j.useState(!1);if(s.length===0)return null;let c,d,u;if(e[0]!==s||e[1]!==n||e[2]!==i){const v=s.slice(0,Dl);let x;e[6]!==s?(x=s.slice(Dl),e[6]=s,e[7]=x):x=e[7],c=x,d=!!n;let b;e[8]!==d||e[9]!==n?.name||e[10]!==i?(b=y=>r.jsx(Ah,{item:y,onSelect:i,isLoading:n?.name===y.prompt.name,isDisabled:d&&n?.name!==y.prompt.name},y.prompt.name),e[8]=d,e[9]=n?.name,e[10]=i,e[11]=b):b=e[11],u=v.map(b),e[0]=s,e[1]=n,e[2]=i,e[3]=c,e[4]=d,e[5]=u}else c=e[3],d=e[4],u=e[5];const h=u;let f;e[12]!==o?(f=Y("w-full flex flex-wrap gap-2 justify-center",o),e[12]=o,e[13]=f):f=e[13];let m;e[14]!==c.length||e[15]!==d?(m=c.length>0&&r.jsxs("button",{type:"button",disabled:d,onClick:()=>l(!0),className:Y(Nh,"hover:bg-muted/70 hover:text-foreground",d&&"opacity-50 cursor-not-allowed"),children:["+",c.length," more"]}),e[14]=c.length,e[15]=d,e[16]=m):m=e[16];let p;e[17]!==h||e[18]!==f||e[19]!==m?(p=r.jsxs("div",{className:f,children:[h,m]}),e[17]=h,e[18]=f,e[19]=m,e[20]=p):p=e[20];let g;e[21]!==s||e[22]!==n||e[23]!==a||e[24]!==i?(g=r.jsx(Ug,{items:s,open:a,onOpenChange:l,onSelect:i,loadingPrompt:n}),e[21]=s,e[22]=n,e[23]=a,e[24]=i,e[25]=g):g=e[25];let _;return e[26]!==p||e[27]!==g?(_=r.jsxs(bi,{delayDuration:400,children:[p,g]}),e[26]=p,e[27]=g,e[28]=_):_=e[28],_}function Wg(){return null}function Kg(t,e){switch(e.type){case"SELECT_PROMPT":return!e.prompt.arguments||e.prompt.arguments.length===0?{stage:"loading",prompt:e.prompt}:{stage:"idle"};case"START_LOADING":return{stage:"loading",prompt:e.prompt,arguments:e.arguments};case"RESET":return{stage:"idle"};default:return t}}function qg(t){const e=B.c(30),{connectionId:s}=t,{sendMessage:i}=Ii(),{tiptapDocRef:n}=$s(),{org:o}=xe();let a;e[0]!==s||e[1]!==o.id?(a={connectionId:s,orgId:o.id},e[0]=s,e[1]=o.id,e[2]=a):a=e[2];const l=Ae(a);let c;e[3]!==l?(c={client:l,staleTime:6e4},e[3]=l,e[4]=c):c=e[4];const{data:d}=Td(c);let u;e[5]!==d?.prompts?(u=d?.prompts??[],e[5]=d?.prompts,e[6]=u):u=e[6];const h=u;let f;e[7]!==h?(f=h.map(Gg),e[7]=h,e[8]=f):f=e[8];const m=f;let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p={stage:"idle"},e[9]=p):p=e[9];const[g,_]=j.useReducer(Kg,p),[v,x]=j.useState(null);let b;e[10]!==l||e[11]!==i||e[12]!==n?(b=async(N,A)=>{if(!l){he.error("MCP client not available"),_({type:"RESET"});return}try{const D=await Ea(l,N.name,A);_({type:"RESET"});const L=zg(n.current,{type:"paragraph",content:[gm({id:N.name,name:ka(N.name,Ls(N._meta)),metadata:D.messages,char:"/"})]});await i(L)}catch(D){console.error("[ice-breakers] Failed to fetch prompt:",D),he.error("Failed to load prompt. Please try again."),_({type:"RESET"})}},e[10]=l,e[11]=i,e[12]=n,e[13]=b):b=e[13];const y=b;let V;e[14]!==y?(V=async N=>{if(N.arguments&&N.arguments.length>0){_({type:"SELECT_PROMPT",prompt:N}),x(N);return}_({type:"START_LOADING",prompt:N}),await y(N)},e[14]=y,e[15]=V):V=e[15];const C=V;let S;e[16]!==v||e[17]!==y?(S=async N=>{v&&(_({type:"START_LOADING",prompt:v,arguments:N}),x(null),await y(v,N))},e[16]=v,e[17]=y,e[18]=S):S=e[18];const w=S;if(m.length===0)return null;const k=g.stage==="loading"?g.prompt:null;let T;e[19]!==C||e[20]!==m||e[21]!==k?(T=r.jsx(Hg,{items:m,onSelect:C,loadingPrompt:k}),e[19]=C,e[20]=m,e[21]=k,e[22]=T):T=e[22];let M;e[23]===Symbol.for("react.memo_cache_sentinel")?(M=()=>{x(null),_({type:"RESET"})},e[23]=M):M=e[23];let I;e[24]!==v||e[25]!==w?(I=r.jsx(Ga,{prompt:v,setPrompt:M,onSubmit:w}),e[24]=v,e[25]=w,e[26]=I):I=e[26];let E;return e[27]!==T||e[28]!==I?(E=r.jsxs(r.Fragment,{children:[T,I]}),e[27]=T,e[28]=I,e[29]=E):E=e[29],E}function Gg(t){return{prompt:t}}function Yg(t){const e=B.c(13),{className:s}=t,{selectedVirtualMcp:i}=$s(),{org:n}=xe();let o;e[0]!==n.id?(o=En(n.id),e[0]=n.id,e[1]=o):o=e[1];const a=o.id,l=i?.id??a;let c;e[2]!==s?(c=Y("w-full @container",s),e[2]=s,e[3]=c):c=e[3];const d=l??"default";let u;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(Wg,{}),e[4]=u):u=e[4];let h;e[5]!==l?(h=r.jsx(qg,{connectionId:l}),e[5]=l,e[6]=h):h=e[6];let f;e[7]!==d||e[8]!==h?(f=r.jsx(ls,{fallback:null,children:r.jsx(j.Suspense,{fallback:u,children:h},d)}),e[7]=d,e[8]=h,e[9]=f):f=e[9];let m;return e[10]!==c||e[11]!==f?(m=r.jsx("div",{className:c,children:f}),e[10]=c,e[11]=f,e[12]=m):m=e[12],m}function Eh(t){const e=B.c(21),{current:s,total:i,onPrev:n,onNext:o}=t;if(i<=1)return null;const a=s===0,l=s===0?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let c;e[0]!==l?(c=Y("p-0.5 rounded transition-colors",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(Pa,{size:14}),e[2]=d):d=e[2];let u;e[3]!==n||e[4]!==a||e[5]!==c?(u=r.jsx("button",{type:"button",onClick:n,disabled:a,className:c,"aria-label":"Previous question",children:d}),e[3]=n,e[4]=a,e[5]=c,e[6]=u):u=e[6];const h=s+1;let f;e[7]!==h||e[8]!==i?(f=r.jsxs("span",{className:"tabular-nums text-xs",children:[h," of ",i]}),e[7]=h,e[8]=i,e[9]=f):f=e[9];const m=s===i-1,p=s===i-1?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let g;e[10]!==p?(g=Y("p-0.5 rounded transition-colors",p),e[10]=p,e[11]=g):g=e[11];let _;e[12]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx(In,{size:14}),e[12]=_):_=e[12];let v;e[13]!==o||e[14]!==g||e[15]!==m?(v=r.jsx("button",{type:"button",onClick:o,disabled:m,className:g,"aria-label":"Next question",children:_}),e[13]=o,e[14]=g,e[15]=m,e[16]=v):v=e[16];let x;return e[17]!==v||e[18]!==u||e[19]!==f?(x=r.jsxs("div",{className:"flex items-center gap-1 text-sm text-muted-foreground",children:[u,f,v]}),e[17]=v,e[18]=u,e[19]=f,e[20]=x):x=e[20],x}function pn(t){const e=B.c(18),{title:s,children:i,footerLeft:n,footerRight:o,className:a}=t,l=a??"border-border";let c;e[0]!==l?(c=Y("flex flex-col rounded-xl bg-background border shadow-md w-[calc(100%-16px)] max-w-[584px] mx-auto mb-[-16px]",l),e[0]=l,e[1]=c):c=e[1];let d;e[2]!==s?(d=r.jsx("div",{className:"flex items-center gap-2 p-4",children:r.jsx("p",{className:"flex-1 text-base font-medium text-foreground min-w-0",children:s})}),e[2]=s,e[3]=d):d=e[3];let u;e[4]!==i?(u=r.jsx("div",{className:"overflow-clip pb-4",children:i}),e[4]=i,e[5]=u):u=e[5];let h;e[6]!==n?(h=r.jsx("div",{children:n}),e[6]=n,e[7]=h):h=e[7];let f;e[8]!==o?(f=r.jsx("div",{className:"flex items-center gap-2",children:o}),e[8]=o,e[9]=f):f=e[9];let m;e[10]!==h||e[11]!==f?(m=r.jsx("div",{className:"border-t border-border px-3 py-3 pb-6",children:r.jsxs("div",{className:"flex items-center justify-between",children:[h,f]})}),e[10]=h,e[11]=f,e[12]=m):m=e[12];let p;return e[13]!==c||e[14]!==d||e[15]!==u||e[16]!==m?(p=r.jsxs("div",{className:c,children:[d,u,m]}),e[13]=c,e[14]=d,e[15]=u,e[16]=m,e[17]=p):p=e[17],p}const Xg="User denied this tool call, give other alternatives.",Jg=[{value:"readonly",label:"Ask before edit"},{value:"auto",label:"Auto approve"}];function Qg(t){const e=B.c(9),{onYolo:s}=t,[i,n]=ei();let o;e[0]!==s||e[1]!==i||e[2]!==n?(o=u=>{const h=u;n({...i,toolApprovalLevel:h}),h==="auto"&&s()},e[0]=s,e[1]=i,e[2]=n,e[3]=o):o=e[3];const a=o;let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Ms,{size:"xs",className:"text-xs text-muted-foreground border-border/60 bg-transparent hover:bg-accent/60 h-7 gap-1",onClick:e_,children:r.jsx(Ds,{})}),e[4]=l):l=e[4];let c;e[5]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(Ts,{children:Jg.map(Zg)}),e[5]=c):c=e[5];let d;return e[6]!==a||e[7]!==i.toolApprovalLevel?(d=r.jsxs(Rs,{value:i.toolApprovalLevel,onValueChange:a,children:[l,c]}),e[6]=a,e[7]=i.toolApprovalLevel,e[8]=d):d=e[8],d}function Zg(t){return r.jsx(Nt,{value:t.value,children:t.label},t.value)}function e_(t){return t.stopPropagation()}function t_(t){const e=B.c(5),{input:s}=t;if(s==null){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"px-4 text-xs text-muted-foreground",children:"No input"}),e[0]=o):o=e[0],o}let i;try{let o;e[1]!==s?(o=JSON.stringify(s,null,2),e[1]=s,e[2]=o):o=e[2],i=o}catch{i=String(s)}let n;return e[3]!==i?(n=r.jsx("div",{className:"px-4",children:r.jsx("pre",{className:"text-xs font-mono text-muted-foreground/70 whitespace-pre-wrap wrap-break-word max-h-32 overflow-y-auto rounded-md bg-muted/30 px-3 py-2",children:i})}),e[3]=i,e[4]=n):n=e[4],n}function s_(t){const e=B.c(42),{approvals:s,onRespond:i}=t,[n,o]=j.useState(0),a=Math.min(n,s.length-1),l=s[a];if(!l)return null;let c;e[0]!==l.approvalId||e[1]!==i?(c=()=>{i(l.approvalId,!1,Xg)},e[0]=l.approvalId,e[1]=i,e[2]=c):c=e[2];const d=c;let u;e[3]!==l.approvalId||e[4]!==i?(u=()=>{i(l.approvalId,!0)},e[3]=l.approvalId,e[4]=i,e[5]=u):u=e[5];const h=u;let f;e[6]!==s||e[7]!==i?(f=()=>{for(const E of s)i(E.approvalId,!0)},e[6]=s,e[7]=i,e[8]=f):f=e[8];const m=f;let p;e[9]!==a?(p=()=>{a>0&&o(a-1)},e[9]=a,e[10]=p):p=e[10];const g=p;let _;e[11]!==s.length||e[12]!==a?(_=()=>{a<s.length-1&&o(a+1)},e[11]=s.length,e[12]=a,e[13]=_):_=e[13];const v=_;let x;e[14]!==m?(x=r.jsx(Qg,{onYolo:m}),e[14]=m,e[15]=x):x=e[15];let b;e[16]!==s.length||e[17]!==v||e[18]!==g||e[19]!==a?(b=r.jsx(Eh,{current:a,total:s.length,onPrev:g,onNext:v}),e[16]=s.length,e[17]=v,e[18]=g,e[19]=a,e[20]=b):b=e[20];let y;e[21]!==x||e[22]!==b?(y=r.jsxs("div",{className:"flex items-center gap-2",children:[x,b]}),e[21]=x,e[22]=b,e[23]=y):y=e[23];const V=y;let C;e[24]!==d?(C=r.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:d,children:"Deny"}),e[24]=d,e[25]=C):C=e[25];let S;e[26]!==s.length||e[27]!==m?(S=s.length>1&&r.jsx(oe,{type:"button",variant:"outline",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:m,children:"Accept All"}),e[26]=s.length,e[27]=m,e[28]=S):S=e[28];let w;e[29]!==h?(w=r.jsx(oe,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:h,children:"Accept"}),e[29]=h,e[30]=w):w=e[30];let k;e[31]!==S||e[32]!==w||e[33]!==C?(k=r.jsxs(r.Fragment,{children:[C,S,w]}),e[31]=S,e[32]=w,e[33]=C,e[34]=k):k=e[34];const T=k;let M;e[35]!==l.input?(M=r.jsx(t_,{input:l.input}),e[35]=l.input,e[36]=M):M=e[36];let I;return e[37]!==l.friendlyName||e[38]!==V||e[39]!==T||e[40]!==M?(I=r.jsx(pn,{title:l.friendlyName,footerLeft:V,footerRight:T,children:M}),e[37]=l.friendlyName,e[38]=V,e[39]=T,e[40]=M,e[41]=I):I=e[41],I}function i_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(Ym,{className:"size-5 text-muted-foreground shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing approval request..."})]}),t[0]=e):e=t[0],e}function r_(t){const e=B.c(4),{approvals:s,isStreaming:i,onRespond:n}=t;if(i&&s.length===0){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(i_,{}),e[0]=a):a=e[0],a}if(s.length===0)return null;let o;return e[1]!==s||e[2]!==n?(o=r.jsx(s_,{approvals:s,onRespond:n}),e[1]=s,e[2]=n,e[3]=o):o=e[3],o}function n_(t){const e=[];for(const s of t)if("state"in s&&s.state==="approval-requested"&&"approval"in s&&s.approval?.id&&"toolCallId"in s&&s.toolCallId){const i="toolName"in s&&typeof s.toolName=="string"?s.toolName:s.type.startsWith("tool-")?s.type.replace("tool-",""):"Tool";e.push({approvalId:s.approval.id,toolCallId:s.toolCallId,toolName:i,friendlyName:ko(_m(i)),input:s.input})}return e}function o_(t){const e=B.c(15),{plan:s,onApprove:i,onDismiss:n}=t;let o;e[0]!==i||e[1]!==s.plan?(o=()=>{i(s.plan)},e[0]=i,e[1]=s.plan,e[2]=o):o=e[2];const a=o;let l;e[3]!==n?(l=r.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:n,children:"Keep iterating"}),e[3]=n,e[4]=l):l=e[4];let c;e[5]!==a?(c=r.jsx(oe,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs bg-purple-600 hover:bg-purple-700 text-white active:scale-[0.97] transition-transform",onClick:a,children:"Let's go"}),e[5]=a,e[6]=c):c=e[6];let d;e[7]!==l||e[8]!==c?(d=r.jsxs(r.Fragment,{children:[l,c]}),e[7]=l,e[8]=c,e[9]=d):d=e[9];const u=d;let h;e[10]!==s.plan?(h=r.jsx("div",{className:"px-4 max-h-64 overflow-y-auto",children:r.jsx("div",{className:"prose prose-sm max-w-none text-sm",children:r.jsx(xm,{id:"plan-preview",part:{type:"text",text:s.plan}})})}),e[10]=s.plan,e[11]=h):h=e[11];let f;return e[12]!==u||e[13]!==h?(f=r.jsx(pn,{title:"Implementation Plan",footerRight:u,className:"border-dashed border-purple-500",children:h}),e[12]=u,e[13]=h,e[14]=f):f=e[14],f}function a_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed border-purple-500/30 rounded-lg bg-purple-500/5 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(Mt,{className:"size-5 text-purple-500 shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing plan..."})]}),t[0]=e):e=t[0],e}function l_(t){const e=B.c(7),{plans:s,isStreaming:i,onApprove:n,onDismiss:o}=t;if(i&&s.length===0){let d;return e[0]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(a_,{}),e[0]=d):d=e[0],d}let a;e[1]!==s?(a=s.at(-1),e[1]=s,e[2]=a):a=e[2];const l=a;if(!l)return null;let c;return e[3]!==l||e[4]!==n||e[5]!==o?(c=r.jsx(o_,{plan:l,onApprove:n,onDismiss:o}),e[3]=l,e[4]=n,e[5]=o,e[6]=c):c=e[6],c}function c_(t){const e=[];for(const s of t)if("type"in s&&s.type==="tool-propose_plan"&&"state"in s&&s.state==="input-available"&&"toolCallId"in s&&"input"in s){const i=s.input;e.push({toolCallId:s.toolCallId,plan:i.plan,state:s.state})}return e}const Pl=as({response:pt().min(1,"Response is required")}),d_=as({response:pt().min(1,"Please select or enter an option")}),h_=as({response:kf(["yes","no"])});function u_(t){switch(t.type){case"text":return Pl;case"choice":return d_;case"confirm":return h_;default:return Pl}}function f_(t){const e={};for(const s of t)e[s.toolCallId]=u_(s.input);return as(e)}function m_(t){const e=B.c(6),{control:s,name:i,placeholder:n}=t;let o;e[0]!==n?(o=l=>{const{field:c}=l;return r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsx("div",{className:"px-2",children:r.jsxs("div",{className:"flex items-center gap-3 px-2 py-3 rounded-lg bg-accent/50",children:[r.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:r.jsx(Bd,{size:16,className:"text-muted-foreground"})}),r.jsx("input",{...c,type:"text",placeholder:n||"Type your response...",autoFocus:!0,"aria-label":"Text response input",className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"})]})})}),r.jsx(vt,{})]})},e[0]=n,e[1]=o):o=e[1];let a;return e[2]!==s||e[3]!==i||e[4]!==o?(a=r.jsx(gt,{control:s,name:i,render:o}),e[2]=s,e[3]=i,e[4]=o,e[5]=a):a=e[5],a}function Ih(t,e){const s=B.c(4);let i,n;s[0]!==t||s[1]!==e?(i=()=>{const o=a=>{const l=a.target.tagName;if(l==="INPUT"||l==="TEXTAREA"||a.metaKey||a.ctrlKey||a.altKey)return;const c=Number.parseInt(a.key,10);c>=1&&c<=t&&(a.preventDefault(),e(c-1))};return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},n=[t,e],s[0]=t,s[1]=e,s[2]=i,s[3]=n):(i=s[2],n=s[3]),j.useEffect(i,n)}function p_(t){const e=B.c(9),{control:s,name:i,options:n}=t,[o,a]=j.useState(!1),l=j.useRef(null),c=j.useRef(null);let d;if(e[0]!==n?(d=f=>{c.current?.onChange(n[f]??""),a(!1)},e[0]=n,e[1]=d):d=e[1],Ih(n.length,d),n.length===0)return null;let u;e[2]!==o||e[3]!==n?(u=f=>{const{field:m}=f;c.current=m;const p=o||!!m.value&&!n.includes(m.value);return r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsxs("div",{className:"flex flex-col px-2",role:"group","aria-label":"Choice options",children:[n.map((g,_)=>{const v=m.value===g;return r.jsxs("button",{type:"button",onClick:()=>{m.onChange(g??""),a(!1)},className:Y("flex items-center gap-3 px-2 py-3 rounded-lg text-left transition-colors w-full",v&&"bg-accent/50",!v&&"hover:bg-accent/30"),"aria-label":`Select ${g}`,children:[r.jsx("span",{className:Y("flex items-center justify-center size-6 rounded-md text-sm shrink-0",v?"bg-chart-1 text-white":"bg-muted text-foreground"),children:_+1}),r.jsx("span",{className:"text-sm text-foreground truncate",children:g})]},`${_}-${g}`)}),r.jsxs("div",{className:Y("flex items-center gap-3 px-2 py-3 rounded-lg transition-colors w-full cursor-text",p&&"bg-accent/50",!p&&"hover:bg-accent/30"),onClick:()=>{a(!0),n.includes(m.value)&&m.onChange(""),setTimeout(()=>l.current?.focus(),0)},children:[r.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:r.jsx(Bd,{size:16,className:"text-muted-foreground"})}),p?r.jsx("input",{ref:l,type:"text",value:m.value,onChange:g=>m.onChange(g.target.value),placeholder:"Something else...",autoFocus:!0,"aria-label":"Custom choice input",className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"}):r.jsx("span",{className:"text-sm text-foreground/25",children:"Something else..."})]})]})}),r.jsx(vt,{})]})},e[2]=o,e[3]=n,e[4]=u):u=e[4];let h;return e[5]!==s||e[6]!==i||e[7]!==u?(h=r.jsx(gt,{control:s,name:i,render:u}),e[5]=s,e[6]=i,e[7]=u,e[8]=h):h=e[8],h}function g_(t){const e=B.c(6),{control:s,name:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=["yes","no"],e[0]=n):n=e[0];const o=n,a=j.useRef(null);let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=u=>{a.current?.onChange(o[u]??"")},e[1]=l):l=e[1],Ih(o.length,l);let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=u=>{const{field:h}=u;return a.current=h,r.jsxs(_t,{children:[r.jsx(xt,{children:r.jsx("div",{className:"flex gap-2 px-2",role:"group","aria-label":"Confirmation options",children:o.map(f=>{const m=h.value===f;return r.jsxs("button",{type:"button",onClick:()=>h.onChange(f),className:Y("flex items-center gap-3 px-4 py-3 rounded-lg text-left transition-colors flex-1",m&&"bg-accent/50",!m&&"hover:bg-accent/30"),"aria-label":`Confirm ${f}`,children:[r.jsx("span",{className:Y("flex items-center justify-center size-6 rounded-md text-sm shrink-0",m?"bg-chart-1 text-white":"bg-muted text-foreground"),children:f==="yes"?1:2}),r.jsx("span",{className:"text-sm text-foreground capitalize",children:f})]},f)})})}),r.jsx(vt,{})]})},e[2]=c):c=e[2];let d;return e[3]!==s||e[4]!==i?(d=r.jsx(gt,{control:s,name:i,render:c}),e[3]=s,e[4]=i,e[5]=d):d=e[5],d}function Ll(t){const e=B.c(13),{input:s,control:i,name:n}=t;switch(s.type){case"text":{let o;return e[0]!==i||e[1]!==s.default||e[2]!==n?(o=r.jsx(m_,{control:i,name:n,placeholder:s.default}),e[0]=i,e[1]=s.default,e[2]=n,e[3]=o):o=e[3],o}case"choice":{let o;e[4]!==s.options?(o=s.options?.filter(Boolean)??[],e[4]=s.options,e[5]=o):o=e[5];const a=o;let l;return e[6]!==i||e[7]!==n||e[8]!==a?(l=r.jsx(p_,{control:i,name:n,options:a}),e[6]=i,e[7]=n,e[8]=a,e[9]=l):l=e[9],l}case"confirm":{let o;return e[10]!==i||e[11]!==n?(o=r.jsx(g_,{control:i,name:n}),e[10]=i,e[11]=n,e[12]=o):o=e[12],o}default:return null}}function __({parts:t,onSubmit:e}){const[s,i]=j.useState(t[0]?.toolCallId??""),n=f_(t.map(x=>({toolCallId:x.toolCallId,input:x.input}))),o=Ai({resolver:gr(n),defaultValues:Object.fromEntries(t.map(x=>[x.toolCallId,{response:""}]))}),a=o.watch(),l=t.findIndex(x=>x.toolCallId===s),c=!!a[s]?.response,d=t.every(x=>!!a[x.toolCallId]?.response),u=x=>{for(const b of t){const y=x[b.toolCallId]?.response;y&&e(b,y)}},h=x=>t.find(b=>!x[b.toolCallId]?.response&&b.toolCallId!==s)??null,f=()=>{const x=o.getValues();if(t.every(y=>!!x[y.toolCallId]?.response))o.handleSubmit(u)();else{const y=h(x);y&&i(y.toolCallId)}},m=()=>{o.setValue(`${s}.response`,"user has skip this question"),f()},p=()=>{if(l>0){const x=t[l-1];x&&i(x.toolCallId)}},g=()=>{if(l<t.length-1){const x=t[l+1];x&&i(x.toolCallId)}},_=r.jsxs(r.Fragment,{children:[r.jsx(oe,{type:"button",variant:"outline",size:"sm",onClick:m,className:"h-7",children:"Skip"}),r.jsx(oe,{type:"button",size:"sm",disabled:!c,onClick:f,className:Y("h-7",c?"":"opacity-50"),children:d?"Submit":"Next"})]}),v=r.jsx(Eh,{current:l,total:t.length,onPrev:p,onNext:g});if(t.length===1){const x=t[0];return x?.input?r.jsx(yi,{...o,children:r.jsx("form",{onSubmit:o.handleSubmit(u),autoComplete:"off",children:r.jsx(pn,{title:x.input?.prompt??"Question",footerRight:_,children:r.jsx(Ll,{input:x.input,control:o.control,name:`${x.toolCallId}.response`})})})}):null}return r.jsx(yi,{...o,children:r.jsx("form",{onSubmit:o.handleSubmit(u),autoComplete:"off",children:r.jsx(Rd,{value:s,onValueChange:i,children:t.map(x=>r.jsx(Jr,{value:x.toolCallId,className:"mt-0",children:r.jsx(pn,{title:x.input?.prompt??"Question",footerLeft:v,footerRight:_,children:r.jsx(Ll,{input:x.input,control:o.control,name:`${x.toolCallId}.response`})})},x.toolCallId))})})})}function x_(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[584px] mx-auto mb-2",children:[r.jsx(gp,{className:"size-5 text-muted-foreground shimmer"}),r.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:"Preparing question..."})]}),t[0]=e):e=t[0],e}function Th(t){const e=B.c(6),{userAskParts:s,isStreaming:i,onSubmit:n}=t;let o;e[0]!==s?(o=s.filter(v_),e[0]=s,e[1]=o):o=e[1];const a=o;if(i){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(x_,{}),e[2]=c):c=e[2],c}if(a.length===0)return null;let l;return e[3]!==n||e[4]!==a?(l=r.jsx(__,{parts:a,onSubmit:n}),e[3]=n,e[4]=a,e[5]=l):l=e[5],l}function v_(t){return t.state==="input-available"}const Ol=new Map;function Pn(){const{org:t}=xe(),e=Ae({connectionId:yt,orgId:t.id}),s=La(),i=s.find(_=>_.providerId==="deco"),{data:n,isLoading:o,refetch:a,isFetching:l}=ji({queryKey:Ze.aiProviderCredits(t.id,"deco"),enabled:!!i,staleTime:6e4,queryFn:async()=>{const _=await e.callTool({name:"AI_PROVIDER_CREDITS",arguments:{providerId:"deco"}});return _?.isError?null:_.structuredContent??null}}),c=n?.balanceCents??null,d=c!=null?c/100:null,u=j.useRef(new Map);if(c!=null){const _=Ol.get(t.id);u.current.get(t.id)&&_!=null&&c>_&&re("credits_topped_up_detected",{organization_id:t.id,delta_cents:c-_,previous_balance_cents:_,new_balance_cents:c}),Ol.set(t.id,c),u.current.set(t.id,!0)}const h=!!i,f=c!=null&&c>0,m=c!=null&&c===0,p=c!=null&&c===200,g=s.length>0&&s.every(_=>_.providerId==="deco");return{hasDecoKey:h,decoKeyId:i?.id??null,balanceCents:c,balanceDollars:d,hasCredits:f,isZeroBalance:m,isInitialFreeCredit:p,hasOnlyDecoProvider:g,isLoading:o,isFetching:l,refetch:a}}function b_(t){return t?t.message.startsWith("[CREDITS]"):!1}const y_={usd:[{dollars:10,label:"Starter"},{dollars:20,label:"Popular"},{dollars:100,label:"Best value"}],brl:[{dollars:50,label:"Starter"},{dollars:100,label:"Popular"},{dollars:500,label:"Best value"}]},S_=["Access to 100+ AI models","Unified API, no separate keys needed","Pay only for what you use"];function Rh(t){const e=B.c(43),{onDismiss:s}=t,{org:i}=xe(),n=Oe(),{decoKeyId:o}=Pn();let a;e[0]!==i.id?(a={connectionId:yt,orgId:i.id},e[0]=i.id,e[1]=a):a=e[1];const l=Ae(a),[c,d]=j.useState(""),[u,h]=j.useState(!1),[f,m]=j.useState("usd"),p=f==="brl"?"R$":"$";let g,_;e[2]!==i.id?(g=()=>{re("credits_exhausted_shown",{organization_id:i.id})},_=[i.id],e[2]=i.id,e[3]=g,e[4]=_):(g=e[3],_=e[4]),j.useEffect(g,_);let v;e[5]!==l||e[6]!==f?(v=async R=>{const P=await l.callTool({name:"AI_PROVIDER_TOPUP_URL",arguments:{providerId:"deco",amountCents:R,currency:f}});if(P?.isError)throw new Error(P.content?.[0]?.text??"Failed to get top-up URL");return P.structuredContent?.url},e[5]=l,e[6]=f,e[7]=v):v=e[7];let x;e[8]!==s?(x=R=>{R&&window.open(R,"_blank","noopener,noreferrer"),s?.()},e[8]=s,e[9]=x):x=e[9];let b;e[10]!==v||e[11]!==x?(b={mutationFn:v,onSuccess:x,onError:C_},e[10]=v,e[11]=x,e[12]=b):b=e[12];const{mutate:y,isPending:V}=Ni(b),C=parseFloat(c),S=!isNaN(C)&&C>=1;let w;e[13]!==s?(w=R=>!R&&s?.(),e[13]=s,e[14]=w):w=e[14];let k;e[15]===Symbol.for("react.memo_cache_sentinel")?(k=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(165,149,255,0.5) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(208,236,26,0.45) 0%, transparent 100%)"],e[15]=k):k=e[15];let T;e[16]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:k.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[16]=T):T=e[16];let M;e[17]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[T,r.jsxs(Gt,{className:"relative gap-4",children:[r.jsx("img",{src:"/logos/deco%20logo.svg",alt:"Deco AI Gateway",className:"size-9 rounded-lg object-contain dark:bg-white dark:p-0.5"}),r.jsxs("div",{children:[r.jsx(qt,{className:"text-xl font-semibold tracking-tight",children:"Top up to keep building"}),r.jsx(Nn,{className:"mt-1.5 text-sm leading-relaxed",children:"Your credits are used up. Add more to continue using AI across all your agents."})]})]})]}),e[17]=M):M=e[17];let I;e[18]!==f||e[19]!==p||e[20]!==c||e[21]!==C||e[22]!==o||e[23]!==S||e[24]!==V||e[25]!==u||e[26]!==y?(I=o&&r.jsxs("div",{className:"px-8 pt-5 pb-6",children:[r.jsx("div",{className:"mb-4",children:r.jsxs(Zd,{type:"single",variant:"outline",size:"sm",value:f,onValueChange:R=>{R&&m(R)},children:[r.jsx(un,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),r.jsx(un,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"})]})}),r.jsxs("div",{className:"rounded-xl border border-border p-5",children:[r.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:y_[f].map(R=>{const{dollars:P,label:O}=R;return r.jsxs("button",{type:"button",disabled:V,onClick:()=>{re("credits_topup_clicked",{amount_cents:P*100,currency:f,tier_label:O,source:"exhausted_banner"}),y(P*100)},className:Y("relative flex flex-col items-center gap-1 py-5 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[r.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[p,P]}),r.jsx("span",{className:"text-xs text-muted-foreground",children:O})]},P)})}),u?r.jsxs("div",{className:"flex gap-2 mt-3",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:p}),r.jsx(at,{type:"number",min:"1",step:"1",placeholder:"50",value:c,onChange:R=>d(R.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),r.jsx(oe,{className:"h-10",disabled:!S||V,onClick:()=>{re("credits_topup_clicked",{amount_cents:Math.round(C*100),currency:f,tier_label:"custom",source:"exhausted_banner"}),y(Math.round(C*100))},children:V?"Opening...":"Add"})]}):r.jsx("button",{type:"button",className:"w-full mt-3 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>h(!0),children:"Enter custom amount"})]}),r.jsx("div",{className:"mt-5 rounded-xl bg-muted/25 border border-border/50 p-4 space-y-3",children:S_.map(w_)})]}),e[18]=f,e[19]=p,e[20]=c,e[21]=C,e[22]=o,e[23]=S,e[24]=V,e[25]=u,e[26]=y,e[27]=I):I=e[27];let E;e[28]!==s?(E=r.jsx(oe,{variant:"ghost",size:"sm",onClick:s,children:"Dismiss"}),e[28]=s,e[29]=E):E=e[29];let N;e[30]!==n||e[31]!==s||e[32]!==i.slug?(N=r.jsx("button",{type:"button",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:()=>{n({to:"/$org/settings/ai-providers",params:{org:i.slug}}),s?.()},children:"Manage providers"}),e[30]=n,e[31]=s,e[32]=i.slug,e[33]=N):N=e[33];let A;e[34]!==E||e[35]!==N?(A=r.jsxs("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-between",children:[E,N]}),e[34]=E,e[35]=N,e[36]=A):A=e[36];let D;e[37]!==I||e[38]!==A?(D=r.jsxs(Ot,{className:"sm:max-w-[520px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:V_,children:[M,I,A]}),e[37]=I,e[38]=A,e[39]=D):D=e[39];let L;return e[40]!==D||e[41]!==w?(L=r.jsx(Bt,{open:!0,onOpenChange:w,children:D}),e[40]=D,e[41]=w,e[42]=L):L=e[42],L}function w_(t){return r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-[hsl(var(--chart-1))]/15 shrink-0",children:r.jsx(Mt,{size:12,className:"text-[hsl(var(--chart-1))]"})}),r.jsx("span",{className:"text-sm text-foreground/80",children:t})]},t)}function V_(t){return t.preventDefault()}function C_(t){he.error(`Top-up failed: ${t.message}`)}const k_={length:"Response reached the model's output limit. Different models have different limits. Try switching models or asking it to continue.","content-filter":"Response was filtered due to content policy.","tool-calls":"Response paused after tool execution to prevent infinite loops and save costs. Click continue to keep working."};function gn(t){const e=B.c(32),{variant:s,onDismiss:i}=t,n=s==="error",o=n?"Error occurred":"Response incomplete",a=n?t.error.message:k_[t.finishReason]??`Response stopped unexpectedly: ${t.finishReason}`,l=n?"border-destructive/30 bg-destructive/5":"border-amber-500/30 bg-amber-500/5",c=n?"text-destructive":"text-amber-600 dark:text-amber-500",d=n?Bs:wa;let u;e[0]!==l?(u=Y("flex items-start gap-2 px-3 py-2.5 rounded-lg border border-dashed text-sm w-full mb-2 shadow",l),e[0]=l,e[1]=u):u=e[1];let h;e[2]!==c?(h=Y("mt-0.5 shrink-0",c),e[2]=c,e[3]=h):h=e[3];let f;e[4]!==d?(f=r.jsx(d,{size:16}),e[4]=d,e[5]=f):f=e[5];let m;e[6]!==h||e[7]!==f?(m=r.jsx("div",{className:h,children:f}),e[6]=h,e[7]=f,e[8]=m):m=e[8];let p;e[9]!==c?(p=Y("text-xs mb-1 font-medium",c),e[9]=c,e[10]=p):p=e[10];let g;e[11]!==p||e[12]!==o?(g=r.jsx("div",{className:p,children:o}),e[11]=p,e[12]=o,e[13]=g):g=e[13];let _;e[14]!==a?(_=r.jsx("div",{className:"text-xs line-clamp-2 text-muted-foreground mb-2",children:a}),e[14]=a,e[15]=_):_=e[15];let v;e[16]!==n||e[17]!==t.onContinue||e[18]!==t.onFixInChat?(v=r.jsx("div",{className:"flex gap-2",children:n?r.jsxs(r.Fragment,{children:[r.jsx(oe,{size:"sm",variant:"outline",onClick:t.onFixInChat,className:"h-7 text-xs",children:"Fix in chat"}),r.jsx(oe,{size:"sm",variant:"outline",disabled:!0,className:"h-7 text-xs",children:"Report"})]}):r.jsx(oe,{size:"sm",variant:"outline",onClick:t.onContinue,className:"h-7 text-xs",children:"Continue"})}),e[16]=n,e[17]=t.onContinue,e[18]=t.onFixInChat,e[19]=v):v=e[19];let x;e[20]!==g||e[21]!==_||e[22]!==v?(x=r.jsxs("div",{className:"flex-1 min-w-0",children:[g,_,v]}),e[20]=g,e[21]=_,e[22]=v,e[23]=x):x=e[23];let b;e[24]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Es,{size:14}),e[24]=b):b=e[24];let y;e[25]!==i?(y=r.jsx("button",{type:"button",onClick:i,className:"text-muted-foreground hover:text-foreground transition-colors shrink-0",title:"Dismiss",children:b}),e[25]=i,e[26]=y):y=e[26];let V;return e[27]!==u||e[28]!==y||e[29]!==m||e[30]!==x?(V=r.jsx("div",{className:"px-0.5",children:r.jsxs("div",{className:u,children:[m,x,y]})}),e[27]=u,e[28]=y,e[29]=m,e[30]=x,e[31]=V):V=e[31],V}function Ln(){const t=B.c(41),{error:e,clearError:s,finishReason:i,clearFinishReason:n,messages:o,isStreaming:a,isWaitingForApprovals:l,addToolOutput:c,addToolApprovalResponse:d,sendMessage:u}=Ii(),[h,f]=ei(),{virtualMcpId:m,createTaskWithMessage:p}=Lt();let g,_,v,x;if(t[0]!==o){const A=o.at(-1);x=A?.role==="assistant"?A.parts.filter(A_):null,g=x?.filter(N_)?.length,_=A?.role==="assistant"?c_(A.parts):[],v=A?.role==="assistant"?n_(A.parts):[],t[0]=o,t[1]=g,t[2]=_,t[3]=v,t[4]=x}else g=t[1],_=t[2],v=t[3],x=t[4];const b=v;let y;t[5]!==e||t[6]!==u?(y=()=>{if(e){const D={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:`I encountered this error: ${e.message}. Can you help me fix it?`}]}]};u(D)}},t[5]=e,t[6]=u,t[7]=y):y=t[7];const V=y;let C;t[8]!==u?(C=()=>{u({type:"doc",content:[{type:"paragraph",content:[{type:"text",text:"Please continue."}]}]})},t[8]=u,t[9]=C):C=t[9];const S=C;let w;t[10]!==c?(w=(A,D)=>{c({tool:"user_ask",toolCallId:A.toolCallId,output:{response:D}})},t[10]=c,t[11]=w):w=t[11];const k=w;let T;t[12]!==p||t[13]!==h||t[14]!==f||t[15]!==m?(T=A=>{f({...h,toolApprovalLevel:"auto"}),p({virtualMcpId:m,message:{parts:[{type:"text",text:`Implement this plan:
|
|
3
3
|
|
|
4
|
-
${A}`}]}})},t[12]=p,t[13]=h,t[14]=f,t[15]=m,t[16]=T):T=t[16];const M=T,I=j_;let E;t[17]!==d?(E=(A,D,L)=>{d({id:A,approved:D,...L?{reason:L}:{}})},t[17]=d,t[18]=E):E=t[18];const N=E;if(g){let A;return t[19]!==k||t[20]!==a||t[21]!==x?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(Ih,{userAskParts:x,isStreaming:a,onSubmit:k})}),t[19]=k,t[20]=a,t[21]=x,t[22]=A):A=t[22],A}if(_.length>0){let A;return t[23]!==M||t[24]!==a||t[25]!==_?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(l_,{plans:_,isStreaming:a,onApprove:M,onDismiss:I})}),t[23]=M,t[24]=a,t[25]=_,t[26]=A):A=t[26],A}if(b.length>0||a&&l){let A;return t[27]!==N||t[28]!==a||t[29]!==b?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(r_,{approvals:b,isStreaming:a,onRespond:N})}),t[27]=N,t[28]=a,t[29]=b,t[30]=A):A=t[30],A}if(!a&&e){if(b_(e)){let D;return t[31]!==s?(D=r.jsx(Th,{onDismiss:s}),t[31]=s,t[32]=D):D=t[32],D}let A;return t[33]!==s||t[34]!==e||t[35]!==V?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0 bg-background",children:r.jsx(gn,{variant:"error",error:e,onDismiss:s,onFixInChat:V})}),t[33]=s,t[34]=e,t[35]=V,t[36]=A):A=t[36],A}if(!a&&i&&i!=="stop"&&!l){let A;return t[37]!==n||t[38]!==i||t[39]!==S?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0 bg-background",children:r.jsx(gn,{variant:"warning",finishReason:i,onDismiss:n,onContinue:S})}),t[37]=n,t[38]=i,t[39]=S,t[40]=A):A=t[40],A}return null}function j_(){document.querySelector("[data-chat-input]")?.focus()}function N_(t){return t.state!=="output-available"}function A_(t){return t.type==="tool-user_ask"}Ln.Error=function(e){return r.jsx(gn,{variant:"error",error:e.error,onDismiss:e.onDismiss,onFixInChat:e.onFixInChat})};Ln.Warning=function(e){return r.jsx(gn,{variant:"warning",finishReason:e.finishReason,onDismiss:e.onDismiss,onContinue:e.onContinue})};Ln.UserAskQuestion=Ih;async function Ya(t,e,s,i,n){if(!Tn(e)){he.error("Selected model does not support file uploads");return}const o=s.type||"application/octet-stream";if(!yp(o,e)){const l=th(e),c=e?.title??"This model";n?n({fileName:s.name,modelName:c,accepted:l}):he.error(`"${s.name}" can't be attached`,{description:`${c} accepts ${l}. PowerPoint, Word, and Excel files aren't supported yet.`});return}const a=10*1024*1024;if(s.size>a){he.error(`File "${s.name}" exceeds 10MB limit`);return}try{const l=new FileReader,c=new Promise((h,f)=>{l.onload=()=>{const m=l.result;if(typeof m!="string"){f(new Error("Failed to read file as data URL"));return}const p=m.includes(",")?m.split(",")[1]??m:m;h(p)},l.onerror=f});l.readAsDataURL(s);const d=await c,u={id:crypto.randomUUID(),name:s.name,mimeType:s.type||"application/octet-stream",size:s.size,data:d};xm(t,{from:i,to:i},u)}catch(l){console.error("Failed to process file:",l),he.error(`Failed to load file "${s.name}"`)}}function E_(t){const e=B.c(8),{editor:s,selectedModel:i,onUnsupportedFile:n}=t,o=j.useRef(T_);let a,l;e[0]!==s||e[1]!==n||e[2]!==i?(a=()=>{o.current=async(u,h)=>{await Ya(s,i,u,h,n)}},l=[s,i,n],e[0]=s,e[1]=n,e[2]=i,e[3]=a,e[4]=l):(a=e[3],l=e[4]),j.useEffect(a,l);let c,d;return e[5]!==s?(c=()=>{if(s?.isDestroyed)return;const u=new No("fileDropHandler");s.state.plugins.find(m=>m.spec.key===u)&&s.unregisterPlugin(u);const f=new Dm({key:u,props:{handleDrop:(m,p,g,_)=>{if(_)return!1;const v=p.dataTransfer?.files;if(!v||v.length===0)return!1;p.preventDefault();const x=m.posAtCoords({left:p.clientX,top:p.clientY});if(!x)return!1;const b=Array.from(v),y=x.pos;for(const V of b)o.current?.(V,y);return!0},handlePaste:(m,p)=>{const g=p.clipboardData?.items;if(!g)return!1;const _=Array.from(g).filter(I_);if(_.length===0)return!1;p.preventDefault();const{from:v}=m.state.selection;for(const x of _){const b=x.getAsFile();b&&o.current?.(b,v)}return!0}}});return s.registerPlugin(f),()=>{s?.isDestroyed||s.unregisterPlugin(u)}},d=[s],e[5]=s,e[6]=c,e[7]=d):(c=e[6],d=e[7]),j.useEffect(c,d),null}function I_(t){return t.kind==="file"}function T_(){return Promise.resolve()}function R_(t){const e=B.c(24),{selectedModel:s,isStreaming:i,icon:n,onUnsupportedFile:o}=t,{editor:a}=jn(),l=j.useRef(null);let c;e[0]!==s?(c=Tn(s),e[0]=s,e[1]=c):c=e[1];const d=c;let u;e[2]!==a||e[3]!==o||e[4]!==s?(u=async V=>{const C=V.target.files;if(!C||C.length===0||!a)return;const S=Array.from(C),{from:w}=a.state.selection,k=w;for(const T of S)await Ya(a,s,T,k,o);l.current&&(l.current.value="")},e[2]=a,e[3]=o,e[4]=s,e[5]=u):u=e[5];const h=u;if(!a||!d)return null;let f;e[6]!==s?(f=bp(s),e[6]=s,e[7]=f):f=e[7];let m;e[8]!==h||e[9]!==i||e[10]!==f?(m=r.jsx("input",{ref:l,type:"file",multiple:!0,accept:f,className:"hidden",onChange:h,disabled:i}),e[8]=h,e[9]=i,e[10]=f,e[11]=m):m=e[11];const p=i||!d;let g;e[12]===Symbol.for("react.memo_cache_sentinel")?(g=()=>l.current?.click(),e[12]=g):g=e[12];let _;e[13]!==n?(_=n??r.jsx($d,{size:16}),e[13]=n,e[14]=_):_=e[14];let v;e[15]!==p||e[16]!==_?(v=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"text-muted-foreground/75",disabled:p,onClick:g,children:_})}),e[15]=p,e[16]=_,e[17]=v):v=e[17];let x;e[18]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx(Ge,{side:"top",children:"Add file"}),e[18]=x):x=e[18];let b;e[19]!==v?(b=r.jsxs(Ye,{children:[v,x]}),e[19]=v,e[20]=b):b=e[20];let y;return e[21]!==b||e[22]!==m?(y=r.jsxs(r.Fragment,{children:[m,b]}),e[21]=b,e[22]=m,e[23]=y):y=e[23],y}const M_=["PowerPoint (.pptx)","Word documents (.docx)","Excel spreadsheets (.xlsx)"];function D_(t){const e=B.c(29),{info:s,onClose:i}=t,n=s!==null;let o;e[0]!==i?(o=S=>!S&&i(),e[0]=i,e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(251,191,36,0.35) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(244,114,182,0.25) 0%, transparent 100%)"],e[2]=a):a=e[2];let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:a.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[3]=l):l=e[3];let c,d;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"flex items-center justify-center size-9 rounded-lg bg-amber-500/15 text-amber-600 dark:text-amber-400",children:r.jsx(wa,{size:18})}),d=r.jsx(qt,{className:"text-xl font-semibold tracking-tight",children:"File type not supported"}),e[4]=c,e[5]=d):(c=e[4],d=e[5]);const u=s?.fileName;let h;e[6]!==u?(h=r.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[l,r.jsxs(Gt,{className:"relative gap-4",children:[c,r.jsxs("div",{children:[d,r.jsxs(Nn,{className:"mt-1.5 text-sm leading-relaxed",children:[r.jsxs("span",{className:"font-medium text-foreground",children:["“",u,"”"]})," ","can't be attached to this chat."]})]})]})]}),e[6]=u,e[7]=h):h=e[7];const f=s?.modelName;let m;e[8]!==f?(m=r.jsxs("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground mb-2",children:[f," accepts"]}),e[8]=f,e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx($d,{size:14,className:"text-muted-foreground"}),e[10]=p):p=e[10];const g=s?.accepted;let _;e[11]!==g?(_=r.jsxs("div",{className:"flex items-center gap-2 text-sm text-foreground",children:[p,r.jsx("span",{className:"capitalize",children:g})]}),e[11]=g,e[12]=_):_=e[12];let v;e[13]!==m||e[14]!==_?(v=r.jsxs("div",{className:"rounded-xl border border-border p-4",children:[m,_]}),e[13]=m,e[14]=_,e[15]=v):v=e[15];let x;e[16]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsxs("div",{className:"rounded-xl bg-muted/25 border border-border/50 p-4 space-y-2",children:[r.jsx("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:"Not supported yet"}),M_.map(P_)]}),e[16]=x):x=e[16];let b;e[17]!==v?(b=r.jsxs("div",{className:"px-8 pt-3 pb-6 space-y-3",children:[v,x]}),e[17]=v,e[18]=b):b=e[18];let y;e[19]!==i?(y=r.jsx("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-end",children:r.jsx(oe,{onClick:i,children:"Got it"})}),e[19]=i,e[20]=y):y=e[20];let V;e[21]!==b||e[22]!==y||e[23]!==h?(V=r.jsxs(Ot,{className:"sm:max-w-[480px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:L_,children:[h,b,y]}),e[21]=b,e[22]=y,e[23]=h,e[24]=V):V=e[24];let C;return e[25]!==n||e[26]!==V||e[27]!==o?(C=r.jsx(Bt,{open:n,onOpenChange:o,children:V}),e[25]=n,e[26]=V,e[27]=o,e[28]=C):C=e[28],C}function P_(t){return r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-muted shrink-0",children:r.jsx(Es,{size:10,className:"text-muted-foreground"})}),r.jsx("span",{className:"text-sm text-foreground/80",children:t})]},t)}function L_(t){return t.preventDefault()}function O_(){const t=B.c(3),[e,s]=j.useState(null);let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=()=>s(null),t[0]=i):i=t[0];let n;return t[1]!==e?(n={unsupportedFile:e,onUnsupportedFile:s,clearUnsupportedFile:i},t[1]=e,t[2]=n):n=t[2],n}var B_=Pm;var $_=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],Mo=$_.join(","),Rh=typeof Element>"u",dr=Rh?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,_n=!Rh&&Element.prototype.getRootNode?function(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}:function(t){return t?.ownerDocument},xn=function(e,s){var i;s===void 0&&(s=!0);var n=e==null||(i=e.getAttribute)===null||i===void 0?void 0:i.call(e,"inert"),o=n===""||n==="true",a=o||s&&e&&(typeof e.closest=="function"?e.closest("[inert]"):xn(e.parentNode));return a},z_=function(e){var s,i=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"contenteditable");return i===""||i==="true"},F_=function(e,s,i){if(xn(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Mo));return s&&dr.call(e,Mo)&&n.unshift(e),n=n.filter(i),n},Do=function(e,s,i){for(var n=[],o=Array.from(e);o.length;){var a=o.shift();if(!xn(a,!1))if(a.tagName==="SLOT"){var l=a.assignedElements(),c=l.length?l:a.children,d=Do(c,!0,i);i.flatten?n.push.apply(n,d):n.push({scopeParent:a,candidates:d})}else{var u=dr.call(a,Mo);u&&i.filter(a)&&(s||!e.includes(a))&&n.push(a);var h=a.shadowRoot||typeof i.getShadowRoot=="function"&&i.getShadowRoot(a),f=!xn(h,!1)&&(!i.shadowRootFilter||i.shadowRootFilter(a));if(h&&f){var m=Do(h===!0?a.children:h.children,!0,i);i.flatten?n.push.apply(n,m):n.push({scopeParent:a,candidates:m})}else o.unshift.apply(o,a.children)}}return n},Mh=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},Dh=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||z_(e))&&!Mh(e)?0:e.tabIndex},U_=function(e,s){var i=Dh(e);return i<0&&s&&!Mh(e)?0:i},H_=function(e,s){return e.tabIndex===s.tabIndex?e.documentOrder-s.documentOrder:e.tabIndex-s.tabIndex},Ph=function(e){return e.tagName==="INPUT"},W_=function(e){return Ph(e)&&e.type==="hidden"},K_=function(e){var s=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(i){return i.tagName==="SUMMARY"});return s},q_=function(e,s){for(var i=0;i<e.length;i++)if(e[i].checked&&e[i].form===s)return e[i]},G_=function(e){if(!e.name)return!0;var s=e.form||_n(e),i=function(l){return s.querySelectorAll('input[type="radio"][name="'+l+'"]')},n;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")n=i(window.CSS.escape(e.name));else try{n=i(e.name)}catch(a){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",a.message),!1}var o=q_(n,e.form);return!o||o===e},Y_=function(e){return Ph(e)&&e.type==="radio"},X_=function(e){return Y_(e)&&!G_(e)},J_=function(e){var s,i=e&&_n(e),n=(s=i)===null||s===void 0?void 0:s.host,o=!1;if(i&&i!==e){var a,l,c;for(o=!!((a=n)!==null&&a!==void 0&&(l=a.ownerDocument)!==null&&l!==void 0&&l.contains(n)||e!=null&&(c=e.ownerDocument)!==null&&c!==void 0&&c.contains(e));!o&&n;){var d,u,h;i=_n(n),n=(d=i)===null||d===void 0?void 0:d.host,o=!!((u=n)!==null&&u!==void 0&&(h=u.ownerDocument)!==null&&h!==void 0&&h.contains(n))}}return o},Bl=function(e){var s=e.getBoundingClientRect(),i=s.width,n=s.height;return i===0&&n===0},Q_=function(e,s){var i=s.displayCheck,n=s.getShadowRoot;if(i==="full-native"&&"checkVisibility"in e){var o=e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});return!o}if(getComputedStyle(e).visibility==="hidden")return!0;var a=dr.call(e,"details>summary:first-of-type"),l=a?e.parentElement:e;if(dr.call(l,"details:not([open]) *"))return!0;if(!i||i==="full"||i==="full-native"||i==="legacy-full"){if(typeof n=="function"){for(var c=e;e;){var d=e.parentElement,u=_n(e);if(d&&!d.shadowRoot&&n(d)===!0)return Bl(e);e.assignedSlot?e=e.assignedSlot:!d&&u!==e.ownerDocument?e=u.host:e=d}e=c}if(J_(e))return!e.getClientRects().length;if(i!=="legacy-full")return!0}else if(i==="non-zero-area")return Bl(e);return!1},Z_=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var s=e.parentElement;s;){if(s.tagName==="FIELDSET"&&s.disabled){for(var i=0;i<s.children.length;i++){var n=s.children.item(i);if(n.tagName==="LEGEND")return dr.call(s,"fieldset[disabled] *")?!0:!n.contains(e)}return!0}s=s.parentElement}return!1},ex=function(e,s){return!(s.disabled||W_(s)||Q_(s,e)||K_(s)||Z_(s))},$l=function(e,s){return!(X_(s)||Dh(s)<0||!ex(e,s))},tx=function(e){var s=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(s)||s>=0)},Lh=function(e){var s=[],i=[];return e.forEach(function(n,o){var a=!!n.scopeParent,l=a?n.scopeParent:n,c=U_(l,a),d=a?Lh(n.candidates):l;c===0?a?s.push.apply(s,d):s.push(l):i.push({documentOrder:o,tabIndex:c,item:n,isScope:a,content:d})}),i.sort(H_).reduce(function(n,o){return o.isScope?n.push.apply(n,o.content):n.push(o.content),n},[]).concat(s)},Oh=function(e,s){s=s||{};var i;return s.getShadowRoot?i=Do([e],s.includeContainer,{filter:$l.bind(null,s),flatten:!1,getShadowRoot:s.getShadowRoot,shadowRootFilter:tx}):i=F_(e,s.includeContainer,$l.bind(null,s)),Lh(i)};function sx(){return/apple/i.test(navigator.vendor)}const zl="data-floating-ui-focusable";function ix(t){let e=t.activeElement;for(;((s=e)==null||(s=s.shadowRoot)==null?void 0:s.activeElement)!=null;){var s;e=e.shadowRoot.activeElement}return e}function Po(t,e){if(!t||!e)return!1;const s=e.getRootNode==null?void 0:e.getRootNode();if(t.contains(e))return!0;if(s&&kf(s)){let i=e;for(;i;){if(t===i)return!0;i=i.parentNode||i.host}}return!1}function Oi(t){return"composedPath"in t?t.composedPath()[0]:t.target}function Qn(t,e){if(e==null)return!1;if("composedPath"in t)return t.composedPath().includes(e);const s=t;return s.target!=null&&e.contains(s.target)}function rx(t){return t.matches("html,body")}function hr(t){return t?.ownerDocument||document}function nx(t){return t?t.hasAttribute(zl)?t:t.querySelector("["+zl+"]")||t:null}function sn(t,e,s){return s===void 0&&(s=!0),t.filter(n=>{var o;return n.parentId===e&&(!s||((o=n.context)==null?void 0:o.open))}).flatMap(n=>[n,...sn(t,n.id,s)])}function ox(t){return"nativeEvent"in t}var ax=typeof document<"u",lx=function(){},Xs=ax?j.useLayoutEffect:lx;const cx={...vd},dx=cx.useInsertionEffect,hx=dx||(t=>t());function gi(t){const e=j.useRef(()=>{});return hx(()=>{e.current=t}),j.useCallback(function(){for(var s=arguments.length,i=new Array(s),n=0;n<s;n++)i[n]=arguments[n];return e.current==null?void 0:e.current(...i)},[])}const Bh=()=>({getShadowRoot:!0,displayCheck:typeof ResizeObserver=="function"&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function $h(t,e){const s=Oh(t,Bh()),i=s.length;if(i===0)return;const n=ix(hr(t)),o=s.indexOf(n),a=o===-1?e===1?0:i-1:o+e;return s[a]}function ux(t){return $h(hr(t).body,1)||t}function fx(t){return $h(hr(t).body,-1)||t}function Zn(t,e){const s=e||t.currentTarget,i=t.relatedTarget;return!i||!Po(s,i)}function mx(t){Oh(t,Bh()).forEach(s=>{s.dataset.tabindex=s.getAttribute("tabindex")||"",s.setAttribute("tabindex","-1")})}function Fl(t){t.querySelectorAll("[data-tabindex]").forEach(s=>{const i=s.dataset.tabindex;delete s.dataset.tabindex,i?s.setAttribute("tabindex",i):s.removeAttribute("tabindex")})}const px="data-floating-ui-focusable",Ul="active",Hl="selected",gx={...vd};let Wl=!1,_x=0;const Kl=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+_x++;function xx(){const[t,e]=j.useState(()=>Wl?Kl():void 0);return Xs(()=>{t==null&&e(Kl())},[]),j.useEffect(()=>{Wl=!0},[]),t}const vx=gx.useId,Xa=vx||xx;function bx(){const t=new Map;return{emit(e,s){var i;(i=t.get(e))==null||i.forEach(n=>n(s))},on(e,s){t.has(e)||t.set(e,new Set),t.get(e).add(s)},off(e,s){var i;(i=t.get(e))==null||i.delete(s)}}}const yx=j.createContext(null),Sx=j.createContext(null),zh=()=>{var t;return((t=j.useContext(yx))==null?void 0:t.id)||null},Fh=()=>j.useContext(Sx);function Ja(t){return"data-floating-ui-"+t}const wx={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"fixed",whiteSpace:"nowrap",width:"1px",top:0,left:0},ql=j.forwardRef(function(e,s){const[i,n]=j.useState();Xs(()=>{sx()&&n("button")},[]);const o={ref:s,tabIndex:0,role:i,"aria-hidden":i?void 0:!0,[Ja("focus-guard")]:"",style:wx};return r.jsx("span",{...e,...o})}),Vx={clipPath:"inset(50%)",position:"fixed",top:0,left:0},Uh=j.createContext(null),Gl=Ja("portal");function Cx(t){t===void 0&&(t={});const{id:e,root:s}=t,i=Xa(),n=jx(),[o,a]=j.useState(null),l=j.useRef(null);return Xs(()=>()=>{o?.remove(),queueMicrotask(()=>{l.current=null})},[o]),Xs(()=>{if(!i||l.current)return;const c=e?document.getElementById(e):null;if(!c)return;const d=document.createElement("div");d.id=i,d.setAttribute(Gl,""),c.appendChild(d),l.current=d,a(d)},[e,i]),Xs(()=>{if(s===null||!i||l.current)return;let c=s||n?.portalNode;c&&!Tf(c)&&(c=c.current),c=c||document.body;let d=null;e&&(d=document.createElement("div"),d.id=e,c.appendChild(d));const u=document.createElement("div");u.id=i,u.setAttribute(Gl,""),c=d||c,c.appendChild(u),l.current=u,a(u)},[e,s,i,n]),o}function kx(t){const{children:e,id:s,root:i,preserveTabOrder:n=!0}=t,o=Cx({id:s,root:i}),[a,l]=j.useState(null),c=j.useRef(null),d=j.useRef(null),u=j.useRef(null),h=j.useRef(null),f=a?.modal,m=a?.open,p=!!a&&!a.modal&&a.open&&n&&!!(i||o);return j.useEffect(()=>{if(!o||!n||f)return;function g(_){o&&Zn(_)&&(_.type==="focusin"?Fl:mx)(o)}return o.addEventListener("focusin",g,!0),o.addEventListener("focusout",g,!0),()=>{o.removeEventListener("focusin",g,!0),o.removeEventListener("focusout",g,!0)}},[o,n,f]),j.useEffect(()=>{o&&(m||Fl(o))},[m,o]),r.jsxs(Uh.Provider,{value:j.useMemo(()=>({preserveTabOrder:n,beforeOutsideRef:c,afterOutsideRef:d,beforeInsideRef:u,afterInsideRef:h,portalNode:o,setFocusManagerState:l}),[n,o]),children:[p&&o&&r.jsx(ql,{"data-type":"outside",ref:c,onFocus:g=>{if(Zn(g,o)){var _;(_=u.current)==null||_.focus()}else{const v=a?a.domReference:null,x=fx(v);x?.focus()}}}),p&&o&&r.jsx("span",{"aria-owns":o.id,style:Vx}),o&&Ei.createPortal(e,o),p&&o&&r.jsx(ql,{"data-type":"outside",ref:d,onFocus:g=>{if(Zn(g,o)){var _;(_=h.current)==null||_.focus()}else{const v=a?a.domReference:null,x=ux(v);x?.focus(),a?.closeOnFocusOut&&a?.onOpenChange(!1,g.nativeEvent,"focus-out")}}})]})}const jx=()=>j.useContext(Uh),Nx={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},Ax={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},Yl=t=>{var e,s;return{escapeKey:typeof t=="boolean"?t:(e=t?.escapeKey)!=null?e:!1,outsidePress:typeof t=="boolean"?t:(s=t?.outsidePress)!=null?s:!0}};function Ex(t,e){e===void 0&&(e={});const{open:s,onOpenChange:i,elements:n,dataRef:o}=t,{enabled:a=!0,escapeKey:l=!0,outsidePress:c=!0,outsidePressEvent:d="pointerdown",referencePress:u=!1,referencePressEvent:h="pointerdown",ancestorScroll:f=!1,bubbles:m,capture:p}=e,g=Fh(),_=gi(typeof c=="function"?c:()=>!1),v=typeof c=="function"?_:c,x=j.useRef(!1),{escapeKey:b,outsidePress:y}=Yl(m),{escapeKey:V,outsidePress:C}=Yl(p),S=j.useRef(!1),w=gi(N=>{var A;if(!s||!a||!l||N.key!=="Escape"||S.current)return;const D=(A=o.current.floatingContext)==null?void 0:A.nodeId,L=g?sn(g.nodesRef.current,D):[];if(!b&&(N.stopPropagation(),L.length>0)){let R=!0;if(L.forEach(P=>{var O;if((O=P.context)!=null&&O.open&&!P.context.dataRef.current.__escapeKeyBubbles){R=!1;return}}),!R)return}i(!1,ox(N)?N.nativeEvent:N,"escape-key")}),k=gi(N=>{var A;const D=()=>{var L;w(N),(L=Oi(N))==null||L.removeEventListener("keydown",D)};(A=Oi(N))==null||A.addEventListener("keydown",D)}),T=gi(N=>{var A;const D=o.current.insideReactTree;o.current.insideReactTree=!1;const L=x.current;if(x.current=!1,d==="click"&&L||D||typeof v=="function"&&!v(N))return;const R=Oi(N),P="["+Ja("inert")+"]",O=hr(n.floating).querySelectorAll(P);let z=rs(R)?R:null;for(;z&&!qn(z);){const W=Af(z);if(qn(W)||!rs(W))break;z=W}if(O.length&&rs(R)&&!rx(R)&&!Po(R,n.floating)&&Array.from(O).every(W=>!Po(z,W)))return;if(Ef(R)&&E){const W=qn(R),H=If(R),U=/auto|scroll/,X=W||U.test(H.overflowX),K=W||U.test(H.overflowY),G=X&&R.clientWidth>0&&R.scrollWidth>R.clientWidth,ie=K&&R.clientHeight>0&&R.scrollHeight>R.clientHeight,te=H.direction==="rtl",J=ie&&(te?N.offsetX<=R.offsetWidth-R.clientWidth:N.offsetX>R.clientWidth),ae=G&&N.offsetY>R.clientHeight;if(J||ae)return}const $=(A=o.current.floatingContext)==null?void 0:A.nodeId,q=g&&sn(g.nodesRef.current,$).some(W=>{var H;return Qn(N,(H=W.context)==null?void 0:H.elements.floating)});if(Qn(N,n.floating)||Qn(N,n.domReference)||q)return;const F=g?sn(g.nodesRef.current,$):[];if(F.length>0){let W=!0;if(F.forEach(H=>{var U;if((U=H.context)!=null&&U.open&&!H.context.dataRef.current.__outsidePressBubbles){W=!1;return}}),!W)return}i(!1,N,"outside-press")}),M=gi(N=>{var A;const D=()=>{var L;T(N),(L=Oi(N))==null||L.removeEventListener(d,D)};(A=Oi(N))==null||A.addEventListener(d,D)});j.useEffect(()=>{if(!s||!a)return;o.current.__escapeKeyBubbles=b,o.current.__outsidePressBubbles=y;let N=-1;function A(O){i(!1,O,"ancestor-scroll")}function D(){window.clearTimeout(N),S.current=!0}function L(){N=window.setTimeout(()=>{S.current=!1},Nf()?5:0)}const R=hr(n.floating);l&&(R.addEventListener("keydown",V?k:w,V),R.addEventListener("compositionstart",D),R.addEventListener("compositionend",L)),v&&R.addEventListener(d,C?M:T,C);let P=[];return f&&(rs(n.domReference)&&(P=Kn(n.domReference)),rs(n.floating)&&(P=P.concat(Kn(n.floating))),!rs(n.reference)&&n.reference&&n.reference.contextElement&&(P=P.concat(Kn(n.reference.contextElement)))),P=P.filter(O=>{var z;return O!==((z=R.defaultView)==null?void 0:z.visualViewport)}),P.forEach(O=>{O.addEventListener("scroll",A,{passive:!0})}),()=>{l&&(R.removeEventListener("keydown",V?k:w,V),R.removeEventListener("compositionstart",D),R.removeEventListener("compositionend",L)),v&&R.removeEventListener(d,C?M:T,C),P.forEach(O=>{O.removeEventListener("scroll",A)}),window.clearTimeout(N)}},[o,n,l,v,d,s,i,f,a,b,y,w,V,k,T,C,M]),j.useEffect(()=>{o.current.insideReactTree=!1},[o,v,d]);const I=j.useMemo(()=>({onKeyDown:w,...u&&{[Nx[h]]:N=>{i(!1,N.nativeEvent,"reference-press")},...h!=="click"&&{onClick(N){i(!1,N.nativeEvent,"reference-press")}}}}),[w,i,u,h]),E=j.useMemo(()=>{function N(A){A.button===0&&(x.current=!0)}return{onKeyDown:w,onMouseDown:N,onMouseUp:N,[Ax[d]]:()=>{o.current.insideReactTree=!0}}},[w,d,o]);return j.useMemo(()=>a?{reference:I,floating:E}:{},[a,I,E])}function Ix(t){const{open:e=!1,onOpenChange:s,elements:i}=t,n=Xa(),o=j.useRef({}),[a]=j.useState(()=>bx()),l=zh()!=null,[c,d]=j.useState(i.reference),u=gi((m,p,g)=>{o.current.openEvent=m?p:void 0,a.emit("openchange",{open:m,event:p,reason:g,nested:l}),s?.(m,p,g)}),h=j.useMemo(()=>({setPositionReference:d}),[]),f=j.useMemo(()=>({reference:c||i.reference||null,floating:i.floating||null,domReference:i.reference}),[c,i.reference,i.floating]);return j.useMemo(()=>({dataRef:o,open:e,onOpenChange:u,elements:f,events:a,floatingId:n,refs:h}),[e,u,f,a,n,h])}function Tx(t){t===void 0&&(t={});const{nodeId:e}=t,s=Ix({...t,elements:{reference:null,floating:null,...t.elements}}),i=t.rootContext||s,n=i.elements,[o,a]=j.useState(null),[l,c]=j.useState(null),u=n?.domReference||o,h=j.useRef(null),f=Fh();Xs(()=>{u&&(h.current=u)},[u]);const m=jf({...t,elements:{...n,...l&&{reference:l}}}),p=j.useCallback(b=>{const y=rs(b)?{getBoundingClientRect:()=>b.getBoundingClientRect(),getClientRects:()=>b.getClientRects(),contextElement:b}:b;c(y),m.refs.setReference(y)},[m.refs]),g=j.useCallback(b=>{(rs(b)||b===null)&&(h.current=b,a(b)),(rs(m.refs.reference.current)||m.refs.reference.current===null||b!==null&&!rs(b))&&m.refs.setReference(b)},[m.refs]),_=j.useMemo(()=>({...m.refs,setReference:g,setPositionReference:p,domReference:h}),[m.refs,g,p]),v=j.useMemo(()=>({...m.elements,domReference:u}),[m.elements,u]),x=j.useMemo(()=>({...m,...i,refs:_,elements:v,nodeId:e}),[m,_,v,e,i]);return Xs(()=>{i.dataRef.current.floatingContext=x;const b=f?.nodesRef.current.find(y=>y.id===e);b&&(b.context=x)}),j.useMemo(()=>({...m,context:x,refs:_,elements:v}),[m,_,v,x])}function eo(t,e,s){const i=new Map,n=s==="item";let o=t;if(n&&t){const{[Ul]:a,[Hl]:l,...c}=t;o=c}return{...s==="floating"&&{tabIndex:-1,[px]:""},...o,...e.map(a=>{const l=a?a[s]:null;return typeof l=="function"?t?l(t):null:l}).concat(t).reduce((a,l)=>(l&&Object.entries(l).forEach(c=>{let[d,u]=c;if(!(n&&[Ul,Hl].includes(d)))if(d.indexOf("on")===0){if(i.has(d)||i.set(d,[]),typeof u=="function"){var h;(h=i.get(d))==null||h.push(u),a[d]=function(){for(var f,m=arguments.length,p=new Array(m),g=0;g<m;g++)p[g]=arguments[g];return(f=i.get(d))==null?void 0:f.map(_=>_(...p)).find(_=>_!==void 0)}}}else a[d]=u}),a),{})}}function Rx(t){t===void 0&&(t=[]);const e=t.map(l=>l?.reference),s=t.map(l=>l?.floating),i=t.map(l=>l?.item),n=j.useCallback(l=>eo(l,t,"reference"),e),o=j.useCallback(l=>eo(l,t,"floating"),s),a=j.useCallback(l=>eo(l,t,"item"),i);return j.useMemo(()=>({getReferenceProps:n,getFloatingProps:o,getItemProps:a}),[n,o,a])}const Mx=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function Dx(t,e){var s,i;e===void 0&&(e={});const{open:n,elements:o,floatingId:a}=t,{enabled:l=!0,role:c="dialog"}=e,d=Xa(),u=((s=o.domReference)==null?void 0:s.id)||d,h=j.useMemo(()=>{var x;return((x=nx(o.floating))==null?void 0:x.id)||a},[o.floating,a]),f=(i=Mx.get(c))!=null?i:c,p=zh()!=null,g=j.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:n?h:void 0}:{"aria-expanded":n?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":n?h:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:u},...f==="menu"&&p&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[f,h,p,n,u,c]),_=j.useMemo(()=>{const x={id:h,...f&&{role:f}};return f==="tooltip"||c==="label"?x:{...x,...f==="menu"&&{"aria-labelledby":u}}},[f,h,u,c]),v=j.useCallback(x=>{let{active:b,selected:y}=x;const V={role:"option",...b&&{id:h+"-fui-option"}};switch(c){case"select":case"combobox":return{...V,"aria-selected":y}}return{}},[h,c]);return j.useMemo(()=>l?{reference:g,floating:_,item:v}:{},[l,g,_,v])}function Px(t){const e=B.c(26),{editor:s,query:i,items:n,onSelect:o,onClose:a}=t,[l,c]=j.useState(0),d=j.useRef(n),u=j.useRef(l),h=j.useRef(o),f=j.useRef(a),m=j.useDeferredValue(i);let p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=()=>{c(0)},e[0]=p):p=e[0];let g;e[1]!==m?(g=[m],e[1]=m,e[2]=g):g=e[2],j.useEffect(p,g);let _,v;e[3]!==n.length||e[4]!==l?(_=()=>{l>=n.length&&n.length>0&&c(0)},v=[n.length,l],e[3]=n.length,e[4]=l,e[5]=_,e[6]=v):(_=e[5],v=e[6]),j.useEffect(_,v);let x,b;e[7]!==n?(x=()=>{d.current=n},b=[n],e[7]=n,e[8]=x,e[9]=b):(x=e[8],b=e[9]),j.useEffect(x,b);let y,V;e[10]!==l?(y=()=>{u.current=l},V=[l],e[10]=l,e[11]=y,e[12]=V):(y=e[11],V=e[12]),j.useEffect(y,V);let C,S;e[13]!==o?(S=()=>{h.current=o},C=[o],e[13]=o,e[14]=C,e[15]=S):(C=e[14],S=e[15]),j.useEffect(S,C);let w,k;e[16]!==a?(w=()=>{f.current=a},k=[a],e[16]=a,e[17]=w,e[18]=k):(w=e[17],k=e[18]),j.useEffect(w,k);let T;e[19]!==s.isDestroyed||e[20]!==s.view.dom?(T=()=>{const N=s.view.dom;if(s?.isDestroyed||!N)return;const A=L=>{const R=d.current;if(!R.length)return!1;const P=()=>c(z=>(z+1)%R.length),O=()=>c(z=>(z-1+R.length)%R.length);switch(L.key){case"ArrowUp":return L.preventDefault(),O(),!0;case"ArrowDown":return L.preventDefault(),P(),!0;case"Tab":return L.preventDefault(),L.shiftKey?O():P(),!0;case"Home":return L.preventDefault(),c(0),!0;case"End":return L.preventDefault(),c(R.length-1),!0;case"Enter":{if(L.isComposing)return!1;L.preventDefault();const z=u.current;return z!==-1&&R[z]&&h.current?.(R[z],z),!0}case"Escape":return L.preventDefault(),f.current?.(),!0;default:return!1}},D=L=>{A(L)};return N.addEventListener("keydown",D,!0),()=>{N?.removeEventListener("keydown",D,!0)}},e[19]=s.isDestroyed,e[20]=s.view.dom,e[21]=T):T=e[21];let M;e[22]!==s?(M=[s],e[22]=s,e[23]=M):M=e[23],j.useEffect(T,M);const I=n.length?l:void 0;let E;return e[24]!==I?(E={selectedIndex:I,setSelectedIndex:c},e[24]=I,e[25]=E):E=e[25],E}function Lx(t,e){switch(e.type){case"SET_SELECTED_ITEM":return{...t,selectedItem:e.payload};case"ON_START":return{...t,open:!0,selectedItem:null,element:e.payload.element,query:e.payload.query,range:e.payload.range};case"ON_UPDATE":return{...t,element:e.payload.element,query:e.payload.query,range:e.payload.range};case"ON_EXIT":return{open:!1,element:null,query:"",range:null,selectedItem:null};default:return t}}const Hh=j.createContext(void 0);function Wh(){const t=j.useContext(Hh);if(!t)throw new Error("useSuggestionContext must be used within a SuggestionContext.Provider");return t}function Ox({editor:t,char:e,pluginKey:s,allow:i,onOpenChange:n}){const[o,a]=j.useReducer(Lx,{open:!1,element:null,query:"",range:null,selectedItem:null}),l=j.useRef(n);return l.current=n,j.useEffect(()=>{if(t?.isDestroyed)return;const c=s instanceof No?s:new No(s);t.state.plugins.find(h=>h.spec.key===c)&&t.unregisterPlugin(c);const u=wp({pluginKey:c,editor:t,char:e,allow(h){const f=t.state.doc.resolve(h.range.from);for(let m=f.depth;m>0;m--)if(f.node(m).type.name==="image")return!1;return!(i&&!i(h))},command(){},render:()=>({onStart:h=>{a({type:"ON_START",payload:{element:h.decorationNode??null,query:h.query,range:h.range}}),l.current?.(!0)},onUpdate:h=>{a({type:"ON_UPDATE",payload:{element:h.decorationNode??null,query:h.query,range:h.range}})},onKeyDown:h=>h.event.key==="Escape"?(a({type:"ON_EXIT"}),!0):!1,onExit:()=>{a({type:"ON_EXIT"}),l.current?.(!1)}}),items:()=>[]});return t.registerPlugin(u),()=>{t?.isDestroyed||t.unregisterPlugin(c)}},[t,s,e,a,i]),{state:o,dispatch:a}}function Bx({editor:t,queryKey:e,queryFn:s,onSelect:i}){const{state:n,dispatch:o}=Wh(),a=j.useDeferredValue(n.query),{data:l}=bd({queryKey:Ze.suggestionItems(e,n.open,a),queryFn:()=>n.open?s({query:a}):[]}),c=()=>{o({type:"ON_EXIT"})},d=async(h,f)=>{if(!(n.selectedItem!==null||!n.range)){o({type:"SET_SELECTED_ITEM",payload:h});try{const{view:m}=t,g=m.state.selection.$to.nodeAfter?.text?.startsWith(" "),_=n.range?{...n.range}:{from:0,to:0};g&&n.range&&(_.to+=1),await i({range:_,item:h})===!1?o({type:"SET_SELECTED_ITEM",payload:null}):c()}catch{c()}}},{selectedIndex:u}=Px({editor:t,query:a,items:l,onSelect:d,onClose:c});return{selectedItem:n.selectedItem,items:l,selectedIndex:u,close:c,onSelect:d}}function $x({children:t}){const{state:e,dispatch:s}=Wh(),{open:i,element:n}=e,o=()=>{s({type:"ON_EXIT"})},{refs:a,floatingStyles:l,context:c}=Tx({placement:"bottom-start",open:i,onOpenChange:f=>{f||o()},elements:{reference:n},middleware:[Rf(10),Mf(),Df()],whileElementsMounted:Pf}),d=Ex(c,{outsidePress:f=>!(f.target instanceof Element&&f.target.closest(".ProseMirror"))}),u=Dx(c,{role:"listbox"}),{getFloatingProps:h}=Rx([d,u]);return i?r.jsx(kx,{children:r.jsx("div",{ref:a.setFloating,style:l,...h(),className:"z-50 w-auto min-w-[360px] max-w-[520px] rounded-lg border bg-popover p-0 text-popover-foreground shadow-md outline-hidden overflow-hidden",children:t})}):null}const zx=t=>{const e=B.c(29),{item:s,isSelected:i,onSelect:n,isLoading:o,ref:a}=t;let l;if(e[0]!==s){const C=Ls(s._meta);l=s.title||kn(s.name,C),e[0]=s,e[1]=l}else l=e[1];const c=l,d=s.description||null,u=s.icon,h=i&&"bg-accent text-accent-foreground",f=o&&"pointer-events-none opacity-50";let m;e[2]!==h||e[3]!==f?(m=Y("relative flex w-full cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors","hover:bg-accent hover:text-accent-foreground","focus:bg-accent focus:text-accent-foreground",h,f),e[2]=h,e[3]=f,e[4]=m):m=e[4];let p;e[5]!==u||e[6]!==c?(p=u!==void 0&&r.jsx(Qt,{icon:u,name:c,size:"xs",className:"mr-2"}),e[5]=u,e[6]=c,e[7]=p):p=e[7];let g;e[8]!==c?(g=r.jsx("span",{className:"font-medium flex items-center truncate capitalize",children:c}),e[8]=c,e[9]=g):g=e[9];let _;e[10]!==o?(_=o&&r.jsx(ar,{size:"xs"}),e[10]=o,e[11]=_):_=e[11];let v;e[12]!==g||e[13]!==_?(v=r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[g,_]}),e[12]=g,e[13]=_,e[14]=v):v=e[14];let x;e[15]!==d?(x=d&&r.jsx("div",{className:"text-xs text-muted-foreground line-clamp-1",children:d}),e[15]=d,e[16]=x):x=e[16];let b;e[17]!==v||e[18]!==x?(b=r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[v,x]}),e[17]=v,e[18]=x,e[19]=b):b=e[19];let y;e[20]!==s.drillable?(y=s.drillable&&r.jsx("kbd",{className:"shrink-0 ml-2 px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground bg-muted border border-border rounded",children:"↵"}),e[20]=s.drillable,e[21]=y):y=e[21];let V;return e[22]!==n||e[23]!==a||e[24]!==b||e[25]!==y||e[26]!==m||e[27]!==p?(V=r.jsxs("div",{ref:a,onClick:n,className:m,children:[p,b,y]}),e[22]=n,e[23]=a,e[24]=b,e[25]=y,e[26]=m,e[27]=p,e[28]=V):V=e[28],V},Fx=t=>{const e=B.c(18),{editor:s,queryKey:i,queryFn:n,onSelect:o}=t;let a;e[0]!==s||e[1]!==o||e[2]!==n||e[3]!==i?(a={editor:s,queryKey:i,queryFn:n,onSelect:o},e[0]=s,e[1]=o,e[2]=n,e[3]=i,e[4]=a):a=e[4];const{items:l,selectedIndex:c,onSelect:d,selectedItem:u}=Bx(a);if(!l.length){let p;return e[5]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx("div",{className:"min-w-[360px] max-w-[520px] bg-popover text-popover-foreground rounded-md border shadow-md p-3 text-sm",children:"No items found"}),e[5]=p):p=e[5],p}let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h={maxHeight:"min(320px, var(--radix-popover-content-available-height, 320px))"},e[6]=h):h=e[6];let f;if(e[7]!==d||e[8]!==l||e[9]!==c||e[10]!==u?.name){let p;e[12]!==d||e[13]!==c||e[14]!==u?.name?(p=(g,_)=>r.jsx(zx,{item:g,isSelected:_===c,ref:_===c?Wx:void 0,onSelect:()=>d(g,_),isLoading:u?.name===g.name},g.name),e[12]=d,e[13]=c,e[14]=u?.name,e[15]=p):p=e[15],f=l.map(p),e[7]=d,e[8]=l,e[9]=c,e[10]=u?.name,e[11]=f}else f=e[11];let m;return e[16]!==f?(m=r.jsx("div",{className:"min-w-[360px] max-w-[520px] bg-popover text-popover-foreground rounded-md overflow-y-auto",style:h,children:r.jsx("div",{className:"p-1",children:f})}),e[16]=f,e[17]=m):m=e[17],m};function Ux(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"p-1",children:[...Array(3)].map(Hx)}),t[0]=e):e=t[0],e}function Hx(t,e){return r.jsxs("div",{className:"flex items-center gap-1.5 px-2 py-1.5 animate-pulse",children:[r.jsx("div",{className:"h-4 w-24 bg-muted rounded"}),r.jsx("div",{className:"h-3 w-32 bg-muted rounded"})]},e)}function Kh(t){const e=B.c(18),{editor:s,char:i,pluginKey:n,queryKey:o,queryFn:a,onSelect:l,allow:c,onOpenChange:d}=t;let u;e[0]!==c||e[1]!==i||e[2]!==s||e[3]!==d||e[4]!==n?(u={editor:s,char:i,pluginKey:n,allow:c,onOpenChange:d},e[0]=c,e[1]=i,e[2]=s,e[3]=d,e[4]=n,e[5]=u):u=e[5];const{state:h,dispatch:f}=Ox(u);let m;e[6]!==f||e[7]!==h?(m={state:h,dispatch:f},e[6]=f,e[7]=h,e[8]=m):m=e[8];let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx(Ux,{}),e[9]=p):p=e[9];let g;e[10]!==s||e[11]!==l||e[12]!==a||e[13]!==o?(g=r.jsx($x,{children:r.jsx(j.Suspense,{fallback:p,children:r.jsx(Fx,{editor:s,queryKey:o,queryFn:a,onSelect:l})})}),e[10]=s,e[11]=l,e[12]=a,e[13]=o,e[14]=g):g=e[14];let _;return e[15]!==m||e[16]!==g?(_=r.jsx(Hh.Provider,{value:m,children:g}),e[15]=m,e[16]=g,e[17]=_):_=e[17],_}function Wx(t){t&&t.scrollIntoView({block:"center",behavior:"smooth"})}const Kx=[{name:"agents",title:"Agents",description:"Mention an agent to hand off work",kind:"category",drillable:!0},{name:"resources",title:"Resources",description:"Attach a resource as context",kind:"category",drillable:!0}],qx=({editor:t,virtualMcpId:e})=>{const s=bt(),{org:i}=xe(),n=Rn(),o=Ae({connectionId:e,orgId:i.id}),a=Ze.virtualMcpResources(e,i.id),[l,c]=j.useState("categories"),d=j.useRef(l);d.current=l;const u=j.useRef(null),h=j.useRef(!1),f=["at-mention",i.id,e??"default",l],m=async({item:_,range:v})=>{if(re("chat_picker_item_selected",{picker:"@",item_kind:_.kind,item_name:_.name}),_.kind!=="category"&&(h.current=!0),_.kind==="category")return c(_.name==="agents"?"agents":"resources"),!1;if(_.kind==="agent"&&_.agentId){or(t,v,{id:_.agentId,name:_.name,metadata:{agentId:_.agentId,title:_.name},char:"@"}),c("categories");return}if(_.kind==="resource"&&_.uri&&o){try{const x=await rh(o,_.uri);or(t,v,{id:_.uri,name:_.uri,metadata:x.contents,char:"@"})}catch(x){console.error("[at-mention] Failed to fetch resource:",x),he.error("Failed to load resource. Please try again.")}c("categories");return}},p=async _=>{const{query:v}=_,x=d.current;if(x==="categories"){if(!v.trim())return Kx;const V=v.toLowerCase(),C=n.filter(w=>w.status==="active"&&(!w.id||!lr(w.id))&&w.id!==e&&(w.title.toLowerCase().includes(V)||w.description?.toLowerCase().includes(V))).map(w=>({name:w.title,title:w.title,description:w.description??void 0,icon:w.icon??null,kind:"agent",agentId:w.id})),S=await(async()=>{if(!o)return[];let w=s.getQueryData(a);return w||(w=await s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4})),(w?.resources??[]).filter(k=>k.uri.toLowerCase().includes(V)||k.name?.toLowerCase().includes(V)||k.description?.toLowerCase().includes(V)).map(k=>({name:k.name??k.uri,title:k.name,description:k.description,kind:"resource",uri:k.uri}))})();return[...C,...S]}if(x==="agents"){let V=n.filter(C=>C.status==="active"&&(!C.id||!lr(C.id))&&C.id!==e);if(v.trim()){const C=v.toLowerCase();V=V.filter(S=>S.title.toLowerCase().includes(C)||S.description?.toLowerCase().includes(C))}return V.map(C=>({name:C.title,title:C.title,description:C.description??void 0,icon:C.icon??null,kind:"agent",agentId:C.id}))}if(!o)return[];let b=s.getQueryData(a);b?s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4}).catch(()=>{}):b=await s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4});let y=b?.resources??[];if(v.trim()){const V=v.toLowerCase();y=y.filter(C=>C.uri.toLowerCase().includes(V)||C.name?.toLowerCase().includes(V)||C.description?.toLowerCase().includes(V))}return y.map(V=>({name:V.name??V.uri,title:V.name,description:V.description,kind:"resource",uri:V.uri}))},g=_=>{if(_)u.current=Date.now(),h.current=!1,re("chat_picker_opened",{picker:"@"});else{const v=u.current;re("chat_picker_closed",{picker:"@",outcome:h.current?"selected":"dismissed",duration_ms:v?Date.now()-v:null}),u.current=null,c("categories")}};return r.jsx(Kh,{editor:t,char:"@",pluginKey:"atDropdownMenu",queryKey:f,queryFn:p,onSelect:m,onOpenChange:g})};function Gx(t,e){const s=$t(t),i=yr(),n=new Map(i.map(c=>[c.id,c])),o=(s?.connections??[]).map(c=>c.connection_id),{data:a}=ji({queryKey:Ze.promptConnectionMap(e,o),queryFn:async()=>{const c={};return await Promise.all(o.map(async d=>{try{const u=await Hm({connectionId:d,orgId:e}),h=await hn(u);for(const f of h.prompts)f.name in c||(c[f.name]=d)}catch{}})),c},staleTime:6e4,enabled:o.length>0}),l=new Map;for(const[c,d]of Object.entries(a??{})){const u=n.get(d);u&&l.set(c,u)}return l}async function Xl(t,e,s,i,n,o){try{const a=await Ea(s,i,o);or(t,e,{id:i,name:ka(i,n),metadata:a.messages,char:"/"})}catch(a){console.error("[slash] Failed to fetch prompt:",a),he.error("Failed to load prompt. Please try again.")}}async function Yx(t,e,s,i){try{const n=await rh(s,i);or(t,e,{id:i,name:i,metadata:n.contents,char:"/"})}catch(n){console.error("[slash] Failed to fetch resource:",n),he.error("Failed to load resource. Please try again.")}}const Xx=({editor:t,virtualMcpId:e})=>{const s=bt(),{org:i}=xe(),n=Ae({connectionId:e,orgId:i.id}),o=Gx(e,i.id),a=j.useRef(o);a.current=o;const l=Ze.virtualMcpPrompts(e,i.id),c=Ze.virtualMcpResources(e,i.id),d=["slash-mention",i.id,e??"default"],[u,h]=j.useState(null),f=j.useRef(null),m=j.useRef(!1),p=async({item:x,range:b})=>{if(re("chat_picker_item_selected",{picker:"/",item_kind:x.kind,item_name:x.name}),m.current=!0,!!n)if(x.kind==="prompt"){if(x.arguments&&x.arguments.length>0){h({range:b,item:x});return}const y=Ls(x._meta);await Xl(t,b,n,x.name,y)}else x.uri&&await Yx(t,b,n,x.uri)},g=async x=>{if(!u||!n)return;const{range:b,item:y}=u,V=Ls(y._meta);await Xl(t,b,n,y.name,V,x),h(null)},_=async x=>{const{query:b}=x;if(!n)return[];const[y,V]=await Promise.all([Jx(s,l,n),Qx(s,c,n)]),C=b.trim().toLowerCase(),S=(y??[]).filter(k=>!C||k.name.toLowerCase().includes(C)||k.title?.toLowerCase().includes(C)||k.description?.toLowerCase().includes(C)).map(k=>({name:k.name,title:k.title,description:k.description,icon:a.current.get(k.name)?.icon??null,kind:"prompt",arguments:k.arguments,_meta:k._meta})),w=(V??[]).filter(k=>!C||k.uri.toLowerCase().includes(C)||k.name?.toLowerCase().includes(C)||k.description?.toLowerCase().includes(C)).map(k=>({name:k.name??k.uri,title:k.name,description:k.description,kind:"resource",uri:k.uri}));return[...S,...w]},v=u?.item.kind==="prompt"?{name:u.item.name,arguments:u.item.arguments,description:u.item.description}:null;return r.jsxs(r.Fragment,{children:[r.jsx(Kh,{editor:t,char:"/",pluginKey:"slashDropdownMenu",queryKey:d,queryFn:_,onSelect:p,onOpenChange:x=>{if(x)f.current=Date.now(),m.current=!1,re("chat_picker_opened",{picker:"/"});else{const b=f.current;re("chat_picker_closed",{picker:"/",outcome:m.current?"selected":"dismissed",duration_ms:b?Date.now()-b:null}),f.current=null}}}),r.jsx(Ga,{prompt:v,setPrompt:()=>h(null),onSubmit:g})]})};async function Jx(t,e,s){let i=t.getQueryData(e);return i?t.fetchQuery({queryKey:e,queryFn:()=>hn(s),staleTime:6e4}).catch(()=>{}):i=await t.fetchQuery({queryKey:e,queryFn:()=>hn(s),staleTime:6e4}),i?.prompts??[]}async function Qx(t,e,s){let i=t.getQueryData(e);return i?t.fetchQuery({queryKey:e,queryFn:()=>sr(s),staleTime:6e4}).catch(()=>{}):i=await t.fetchQuery({queryKey:e,queryFn:()=>sr(s),staleTime:6e4}),i?.resources??[]}function Zx(t){return[Bm.configure({heading:!1,blockquote:!1,codeBlock:!1,horizontalRule:!1,dropcursor:!1}),B_.configure({placeholder:()=>t.current??"Ask anything, / for prompts, @ for agents & resources...",showOnlyWhenEditable:!1}),vm,bm]}function qh({tiptapDoc:t,setTiptapDoc:e,disabled:s=!1,enterToSubmit:i=!1,placeholder:n,onSubmit:o,children:a}){const l=j.useRef(o),c=j.useRef(e),d=j.useRef(i),u=j.useRef(n),h=Lm({extensions:Zx(u),content:t||"",editorProps:{attributes:{"data-chat-input":"true",class:"prose prose-sm max-w-none focus:outline-none w-full h-full text-[15px] p-[18px]"},handleKeyDown:(f,m)=>m.key==="Enter"&&!m.shiftKey&&d.current?(m.preventDefault(),l.current?.(),!0):!1},onUpdate:({editor:f})=>{c.current(f?.getJSON())}});return j.useEffect(()=>{h?.setEditable(!s)},[h,s]),j.useEffect(()=>{l.current=o},[o]),j.useEffect(()=>{c.current=e},[e]),j.useEffect(()=>{d.current=i},[i]),j.useEffect(()=>{u.current=n},[n]),j.useEffect(()=>{if(h?.isDestroyed)return;const f=JSON.stringify(h?.getJSON()),m=JSON.stringify(t||{type:"doc",content:[]});f!==m&&h.commands.setContent(t||{type:"doc",content:[]})},[h,t]),r.jsx(Om.Provider,{value:{editor:h},children:a})}function Gh(t){const e=B.c(26),{disabled:s,virtualMcpId:i,showFileUploader:n,selectedModel:o,onUnsupportedFile:a,ref:l,className:c}=t,d=s===void 0?!1:s,u=n===void 0?!1:n,{editor:h}=jn();let f,m;if(e[0]!==h?(f=()=>({focus:()=>{h?.commands.focus()},clear:()=>{h?.commands.clearContent(!0)},appendText:w=>{if(!h)return;const k=h.state.doc.textContent.trim()==="";h.commands.focus("end"),k||h.commands.insertContent(" "),h.commands.insertContent(w)},syncVoiceText:(w,k)=>{if(h&&(h.commands.setContent(w||{type:"doc",content:[]}),k)){h.commands.focus("end");const T=h.state.doc.textContent.trim().length>0;h.commands.insertContent(T?" "+k:k)}},restoreContent:w=>{h&&h.commands.setContent(w||{type:"doc",content:[]})}}),m=[h],e[0]=h,e[1]=f,e[2]=m):(f=e[1],m=e[2]),j.useImperativeHandle(l??null,f,m),!h)return null;const p=d&&"cursor-not-allowed opacity-70",g=d&&"[&_.ProseMirror]:cursor-not-allowed";let _;e[3]!==c||e[4]!==p||e[5]!==g?(_=Y("overflow-y-auto relative flex-1 max-h-[164px] min-h-[20px] w-full flex flex-col",c,"[&_.ProseMirror]:outline-none [&_.ProseMirror]:min-h-[20px] [&_.ProseMirror]:flex-1","[&_.ProseMirror_p.is-editor-empty:first-child::before]:content-[attr(data-placeholder)]","[&_.ProseMirror_p.is-editor-empty:first-child::before]:text-muted-foreground","[&_.ProseMirror_p.is-editor-empty:first-child::before]:opacity-50","[&_.ProseMirror_p.is-editor-empty:first-child::before]:float-left","[&_.ProseMirror_p.is-editor-empty:first-child::before]:pointer-events-none","[&_.ProseMirror_p.is-editor-empty:first-child::before]:h-0",p,g),e[3]=c,e[4]=p,e[5]=g,e[6]=_):_=e[6];let v;e[7]!==h||e[8]!==_?(v=r.jsx($m,{editor:h,className:_}),e[7]=h,e[8]=_,e[9]=v):v=e[9];const x=i??null;let b;e[10]!==h||e[11]!==x?(b=r.jsx(j.Suspense,{fallback:null,children:r.jsx(Xx,{editor:h,virtualMcpId:x})}),e[10]=h,e[11]=x,e[12]=b):b=e[12];const y=i??null;let V;e[13]!==h||e[14]!==y?(V=r.jsx(j.Suspense,{fallback:null,children:r.jsx(qx,{editor:h,virtualMcpId:y})}),e[13]=h,e[14]=y,e[15]=V):V=e[15];let C;e[16]!==h||e[17]!==a||e[18]!==o||e[19]!==u?(C=u&&o?r.jsx(E_,{editor:h,selectedModel:o,onUnsupportedFile:a}):null,e[16]=h,e[17]=a,e[18]=o,e[19]=u,e[20]=C):C=e[20];let S;return e[21]!==b||e[22]!==V||e[23]!==C||e[24]!==v?(S=r.jsxs(r.Fragment,{children:[v,b,V,C]}),e[21]=b,e[22]=V,e[23]=C,e[24]=v,e[25]=S):S=e[25],S}function Lo(t){const e=B.c(3),[s]=ei();let i;return e[0]!==s.enableSounds||e[1]!==t?(i=()=>{s.enableSounds&&Tp(t.dataUri).catch(o=>{console.warn(`[sound] ${t.name} playback failed:`,o)})},e[0]=s.enableSounds,e[1]=t,e[2]=i):i=e[2],i}const e1={name:"switch-005",dataUri:"data:audio/mpeg;base64,SUQzBAAAAAAAIlRTU0VAAAAOAAADTGF2ZjYyLjMuMTAwAAAAAAAAAAAAAAD/+1DAAAAAAAAAAAAAAAAAAAAAAABJbmZvAAAADwAAABkAABU4ABMTEx0dHR0nJycnMTExMTs7OztERERETk5OTlhYWFhiYmJibGxsbHZ2dnZ/f39/iYmJiZOTk5OdnZ2dp6enp7GxsbG7u7u7xMTExM7Ozs7Y2NjY4uLi4uzs7Oz29vb2/////wAAAABMYXZjNjIuMTEAAAAAAAAAAAAAAAAkBVYAAAAAAAAVOPCP8KUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//tQxAAACEwDXvQRAAG8Ii93HtACUCAABAKCJwfaCEHwfeoEAQdEAYygIHBOCAIAgCAJh9QIOg+D5/ygPh/wfB8DuKAgCHyn9QPh/5SCDv+CEHAQdxOD4B27c39tbckkqYbBAYAN9bNJLB+aXAf5wQAKdzxfbmrVIRQ4xNx3HwnoDmLhfMhgJiiw/HREXNCHqjvHEPEG8QjBYlxQNepJAT0kC8ip6JzSWj1TasoG+iyycbf2Uil1ovf1f/oUtR1qP+s1WSBFKoAAU02BDjMhuP/7UsQEgws8bRpd8YABJYPeBf9wCGXTGxBYcw5AJFMFMAmQQAhGAxgLBgHIAMYAAALhgAchipbe/91aU1VV4zcZj1Vf1XgYCIMBNrsBAIGs9/Ue4i/xFPeqCqwViI9/UeLf///rOngdA3OPHFjmOBv+EQnGahgaZxVplmkAH5JadDTQlNCEuGNiWYbCCONWdUJg6HXNazFdu1T+VgaEpOP70exv7f2/4b/yH//2/4cqCX/zWRUrIw+IPNMNlDnjAXQas/I4AzmYifA0tMSCgQDF//tSxBCDSzzi3k/sQwEyCtjJ/rBZAk+Uqj1YhA5YMCAAMwgOUchTkK7OR7LbMl0W1H6SvzG0Q2ZzfKUhnmTobv9DNhS1v7P8h//8Gv8gTRt1jReZ7YEjmMQg9hhwwMycHooasFmZyjcZGBKJD+IwbMCQQLoi+IQXCcIoydKoilI2MWFS5uJdDEu2taRrYI2ZSqKY50pJLv2NfjUAAuQAMfqVQ/T3PDQgMJMeEZ45hJzY6MNoFMxqTj1zNGQKJjAxEsSCBgQJBSIL0mcKYQJfVAn/+1LEGwLKlEKrD3MiYcuMkVa/wABB8Vh6M1q1epbvXwWBURhkyEhWZ/////////////9gjZ/Wt4w+4MNMCpE4TBYQl4w1IHvMDdA2zBngBMwc8COMDhCpDAfgOAAgrBgNYU+YC0FBGAkAMpgWoSCYAGESGBGAKBgXgJOdiOJmMCmNwCYNDJhYRPykRCJhTBnEUzlsjv4UNLj/z97n3Mv/7z1nZqyitYAZIqErIwMwJAqEw0GAAMFptJMaqFwB8CQIWlhuhuDAwNjfuwrQFAYXCf/7UsQVAA+9PTP42gYRdiIu9zBwAPbFUCi0DAhgNcS+7cDwVgM05A9bUDeuQMyE/u3CygVISgZhpIau/9PhdQG2C9DpxZZJmn/dn/Psmt0EFm////l84ThUTopE4VD/9JkubOGasTvN30C20G21qgUCkVCoUCgPMywrPCGly27V5q5t24vl/8jSlSAPCxzNseNCw3oh3NGBu4BZJ5hv7DRSfR/+eWG7nA8IKh2Olv5iz3q5m3//Joxo3JqNyYkSuGt/k6D4DeoBOHmHdl0dkZYA//tSxAUAC4B1Z/2DADEcA17Z/uhI4Yoik/TrZo+ww7UtmpW4LDWu2IacoJKJJeTSM+ZmAYBEiU+ZnnAwCn1VVVV6JUJQVnioKhrgqdKgqGpUFeCp0sDR3ztQNREDRUFioKuxKCpYGQBlRIBk+aLwb8KblGQVDdphPYTUdBOGbVpAaTF6ZdjEV0iRUZRCYkA4oUQDx5zqDugtXvza/7fuNNvfZ+j9v+T/2f//J/4cAAOTpE5K4zksR9MfIB+TDcQTI4gNs1XKAzEFUrGkxABYEBb/+1LEEYNKrEjgT/TCwYYVmUX+mHoKgWhKU5Eiw9SFIRmppw+3fYo4siPhUFeexM8KgIO6wVuPDDy01qeRaVbw357//y3+o8M0pBNlNLCGBzGKwyYw2IIFOE1WNTjRM6x8MlA1AxDhUHTAkEiyKpnbWrLcaOBotBUKbk1pypcWDAIK00AhKLGkUco6q9VWvM53mcaq3tVa8zjTM/tX//EDP//////////XAAmrwAAPoKwcw0ShDCZD/BQlhzinxQdorsOuXTEIC01ZkJyu4k/qPP/7UsQUAEjkrrkvZaPBIRXUoe5QObfMhYKX9RVgTPqCSCaSCaSC0XVdV1f/////6IAlguuAJSiDRNloNBsZg+0+Ts8MMCn81WUTRAlIi+GHECD0y8AWDIqswYsxGOSKVV7MqOni8tkVOip0fZX/////9HrMCbAz2EHGS4GKAAiRAAAYAcDdKd4G6Z/nwYgJ0ZAIgZyC8aPAs/iPBhwMpWDQNARltNS5Y61v//9i8Yl4SkFkIGTkAc0UBrIYLPA4MYBEy+YLMRuY4nhTC3hZA68H//tSxCoAyQC6mY6CkWDJBIsBz/QUrgNmahSzcrYw0/HhfnMAZBojDsgTFkDR5MDkG/DZEbk2FCmowqdqv2TYABiJwqqYjaQRGZ1URZ1DhSsdiHX/GBu0QpzIBNSaLqZ0ARkwFARxMrpt/Eh47mbQAhhU6sisFUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LESoHHJCRaj/dmYAIAQAAQAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsSLg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsShg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",duration:.609,format:"mp3",license:"CC0",author:"Kenney"},t1=[{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/perplexity.png",name:"Perplexity"},{src:"/connections/github.png",name:"GitHub"}];function s1(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center -space-x-1.5",children:t1.map(i1)}),t[0]=e):e=t[0],e}function i1(t){return r.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-1 ring-border object-cover bg-white"},t.name)}function r1(t){const e=B.c(129),{disabled:s,onOpenConnections:i,virtualMcpId:n}=t,[o,a]=j.useState(!1),l=Lo(e1),{org:c}=xe(),{editor:d}=jn();let u;e[0]!==c.id||e[1]!==n?(u={connectionId:n,orgId:c.id},e[0]=c.id,e[1]=n,e[2]=u):u=e[2];const h=Ae(u);let f;e[3]!==c.id||e[4]!==n?(f=Ze.virtualMcpPrompts(n,c.id),e[3]=c.id,e[4]=n,e[5]=f):f=e[5];const m=f;let p;e[6]!==h?(p=()=>hn(h),e[6]=h,e[7]=p):p=e[7];const g=o&&!!h;let _;e[8]!==m||e[9]!==p||e[10]!==g?(_={queryKey:m,queryFn:p,staleTime:6e4,enabled:g},e[8]=m,e[9]=p,e[10]=g,e[11]=_):_=e[11];const{data:v,isLoading:x}=ji(_);let b;e[12]!==v?.prompts?(b=v?.prompts??[],e[12]=v?.prompts,e[13]=b):b=e[13];const y=b,[V,C]=j.useState(null),{credentialId:S,imageModel:w,setImageModel:k,deepResearchModel:T,setDeepResearchModel:M,chatMode:I,setChatMode:E,simpleModeEnabled:N}=$s(),A=I==="plan",[D,L]=j.useState(!1),[R,P]=j.useState(!1),{models:O,isLoading:z}=eh(D||R?S??void 0:void 0);let $,q,F,W,H,U,X,K,G,ie,te,J,ae;if(e[14]!==V||e[15]!==O||e[16]!==I||e[17]!==h||e[18]!==T||e[19]!==s||e[20]!==d||e[21]!==w||e[22]!==D||e[23]!==z||e[24]!==A||e[25]!==i||e[26]!==o||e[27]!==l||e[28]!==R||e[29]!==E||e[30]!==M||e[31]!==k||e[32]!==N){const ee=O.filter(o1),se=O.filter(n1);let Ve;e[46]!==I||e[47]!==A||e[48]!==l||e[49]!==E?(Ve=()=>{l();const _e=A?"default":"plan";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[46]=I,e[47]=A,e[48]=l,e[49]=E,e[50]=Ve):Ve=e[50];const ze=Ve;let Fe;e[51]!==i?(Fe=()=>{i(),a(!1)},e[51]=i,e[52]=Fe):Fe=e[52],F=Fe;let ft;e[53]!==h||e[54]!==d?(ft=async(_e,Vs)=>{if(!d||!h)return;const Di=Ls(_e._meta),Pi={from:d.state.selection.from,to:d.state.selection.to};try{const Sf=await Ea(h,_e.name,Vs);or(d,Pi,{id:_e.name,name:ka(_e.name,Di),metadata:Sf.messages,char:"/"})}catch{he.error("Failed to load prompt. Please try again.")}},e[53]=h,e[54]=d,e[55]=ft):ft=e[55];const He=ft;let tt;e[56]!==He?(tt=async _e=>{a(!1);const Vs=!!(_e.arguments&&_e.arguments.length>0);if(re("chat_prompt_inserted",{prompt_name:_e.name,with_arguments:Vs}),Vs){C(_e);return}await He(_e)},e[56]=He,e[57]=tt):tt=e[57],H=tt;let ht;e[58]!==V||e[59]!==He?(ht=async _e=>{V&&(await He(V,_e),C(null))},e[58]=V,e[59]=He,e[60]=ht):ht=e[60],W=ht;let me;e[61]!==l||e[62]!==k?(me=_e=>{l(),re("chat_image_model_selected",{model_id:_e.modelId,model_title:_e.title,provider:_e.providerId??null}),k(_e),a(!1)},e[61]=l,e[62]=k,e[63]=me):me=e[63];const ke=me;let st;e[64]!==l||e[65]!==M?(st=_e=>{l(),re("chat_search_model_selected",{model_id:_e.modelId,model_title:_e.title,provider:_e.providerId??null}),M(_e),a(!1)},e[64]=l,e[65]=M,e[66]=st):st=e[66];const zt=st;let De;e[67]!==I||e[68]!==l||e[69]!==E?(De=()=>{l();const _e=I==="gen-image"?"default":"gen-image";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[67]=I,e[68]=l,e[69]=E,e[70]=De):De=e[70];const Yt=De;let At;e[71]!==I||e[72]!==l||e[73]!==E?(At=()=>{l();const _e=I==="web-search"?"default":"web-search";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[71]=I,e[72]=l,e[73]=E,e[74]=At):At=e[74];const Et=At,Ct=I==="gen-image",ws=I==="web-search";q=cs,K=o,e[75]!==I||e[76]!==o?(G=_e=>{_e&&!o&&re("chat_tools_popover_opened",{chat_mode:I}),a(_e)},e[75]=I,e[76]=o,e[77]=G):G=e[77];let Rr,Mr;e[78]===Symbol.for("react.memo_cache_sentinel")?(Rr=r.jsx(zd,{size:14}),Mr=r.jsx("span",{className:"hidden sm:inline",children:"Tools"}),e[78]=Rr,e[79]=Mr):(Rr=e[78],Mr=e[79]),e[80]!==s?(ie=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"ghost",size:"default",disabled:s,className:"text-muted-foreground hover:text-foreground",children:[Rr,Mr]})}),e[80]=s,e[81]=ie):ie=e[81],$=hs,te="start",J="w-52 p-1.5";const Hn=A&&"text-violet-600 dark:text-violet-400";let li;e[82]!==Hn?(li=Y(Hn),e[82]=Hn,e[83]=li):li=e[83];const Wn=A&&"text-violet-500";let ci;e[84]!==Wn?(ci=Y(Wn),e[84]=Wn,e[85]=ci):ci=e[85];let di;e[86]!==ci?(di=r.jsx(Yd,{size:16,className:ci}),e[86]=ci,e[87]=di):di=e[87];let Dr;e[88]===Symbol.for("react.memo_cache_sentinel")?(Dr=r.jsx("span",{className:"flex-1",children:"Plan mode"}),e[88]=Dr):Dr=e[88];let hi;e[89]!==A?(hi=A&&r.jsx("span",{className:"text-xs text-violet-500 font-medium",children:"On"}),e[89]=A,e[90]=hi):hi=e[90],e[91]!==ze||e[92]!==li||e[93]!==di||e[94]!==hi?(ae=r.jsxs(Qe,{onClick:ze,className:li,children:[di,Dr,hi]}),e[91]=ze,e[92]=li,e[93]=di,e[94]=hi,e[95]=ae):ae=e[95],U=N?r.jsxs(Qe,{onClick:Yt,className:Y(Ct&&"text-pink-600 dark:text-pink-400"),children:[r.jsx(Io,{size:16,className:Y(Ct&&"text-pink-500")}),r.jsx("span",{className:"flex-1",children:"Create image"}),Ct&&r.jsx("span",{className:"text-xs text-pink-500 font-medium",children:"On"})]}):r.jsxs(Qr,{open:D,onOpenChange:L,children:[r.jsxs("div",{className:"flex items-center rounded-lg",children:[r.jsxs(Qe,{onClick:Yt,disabled:!w,className:Y("flex-1 rounded-r-none pr-1",Ct&&"text-pink-600 dark:text-pink-400"),children:[r.jsx(Io,{size:16,className:Y(Ct&&"text-pink-500")}),r.jsx("span",{className:"flex-1",children:"Create image"}),Ct&&r.jsx("span",{className:"text-xs text-pink-500 font-medium",children:"On"})]}),r.jsx(pl,{className:Y("flex items-center justify-center rounded-r-lg rounded-l-none px-1.5 py-1.5 text-muted-foreground outline-hidden select-none","hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground"),children:r.jsx(cr,{size:14})})]}),r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:z?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading models…"]}):ee.length===0?r.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:"No image models available"}):ee.map(_e=>{const Vs=w?.modelId===_e.modelId,Di=Cl(_e),Pi=_e.title.includes(": ")?_e.title.split(": ").slice(1).join(": "):_e.title;return r.jsxs(Qe,{onClick:()=>ke(_e),className:"flex items-center gap-2",children:[r.jsx("img",{src:Di,alt:"",className:"size-4 shrink-0 rounded-sm dark:bg-white dark:p-px"}),r.jsx("span",{className:"flex-1 text-sm truncate",children:Pi}),Vs&&r.jsx(Mt,{size:14,className:"text-pink-500 shrink-0"})]},_e.modelId)})})]}),X=N?r.jsxs(Qe,{onClick:Et,className:Y(ws&&"text-blue-600 dark:text-blue-400"),children:[r.jsx(vi,{size:16,className:Y(ws&&"text-blue-500")}),r.jsx("span",{className:"flex-1",children:"Web search"}),ws&&r.jsx("span",{className:"text-xs text-blue-500 font-medium",children:"On"})]}):T&&r.jsxs(Qr,{open:R,onOpenChange:P,children:[r.jsxs("div",{className:"flex items-center rounded-lg",children:[r.jsxs(Qe,{onClick:Et,className:Y("flex-1 rounded-r-none pr-1",ws&&"text-blue-600 dark:text-blue-400"),children:[r.jsx(vi,{size:16,className:Y(ws&&"text-blue-500")}),r.jsx("span",{className:"flex-1",children:"Web search"}),ws&&r.jsx("span",{className:"text-xs text-blue-500 font-medium",children:"On"})]}),r.jsx(pl,{className:Y("flex items-center justify-center rounded-r-lg rounded-l-none px-1.5 py-1.5 text-muted-foreground outline-hidden select-none","hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground"),children:r.jsx(cr,{size:14})})]}),r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:z?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading models…"]}):se.map(_e=>{const Vs=T?.modelId===_e.modelId,Di=Cl(_e),Pi=_e.title.includes(": ")?_e.title.split(": ").slice(1).join(": "):_e.title;return r.jsxs(Qe,{onClick:()=>zt(_e),className:"flex items-center gap-2",children:[r.jsx("img",{src:Di,alt:"",className:"size-4 shrink-0 rounded-sm dark:bg-white dark:p-px"}),r.jsx("span",{className:"flex-1 text-sm truncate",children:Pi}),Vs&&r.jsx(Mt,{size:14,className:"text-blue-500 shrink-0"})]},_e.modelId)})})]}),e[14]=V,e[15]=O,e[16]=I,e[17]=h,e[18]=T,e[19]=s,e[20]=d,e[21]=w,e[22]=D,e[23]=z,e[24]=A,e[25]=i,e[26]=o,e[27]=l,e[28]=R,e[29]=E,e[30]=M,e[31]=k,e[32]=N,e[33]=$,e[34]=q,e[35]=F,e[36]=W,e[37]=H,e[38]=U,e[39]=X,e[40]=K,e[41]=G,e[42]=ie,e[43]=te,e[44]=J,e[45]=ae}else $=e[33],q=e[34],F=e[35],W=e[36],H=e[37],U=e[38],X=e[39],K=e[40],G=e[41],ie=e[42],te=e[43],J=e[44],ae=e[45];let Z;e[96]===Symbol.for("react.memo_cache_sentinel")?(Z=r.jsxs(Pd,{className:"gap-2",children:[r.jsx("span",{className:"flex size-4 items-center justify-center text-base font-medium text-muted-foreground",children:"/"}),r.jsx("span",{className:"flex-1",children:"Prompts"})]}),e[96]=Z):Z=e[96];let de;e[97]!==H||e[98]!==x||e[99]!==y?(de=x?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading prompts…"]}):y.length===0?r.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:"No prompts available"}):y.map(ee=>r.jsxs(Qe,{onClick:()=>H(ee),className:"flex flex-col items-start gap-0.5",children:[r.jsx("span",{className:"font-medium text-sm capitalize",children:ee.title||kn(ee.name,Ls(ee._meta))}),ee.description&&r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:ee.description})]},ee.name)),e[97]=H,e[98]=x,e[99]=y,e[100]=de):de=e[100];let fe;e[101]!==de?(fe=r.jsxs(Qr,{children:[Z,r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:de})]}),e[101]=de,e[102]=fe):fe=e[102];let ye,ge;e[103]===Symbol.for("react.memo_cache_sentinel")?(ye=r.jsx(gp,{size:16}),ge=r.jsx("span",{className:"flex-1",children:"Connections"}),e[103]=ye,e[104]=ge):(ye=e[103],ge=e[104]);let ce;e[105]===Symbol.for("react.memo_cache_sentinel")?(ce=r.jsx(j.Suspense,{children:r.jsx(s1,{})}),e[105]=ce):ce=e[105];let ue;e[106]!==F?(ue=r.jsxs(Qe,{onClick:F,children:[ye,ge,ce]}),e[106]=F,e[107]=ue):ue=e[107];let be;e[108]!==$||e[109]!==U||e[110]!==X||e[111]!==fe||e[112]!==ue||e[113]!==te||e[114]!==J||e[115]!==ae?(be=r.jsxs($,{align:te,className:J,children:[ae,U,X,fe,ue]}),e[108]=$,e[109]=U,e[110]=X,e[111]=fe,e[112]=ue,e[113]=te,e[114]=J,e[115]=ae,e[116]=be):be=e[116];let pe;e[117]!==q||e[118]!==K||e[119]!==G||e[120]!==ie||e[121]!==be?(pe=r.jsxs(q,{open:K,onOpenChange:G,children:[ie,be]}),e[117]=q,e[118]=K,e[119]=G,e[120]=ie,e[121]=be,e[122]=pe):pe=e[122];let Ce;e[123]!==V||e[124]!==W?(Ce=r.jsx(Ga,{prompt:V,setPrompt:C,onSubmit:W}),e[123]=V,e[124]=W,e[125]=Ce):Ce=e[125];let Ie;return e[126]!==pe||e[127]!==Ce?(Ie=r.jsxs(r.Fragment,{children:[pe,Ce]}),e[126]=pe,e[127]=Ce,e[128]=Ie):Ie=e[128],Ie}function n1(t){const e=t.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return e.includes("sonar")||e.includes("deepresearch")}function o1(t){return t.capabilities?.includes("image")}function a1({open:t,onOpenChange:e,onCreated:s}){const{org:i}=xe(),{data:n}=dt.useSession(),{stdioEnabled:o}=Lf(),a=ms(),l=Mn(),c=ah(),u=lh(c,"").items,h=Ai({resolver:gr(Mp),defaultValues:{title:"",description:null,icon:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]}}),f=h.watch("ui_type"),m=h.watch("connection_url"),p=h.watch("npx_package"),g=Lr({uiType:f,connectionUrl:m??"",npxPackage:p??""})??kl({uiType:f,connectionUrl:m??"",registryItems:u}),_=S=>{const w=S.trim();if(!w)return;const k=!!h.formState.dirtyFields.title,T=!!h.formState.dirtyFields.description,M=!!h.formState.dirtyFields.env_vars,I=N=>{if(N&&(!k&&!h.getValues("title").trim()&&N.title&&h.setValue("title",N.title,{shouldDirty:!1}),!T&&!(h.getValues("description")??"").trim()&&N.description&&h.setValue("description",N.description,{shouldDirty:!1}),!M&&N.envVarKeys?.length)){const A=h.getValues("env_vars")??[],D=new Set(A.map(R=>R.key)),L=N.envVarKeys.filter(R=>!D.has(R));L.length>0&&h.setValue("env_vars",[...A,...L.map(R=>({key:R,value:""}))],{shouldDirty:!0})}},E=Pp(w);if(E&&o){h.setValue("ui_type","NPX",{shouldDirty:!0}),h.setValue("npx_package",E.packageName,{shouldDirty:!0}),h.setValue("connection_url","",{shouldDirty:!0}),h.setValue("connection_token",null,{shouldDirty:!0}),I(Lr({uiType:"NPX",npxPackage:E.packageName}));return}if(w.startsWith("http://")||w.startsWith("https://")){const N=f==="HTTP"||f==="SSE"||f==="Websocket"?f:"HTTP";h.setValue("ui_type",N,{shouldDirty:!0}),h.setValue("connection_url",w,{shouldDirty:!0}),I(Lr({uiType:N,connectionUrl:w})??kl({uiType:N,connectionUrl:w,registryItems:u}));return}f==="NPX"&&I(Lr({uiType:"NPX",npxPackage:w}))},v=S=>{S||h.reset(),e(S)},x=async S=>{let w,k=null,T=null,M=null;S.ui_type==="NPX"?(w="STDIO",k="",M=Lp(S.npx_package||"",S.env_vars||[])):S.ui_type==="STDIO"?(w="STDIO",k="",M=Op(S.stdio_command||"",S.stdio_args||"",S.stdio_cwd,S.env_vars||[])):(w=S.ui_type,k=S.connection_url||"",T=S.connection_token||null);const I=dh("conn");try{await l.create.mutateAsync({id:I,title:S.title,description:S.description||null,connection_type:w,connection_url:k,connection_token:T,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:n?.user?.id||"system",organization_id:i.id,icon:S.icon??null,app_name:null,app_id:null,connection_headers:M,oauth_config:null,configuration_state:null,metadata:null,tools:null,bindings:null,status:"inactive"}),h.reset(),e(!1),s?.(I)}catch{he.error("Failed to create connection")}},b="Create Connection",y="Create a custom connection in your organization. Fill in the details below.",V=h.formState.isSubmitting?"Saving...":"Create Connection",C=r.jsxs("div",{className:"grid gap-4",children:[r.jsx(gt,{control:h.control,name:"ui_type",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Type *"}),r.jsxs(Rs,{value:S.value,onValueChange:S.onChange,children:[r.jsx(xt,{children:r.jsx(Ms,{children:r.jsx(Ds,{})})}),r.jsxs(Ts,{children:[r.jsx(Nt,{value:"HTTP",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"HTTP"]})}),r.jsx(Nt,{value:"SSE",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"SSE"]})}),r.jsx(Nt,{value:"Websocket",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"Websocket"]})}),o&&r.jsxs(r.Fragment,{children:[r.jsx(Nt,{value:"NPX",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(en,{className:"w-4 h-4"}),"NPX Package"]})}),r.jsx(Nt,{value:"STDIO",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(Ia,{className:"w-4 h-4"}),"Custom Command"]})})]})]})]}),r.jsx(vt,{})]})}),f==="NPX"&&r.jsx(gt,{control:h.control,name:"npx_package",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"NPM Package *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"@perplexity-ai/mcp-server",...S,value:S.value??"",onPaste:w=>{const k=w.clipboardData.getData("text");k&&(w.preventDefault(),h.setValue("npx_package",k.trim(),{shouldDirty:!0}),_(k))},onBlur:w=>{_(w.target.value),S.onBlur()}})}),r.jsx(vt,{})]})}),f==="STDIO"&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"grid grid-cols-2 gap-4 items-start",children:[r.jsx(gt,{control:h.control,name:"stdio_command",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Command *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"node, bun, python...",...S,value:S.value??""})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"stdio_args",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Arguments"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"arg1 arg2 --flag value",...S,value:S.value??""})}),r.jsx(vt,{})]})})]}),r.jsx(gt,{control:h.control,name:"stdio_cwd",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Working Directory"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"/path/to/project (optional)",...S,value:S.value??""})}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Directory where the command will be executed"}),r.jsx(vt,{})]})})]}),(f==="NPX"||f==="STDIO")&&r.jsx(gt,{control:h.control,name:"env_vars",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Environment Variables"}),r.jsx(xt,{children:r.jsx(Dp,{value:S.value??[],onChange:S.onChange})}),r.jsx(vt,{})]})}),f!=="NPX"&&f!=="STDIO"&&r.jsxs(r.Fragment,{children:[r.jsx(gt,{control:h.control,name:"connection_url",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"URL *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"https://example.com/mcp",...S,value:S.value??"",onPaste:w=>{const k=w.clipboardData.getData("text");k&&(w.preventDefault(),h.setValue("connection_url",k.trim(),{shouldDirty:!0}),_(k))},onBlur:w=>{_(w.target.value),S.onBlur()}})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"connection_token",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:g?.token?.label??"Token (optional)"}),r.jsx(xt,{children:r.jsx(at,{type:"password",placeholder:g?.token?.placeholder??"Bearer token or API key",className:"ph-no-capture",...S,value:S.value??""})}),g?.token?.helperText&&r.jsxs("p",{className:"text-xs text-muted-foreground",children:[g.token.helperText,g.id==="github"&&r.jsxs(r.Fragment,{children:[" ","·"," ",r.jsx("a",{className:"text-foreground underline underline-offset-4 hover:text-foreground/80",href:"https://github.com/settings/personal-access-tokens",target:"_blank",rel:"noreferrer",children:"Open GitHub PAT settings"})]})]}),r.jsx(vt,{})]})})]}),r.jsx(gt,{control:h.control,name:"title",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Name *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"My Connection",...S})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"description",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Description"}),r.jsx(xt,{children:r.jsx(To,{placeholder:"A brief description of this connection",rows:3,...S,value:S.value??""})}),r.jsx(vt,{})]})})]});return a?r.jsx(ri,{open:t,onOpenChange:v,children:r.jsxs(ii,{className:"max-h-[90vh]",children:[r.jsx(An,{className:"pb-2",children:r.jsxs("div",{className:"flex items-start justify-between gap-4",children:[r.jsxs("div",{className:"flex-1 text-left",children:[r.jsx(si,{children:b}),r.jsx(zm,{className:"mt-1",children:y})]}),r.jsx(Fm,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"shrink-0 -mt-1",children:r.jsx(Os,{size:16})})})]})}),r.jsx(yi,{...h,children:r.jsxs("form",{onSubmit:h.handleSubmit(x),children:[r.jsx("div",{className:"overflow-y-auto px-4 pb-4",children:C}),r.jsx(Um,{children:r.jsx(oe,{type:"submit",disabled:h.formState.isSubmitting,className:"w-full",children:V})})]})})]})}):r.jsx(Bt,{open:t,onOpenChange:v,children:r.jsxs(Ot,{className:"sm:max-w-[525px]",children:[r.jsxs(Gt,{children:[r.jsx(qt,{children:b}),r.jsx(Nn,{children:y})]}),r.jsx(yi,{...h,children:r.jsxs("form",{onSubmit:h.handleSubmit(x),children:[r.jsx("div",{className:"py-4",children:C}),r.jsxs(Na,{children:[r.jsx(oe,{type:"button",variant:"outline",onClick:()=>v(!1),children:"Cancel"}),r.jsx(oe,{type:"submit",disabled:h.formState.isSubmitting,className:"min-w-40",children:V})]})]})})]})})}function l1(t){const e=B.c(79),{mode:s,agentId:i,addedConnectionIds:n,onAdd:o,onCloneAndAdd:a,onConnectAndAdd:l,connectingItemId:c,search:d,onCreateConnection:u,onBrowseNavigate:h,defaultTab:f}=t,m=s===void 0?"add":s,p=f===void 0?"connected":f,{org:g}=xe(),_=j.useDeferredValue(d),v=d!==_;let x;e[0]!==_?(x=_.toLowerCase(),e[0]=_,e[1]=x):x=e[1];const b=x;let y;e[2]!==p?(y=me=>me??p,e[2]=p,e[3]=y):y=e[3];const[V,C]=Va(Ca.connectionsTab(g.slug)+(p==="all"?":home-modal":":agent-modal"),y);let S;e[4]!==V||e[5]!==C?(S=me=>{me!==V&&re("connections_dialog_tab_changed",{to_tab:me}),C(me)},e[4]=V,e[5]=C,e[6]=S):S=e[6];const w=S;let k;e[7]!==g.id?(k={connectionId:yt,orgId:g.id},e[7]=g.id,e[8]=k):k=e[8];const T=Ae(k);let M,I,E;if(e[9]!==T||e[10]!==_||e[11]!==g.id){E=_?.trim()?{operator:"or",conditions:[{field:["title"],operator:"contains",value:_.trim()},{field:["description"],operator:"contains",value:_.trim()}]}:void 0;const me={...E&&{where:E},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:0},ke=JSON.stringify(me);I=Bp,M=Ze.collectionListInfinite(T,g.id,"","CONNECTIONS",ke),e[9]=T,e[10]=_,e[11]=g.id,e[12]=M,e[13]=I,e[14]=E}else M=e[12],I=e[13],E=e[14];let N;e[15]!==T||e[16]!==E?(N=async me=>{const{pageParam:ke}=me,st=ke===void 0?0:ke;return(await T.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{...E&&{where:E},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:st}})).structuredContent},e[15]=T,e[16]=E,e[17]=N):N=e[17];let A;e[18]!==M||e[19]!==N?(A={queryKey:M,queryFn:N,initialPageParam:0,getNextPageParam:m1,staleTime:3e4},e[18]=M,e[19]=N,e[20]=A):A=e[20];const{data:D,fetchNextPage:L,hasNextPage:R,isFetchingNextPage:P}=I(A),O=D?.pages.flatMap(f1)??[],z=Rp(O),$=new Set(O.filter(u1).map(h1)),q=ah(),F=lh(q,_),W=jl(F.loadMore,F.hasMore,F.isLoadingMore),H=jl(L,R??!1,P),U=V==="all"||!!b,X=U?F.items.filter(me=>{const ke=$p(me);return!(ke&&$.has(ke))}):[],K=X.filter(d1),G=X.filter(c1);let ie;e[21]!==n?(ie=me=>me.some(ke=>n.has(ke.id)),e[21]=n,e[22]=ie):ie=e[22];const te=ie;let J;e[23]!==n||e[24]!==i||e[25]!==c||e[26]!==te||e[27]!==m||e[28]!==o||e[29]!==h||e[30]!==a?(J=(me,ke,st,zt,De)=>{const Yt=te(De),At=De.find(Ct=>!n.has(Ct.id)),Et=De[0];if(m==="browse"){const Ct=nh(Et);return r.jsx(Xn,{connection:{title:ke,icon:st,description:De.length>1?`${De.length} instances`:zt??void 0},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsxs(Nl,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[r.jsx(Mt,{size:11})," Connected"]}),onClick:()=>{re("connection_browse_clicked",{app_name:Et.app_name??null,connection_id:Et.id,instances_count:De.length}),h?.(Ct)}},me)}return r.jsx(Xn,{connection:{title:ke,icon:st,description:zt},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsxs("div",{className:"flex items-center gap-1.5",children:[Yt&&r.jsxs(Nl,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[r.jsx(Mt,{size:11})," Added"]}),r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:c!==null,onClick:Ct=>{Ct.stopPropagation(),At?(re("connection_add_clicked",{action:"use_existing",app_name:Et.app_name??null,connection_id:At.id}),i&&re("agent_connection_attached",{agent_id:i,connection_id:At.id,app_name:Et.app_name??null,mode:"existing"}),o(At.id)):(re("connection_add_clicked",{action:"clone",app_name:Et.app_name??null,base_connection_id:Et.id}),a(Et))},children:"Add"})]})},me)},e[23]=n,e[24]=i,e[25]=c,e[26]=te,e[27]=m,e[28]=o,e[29]=h,e[30]=a,e[31]=J):J=e[31];const ae=J;let Z;e[32]!==c||e[33]!==m||e[34]!==l?(Z=me=>{const ke=me._meta?.["mcp.mesh"],st=ke?.friendlyName||ke?.friendly_name||me.server?.title||me.title||me.server?.name||me.name||me.id||"",zt=me.server?.description||me.description||null,De=me.server?.icons?.[0]?.src||Fp(me.server?.repository)||null;return r.jsx(Xn,{connection:{title:st,description:zt,icon:De},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:c!==null,onClick:Yt=>{Yt.stopPropagation(),re("connection_add_clicked",{action:"connect_new",registry_item_id:me.id,app_name:me._meta?.["mcp.mesh"]?.friendlyName||me.server?.name||me.name||null}),l(me)},children:c===me.id?r.jsx(Ne,{size:14,className:"animate-spin"}):m==="browse"?"Connect":"Add"})},`catalog-${me.id}`)},e[32]=c,e[33]=m,e[34]=l,e[35]=Z):Z=e[35];const de=Z;let fe;e[36]!==V||e[37]!==w||e[38]!==u||e[39]!==b?(fe=!b&&r.jsxs("div",{className:"flex items-center justify-between px-5 py-3 border-b border-border shrink-0",children:[r.jsx(ch,{tabs:[{id:"all",label:"All"},{id:"connected",label:"Connected"}],activeTab:V,onTabChange:me=>w(me)}),r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 px-2 text-sm",onClick:()=>{re("connections_dialog_custom_clicked"),u()},children:[r.jsx(Dt,{size:12}),"Custom Connection"]})]}),e[36]=V,e[37]=w,e[38]=u,e[39]=b,e[40]=fe):fe=e[40];const ye=v&&"opacity-50 pointer-events-none";let ge;e[41]!==ye?(ge=Y("flex-1 overflow-auto p-5 transition-opacity duration-150",ye),e[41]=ye,e[42]=ge):ge=e[42];const ce="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4";let ue;e[43]!==ae?(ue=me=>{if(me.type==="group")return ae(me.key,me.title,me.icon,null,me.connections);const ke=me.connection;return ae(ke.id,ke.title,ke.icon,ke.description??null,[ke])},e[43]=ae,e[44]=ue):ue=e[44];const be=z.map(ue);let pe;e[45]!==H?(pe=r.jsx("div",{ref:H,className:"col-span-full h-1"}),e[45]=H,e[46]=pe):pe=e[46];let Ce;e[47]!==P?(Ce=P&&r.jsx("div",{className:"col-span-full flex justify-center py-6",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),e[47]=P,e[48]=Ce):Ce=e[48];const Ie=U&&K.length>0&&r.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[r.jsx(_p,{size:13,className:"text-muted-foreground shrink-0"}),r.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"Verified"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),ee=U&&K.map(de),se=U&&G.length>0&&r.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[r.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"All connections"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),Ve=U&&G.map(de);let ze;e[49]!==W||e[50]!==q||e[51]!==U?(ze=U&&q.length>0&&r.jsx("div",{ref:W,className:"col-span-full h-1"}),e[49]=W,e[50]=q,e[51]=U,e[52]=ze):ze=e[52];let Fe;e[53]!==F.isLoadingMore||e[54]!==U?(Fe=U&&F.isLoadingMore&&r.jsx("div",{className:"col-span-full flex justify-center py-6",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),e[53]=F.isLoadingMore,e[54]=U,e[55]=Fe):Fe=e[55];let ft;e[56]!==be||e[57]!==pe||e[58]!==Ce||e[59]!==Ie||e[60]!==ee||e[61]!==se||e[62]!==Ve||e[63]!==ze||e[64]!==Fe?(ft=r.jsxs("div",{className:ce,children:[be,pe,Ce,Ie,ee,se,Ve,ze,Fe]}),e[56]=be,e[57]=pe,e[58]=Ce,e[59]=Ie,e[60]=ee,e[61]=se,e[62]=Ve,e[63]=ze,e[64]=Fe,e[65]=ft):ft=e[65];let He;e[66]!==V||e[67]!==z.length||e[68]!==G||e[69]!==d||e[70]!==K?(He=z.length===0&&K.length===0&&G.length===0&&r.jsx("div",{className:"flex items-center justify-center h-48 text-sm text-muted-foreground",children:d?`No connections match "${d}"`:V==="connected"?"No connections yet":"No connections available"}),e[66]=V,e[67]=z.length,e[68]=G,e[69]=d,e[70]=K,e[71]=He):He=e[71];let tt;e[72]!==ge||e[73]!==ft||e[74]!==He?(tt=r.jsxs("div",{className:ge,children:[ft,He]}),e[72]=ge,e[73]=ft,e[74]=He,e[75]=tt):tt=e[75];let ht;return e[76]!==fe||e[77]!==tt?(ht=r.jsxs(r.Fragment,{children:[fe,tt]}),e[76]=fe,e[77]=tt,e[78]=ht):ht=e[78],ht}function c1(t){return!t.verified&&!t._meta?.["mcp.mesh"]?.verified&&!t.meta?.verified}function d1(t){return t.verified||t._meta?.["mcp.mesh"]?.verified||t.meta?.verified}function h1(t){return t.app_name}function u1(t){return t.app_name}function f1(t){return t?.items??[]}function m1(t,e){if(t?.hasMore)return e.reduce(p1,0)}function p1(t,e){return t+(e?.items?.length??0)}function Qa({open:t,onOpenChange:e,defaultTab:s,initialSearch:i="",...n}){const o=n.mode??"add",a="agentId"in n?n.agentId:void 0,l="addedConnectionIds"in n?n.addedConnectionIds??new Set:new Set,c="onAdd"in n&&n.onAdd?n.onAdd:w=>{},d=(w,k,T)=>{a&&re("agent_connection_attached",{agent_id:a,connection_id:w,app_name:k,mode:T})},[u,h]=j.useState(null),[f,m]=j.useState(i),[p,g]=j.useState(!1),{org:_}=xe(),{data:v}=dt.useSession(),x=Mn(),b=bt(),y=Oe(),V=w=>{e(!1),y({to:"/$org/settings/connections/$appSlug",params:{org:_.slug,appSlug:w}})},C=async w=>{h(w.app_name??w.id);try{const T=`${w.title.replace(/\s*\(\d+\)\s*$/,"")} (${Date.now().toString(36).slice(-4)})`,I=(await x.create.mutateAsync({title:T,description:w.description??null,connection_type:w.connection_type,connection_url:w.connection_url??null,connection_token:null,icon:w.icon??null,app_name:w.app_name??null,app_id:w.app_id??null,connection_headers:w.connection_headers??null})).id,E=new URL(`/mcp/${I}`,window.location.origin),N=await Zi({url:E.href,token:null});if(N.supportsOAuth&&!N.isAuthenticated){const{token:A,tokenInfo:D,error:L}=await Yr({connectionId:I,scope:"offline_access"});if(L||!A){re("connection_oauth_failed",{connection_id:I,flow:"clone",error:L??"no_token"}),he.error(`Authentication failed: ${L??"no token received"}`),await x.delete.mutateAsync(I);return}if(re("connection_oauth_succeeded",{connection_id:I,flow:"clone"}),D)try{(await fetch(`/api/connections/${I}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:D.accessToken,refreshToken:D.refreshToken,expiresIn:D.expiresIn,scope:D.scope,clientId:D.clientId,clientSecret:D.clientSecret,tokenEndpoint:D.tokenEndpoint})})).ok?await x.update.mutateAsync({id:I,data:{}}):await x.update.mutateAsync({id:I,data:{connection_token:A}})}catch{await x.update.mutateAsync({id:I,data:{connection_token:A}})}else await x.update.mutateAsync({id:I,data:{connection_token:A}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(E.href,null)})}d(I,w.app_name??null,"clone"),c(I)}catch(k){console.error("Failed to add connection:",k),he.error("Failed to add connection")}finally{h(null)}},S=async w=>{if(!(!_||!v?.user?.id)){h(w.id);try{const k=zp(w,_.id,v.user.id,{remoteIndex:0}),T=k.connection_type==="STDIO",M=!!k.connection_url,I=T&&k.connection_headers&&typeof k.connection_headers=="object"&&"command"in k.connection_headers;if(!M&&!I){he.error("This MCP Server cannot be connected: no connection method available"),h(null);return}const{id:E}=await x.create.mutateAsync(k),N=new URL(`/mcp/${E}`,window.location.origin),A=await Zi({url:N.href,token:null});if(A.supportsOAuth&&!A.isAuthenticated){const{token:D,tokenInfo:L,error:R}=await Yr({connectionId:E,scope:"offline_access"});if(R||!D){re("connection_oauth_failed",{connection_id:E,flow:"connect_new",error:R??"no_token"}),he.error(`Authentication failed: ${R??"no token received"}`),d(E,k.app_name??null,"new"),c(E);return}if(re("connection_oauth_succeeded",{connection_id:E,flow:"connect_new"}),L)try{(await fetch(`/api/connections/${E}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:L.accessToken,refreshToken:L.refreshToken,expiresIn:L.expiresIn,scope:L.scope,clientId:L.clientId,clientSecret:L.clientSecret,tokenEndpoint:L.tokenEndpoint})})).ok?await x.update.mutateAsync({id:E,data:{}}):await x.update.mutateAsync({id:E,data:{connection_token:D}})}catch{await x.update.mutateAsync({id:E,data:{connection_token:D}})}else await x.update.mutateAsync({id:E,data:{connection_token:D}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(N.href,null)}),he.success("Connected and authenticated")}else he.success("Connected");d(E,k.app_name??null,"new"),c(E)}catch(k){console.error("Failed to connect:",k),he.error("Failed to connect")}finally{h(null)}}};return r.jsxs(Bt,{open:t,onOpenChange:e,children:[r.jsxs(Ot,{className:"sm:max-w-5xl h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[r.jsx(Gt,{className:"px-6 pt-5 pb-0 shrink-0",children:r.jsx(qt,{className:"text-base font-semibold",children:o==="browse"?"Connections":"Add Connection"})}),r.jsx("div",{className:"pt-3 shrink-0",children:r.jsx(Id,{value:f,onChange:m,placeholder:"Search connections..."})}),r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),children:r.jsx(l1,{mode:o,agentId:a,addedConnectionIds:l,onAdd:c,onCloneAndAdd:C,onConnectAndAdd:S,connectingItemId:u,search:f,onCreateConnection:()=>g(!0),onBrowseNavigate:V,defaultTab:s})})]}),r.jsx(a1,{open:p,onOpenChange:g,onCreated:async w=>{g(!1);const k=new URL(`/mcp/${w}`,window.location.origin),T=await Zi({url:k.href,token:null});if(T.supportsOAuth&&!T.isAuthenticated){const{token:M,tokenInfo:I,error:E}=await Yr({connectionId:w,scope:"offline_access"});if(E||!M){re("connection_oauth_failed",{connection_id:w,flow:"custom_create",error:E??"no_token"}),he.error(`Authentication failed: ${E??"no token received"}`),await x.delete.mutateAsync(w);return}if(re("connection_oauth_succeeded",{connection_id:w,flow:"custom_create"}),I)try{(await fetch(`/api/connections/${w}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:I.accessToken,refreshToken:I.refreshToken,expiresIn:I.expiresIn,scope:I.scope,clientId:I.clientId,clientSecret:I.clientSecret,tokenEndpoint:I.tokenEndpoint})})).ok?await x.update.mutateAsync({id:w,data:{}}):await x.update.mutateAsync({id:w,data:{connection_token:M}})}catch{await x.update.mutateAsync({id:w,data:{connection_token:M}})}else await x.update.mutateAsync({id:w,data:{connection_token:M}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(k.href,null)})}d(w,null,"custom"),c(w),e(!1)}})]})}const g1=[{src:"/connections/github.png",name:"GitHub"},{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/linear.png",name:"Linear"},{src:"/connections/shopify.png",name:"Shopify"},{src:"/connections/firecrawl.png",name:"Firecrawl"},{src:"/connections/perplexity.png",name:"Perplexity"}];function _1(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center -space-x-1",children:g1.map(x1)}),t[0]=e):e=t[0],e}function x1(t){return r.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-2 ring-muted object-cover bg-white"},t.name)}function v1(t){const e=B.c(6),{onClick:s}=t;let i,n,o,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=Y("group relative z-10 flex items-center gap-3 w-full px-4 py-3","rounded-b-2xl","cursor-pointer"),n=r.jsx("p",{className:"flex-1 text-xs text-muted-foreground truncate text-left",children:"Connect tools and get more done"}),o=r.jsx(_1,{}),a=r.jsx($a,{size:14,className:"shrink-0 text-muted-foreground/60 group-hover:text-muted-foreground transition-colors"}),e[0]=i,e[1]=n,e[2]=o,e[3]=a):(i=e[0],n=e[1],o=e[2],a=e[3]);let l;return e[4]!==s?(l=r.jsxs("button",{type:"button",onClick:s,className:i,children:[n,o,a]}),e[4]=s,e[5]=l):l=e[5],l}const Ki=48;function b1(){const t=B.c(9),[e,s]=j.useState("idle"),[i,n]=j.useState(""),[o,a]=j.useState(""),[l,c]=j.useState(w1),d=j.useRef(null),u=j.useRef(null),h=j.useRef(null),f=j.useRef(null),m=j.useRef(0),p=j.useRef(!1),g=j.useRef(""),_=j.useRef(""),v=typeof window<"u"&&!!(window.SpeechRecognition||window.webkitSpeechRecognition);let x;t[0]===Symbol.for("react.memo_cache_sentinel")?(x=()=>{m.current&&(cancelAnimationFrame(m.current),m.current=0),u.current?.close().catch(S1),f.current?.getTracks().forEach(y1),h.current=null,u.current=null,f.current=null},t[0]=x):x=t[0];const b=x;let y;if(t[1]===Symbol.for("react.memo_cache_sentinel")){const M=I=>{f.current=I;const E=new AudioContext;u.current=E;const N=E.createMediaStreamSource(I),A=E.createAnalyser();A.fftSize=128,A.smoothingTimeConstant=.8,N.connect(A),h.current=A;const D=new Uint8Array(A.frequencyBinCount),L=()=>{if(!h.current)return;h.current.getByteFrequencyData(D);const R=[];for(let P=0;P<Ki;P++){const O=Math.floor(P/Ki*D.length);R.push(Math.max(.04,(D[O]??0)/255))}c(R),m.current=requestAnimationFrame(L)};L()};y=async()=>{const I=window.SpeechRecognition||window.webkitSpeechRecognition;if(!I){s("unsupported");return}let E;try{E=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{s("permission-denied");return}n(""),a(""),_.current="",g.current="",p.current=!0,s("recording"),M(E);const N=new I;d.current=N,N.interimResults=!0,N.continuous=!0,N.lang=navigator.language||"en-US",N.onresult=A=>{let D="",L="";for(let R=A.resultIndex;R<A.results.length;R++){const P=A.results[R],O=P?.[0]?.transcript??"";P?.isFinal?L=L+O:D=D+O}L&&(g.current=g.current+L,n(g.current)),_.current=D,a(D)},N.onend=()=>{if(p.current)try{N.start()}catch{}};try{N.start()}catch{s("idle")}},t[1]=y}else y=t[1];const V=y;let C;t[2]===Symbol.for("react.memo_cache_sentinel")?(C=()=>{p.current=!1,d.current?.stop(),b(),s("idle"),c(Array(Ki).fill(.05)),a("");const M=(g.current+(_.current?" "+_.current:"")).trim();return n(""),g.current="",_.current="",M},t[2]=C):C=t[2];const S=C;let w;t[3]===Symbol.for("react.memo_cache_sentinel")?(w=()=>{p.current=!1,d.current?.abort(),b(),s("idle"),n(""),a(""),c(Array(Ki).fill(.05)),g.current="",_.current=""},t[3]=w):w=t[3];const k=w;let T;return t[4]!==o||t[5]!==e||t[6]!==i||t[7]!==l?(T={status:e,transcript:i,interimTranscript:o,waveformData:l,isSupported:v,startRecording:V,stopRecording:S,cancelRecording:k},t[4]=o,t[5]=e,t[6]=i,t[7]=l,t[8]=T):T=t[8],T}function y1(t){return t.stop()}function S1(){}function w1(){return Array(Ki).fill(.05)}function V1(t){const e=B.c(4),{data:s}=t;let i;e[0]!==s?(i=s.map(C1),e[0]=s,e[1]=i):i=e[1];let n;return e[2]!==i?(n=r.jsx("div",{className:"flex items-center justify-center gap-[2px] h-10 overflow-hidden","aria-hidden":"true",children:i}),e[2]=i,e[3]=n):n=e[3],n}function C1(t,e){return r.jsx("div",{className:"w-[2px] shrink-0 rounded-full bg-chart-2 transition-[height] duration-75 ease-out",style:{height:`${Math.max(4,Math.round(t*40))}px`}},e)}const to=[{value:"fast",label:"Fast",Icon:Fd,description:"Quicker responses"},{value:"smart",label:"Smart",Icon:Da,description:"Balanced quality"},{value:"thinking",label:"Thinking",Icon:Jm,description:"Deeper reasoning"}];function k1(t){const e=B.c(17),{tier:s,onSelect:i}=t;let n;e[0]!==s?(n=to.find(m=>m.value===s)??to[1],e[0]=s,e[1]=n):n=e[1];const o=n,a=o.Icon;let l;e[2]!==a?(l=r.jsx(a,{size:14}),e[2]=a,e[3]=l):l=e[3];let c;e[4]!==o.label?(c=r.jsx("span",{className:"hidden sm:inline",children:o.label}),e[4]=o.label,e[5]=c):c=e[5];let d;e[6]!==l||e[7]!==c?(d=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"ghost",size:"default",className:"text-muted-foreground hover:text-foreground",children:[l,c]})}),e[6]=l,e[7]=c,e[8]=d):d=e[8];let u;e[9]!==i||e[10]!==s?(u=to.map(m=>{const{value:p,label:g,Icon:_,description:v}=m;return r.jsxs(Qe,{onSelect:()=>i(p),children:[r.jsx(_,{size:16,className:"text-muted-foreground"}),r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1",children:[r.jsx("span",{children:g}),r.jsx("span",{className:"text-xs text-muted-foreground font-normal",children:v})]}),s===p&&r.jsx("span",{className:"text-xs text-muted-foreground font-medium",children:"On"})]},p)}),e[9]=i,e[10]=s,e[11]=u):u=e[11];let h;e[12]!==u?(h=r.jsx(hs,{align:"end",className:"w-52 p-1.5",children:u}),e[12]=u,e[13]=h):h=e[13];let f;return e[14]!==d||e[15]!==h?(f=r.jsxs(cs,{children:[d,h]}),e[14]=d,e[15]=h,e[16]=f):f=e[16],f}function j1(t,e){const s=B.c(5),{editor:i}=jn(),[n,o]=j.useState(!1),a=j.useRef(0);let l,c;return s[0]!==i||s[1]!==e||s[2]!==t?(l=()=>{const d=m=>{m.dataTransfer?.types.includes("Files")&&(m.preventDefault(),a.current=a.current+1,o(!0))},u=m=>{m.preventDefault(),a.current=Math.max(0,a.current-1),a.current===0&&o(!1)},h=N1,f=m=>{if(m.preventDefault(),a.current=0,o(!1),!i||!t||!Tn(t))return;const p=m.dataTransfer?.files;if(!p||p.length===0)return;const{from:g}=i.state.selection;for(const _ of Array.from(p))Ya(i,t,_,g,e)};return window.addEventListener("dragenter",d),window.addEventListener("dragleave",u),window.addEventListener("dragover",h),window.addEventListener("drop",f),()=>{window.removeEventListener("dragenter",d),window.removeEventListener("dragleave",u),window.removeEventListener("dragover",h),window.removeEventListener("drop",f)}},c=[i,t,e],s[0]=i,s[1]=e,s[2]=t,s[3]=l,s[4]=c):(l=s[3],c=s[4]),j.useEffect(l,c),n}function N1(t){t.dataTransfer?.types.includes("Files")&&t.preventDefault()}function A1(t){const e=B.c(11),{selectedModel:s,onUnsupportedFile:i}=t,n=j1(s,i);let o;e[0]!==s?(o=Tn(s),e[0]=s,e[1]=o):o=e[1];const a=o,l=n?"opacity-100":"opacity-0 pointer-events-none",c=a?"border-primary/40 text-primary/70":"border-destructive/30 text-destructive/70";let d;e[2]!==l||e[3]!==c?(d=Y("absolute inset-0 z-20 rounded-xl flex flex-col items-center justify-center gap-2 bg-muted border-2 border-dashed transition-opacity",l,c),e[2]=l,e[3]=c,e[4]=d):d=e[4];let u;e[5]!==s||e[6]!==a?(u=a?r.jsxs(r.Fragment,{children:[r.jsx(Jd,{size:24}),r.jsxs("span",{className:"text-sm font-medium",children:["Drop ",th(s)," here"]})]}):r.jsxs(r.Fragment,{children:[r.jsx(Xd,{size:24}),r.jsx("span",{className:"text-sm font-medium",children:"This model can't read attachments — switch to one with vision or file support"})]}),e[5]=s,e[6]=a,e[7]=u):u=e[7];let h;return e[8]!==d||e[9]!==u?(h=r.jsx("div",{className:d,children:u}),e[8]=d,e[9]=u,e[10]=h):h=e[10],h}function E1({onOpenContextPanel:t,showConnectionsBanner:e=!1}){const{messages:s,isStreaming:i,isRunInProgress:n,sendMessage:o,stop:a}=Ii(),{taskId:l,tasks:c}=Lt(),{selectedModel:d,selectedVirtualMcp:u,isModelsLoading:h,tiptapDocRef:f,imageModel:m,deepResearchModel:p,chatMode:g,setChatMode:_,simpleModeEnabled:v,simpleModeTier:x,setSimpleModeTier:b}=$s(),{data:y}=dt.useSession(),V=y?.user?.id,{org:C}=xe(),S=En(C.id).id,w=Lo(Vl),[k,T]=j.useState(!1),{unsupportedFile:M,onUnsupportedFile:I,clearUnsupportedFile:E}=O_(),N=b1(),A=j.useRef(void 0),D=async()=>{A.current=O,await N.startRecording();const Z=N.status==="recording"?"started":N.status==="unsupported"?"unsupported":N.status==="permission-denied"?"permission_denied":"unknown";re("chat_voice_started",{thread_id:l,outcome:Z})},L=()=>{re("chat_voice_confirmed",{thread_id:l});const Z=N.stopRecording();H.current?.syncVoiceText(A.current,Z),H.current?.focus()},R=()=>{re("chat_voice_cancelled",{thread_id:l}),N.cancelRecording(),H.current?.restoreContent(A.current)};j.useEffect(()=>{if(N.status!=="recording")return;const Z=(N.transcript+(N.interimTranscript?" "+N.interimTranscript:"")).trim();H.current?.syncVoiceText(A.current,Z)},[N.transcript,N.interimTranscript,N.status]);const P=c.find(Z=>Z.id===l),[O,z]=j.useState(void 0),$=Z=>{z(Z),f.current=Z},q=j.useRef(l);q.current!==l&&(q.current=l,z(void 0),f.current=void 0);const W=[...s].reverse().find(Z=>Z.role==="assistant")?.metadata?.modelLimits?.contextWindow??d?.limits?.contextWindow,H=j.useRef(null),U=g==="plan";j.useEffect(()=>{const Z=de=>{Md(de)&&de.code==="KeyL"&&(de.preventDefault(),de.shiftKey&&_(g==="plan"?"default":"plan"),H.current?.focus())};return document.addEventListener("keydown",Z),()=>document.removeEventListener("keydown",Z)},[g,_]);const X=Nd(s),K=[...s].reverse().find(Z=>Z.role==="assistant"&&Z.metadata?.usage)?.metadata?.usage,G=K?.contextTokens??(K?.totalTokens??0)-(K?.reasoningTokens??0),ie=Lo(Vl),te=!i&&!!d&&!h&&!$g(O),J=i||n,ae=Z=>{Z?.preventDefault(),i?(re("chat_message_stopped",{thread_id:l}),a()):n?(re("chat_message_stopped",{thread_id:l}),a()):te&&O&&(re("chat_message_sent",{thread_id:l,mode:g,model_id:d?.modelId??null,model_provider:d?.providerId??null,virtual_mcp_id:u?.id??null,submission:Z?"button_or_enter":"programmatic"}),ie(),o(O),$(void 0))};return V&&P?.created_by&&P.created_by!==V?r.jsxs("div",{className:"flex w-full items-center gap-2 px-3 py-2.5 rounded-xl border border-border bg-muted/40 text-muted-foreground",children:[r.jsx(Xd,{size:14,className:"shrink-0"}),r.jsx("span",{className:"text-sm",children:"Read only — you're viewing someone else's thread"})]}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"flex flex-col w-full justify-end",children:r.jsxs("div",{className:"relative rounded-2xl w-full flex flex-col",children:[e&&r.jsx("div",{className:"absolute inset-0 rounded-2xl pointer-events-none bg-muted/50"}),r.jsx(Ln,{}),r.jsx(qh,{tiptapDoc:O,setTiptapDoc:$,disabled:i||!d,enterToSubmit:!0,onSubmit:ae,children:r.jsxs("form",{onSubmit:ae,className:Y("w-full relative rounded-2xl min-h-[110px] md:min-h-[130px] flex flex-col bg-background dark:bg-muted card-shadow"),children:[r.jsx(A1,{selectedModel:d,onUnsupportedFile:I}),r.jsx("div",{className:"group/input relative flex flex-col gap-2 flex-1",children:r.jsx(Gh,{ref:H,disabled:i||!d||N.status==="recording",virtualMcpId:u?.id??S,showFileUploader:!0,selectedModel:d,onUnsupportedFile:I})}),r.jsx("div",{className:"flex items-center justify-between p-2.5 gap-1",children:N.status==="recording"?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"flex-1"}),r.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[r.jsx(V1,{data:N.waveformData.slice(0,28)}),r.jsx("button",{type:"button",onClick:R,className:"flex items-center justify-center size-8 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Cancel recording",children:r.jsx(Es,{size:16})}),r.jsx("button",{type:"button",onClick:L,className:"flex items-center justify-center size-8 rounded-lg bg-foreground text-background hover:opacity-80 transition-opacity","aria-label":"Use transcription",children:r.jsx(Mt,{size:16})})]})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 shrink-0",children:[r.jsx(R_,{selectedModel:d,isStreaming:i,icon:r.jsx(Dt,{size:16}),onUnsupportedFile:I}),r.jsx(r1,{disabled:i,onOpenConnections:()=>{re("connections_dialog_opened",{source:"tools_popover",mode:"add"}),T(!0)},virtualMcpId:u?.id??S}),U&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"plan",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-violet-600 dark:text-violet-400 hover:bg-violet-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(Yd,{size:14,className:"shrink-0"}),"Plan mode",r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),g==="gen-image"&&m&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"gen-image",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-pink-600 dark:text-pink-400 hover:bg-pink-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(Io,{size:14,className:"shrink-0"}),r.jsx("span",{className:"max-w-[120px] truncate",children:v?"Create image":m.title.includes(": ")?m.title.split(": ").slice(1).join(": "):m.title}),r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),g==="web-search"&&p&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"web-search",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(vi,{size:14,className:"shrink-0"}),r.jsx("span",{className:"max-w-[120px] truncate",children:v?"Web search":p.title.includes(": ")?p.title.split(": ").slice(1).join(": "):p.title}),r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),W&&G>0&&r.jsx(ym,{usage:X,totalTokens:G,contextWindow:W,onOpenContextPanel:t})]}),r.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[v?r.jsx(k1,{tier:x,onSelect:b}):r.jsx(sh,{placeholder:"Model",variant:"borderless",className:"h-8 text-sm py-2 min-w-0"}),N.isSupported&&!i&&!n&&r.jsx(oe,{type:"button",onClick:D,variant:"ghost",size:"icon",className:Y("size-8 rounded-lg transition-colors",N.status==="permission-denied"?"text-destructive hover:text-destructive hover:bg-destructive/10":"text-muted-foreground hover:text-foreground"),title:N.status==="permission-denied"?"Microphone access denied — click to try again":"Voice input",children:r.jsx(Ym,{size:18})}),r.jsx(oe,{type:J?"button":"submit",onClick:Z=>{J&&(Z.preventDefault(),Z.stopPropagation(),a())},variant:te||J?"default":"ghost",size:"icon",disabled:!te&&!J,className:Y("size-8 rounded-lg transition-all",!te&&!J&&"bg-muted text-muted-foreground hover:bg-muted hover:text-muted-foreground cursor-not-allowed"),title:i?"Stop generating":n?"Cancel run":"Send message (Enter)",children:J?r.jsx(Xm,{size:20}):r.jsx(Od,{size:20})})]})]})})]})},l),e&&r.jsx(v1,{onClick:()=>{re("connections_banner_clicked",{source:"home_chat_input"}),re("connections_dialog_opened",{source:"home_banner",mode:"add"}),T(!0)}})]})}),r.jsx(Qa,{mode:"browse",open:k,onOpenChange:T,defaultTab:"all"}),r.jsx(D_,{info:M,onClose:E})]})}const I1={usd:[{dollars:10,label:"Starter"},{dollars:20,label:"Popular"},{dollars:100,label:"Best value"}],brl:[{dollars:50,label:"Starter"},{dollars:100,label:"Popular"},{dollars:500,label:"Best value"}]};function Yh(t){return`deco-credits-empty-dismissed:${t}`}function T1(t){try{return localStorage.getItem(Yh(t))==="1"}catch{return!1}}function R1(){const t=B.c(49),{org:e}=xe(),s=Oe(),{decoKeyId:i}=Pn();let n;t[0]!==e.id?(n={connectionId:yt,orgId:e.id},t[0]=e.id,t[1]=n):n=t[1];const o=Ae(n),[a,l]=j.useState(!0),[c,d]=j.useState(""),[u,h]=j.useState(!1),[f,m]=j.useState("usd"),p=f==="brl"?"R$":"$";let g;t[2]!==e.id?(g=()=>{re("credits_empty_state_dismissed",{organization_id:e.id}),l(!1);try{localStorage.setItem(Yh(e.id),"1")}catch{}},t[2]=e.id,t[3]=g):g=t[3];const _=g;let v,x;t[4]!==a||t[5]!==e.id?(v=()=>{a&&re("credits_empty_state_shown",{organization_id:e.id})},x=[a,e.id],t[4]=a,t[5]=e.id,t[6]=v,t[7]=x):(v=t[6],x=t[7]),j.useEffect(v,x);let b;t[8]!==o||t[9]!==f?(b=async $=>{const q=await o.callTool({name:"AI_PROVIDER_TOPUP_URL",arguments:{providerId:"deco",amountCents:$,currency:f}});if(q?.isError)throw new Error(q.content?.[0]?.text??"Failed to get top-up URL");return q.structuredContent?.url},t[8]=o,t[9]=f,t[10]=b):b=t[10];let y;t[11]!==_?(y=$=>{$&&window.open($,"_blank","noopener,noreferrer"),_()},t[11]=_,t[12]=y):y=t[12];let V;t[13]!==b||t[14]!==y?(V={mutationFn:b,onSuccess:y,onError:D1},t[13]=b,t[14]=y,t[15]=V):V=t[15];const{mutate:C,isPending:S}=Ni(V),w=parseFloat(c),k=!isNaN(w)&&w>=1;if(!a)return null;let T;t[16]!==_?(T=$=>!$&&_(),t[16]=_,t[17]=T):T=t[17];let M;t[18]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx("div",{className:"absolute inset-x-0 top-0 h-24 bg-gradient-to-b from-amber-500/8 to-transparent pointer-events-none rounded-t-lg"}),t[18]=M):M=t[18];let I;t[19]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx("div",{className:"flex items-center justify-center size-11 rounded-full bg-amber-100 dark:bg-amber-900/40 border border-amber-200/60 dark:border-amber-800/40 mx-auto",children:r.jsx(Ta,{size:20,className:"text-amber-600 dark:text-amber-400"})}),t[19]=I):I=t[19];let E;t[20]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsxs("div",{className:"relative px-6 pt-7 pb-5",children:[M,r.jsxs(Gt,{className:"relative gap-3",children:[I,r.jsxs("div",{className:"text-center",children:[r.jsx(qt,{className:"text-lg font-semibold",children:"This workspace has no credits"}),r.jsx(Nn,{className:"mt-2 text-[13px] leading-relaxed max-w-[320px] mx-auto",children:"Your free credits were used in another workspace. Add credits to use AI here."})]})]})]}),t[20]=E):E=t[20];let N;t[21]!==f||t[22]!==p||t[23]!==c||t[24]!==w||t[25]!==i||t[26]!==k||t[27]!==S||t[28]!==u||t[29]!==C?(N=i&&r.jsxs("div",{className:"px-6 pb-5",children:[r.jsx("div",{className:"mb-4",children:r.jsxs(Zd,{type:"single",variant:"outline",size:"sm",value:f,onValueChange:$=>{$&&m($)},children:[r.jsx(un,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),r.jsx(un,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"})]})}),r.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:I1[f].map($=>{const{dollars:q,label:F}=$;return r.jsxs("button",{type:"button",disabled:S,onClick:()=>{re("credits_topup_clicked",{amount_cents:q*100,currency:f,tier_label:F,source:"empty_state"}),C(q*100)},className:Y("relative flex flex-col items-center gap-1 py-6 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[r.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[p,q]}),r.jsx("span",{className:"text-xs text-muted-foreground",children:F})]},q)})}),u?r.jsxs("div",{className:"flex gap-2 mt-3",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:p}),r.jsx(at,{type:"number",min:"1",step:"1",placeholder:"50",value:c,onChange:$=>d($.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),r.jsx(oe,{className:"h-10",disabled:!k||S,onClick:()=>{re("credits_topup_clicked",{amount_cents:Math.round(w*100),currency:f,tier_label:"custom",source:"empty_state"}),C(Math.round(w*100))},children:S?"Opening...":"Add"})]}):r.jsx("button",{type:"button",className:"w-full mt-2.5 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>h(!0),children:"Enter custom amount"})]}),t[21]=f,t[22]=p,t[23]=c,t[24]=w,t[25]=i,t[26]=k,t[27]=S,t[28]=u,t[29]=C,t[30]=N):N=t[30];let A;t[31]!==_||t[32]!==s||t[33]!==e.slug?(A=()=>{s({to:"/$org/settings/ai-providers",params:{org:e.slug}}),_()},t[31]=_,t[32]=s,t[33]=e.slug,t[34]=A):A=t[34];let D;t[35]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(In,{size:12,className:"transition-transform duration-150 group-hover:translate-x-0.5"}),t[35]=D):D=t[35];let L;t[36]!==A?(L=r.jsxs("button",{type:"button",className:"group flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:A,children:["Use your own provider",D]}),t[36]=A,t[37]=L):L=t[37];let R;t[38]!==_?(R=r.jsx(oe,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:_,children:"Skip for now"}),t[38]=_,t[39]=R):R=t[39];let P;t[40]!==L||t[41]!==R?(P=r.jsxs("div",{className:"px-6 py-3.5 border-t border-border bg-muted/30 flex items-center justify-between",children:[L,R]}),t[40]=L,t[41]=R,t[42]=P):P=t[42];let O;t[43]!==N||t[44]!==P?(O=r.jsxs(Ot,{className:"sm:max-w-[500px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:M1,children:[E,N,P]}),t[43]=N,t[44]=P,t[45]=O):O=t[45];let z;return t[46]!==O||t[47]!==T?(z=r.jsx(Bt,{open:!0,onOpenChange:T,children:O}),t[46]=O,t[47]=T,t[48]=z):z=t[48],z}function M1(t){return t.preventDefault()}function D1(t){he.error(`Top-up failed: ${t.message}`)}function P1(t){const e=B.c(6),{balanceDollars:s}=t;let i;e[0]!==s?(i=s.toFixed(2),e[0]=s,e[1]=i):i=e[1];const n=i;let o,a;e[2]===Symbol.for("react.memo_cache_sentinel")?(o=Y("inline-flex items-center gap-1.5 px-3 py-1 rounded-full","bg-emerald-50 dark:bg-emerald-950/30","border border-emerald-200/60 dark:border-emerald-800/40","animate-in fade-in-0 slide-in-from-bottom-2 duration-300"),a=r.jsx(Ta,{size:13,className:"text-emerald-600 dark:text-emerald-400"}),e[2]=o,e[3]=a):(o=e[2],a=e[3]);let l;return e[4]!==n?(l=r.jsxs("div",{className:o,children:[a,r.jsxs("span",{className:"text-xs font-medium text-emerald-700 dark:text-emerald-300 tabular-nums",children:["$",n," in credits to get started"]})]}),e[4]=n,e[5]=l):l=e[5],l}function L1(){const t=B.c(8),{org:e}=xe(),s=Oe();let i;t[0]!==s||t[1]!==e.slug?(i=()=>s({to:"/$org/settings/ai-providers",params:{org:e.slug}}),t[0]=s,t[1]=e.slug,t[2]=i):i=t[2];let n,o,a;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=Y("inline-flex items-center gap-1.5 px-3 py-1 rounded-full cursor-pointer","bg-amber-50 dark:bg-amber-950/30","border border-amber-200/60 dark:border-amber-800/40","hover:bg-amber-100/60 dark:hover:bg-amber-900/30","transition-colors duration-150","animate-in fade-in-0 slide-in-from-bottom-2 duration-300"),o=r.jsx(Bs,{size:13,className:"text-amber-600 dark:text-amber-400"}),a=r.jsx("span",{className:"text-xs font-medium text-amber-700 dark:text-amber-300",children:"No credits remaining · Add more"}),t[3]=n,t[4]=o,t[5]=a):(n=t[3],o=t[4],a=t[5]);let l;return t[6]!==i?(l=r.jsxs("button",{type:"button",onClick:i,className:n,children:[o,a]}),t[6]=i,t[7]=l):l=t[7],l}function O1(t){const e=B.c(11),{className:s}=t;let i;e[0]!==s?(i=Y("flex h-full w-full flex-col bg-background",s),e[0]=s,e[1]=i):i=e[1];let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"size-6 rounded-lg bg-muted animate-pulse"}),e[2]=n):n=e[2];let o;e[3]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs("div",{className:"flex items-center gap-3",children:[n,r.jsxs("div",{className:"flex flex-col gap-2",children:[r.jsx("div",{className:"h-3.5 w-28 rounded bg-muted animate-pulse"}),r.jsx("div",{className:"h-3 w-40 rounded bg-muted/60 animate-pulse"})]})]}),e[3]=o):o=e[3];let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"flex items-center h-12 flex-none border-b border-border/80 px-4",children:r.jsxs("div",{className:"flex items-center justify-between gap-3 w-full",children:[o,r.jsxs("div",{className:"flex items-end gap-2",children:[r.jsx("div",{className:"h-6 w-6 rounded-full bg-muted animate-pulse"}),r.jsx("div",{className:"h-6 w-6 rounded-lg bg-muted animate-pulse"})]})]})}),e[4]=a):a=e[4];let l;e[5]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"flex-1 overflow-hidden px-4 py-4",children:r.jsxs("div",{className:"mx-auto flex w-full max-w-2xl flex-col gap-4",children:[r.jsx(Or,{align:"right",width:"w-3/4"}),r.jsx(Or,{align:"left",width:"w-full",lines:3}),r.jsx(Or,{align:"right",width:"w-2/3"}),r.jsx(Or,{align:"left",width:"w-5/6",lines:2})]})}),e[5]=l):l=e[5];let c;e[6]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"relative flex flex-1 flex-col gap-2 p-2.5",children:r.jsx("div",{className:"relative flex-1",children:r.jsxs("div",{className:"space-y-2 p-2",children:[r.jsx("div",{className:"h-3 w-full rounded bg-muted/40 animate-pulse"}),r.jsx("div",{className:"h-3 w-4/5 rounded bg-muted/40 animate-pulse"})]})})}),e[6]=c):c=e[6];let d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center gap-1",children:r.jsx("div",{className:"size-8 rounded-full bg-muted/60 animate-pulse"})}),e[7]=d):d=e[7];let u;e[8]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"px-4 py-4",children:r.jsx("div",{className:"mx-auto w-full max-w-2xl",children:r.jsxs("div",{className:"relative flex min-h-[130px] flex-col rounded-xl bg-background card-shadow",children:[c,r.jsxs("div",{className:"flex items-center justify-between px-2.5 pb-2.5",children:[d,r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("div",{className:"h-8 w-32 rounded-lg bg-muted/60 animate-pulse"}),r.jsx("div",{className:"size-8 rounded-full bg-muted animate-pulse"})]})]})]})})}),e[8]=u):u=e[8];let h;return e[9]!==i?(h=r.jsxs("div",{className:i,children:[a,l,u]}),e[9]=i,e[10]=h):h=e[10],h}function Or(t){const e=B.c(22),{align:s,width:i,lines:n}=t,o=i===void 0?"w-full":i,a=n===void 0?1:n,l=s==="right"?"flex-row-reverse":"flex-row";let c;e[0]!==l?(c=Y("flex w-full gap-4 px-4 py-2",l),e[0]=l,e[1]=c):c=e[1];const d=s==="right"?"ml-auto max-w-3/4 items-end":"w-full items-start";let u;e[2]!==d?(u=Y("flex min-w-0 flex-col gap-2",d),e[2]=d,e[3]=u):u=e[3];let h;e[4]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx("div",{className:"h-3 w-16 rounded bg-muted/40 animate-pulse"}),e[4]=h):h=e[4];const f=s==="right"?"bg-muted":"bg-transparent border border-border/40";let m;e[5]!==f||e[6]!==o?(m=Y("min-w-0 rounded-2xl p-4",f,o),e[5]=f,e[6]=o,e[7]=m):m=e[7];let p;e[8]!==a?(p=Array.from({length:a}),e[8]=a,e[9]=p):p=e[9];let g;e[10]!==a||e[11]!==p?(g=r.jsx("div",{className:"space-y-2",children:p.map((b,y)=>r.jsx("div",{className:Y("h-3 rounded bg-muted-foreground/20 animate-pulse",y===a-1?"w-3/4":"w-full"),style:{animationDelay:`${y*.1}s`}},y))}),e[10]=a,e[11]=p,e[12]=g):g=e[12];let _;e[13]!==g||e[14]!==m?(_=r.jsx("div",{className:m,children:g}),e[13]=g,e[14]=m,e[15]=_):_=e[15];let v;e[16]!==_||e[17]!==u?(v=r.jsxs("div",{className:u,children:[h,_]}),e[16]=_,e[17]=u,e[18]=v):v=e[18];let x;return e[19]!==v||e[20]!==c?(x=r.jsx("div",{className:c,children:v}),e[19]=v,e[20]=c,e[21]=x):x=e[21],x}function B1(t){const e=B.c(5),{className:s,children:i}=t;let n;e[0]!==s?(n=Y("flex flex-col h-full w-full bg-background transform-[translateZ(0)]",s),e[0]=s,e[1]=n):n=e[1];let o;return e[2]!==i||e[3]!==n?(o=r.jsx("div",{className:n,children:i}),e[2]=i,e[3]=n,e[4]=o):o=e[4],o}function $1(t){const e=B.c(5),{children:s,className:i}=t;let n;e[0]!==i?(n=Y("flex-1 min-h-0 overflow-y-auto isolate",i),e[0]=i,e[1]=n):n=e[1];let o;return e[2]!==s||e[3]!==n?(o=r.jsx("div",{className:n,children:s}),e[2]=s,e[3]=n,e[4]=o):o=e[4],o}function z1(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"h-full w-full flex items-center justify-center max-w-2xl mx-auto",children:s}),e[0]=s,e[1]=i):i=e[1],i}function F1(){const t=B.c(16),{messages:e,status:s}=Ii(),i=Sm(e);let n;t[0]!==i?(n=i.at(-1),t[0]=i,t[1]=n):n=t[1];const o=n,a=s==="submitted"||s==="streaming";let l;if(t[2]!==a||t[3]!==o||t[4]!==i||t[5]!==e||t[6]!==s){const c=e.at(-1),d=!a&&c?.role==="assistant"&&c.parts.filter(W1).some(H1),u=!a&&c?.role==="assistant"&&c.parts.some(U1);let h;if(t[8]!==i||t[9]!==s){let m;t[11]!==i.length||t[12]!==s?(m=(p,g)=>r.jsx(_l,{pair:p,isLastPair:!1,status:g===i.length-1?s:void 0},`pair-${p.user.id}`),t[11]=i.length,t[12]=s,t[13]=m):m=t[13],h=i.slice(0,-1).map(m),t[8]=i,t[9]=s,t[10]=h}else h=t[10];let f;t[14]!==h?(f=r.jsx("div",{className:"flex flex-col min-w-0 max-w-2xl mx-auto w-full",children:h}),t[14]=h,t[15]=f):f=t[15],l=r.jsxs("div",{className:"w-full min-w-0 max-w-full overflow-y-auto h-full overflow-x-hidden",children:[f,o&&r.jsx("div",{className:Y("min-h-full min-w-0 max-w-2xl mx-auto w-full",(d||u)&&"pb-60"),children:r.jsx(_l,{pair:o,isLastPair:!0,status:s},`pair-${o?.user.id}`)})]}),t[2]=a,t[3]=o,t[4]=i,t[5]=e,t[6]=s,t[7]=l}else l=t[7];return l}function U1(t){return"state"in t&&t.state==="approval-requested"}function H1(t){return t.state==="input-available"}function W1(t){return t.type==="tool-user_ask"}function K1(t){const e=B.c(5),{children:s,className:i}=t;let n;e[0]!==i?(n=Y("flex-none w-full mx-auto p-2 pt-0","max-w-2xl min-w-0",i),e[0]=i,e[1]=n):n=e[1];let o;return e[2]!==s||e[3]!==n?(o=r.jsx("div",{className:n,children:s}),e[2]=s,e[3]=n,e[4]=o):o=e[4],o}const Ee=Object.assign(B1,{Main:$1,Messages:F1,EmptyState:z1,Footer:K1,Input:E1,Provider:fm,ActiveTaskProvider:um,Skeleton:O1,IceBreakers:Yg,NoAiProviderEmptyState:Sp,CreditsEmptyState:R1,CreditsEyebrow:P1,NoCreditsEyebrow:L1,CreditsExhaustedBanner:Th}),q1=`You are an image generator agent. Every request of the user is somewhat related to creating, editing or varying an image. You have access to image generation tools
|
|
4
|
+
${A}`}]}})},t[12]=p,t[13]=h,t[14]=f,t[15]=m,t[16]=T):T=t[16];const M=T,I=j_;let E;t[17]!==d?(E=(A,D,L)=>{d({id:A,approved:D,...L?{reason:L}:{}})},t[17]=d,t[18]=E):E=t[18];const N=E;if(g){let A;return t[19]!==k||t[20]!==a||t[21]!==x?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(Th,{userAskParts:x,isStreaming:a,onSubmit:k})}),t[19]=k,t[20]=a,t[21]=x,t[22]=A):A=t[22],A}if(_.length>0){let A;return t[23]!==M||t[24]!==a||t[25]!==_?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(l_,{plans:_,isStreaming:a,onApprove:M,onDismiss:I})}),t[23]=M,t[24]=a,t[25]=_,t[26]=A):A=t[26],A}if(b.length>0||a&&l){let A;return t[27]!==N||t[28]!==a||t[29]!==b?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0",children:r.jsx(r_,{approvals:b,isStreaming:a,onRespond:N})}),t[27]=N,t[28]=a,t[29]=b,t[30]=A):A=t[30],A}if(!a&&e){if(b_(e)){let D;return t[31]!==s?(D=r.jsx(Rh,{onDismiss:s}),t[31]=s,t[32]=D):D=t[32],D}let A;return t[33]!==s||t[34]!==e||t[35]!==V?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0 bg-background",children:r.jsx(gn,{variant:"error",error:e,onDismiss:s,onFixInChat:V})}),t[33]=s,t[34]=e,t[35]=V,t[36]=A):A=t[36],A}if(!a&&i&&i!=="stop"&&!l){let A;return t[37]!==n||t[38]!==i||t[39]!==S?(A=r.jsx("div",{className:"absolute bottom-full left-0 right-0 bg-background",children:r.jsx(gn,{variant:"warning",finishReason:i,onDismiss:n,onContinue:S})}),t[37]=n,t[38]=i,t[39]=S,t[40]=A):A=t[40],A}return null}function j_(){document.querySelector("[data-chat-input]")?.focus()}function N_(t){return t.state!=="output-available"}function A_(t){return t.type==="tool-user_ask"}Ln.Error=function(e){return r.jsx(gn,{variant:"error",error:e.error,onDismiss:e.onDismiss,onFixInChat:e.onFixInChat})};Ln.Warning=function(e){return r.jsx(gn,{variant:"warning",finishReason:e.finishReason,onDismiss:e.onDismiss,onContinue:e.onContinue})};Ln.UserAskQuestion=Th;async function Ya(t,e,s,i,n){if(!Tn(e)){he.error("Selected model does not support file uploads");return}const o=s.type||"application/octet-stream";if(!Sp(o,e)){const l=th(e),c=e?.title??"This model";n?n({fileName:s.name,modelName:c,accepted:l}):he.error(`"${s.name}" can't be attached`,{description:`${c} accepts ${l}. PowerPoint, Word, and Excel files aren't supported yet.`});return}const a=10*1024*1024;if(s.size>a){he.error(`File "${s.name}" exceeds 10MB limit`);return}try{const l=new FileReader,c=new Promise((h,f)=>{l.onload=()=>{const m=l.result;if(typeof m!="string"){f(new Error("Failed to read file as data URL"));return}const p=m.includes(",")?m.split(",")[1]??m:m;h(p)},l.onerror=f});l.readAsDataURL(s);const d=await c,u={id:crypto.randomUUID(),name:s.name,mimeType:s.type||"application/octet-stream",size:s.size,data:d};vm(t,{from:i,to:i},u)}catch(l){console.error("Failed to process file:",l),he.error(`Failed to load file "${s.name}"`)}}function E_(t){const e=B.c(8),{editor:s,selectedModel:i,onUnsupportedFile:n}=t,o=j.useRef(T_);let a,l;e[0]!==s||e[1]!==n||e[2]!==i?(a=()=>{o.current=async(u,h)=>{await Ya(s,i,u,h,n)}},l=[s,i,n],e[0]=s,e[1]=n,e[2]=i,e[3]=a,e[4]=l):(a=e[3],l=e[4]),j.useEffect(a,l);let c,d;return e[5]!==s?(c=()=>{if(s?.isDestroyed)return;const u=new No("fileDropHandler");s.state.plugins.find(m=>m.spec.key===u)&&s.unregisterPlugin(u);const f=new Pm({key:u,props:{handleDrop:(m,p,g,_)=>{if(_)return!1;const v=p.dataTransfer?.files;if(!v||v.length===0)return!1;p.preventDefault();const x=m.posAtCoords({left:p.clientX,top:p.clientY});if(!x)return!1;const b=Array.from(v),y=x.pos;for(const V of b)o.current?.(V,y);return!0},handlePaste:(m,p)=>{const g=p.clipboardData?.items;if(!g)return!1;const _=Array.from(g).filter(I_);if(_.length===0)return!1;p.preventDefault();const{from:v}=m.state.selection;for(const x of _){const b=x.getAsFile();b&&o.current?.(b,v)}return!0}}});return s.registerPlugin(f),()=>{s?.isDestroyed||s.unregisterPlugin(u)}},d=[s],e[5]=s,e[6]=c,e[7]=d):(c=e[6],d=e[7]),j.useEffect(c,d),null}function I_(t){return t.kind==="file"}function T_(){return Promise.resolve()}function R_(t){const e=B.c(24),{selectedModel:s,isStreaming:i,icon:n,onUnsupportedFile:o}=t,{editor:a}=jn(),l=j.useRef(null);let c;e[0]!==s?(c=Tn(s),e[0]=s,e[1]=c):c=e[1];const d=c;let u;e[2]!==a||e[3]!==o||e[4]!==s?(u=async V=>{const C=V.target.files;if(!C||C.length===0||!a)return;const S=Array.from(C),{from:w}=a.state.selection,k=w;for(const T of S)await Ya(a,s,T,k,o);l.current&&(l.current.value="")},e[2]=a,e[3]=o,e[4]=s,e[5]=u):u=e[5];const h=u;if(!a||!d)return null;let f;e[6]!==s?(f=yp(s),e[6]=s,e[7]=f):f=e[7];let m;e[8]!==h||e[9]!==i||e[10]!==f?(m=r.jsx("input",{ref:l,type:"file",multiple:!0,accept:f,className:"hidden",onChange:h,disabled:i}),e[8]=h,e[9]=i,e[10]=f,e[11]=m):m=e[11];const p=i||!d;let g;e[12]===Symbol.for("react.memo_cache_sentinel")?(g=()=>l.current?.click(),e[12]=g):g=e[12];let _;e[13]!==n?(_=n??r.jsx($d,{size:16}),e[13]=n,e[14]=_):_=e[14];let v;e[15]!==p||e[16]!==_?(v=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"text-muted-foreground/75",disabled:p,onClick:g,children:_})}),e[15]=p,e[16]=_,e[17]=v):v=e[17];let x;e[18]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx(Ge,{side:"top",children:"Add file"}),e[18]=x):x=e[18];let b;e[19]!==v?(b=r.jsxs(Ye,{children:[v,x]}),e[19]=v,e[20]=b):b=e[20];let y;return e[21]!==b||e[22]!==m?(y=r.jsxs(r.Fragment,{children:[m,b]}),e[21]=b,e[22]=m,e[23]=y):y=e[23],y}const M_=["PowerPoint (.pptx)","Word documents (.docx)","Excel spreadsheets (.xlsx)"];function D_(t){const e=B.c(29),{info:s,onClose:i}=t,n=s!==null;let o;e[0]!==i?(o=S=>!S&&i(),e[0]=i,e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(251,191,36,0.35) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(244,114,182,0.25) 0%, transparent 100%)"],e[2]=a):a=e[2];let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:a.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[3]=l):l=e[3];let c,d;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"flex items-center justify-center size-9 rounded-lg bg-amber-500/15 text-amber-600 dark:text-amber-400",children:r.jsx(wa,{size:18})}),d=r.jsx(qt,{className:"text-xl font-semibold tracking-tight",children:"File type not supported"}),e[4]=c,e[5]=d):(c=e[4],d=e[5]);const u=s?.fileName;let h;e[6]!==u?(h=r.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[l,r.jsxs(Gt,{className:"relative gap-4",children:[c,r.jsxs("div",{children:[d,r.jsxs(Nn,{className:"mt-1.5 text-sm leading-relaxed",children:[r.jsxs("span",{className:"font-medium text-foreground",children:["“",u,"”"]})," ","can't be attached to this chat."]})]})]})]}),e[6]=u,e[7]=h):h=e[7];const f=s?.modelName;let m;e[8]!==f?(m=r.jsxs("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground mb-2",children:[f," accepts"]}),e[8]=f,e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx($d,{size:14,className:"text-muted-foreground"}),e[10]=p):p=e[10];const g=s?.accepted;let _;e[11]!==g?(_=r.jsxs("div",{className:"flex items-center gap-2 text-sm text-foreground",children:[p,r.jsx("span",{className:"capitalize",children:g})]}),e[11]=g,e[12]=_):_=e[12];let v;e[13]!==m||e[14]!==_?(v=r.jsxs("div",{className:"rounded-xl border border-border p-4",children:[m,_]}),e[13]=m,e[14]=_,e[15]=v):v=e[15];let x;e[16]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsxs("div",{className:"rounded-xl bg-muted/25 border border-border/50 p-4 space-y-2",children:[r.jsx("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:"Not supported yet"}),M_.map(P_)]}),e[16]=x):x=e[16];let b;e[17]!==v?(b=r.jsxs("div",{className:"px-8 pt-3 pb-6 space-y-3",children:[v,x]}),e[17]=v,e[18]=b):b=e[18];let y;e[19]!==i?(y=r.jsx("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-end",children:r.jsx(oe,{onClick:i,children:"Got it"})}),e[19]=i,e[20]=y):y=e[20];let V;e[21]!==b||e[22]!==y||e[23]!==h?(V=r.jsxs(Ot,{className:"sm:max-w-[480px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:L_,children:[h,b,y]}),e[21]=b,e[22]=y,e[23]=h,e[24]=V):V=e[24];let C;return e[25]!==n||e[26]!==V||e[27]!==o?(C=r.jsx(Bt,{open:n,onOpenChange:o,children:V}),e[25]=n,e[26]=V,e[27]=o,e[28]=C):C=e[28],C}function P_(t){return r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-muted shrink-0",children:r.jsx(Es,{size:10,className:"text-muted-foreground"})}),r.jsx("span",{className:"text-sm text-foreground/80",children:t})]},t)}function L_(t){return t.preventDefault()}function O_(){const t=B.c(3),[e,s]=j.useState(null);let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=()=>s(null),t[0]=i):i=t[0];let n;return t[1]!==e?(n={unsupportedFile:e,onUnsupportedFile:s,clearUnsupportedFile:i},t[1]=e,t[2]=n):n=t[2],n}var B_=Lm;var $_=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],Mo=$_.join(","),Mh=typeof Element>"u",dr=Mh?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,_n=!Mh&&Element.prototype.getRootNode?function(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}:function(t){return t?.ownerDocument},xn=function(e,s){var i;s===void 0&&(s=!0);var n=e==null||(i=e.getAttribute)===null||i===void 0?void 0:i.call(e,"inert"),o=n===""||n==="true",a=o||s&&e&&(typeof e.closest=="function"?e.closest("[inert]"):xn(e.parentNode));return a},z_=function(e){var s,i=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"contenteditable");return i===""||i==="true"},F_=function(e,s,i){if(xn(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Mo));return s&&dr.call(e,Mo)&&n.unshift(e),n=n.filter(i),n},Do=function(e,s,i){for(var n=[],o=Array.from(e);o.length;){var a=o.shift();if(!xn(a,!1))if(a.tagName==="SLOT"){var l=a.assignedElements(),c=l.length?l:a.children,d=Do(c,!0,i);i.flatten?n.push.apply(n,d):n.push({scopeParent:a,candidates:d})}else{var u=dr.call(a,Mo);u&&i.filter(a)&&(s||!e.includes(a))&&n.push(a);var h=a.shadowRoot||typeof i.getShadowRoot=="function"&&i.getShadowRoot(a),f=!xn(h,!1)&&(!i.shadowRootFilter||i.shadowRootFilter(a));if(h&&f){var m=Do(h===!0?a.children:h.children,!0,i);i.flatten?n.push.apply(n,m):n.push({scopeParent:a,candidates:m})}else o.unshift.apply(o,a.children)}}return n},Dh=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},Ph=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||z_(e))&&!Dh(e)?0:e.tabIndex},U_=function(e,s){var i=Ph(e);return i<0&&s&&!Dh(e)?0:i},H_=function(e,s){return e.tabIndex===s.tabIndex?e.documentOrder-s.documentOrder:e.tabIndex-s.tabIndex},Lh=function(e){return e.tagName==="INPUT"},W_=function(e){return Lh(e)&&e.type==="hidden"},K_=function(e){var s=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(i){return i.tagName==="SUMMARY"});return s},q_=function(e,s){for(var i=0;i<e.length;i++)if(e[i].checked&&e[i].form===s)return e[i]},G_=function(e){if(!e.name)return!0;var s=e.form||_n(e),i=function(l){return s.querySelectorAll('input[type="radio"][name="'+l+'"]')},n;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")n=i(window.CSS.escape(e.name));else try{n=i(e.name)}catch(a){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",a.message),!1}var o=q_(n,e.form);return!o||o===e},Y_=function(e){return Lh(e)&&e.type==="radio"},X_=function(e){return Y_(e)&&!G_(e)},J_=function(e){var s,i=e&&_n(e),n=(s=i)===null||s===void 0?void 0:s.host,o=!1;if(i&&i!==e){var a,l,c;for(o=!!((a=n)!==null&&a!==void 0&&(l=a.ownerDocument)!==null&&l!==void 0&&l.contains(n)||e!=null&&(c=e.ownerDocument)!==null&&c!==void 0&&c.contains(e));!o&&n;){var d,u,h;i=_n(n),n=(d=i)===null||d===void 0?void 0:d.host,o=!!((u=n)!==null&&u!==void 0&&(h=u.ownerDocument)!==null&&h!==void 0&&h.contains(n))}}return o},Bl=function(e){var s=e.getBoundingClientRect(),i=s.width,n=s.height;return i===0&&n===0},Q_=function(e,s){var i=s.displayCheck,n=s.getShadowRoot;if(i==="full-native"&&"checkVisibility"in e){var o=e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});return!o}if(getComputedStyle(e).visibility==="hidden")return!0;var a=dr.call(e,"details>summary:first-of-type"),l=a?e.parentElement:e;if(dr.call(l,"details:not([open]) *"))return!0;if(!i||i==="full"||i==="full-native"||i==="legacy-full"){if(typeof n=="function"){for(var c=e;e;){var d=e.parentElement,u=_n(e);if(d&&!d.shadowRoot&&n(d)===!0)return Bl(e);e.assignedSlot?e=e.assignedSlot:!d&&u!==e.ownerDocument?e=u.host:e=d}e=c}if(J_(e))return!e.getClientRects().length;if(i!=="legacy-full")return!0}else if(i==="non-zero-area")return Bl(e);return!1},Z_=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var s=e.parentElement;s;){if(s.tagName==="FIELDSET"&&s.disabled){for(var i=0;i<s.children.length;i++){var n=s.children.item(i);if(n.tagName==="LEGEND")return dr.call(s,"fieldset[disabled] *")?!0:!n.contains(e)}return!0}s=s.parentElement}return!1},ex=function(e,s){return!(s.disabled||W_(s)||Q_(s,e)||K_(s)||Z_(s))},$l=function(e,s){return!(X_(s)||Ph(s)<0||!ex(e,s))},tx=function(e){var s=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(s)||s>=0)},Oh=function(e){var s=[],i=[];return e.forEach(function(n,o){var a=!!n.scopeParent,l=a?n.scopeParent:n,c=U_(l,a),d=a?Oh(n.candidates):l;c===0?a?s.push.apply(s,d):s.push(l):i.push({documentOrder:o,tabIndex:c,item:n,isScope:a,content:d})}),i.sort(H_).reduce(function(n,o){return o.isScope?n.push.apply(n,o.content):n.push(o.content),n},[]).concat(s)},Bh=function(e,s){s=s||{};var i;return s.getShadowRoot?i=Do([e],s.includeContainer,{filter:$l.bind(null,s),flatten:!1,getShadowRoot:s.getShadowRoot,shadowRootFilter:tx}):i=F_(e,s.includeContainer,$l.bind(null,s)),Oh(i)};function sx(){return/apple/i.test(navigator.vendor)}const zl="data-floating-ui-focusable";function ix(t){let e=t.activeElement;for(;((s=e)==null||(s=s.shadowRoot)==null?void 0:s.activeElement)!=null;){var s;e=e.shadowRoot.activeElement}return e}function Po(t,e){if(!t||!e)return!1;const s=e.getRootNode==null?void 0:e.getRootNode();if(t.contains(e))return!0;if(s&&jf(s)){let i=e;for(;i;){if(t===i)return!0;i=i.parentNode||i.host}}return!1}function Oi(t){return"composedPath"in t?t.composedPath()[0]:t.target}function Qn(t,e){if(e==null)return!1;if("composedPath"in t)return t.composedPath().includes(e);const s=t;return s.target!=null&&e.contains(s.target)}function rx(t){return t.matches("html,body")}function hr(t){return t?.ownerDocument||document}function nx(t){return t?t.hasAttribute(zl)?t:t.querySelector("["+zl+"]")||t:null}function sn(t,e,s){return s===void 0&&(s=!0),t.filter(n=>{var o;return n.parentId===e&&(!s||((o=n.context)==null?void 0:o.open))}).flatMap(n=>[n,...sn(t,n.id,s)])}function ox(t){return"nativeEvent"in t}var ax=typeof document<"u",lx=function(){},Xs=ax?j.useLayoutEffect:lx;const cx={...vd},dx=cx.useInsertionEffect,hx=dx||(t=>t());function gi(t){const e=j.useRef(()=>{});return hx(()=>{e.current=t}),j.useCallback(function(){for(var s=arguments.length,i=new Array(s),n=0;n<s;n++)i[n]=arguments[n];return e.current==null?void 0:e.current(...i)},[])}const $h=()=>({getShadowRoot:!0,displayCheck:typeof ResizeObserver=="function"&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function zh(t,e){const s=Bh(t,$h()),i=s.length;if(i===0)return;const n=ix(hr(t)),o=s.indexOf(n),a=o===-1?e===1?0:i-1:o+e;return s[a]}function ux(t){return zh(hr(t).body,1)||t}function fx(t){return zh(hr(t).body,-1)||t}function Zn(t,e){const s=e||t.currentTarget,i=t.relatedTarget;return!i||!Po(s,i)}function mx(t){Bh(t,$h()).forEach(s=>{s.dataset.tabindex=s.getAttribute("tabindex")||"",s.setAttribute("tabindex","-1")})}function Fl(t){t.querySelectorAll("[data-tabindex]").forEach(s=>{const i=s.dataset.tabindex;delete s.dataset.tabindex,i?s.setAttribute("tabindex",i):s.removeAttribute("tabindex")})}const px="data-floating-ui-focusable",Ul="active",Hl="selected",gx={...vd};let Wl=!1,_x=0;const Kl=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+_x++;function xx(){const[t,e]=j.useState(()=>Wl?Kl():void 0);return Xs(()=>{t==null&&e(Kl())},[]),j.useEffect(()=>{Wl=!0},[]),t}const vx=gx.useId,Xa=vx||xx;function bx(){const t=new Map;return{emit(e,s){var i;(i=t.get(e))==null||i.forEach(n=>n(s))},on(e,s){t.has(e)||t.set(e,new Set),t.get(e).add(s)},off(e,s){var i;(i=t.get(e))==null||i.delete(s)}}}const yx=j.createContext(null),Sx=j.createContext(null),Fh=()=>{var t;return((t=j.useContext(yx))==null?void 0:t.id)||null},Uh=()=>j.useContext(Sx);function Ja(t){return"data-floating-ui-"+t}const wx={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"fixed",whiteSpace:"nowrap",width:"1px",top:0,left:0},ql=j.forwardRef(function(e,s){const[i,n]=j.useState();Xs(()=>{sx()&&n("button")},[]);const o={ref:s,tabIndex:0,role:i,"aria-hidden":i?void 0:!0,[Ja("focus-guard")]:"",style:wx};return r.jsx("span",{...e,...o})}),Vx={clipPath:"inset(50%)",position:"fixed",top:0,left:0},Hh=j.createContext(null),Gl=Ja("portal");function Cx(t){t===void 0&&(t={});const{id:e,root:s}=t,i=Xa(),n=jx(),[o,a]=j.useState(null),l=j.useRef(null);return Xs(()=>()=>{o?.remove(),queueMicrotask(()=>{l.current=null})},[o]),Xs(()=>{if(!i||l.current)return;const c=e?document.getElementById(e):null;if(!c)return;const d=document.createElement("div");d.id=i,d.setAttribute(Gl,""),c.appendChild(d),l.current=d,a(d)},[e,i]),Xs(()=>{if(s===null||!i||l.current)return;let c=s||n?.portalNode;c&&!Rf(c)&&(c=c.current),c=c||document.body;let d=null;e&&(d=document.createElement("div"),d.id=e,c.appendChild(d));const u=document.createElement("div");u.id=i,u.setAttribute(Gl,""),c=d||c,c.appendChild(u),l.current=u,a(u)},[e,s,i,n]),o}function kx(t){const{children:e,id:s,root:i,preserveTabOrder:n=!0}=t,o=Cx({id:s,root:i}),[a,l]=j.useState(null),c=j.useRef(null),d=j.useRef(null),u=j.useRef(null),h=j.useRef(null),f=a?.modal,m=a?.open,p=!!a&&!a.modal&&a.open&&n&&!!(i||o);return j.useEffect(()=>{if(!o||!n||f)return;function g(_){o&&Zn(_)&&(_.type==="focusin"?Fl:mx)(o)}return o.addEventListener("focusin",g,!0),o.addEventListener("focusout",g,!0),()=>{o.removeEventListener("focusin",g,!0),o.removeEventListener("focusout",g,!0)}},[o,n,f]),j.useEffect(()=>{o&&(m||Fl(o))},[m,o]),r.jsxs(Hh.Provider,{value:j.useMemo(()=>({preserveTabOrder:n,beforeOutsideRef:c,afterOutsideRef:d,beforeInsideRef:u,afterInsideRef:h,portalNode:o,setFocusManagerState:l}),[n,o]),children:[p&&o&&r.jsx(ql,{"data-type":"outside",ref:c,onFocus:g=>{if(Zn(g,o)){var _;(_=u.current)==null||_.focus()}else{const v=a?a.domReference:null,x=fx(v);x?.focus()}}}),p&&o&&r.jsx("span",{"aria-owns":o.id,style:Vx}),o&&Ei.createPortal(e,o),p&&o&&r.jsx(ql,{"data-type":"outside",ref:d,onFocus:g=>{if(Zn(g,o)){var _;(_=h.current)==null||_.focus()}else{const v=a?a.domReference:null,x=ux(v);x?.focus(),a?.closeOnFocusOut&&a?.onOpenChange(!1,g.nativeEvent,"focus-out")}}})]})}const jx=()=>j.useContext(Hh),Nx={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},Ax={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},Yl=t=>{var e,s;return{escapeKey:typeof t=="boolean"?t:(e=t?.escapeKey)!=null?e:!1,outsidePress:typeof t=="boolean"?t:(s=t?.outsidePress)!=null?s:!0}};function Ex(t,e){e===void 0&&(e={});const{open:s,onOpenChange:i,elements:n,dataRef:o}=t,{enabled:a=!0,escapeKey:l=!0,outsidePress:c=!0,outsidePressEvent:d="pointerdown",referencePress:u=!1,referencePressEvent:h="pointerdown",ancestorScroll:f=!1,bubbles:m,capture:p}=e,g=Uh(),_=gi(typeof c=="function"?c:()=>!1),v=typeof c=="function"?_:c,x=j.useRef(!1),{escapeKey:b,outsidePress:y}=Yl(m),{escapeKey:V,outsidePress:C}=Yl(p),S=j.useRef(!1),w=gi(N=>{var A;if(!s||!a||!l||N.key!=="Escape"||S.current)return;const D=(A=o.current.floatingContext)==null?void 0:A.nodeId,L=g?sn(g.nodesRef.current,D):[];if(!b&&(N.stopPropagation(),L.length>0)){let R=!0;if(L.forEach(P=>{var O;if((O=P.context)!=null&&O.open&&!P.context.dataRef.current.__escapeKeyBubbles){R=!1;return}}),!R)return}i(!1,ox(N)?N.nativeEvent:N,"escape-key")}),k=gi(N=>{var A;const D=()=>{var L;w(N),(L=Oi(N))==null||L.removeEventListener("keydown",D)};(A=Oi(N))==null||A.addEventListener("keydown",D)}),T=gi(N=>{var A;const D=o.current.insideReactTree;o.current.insideReactTree=!1;const L=x.current;if(x.current=!1,d==="click"&&L||D||typeof v=="function"&&!v(N))return;const R=Oi(N),P="["+Ja("inert")+"]",O=hr(n.floating).querySelectorAll(P);let z=rs(R)?R:null;for(;z&&!qn(z);){const W=Ef(z);if(qn(W)||!rs(W))break;z=W}if(O.length&&rs(R)&&!rx(R)&&!Po(R,n.floating)&&Array.from(O).every(W=>!Po(z,W)))return;if(If(R)&&E){const W=qn(R),H=Tf(R),U=/auto|scroll/,X=W||U.test(H.overflowX),K=W||U.test(H.overflowY),G=X&&R.clientWidth>0&&R.scrollWidth>R.clientWidth,ie=K&&R.clientHeight>0&&R.scrollHeight>R.clientHeight,te=H.direction==="rtl",J=ie&&(te?N.offsetX<=R.offsetWidth-R.clientWidth:N.offsetX>R.clientWidth),ae=G&&N.offsetY>R.clientHeight;if(J||ae)return}const $=(A=o.current.floatingContext)==null?void 0:A.nodeId,q=g&&sn(g.nodesRef.current,$).some(W=>{var H;return Qn(N,(H=W.context)==null?void 0:H.elements.floating)});if(Qn(N,n.floating)||Qn(N,n.domReference)||q)return;const F=g?sn(g.nodesRef.current,$):[];if(F.length>0){let W=!0;if(F.forEach(H=>{var U;if((U=H.context)!=null&&U.open&&!H.context.dataRef.current.__outsidePressBubbles){W=!1;return}}),!W)return}i(!1,N,"outside-press")}),M=gi(N=>{var A;const D=()=>{var L;T(N),(L=Oi(N))==null||L.removeEventListener(d,D)};(A=Oi(N))==null||A.addEventListener(d,D)});j.useEffect(()=>{if(!s||!a)return;o.current.__escapeKeyBubbles=b,o.current.__outsidePressBubbles=y;let N=-1;function A(O){i(!1,O,"ancestor-scroll")}function D(){window.clearTimeout(N),S.current=!0}function L(){N=window.setTimeout(()=>{S.current=!1},Af()?5:0)}const R=hr(n.floating);l&&(R.addEventListener("keydown",V?k:w,V),R.addEventListener("compositionstart",D),R.addEventListener("compositionend",L)),v&&R.addEventListener(d,C?M:T,C);let P=[];return f&&(rs(n.domReference)&&(P=Kn(n.domReference)),rs(n.floating)&&(P=P.concat(Kn(n.floating))),!rs(n.reference)&&n.reference&&n.reference.contextElement&&(P=P.concat(Kn(n.reference.contextElement)))),P=P.filter(O=>{var z;return O!==((z=R.defaultView)==null?void 0:z.visualViewport)}),P.forEach(O=>{O.addEventListener("scroll",A,{passive:!0})}),()=>{l&&(R.removeEventListener("keydown",V?k:w,V),R.removeEventListener("compositionstart",D),R.removeEventListener("compositionend",L)),v&&R.removeEventListener(d,C?M:T,C),P.forEach(O=>{O.removeEventListener("scroll",A)}),window.clearTimeout(N)}},[o,n,l,v,d,s,i,f,a,b,y,w,V,k,T,C,M]),j.useEffect(()=>{o.current.insideReactTree=!1},[o,v,d]);const I=j.useMemo(()=>({onKeyDown:w,...u&&{[Nx[h]]:N=>{i(!1,N.nativeEvent,"reference-press")},...h!=="click"&&{onClick(N){i(!1,N.nativeEvent,"reference-press")}}}}),[w,i,u,h]),E=j.useMemo(()=>{function N(A){A.button===0&&(x.current=!0)}return{onKeyDown:w,onMouseDown:N,onMouseUp:N,[Ax[d]]:()=>{o.current.insideReactTree=!0}}},[w,d,o]);return j.useMemo(()=>a?{reference:I,floating:E}:{},[a,I,E])}function Ix(t){const{open:e=!1,onOpenChange:s,elements:i}=t,n=Xa(),o=j.useRef({}),[a]=j.useState(()=>bx()),l=Fh()!=null,[c,d]=j.useState(i.reference),u=gi((m,p,g)=>{o.current.openEvent=m?p:void 0,a.emit("openchange",{open:m,event:p,reason:g,nested:l}),s?.(m,p,g)}),h=j.useMemo(()=>({setPositionReference:d}),[]),f=j.useMemo(()=>({reference:c||i.reference||null,floating:i.floating||null,domReference:i.reference}),[c,i.reference,i.floating]);return j.useMemo(()=>({dataRef:o,open:e,onOpenChange:u,elements:f,events:a,floatingId:n,refs:h}),[e,u,f,a,n,h])}function Tx(t){t===void 0&&(t={});const{nodeId:e}=t,s=Ix({...t,elements:{reference:null,floating:null,...t.elements}}),i=t.rootContext||s,n=i.elements,[o,a]=j.useState(null),[l,c]=j.useState(null),u=n?.domReference||o,h=j.useRef(null),f=Uh();Xs(()=>{u&&(h.current=u)},[u]);const m=Nf({...t,elements:{...n,...l&&{reference:l}}}),p=j.useCallback(b=>{const y=rs(b)?{getBoundingClientRect:()=>b.getBoundingClientRect(),getClientRects:()=>b.getClientRects(),contextElement:b}:b;c(y),m.refs.setReference(y)},[m.refs]),g=j.useCallback(b=>{(rs(b)||b===null)&&(h.current=b,a(b)),(rs(m.refs.reference.current)||m.refs.reference.current===null||b!==null&&!rs(b))&&m.refs.setReference(b)},[m.refs]),_=j.useMemo(()=>({...m.refs,setReference:g,setPositionReference:p,domReference:h}),[m.refs,g,p]),v=j.useMemo(()=>({...m.elements,domReference:u}),[m.elements,u]),x=j.useMemo(()=>({...m,...i,refs:_,elements:v,nodeId:e}),[m,_,v,e,i]);return Xs(()=>{i.dataRef.current.floatingContext=x;const b=f?.nodesRef.current.find(y=>y.id===e);b&&(b.context=x)}),j.useMemo(()=>({...m,context:x,refs:_,elements:v}),[m,_,v,x])}function eo(t,e,s){const i=new Map,n=s==="item";let o=t;if(n&&t){const{[Ul]:a,[Hl]:l,...c}=t;o=c}return{...s==="floating"&&{tabIndex:-1,[px]:""},...o,...e.map(a=>{const l=a?a[s]:null;return typeof l=="function"?t?l(t):null:l}).concat(t).reduce((a,l)=>(l&&Object.entries(l).forEach(c=>{let[d,u]=c;if(!(n&&[Ul,Hl].includes(d)))if(d.indexOf("on")===0){if(i.has(d)||i.set(d,[]),typeof u=="function"){var h;(h=i.get(d))==null||h.push(u),a[d]=function(){for(var f,m=arguments.length,p=new Array(m),g=0;g<m;g++)p[g]=arguments[g];return(f=i.get(d))==null?void 0:f.map(_=>_(...p)).find(_=>_!==void 0)}}}else a[d]=u}),a),{})}}function Rx(t){t===void 0&&(t=[]);const e=t.map(l=>l?.reference),s=t.map(l=>l?.floating),i=t.map(l=>l?.item),n=j.useCallback(l=>eo(l,t,"reference"),e),o=j.useCallback(l=>eo(l,t,"floating"),s),a=j.useCallback(l=>eo(l,t,"item"),i);return j.useMemo(()=>({getReferenceProps:n,getFloatingProps:o,getItemProps:a}),[n,o,a])}const Mx=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function Dx(t,e){var s,i;e===void 0&&(e={});const{open:n,elements:o,floatingId:a}=t,{enabled:l=!0,role:c="dialog"}=e,d=Xa(),u=((s=o.domReference)==null?void 0:s.id)||d,h=j.useMemo(()=>{var x;return((x=nx(o.floating))==null?void 0:x.id)||a},[o.floating,a]),f=(i=Mx.get(c))!=null?i:c,p=Fh()!=null,g=j.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:n?h:void 0}:{"aria-expanded":n?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":n?h:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:u},...f==="menu"&&p&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[f,h,p,n,u,c]),_=j.useMemo(()=>{const x={id:h,...f&&{role:f}};return f==="tooltip"||c==="label"?x:{...x,...f==="menu"&&{"aria-labelledby":u}}},[f,h,u,c]),v=j.useCallback(x=>{let{active:b,selected:y}=x;const V={role:"option",...b&&{id:h+"-fui-option"}};switch(c){case"select":case"combobox":return{...V,"aria-selected":y}}return{}},[h,c]);return j.useMemo(()=>l?{reference:g,floating:_,item:v}:{},[l,g,_,v])}function Px(t){const e=B.c(26),{editor:s,query:i,items:n,onSelect:o,onClose:a}=t,[l,c]=j.useState(0),d=j.useRef(n),u=j.useRef(l),h=j.useRef(o),f=j.useRef(a),m=j.useDeferredValue(i);let p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=()=>{c(0)},e[0]=p):p=e[0];let g;e[1]!==m?(g=[m],e[1]=m,e[2]=g):g=e[2],j.useEffect(p,g);let _,v;e[3]!==n.length||e[4]!==l?(_=()=>{l>=n.length&&n.length>0&&c(0)},v=[n.length,l],e[3]=n.length,e[4]=l,e[5]=_,e[6]=v):(_=e[5],v=e[6]),j.useEffect(_,v);let x,b;e[7]!==n?(x=()=>{d.current=n},b=[n],e[7]=n,e[8]=x,e[9]=b):(x=e[8],b=e[9]),j.useEffect(x,b);let y,V;e[10]!==l?(y=()=>{u.current=l},V=[l],e[10]=l,e[11]=y,e[12]=V):(y=e[11],V=e[12]),j.useEffect(y,V);let C,S;e[13]!==o?(S=()=>{h.current=o},C=[o],e[13]=o,e[14]=C,e[15]=S):(C=e[14],S=e[15]),j.useEffect(S,C);let w,k;e[16]!==a?(w=()=>{f.current=a},k=[a],e[16]=a,e[17]=w,e[18]=k):(w=e[17],k=e[18]),j.useEffect(w,k);let T;e[19]!==s.isDestroyed||e[20]!==s.view.dom?(T=()=>{const N=s.view.dom;if(s?.isDestroyed||!N)return;const A=L=>{const R=d.current;if(!R.length)return!1;const P=()=>c(z=>(z+1)%R.length),O=()=>c(z=>(z-1+R.length)%R.length);switch(L.key){case"ArrowUp":return L.preventDefault(),O(),!0;case"ArrowDown":return L.preventDefault(),P(),!0;case"Tab":return L.preventDefault(),L.shiftKey?O():P(),!0;case"Home":return L.preventDefault(),c(0),!0;case"End":return L.preventDefault(),c(R.length-1),!0;case"Enter":{if(L.isComposing)return!1;L.preventDefault();const z=u.current;return z!==-1&&R[z]&&h.current?.(R[z],z),!0}case"Escape":return L.preventDefault(),f.current?.(),!0;default:return!1}},D=L=>{A(L)};return N.addEventListener("keydown",D,!0),()=>{N?.removeEventListener("keydown",D,!0)}},e[19]=s.isDestroyed,e[20]=s.view.dom,e[21]=T):T=e[21];let M;e[22]!==s?(M=[s],e[22]=s,e[23]=M):M=e[23],j.useEffect(T,M);const I=n.length?l:void 0;let E;return e[24]!==I?(E={selectedIndex:I,setSelectedIndex:c},e[24]=I,e[25]=E):E=e[25],E}function Lx(t,e){switch(e.type){case"SET_SELECTED_ITEM":return{...t,selectedItem:e.payload};case"ON_START":return{...t,open:!0,selectedItem:null,element:e.payload.element,query:e.payload.query,range:e.payload.range};case"ON_UPDATE":return{...t,element:e.payload.element,query:e.payload.query,range:e.payload.range};case"ON_EXIT":return{open:!1,element:null,query:"",range:null,selectedItem:null};default:return t}}const Wh=j.createContext(void 0);function Kh(){const t=j.useContext(Wh);if(!t)throw new Error("useSuggestionContext must be used within a SuggestionContext.Provider");return t}function Ox({editor:t,char:e,pluginKey:s,allow:i,onOpenChange:n}){const[o,a]=j.useReducer(Lx,{open:!1,element:null,query:"",range:null,selectedItem:null}),l=j.useRef(n);return l.current=n,j.useEffect(()=>{if(t?.isDestroyed)return;const c=s instanceof No?s:new No(s);t.state.plugins.find(h=>h.spec.key===c)&&t.unregisterPlugin(c);const u=Vp({pluginKey:c,editor:t,char:e,allow(h){const f=t.state.doc.resolve(h.range.from);for(let m=f.depth;m>0;m--)if(f.node(m).type.name==="image")return!1;return!(i&&!i(h))},command(){},render:()=>({onStart:h=>{a({type:"ON_START",payload:{element:h.decorationNode??null,query:h.query,range:h.range}}),l.current?.(!0)},onUpdate:h=>{a({type:"ON_UPDATE",payload:{element:h.decorationNode??null,query:h.query,range:h.range}})},onKeyDown:h=>h.event.key==="Escape"?(a({type:"ON_EXIT"}),!0):!1,onExit:()=>{a({type:"ON_EXIT"}),l.current?.(!1)}}),items:()=>[]});return t.registerPlugin(u),()=>{t?.isDestroyed||t.unregisterPlugin(c)}},[t,s,e,a,i]),{state:o,dispatch:a}}function Bx({editor:t,queryKey:e,queryFn:s,onSelect:i}){const{state:n,dispatch:o}=Kh(),a=j.useDeferredValue(n.query),{data:l}=bd({queryKey:Ze.suggestionItems(e,n.open,a),queryFn:()=>n.open?s({query:a}):[]}),c=()=>{o({type:"ON_EXIT"})},d=async(h,f)=>{if(!(n.selectedItem!==null||!n.range)){o({type:"SET_SELECTED_ITEM",payload:h});try{const{view:m}=t,g=m.state.selection.$to.nodeAfter?.text?.startsWith(" "),_=n.range?{...n.range}:{from:0,to:0};g&&n.range&&(_.to+=1),await i({range:_,item:h})===!1?o({type:"SET_SELECTED_ITEM",payload:null}):c()}catch{c()}}},{selectedIndex:u}=Px({editor:t,query:a,items:l,onSelect:d,onClose:c});return{selectedItem:n.selectedItem,items:l,selectedIndex:u,close:c,onSelect:d}}function $x({children:t}){const{state:e,dispatch:s}=Kh(),{open:i,element:n}=e,o=()=>{s({type:"ON_EXIT"})},{refs:a,floatingStyles:l,context:c}=Tx({placement:"bottom-start",open:i,onOpenChange:f=>{f||o()},elements:{reference:n},middleware:[Mf(10),Df(),Pf()],whileElementsMounted:Lf}),d=Ex(c,{outsidePress:f=>!(f.target instanceof Element&&f.target.closest(".ProseMirror"))}),u=Dx(c,{role:"listbox"}),{getFloatingProps:h}=Rx([d,u]);return i?r.jsx(kx,{children:r.jsx("div",{ref:a.setFloating,style:l,...h(),className:"z-50 w-auto min-w-[360px] max-w-[520px] rounded-lg border bg-popover p-0 text-popover-foreground shadow-md outline-hidden overflow-hidden",children:t})}):null}const zx=t=>{const e=B.c(29),{item:s,isSelected:i,onSelect:n,isLoading:o,ref:a}=t;let l;if(e[0]!==s){const C=Ls(s._meta);l=s.title||kn(s.name,C),e[0]=s,e[1]=l}else l=e[1];const c=l,d=s.description||null,u=s.icon,h=i&&"bg-accent text-accent-foreground",f=o&&"pointer-events-none opacity-50";let m;e[2]!==h||e[3]!==f?(m=Y("relative flex w-full cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors","hover:bg-accent hover:text-accent-foreground","focus:bg-accent focus:text-accent-foreground",h,f),e[2]=h,e[3]=f,e[4]=m):m=e[4];let p;e[5]!==u||e[6]!==c?(p=u!==void 0&&r.jsx(Qt,{icon:u,name:c,size:"xs",className:"mr-2"}),e[5]=u,e[6]=c,e[7]=p):p=e[7];let g;e[8]!==c?(g=r.jsx("span",{className:"font-medium flex items-center truncate capitalize",children:c}),e[8]=c,e[9]=g):g=e[9];let _;e[10]!==o?(_=o&&r.jsx(ar,{size:"xs"}),e[10]=o,e[11]=_):_=e[11];let v;e[12]!==g||e[13]!==_?(v=r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[g,_]}),e[12]=g,e[13]=_,e[14]=v):v=e[14];let x;e[15]!==d?(x=d&&r.jsx("div",{className:"text-xs text-muted-foreground line-clamp-1",children:d}),e[15]=d,e[16]=x):x=e[16];let b;e[17]!==v||e[18]!==x?(b=r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[v,x]}),e[17]=v,e[18]=x,e[19]=b):b=e[19];let y;e[20]!==s.drillable?(y=s.drillable&&r.jsx("kbd",{className:"shrink-0 ml-2 px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground bg-muted border border-border rounded",children:"↵"}),e[20]=s.drillable,e[21]=y):y=e[21];let V;return e[22]!==n||e[23]!==a||e[24]!==b||e[25]!==y||e[26]!==m||e[27]!==p?(V=r.jsxs("div",{ref:a,onClick:n,className:m,children:[p,b,y]}),e[22]=n,e[23]=a,e[24]=b,e[25]=y,e[26]=m,e[27]=p,e[28]=V):V=e[28],V},Fx=t=>{const e=B.c(18),{editor:s,queryKey:i,queryFn:n,onSelect:o}=t;let a;e[0]!==s||e[1]!==o||e[2]!==n||e[3]!==i?(a={editor:s,queryKey:i,queryFn:n,onSelect:o},e[0]=s,e[1]=o,e[2]=n,e[3]=i,e[4]=a):a=e[4];const{items:l,selectedIndex:c,onSelect:d,selectedItem:u}=Bx(a);if(!l.length){let p;return e[5]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx("div",{className:"min-w-[360px] max-w-[520px] bg-popover text-popover-foreground rounded-md border shadow-md p-3 text-sm",children:"No items found"}),e[5]=p):p=e[5],p}let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h={maxHeight:"min(320px, var(--radix-popover-content-available-height, 320px))"},e[6]=h):h=e[6];let f;if(e[7]!==d||e[8]!==l||e[9]!==c||e[10]!==u?.name){let p;e[12]!==d||e[13]!==c||e[14]!==u?.name?(p=(g,_)=>r.jsx(zx,{item:g,isSelected:_===c,ref:_===c?Wx:void 0,onSelect:()=>d(g,_),isLoading:u?.name===g.name},g.name),e[12]=d,e[13]=c,e[14]=u?.name,e[15]=p):p=e[15],f=l.map(p),e[7]=d,e[8]=l,e[9]=c,e[10]=u?.name,e[11]=f}else f=e[11];let m;return e[16]!==f?(m=r.jsx("div",{className:"min-w-[360px] max-w-[520px] bg-popover text-popover-foreground rounded-md overflow-y-auto",style:h,children:r.jsx("div",{className:"p-1",children:f})}),e[16]=f,e[17]=m):m=e[17],m};function Ux(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"p-1",children:[...Array(3)].map(Hx)}),t[0]=e):e=t[0],e}function Hx(t,e){return r.jsxs("div",{className:"flex items-center gap-1.5 px-2 py-1.5 animate-pulse",children:[r.jsx("div",{className:"h-4 w-24 bg-muted rounded"}),r.jsx("div",{className:"h-3 w-32 bg-muted rounded"})]},e)}function qh(t){const e=B.c(18),{editor:s,char:i,pluginKey:n,queryKey:o,queryFn:a,onSelect:l,allow:c,onOpenChange:d}=t;let u;e[0]!==c||e[1]!==i||e[2]!==s||e[3]!==d||e[4]!==n?(u={editor:s,char:i,pluginKey:n,allow:c,onOpenChange:d},e[0]=c,e[1]=i,e[2]=s,e[3]=d,e[4]=n,e[5]=u):u=e[5];const{state:h,dispatch:f}=Ox(u);let m;e[6]!==f||e[7]!==h?(m={state:h,dispatch:f},e[6]=f,e[7]=h,e[8]=m):m=e[8];let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx(Ux,{}),e[9]=p):p=e[9];let g;e[10]!==s||e[11]!==l||e[12]!==a||e[13]!==o?(g=r.jsx($x,{children:r.jsx(j.Suspense,{fallback:p,children:r.jsx(Fx,{editor:s,queryKey:o,queryFn:a,onSelect:l})})}),e[10]=s,e[11]=l,e[12]=a,e[13]=o,e[14]=g):g=e[14];let _;return e[15]!==m||e[16]!==g?(_=r.jsx(Wh.Provider,{value:m,children:g}),e[15]=m,e[16]=g,e[17]=_):_=e[17],_}function Wx(t){t&&t.scrollIntoView({block:"center",behavior:"smooth"})}const Kx=[{name:"agents",title:"Agents",description:"Mention an agent to hand off work",kind:"category",drillable:!0},{name:"resources",title:"Resources",description:"Attach a resource as context",kind:"category",drillable:!0}],qx=({editor:t,virtualMcpId:e})=>{const s=bt(),{org:i}=xe(),n=Rn(),o=Ae({connectionId:e,orgId:i.id}),a=Ze.virtualMcpResources(e,i.id),[l,c]=j.useState("categories"),d=j.useRef(l);d.current=l;const u=j.useRef(null),h=j.useRef(!1),f=["at-mention",i.id,e??"default",l],m=async({item:_,range:v})=>{if(re("chat_picker_item_selected",{picker:"@",item_kind:_.kind,item_name:_.name}),_.kind!=="category"&&(h.current=!0),_.kind==="category")return c(_.name==="agents"?"agents":"resources"),!1;if(_.kind==="agent"&&_.agentId){or(t,v,{id:_.agentId,name:_.name,metadata:{agentId:_.agentId,title:_.name},char:"@"}),c("categories");return}if(_.kind==="resource"&&_.uri&&o){try{const x=await rh(o,_.uri);or(t,v,{id:_.uri,name:_.uri,metadata:x.contents,char:"@"})}catch(x){console.error("[at-mention] Failed to fetch resource:",x),he.error("Failed to load resource. Please try again.")}c("categories");return}},p=async _=>{const{query:v}=_,x=d.current;if(x==="categories"){if(!v.trim())return Kx;const V=v.toLowerCase(),C=n.filter(w=>w.status==="active"&&(!w.id||!lr(w.id))&&w.id!==e&&(w.title.toLowerCase().includes(V)||w.description?.toLowerCase().includes(V))).map(w=>({name:w.title,title:w.title,description:w.description??void 0,icon:w.icon??null,kind:"agent",agentId:w.id})),S=await(async()=>{if(!o)return[];let w=s.getQueryData(a);return w||(w=await s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4})),(w?.resources??[]).filter(k=>k.uri.toLowerCase().includes(V)||k.name?.toLowerCase().includes(V)||k.description?.toLowerCase().includes(V)).map(k=>({name:k.name??k.uri,title:k.name,description:k.description,kind:"resource",uri:k.uri}))})();return[...C,...S]}if(x==="agents"){let V=n.filter(C=>C.status==="active"&&(!C.id||!lr(C.id))&&C.id!==e);if(v.trim()){const C=v.toLowerCase();V=V.filter(S=>S.title.toLowerCase().includes(C)||S.description?.toLowerCase().includes(C))}return V.map(C=>({name:C.title,title:C.title,description:C.description??void 0,icon:C.icon??null,kind:"agent",agentId:C.id}))}if(!o)return[];let b=s.getQueryData(a);b?s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4}).catch(()=>{}):b=await s.fetchQuery({queryKey:a,queryFn:()=>sr(o),staleTime:6e4});let y=b?.resources??[];if(v.trim()){const V=v.toLowerCase();y=y.filter(C=>C.uri.toLowerCase().includes(V)||C.name?.toLowerCase().includes(V)||C.description?.toLowerCase().includes(V))}return y.map(V=>({name:V.name??V.uri,title:V.name,description:V.description,kind:"resource",uri:V.uri}))},g=_=>{if(_)u.current=Date.now(),h.current=!1,re("chat_picker_opened",{picker:"@"});else{const v=u.current;re("chat_picker_closed",{picker:"@",outcome:h.current?"selected":"dismissed",duration_ms:v?Date.now()-v:null}),u.current=null,c("categories")}};return r.jsx(qh,{editor:t,char:"@",pluginKey:"atDropdownMenu",queryKey:f,queryFn:p,onSelect:m,onOpenChange:g})};function Gx(t,e){const s=$t(t),i=yr(),n=new Map(i.map(c=>[c.id,c])),o=(s?.connections??[]).map(c=>c.connection_id),{data:a}=ji({queryKey:Ze.promptConnectionMap(e,o),queryFn:async()=>{const c={};return await Promise.all(o.map(async d=>{try{const u=await Wm({connectionId:d,orgId:e}),h=await hn(u);for(const f of h.prompts)f.name in c||(c[f.name]=d)}catch{}})),c},staleTime:6e4,enabled:o.length>0}),l=new Map;for(const[c,d]of Object.entries(a??{})){const u=n.get(d);u&&l.set(c,u)}return l}async function Xl(t,e,s,i,n,o){try{const a=await Ea(s,i,o);or(t,e,{id:i,name:ka(i,n),metadata:a.messages,char:"/"})}catch(a){console.error("[slash] Failed to fetch prompt:",a),he.error("Failed to load prompt. Please try again.")}}async function Yx(t,e,s,i){try{const n=await rh(s,i);or(t,e,{id:i,name:i,metadata:n.contents,char:"/"})}catch(n){console.error("[slash] Failed to fetch resource:",n),he.error("Failed to load resource. Please try again.")}}const Xx=({editor:t,virtualMcpId:e})=>{const s=bt(),{org:i}=xe(),n=Ae({connectionId:e,orgId:i.id}),o=Gx(e,i.id),a=j.useRef(o);a.current=o;const l=Ze.virtualMcpPrompts(e,i.id),c=Ze.virtualMcpResources(e,i.id),d=["slash-mention",i.id,e??"default"],[u,h]=j.useState(null),f=j.useRef(null),m=j.useRef(!1),p=async({item:x,range:b})=>{if(re("chat_picker_item_selected",{picker:"/",item_kind:x.kind,item_name:x.name}),m.current=!0,!!n)if(x.kind==="prompt"){if(x.arguments&&x.arguments.length>0){h({range:b,item:x});return}const y=Ls(x._meta);await Xl(t,b,n,x.name,y)}else x.uri&&await Yx(t,b,n,x.uri)},g=async x=>{if(!u||!n)return;const{range:b,item:y}=u,V=Ls(y._meta);await Xl(t,b,n,y.name,V,x),h(null)},_=async x=>{const{query:b}=x;if(!n)return[];const[y,V]=await Promise.all([Jx(s,l,n),Qx(s,c,n)]),C=b.trim().toLowerCase(),S=(y??[]).filter(k=>!C||k.name.toLowerCase().includes(C)||k.title?.toLowerCase().includes(C)||k.description?.toLowerCase().includes(C)).map(k=>({name:k.name,title:k.title,description:k.description,icon:a.current.get(k.name)?.icon??null,kind:"prompt",arguments:k.arguments,_meta:k._meta})),w=(V??[]).filter(k=>!C||k.uri.toLowerCase().includes(C)||k.name?.toLowerCase().includes(C)||k.description?.toLowerCase().includes(C)).map(k=>({name:k.name??k.uri,title:k.name,description:k.description,kind:"resource",uri:k.uri}));return[...S,...w]},v=u?.item.kind==="prompt"?{name:u.item.name,arguments:u.item.arguments,description:u.item.description}:null;return r.jsxs(r.Fragment,{children:[r.jsx(qh,{editor:t,char:"/",pluginKey:"slashDropdownMenu",queryKey:d,queryFn:_,onSelect:p,onOpenChange:x=>{if(x)f.current=Date.now(),m.current=!1,re("chat_picker_opened",{picker:"/"});else{const b=f.current;re("chat_picker_closed",{picker:"/",outcome:m.current?"selected":"dismissed",duration_ms:b?Date.now()-b:null}),f.current=null}}}),r.jsx(Ga,{prompt:v,setPrompt:()=>h(null),onSubmit:g})]})};async function Jx(t,e,s){let i=t.getQueryData(e);return i?t.fetchQuery({queryKey:e,queryFn:()=>hn(s),staleTime:6e4}).catch(()=>{}):i=await t.fetchQuery({queryKey:e,queryFn:()=>hn(s),staleTime:6e4}),i?.prompts??[]}async function Qx(t,e,s){let i=t.getQueryData(e);return i?t.fetchQuery({queryKey:e,queryFn:()=>sr(s),staleTime:6e4}).catch(()=>{}):i=await t.fetchQuery({queryKey:e,queryFn:()=>sr(s),staleTime:6e4}),i?.resources??[]}function Zx(t){return[$m.configure({heading:!1,blockquote:!1,codeBlock:!1,horizontalRule:!1,dropcursor:!1}),B_.configure({placeholder:()=>t.current??"Ask anything, / for prompts, @ for agents & resources...",showOnlyWhenEditable:!1}),bm,ym]}function Gh({tiptapDoc:t,setTiptapDoc:e,disabled:s=!1,enterToSubmit:i=!1,placeholder:n,onSubmit:o,children:a}){const l=j.useRef(o),c=j.useRef(e),d=j.useRef(i),u=j.useRef(n),h=Om({extensions:Zx(u),content:t||"",editorProps:{attributes:{"data-chat-input":"true",class:"prose prose-sm max-w-none focus:outline-none w-full h-full text-[15px] p-[18px]"},handleKeyDown:(f,m)=>m.key==="Enter"&&!m.shiftKey&&d.current?(m.preventDefault(),l.current?.(),!0):!1},onUpdate:({editor:f})=>{c.current(f?.getJSON())}});return j.useEffect(()=>{h?.setEditable(!s)},[h,s]),j.useEffect(()=>{l.current=o},[o]),j.useEffect(()=>{c.current=e},[e]),j.useEffect(()=>{d.current=i},[i]),j.useEffect(()=>{u.current=n},[n]),j.useEffect(()=>{if(h?.isDestroyed)return;const f=JSON.stringify(h?.getJSON()),m=JSON.stringify(t||{type:"doc",content:[]});f!==m&&h.commands.setContent(t||{type:"doc",content:[]})},[h,t]),r.jsx(Bm.Provider,{value:{editor:h},children:a})}function Yh(t){const e=B.c(26),{disabled:s,virtualMcpId:i,showFileUploader:n,selectedModel:o,onUnsupportedFile:a,ref:l,className:c}=t,d=s===void 0?!1:s,u=n===void 0?!1:n,{editor:h}=jn();let f,m;if(e[0]!==h?(f=()=>({focus:()=>{h?.commands.focus()},clear:()=>{h?.commands.clearContent(!0)},appendText:w=>{if(!h)return;const k=h.state.doc.textContent.trim()==="";h.commands.focus("end"),k||h.commands.insertContent(" "),h.commands.insertContent(w)},syncVoiceText:(w,k)=>{if(h&&(h.commands.setContent(w||{type:"doc",content:[]}),k)){h.commands.focus("end");const T=h.state.doc.textContent.trim().length>0;h.commands.insertContent(T?" "+k:k)}},restoreContent:w=>{h&&h.commands.setContent(w||{type:"doc",content:[]})}}),m=[h],e[0]=h,e[1]=f,e[2]=m):(f=e[1],m=e[2]),j.useImperativeHandle(l??null,f,m),!h)return null;const p=d&&"cursor-not-allowed opacity-70",g=d&&"[&_.ProseMirror]:cursor-not-allowed";let _;e[3]!==c||e[4]!==p||e[5]!==g?(_=Y("overflow-y-auto relative flex-1 max-h-[164px] min-h-[20px] w-full flex flex-col",c,"[&_.ProseMirror]:outline-none [&_.ProseMirror]:min-h-[20px] [&_.ProseMirror]:flex-1","[&_.ProseMirror_p.is-editor-empty:first-child::before]:content-[attr(data-placeholder)]","[&_.ProseMirror_p.is-editor-empty:first-child::before]:text-muted-foreground","[&_.ProseMirror_p.is-editor-empty:first-child::before]:opacity-50","[&_.ProseMirror_p.is-editor-empty:first-child::before]:float-left","[&_.ProseMirror_p.is-editor-empty:first-child::before]:pointer-events-none","[&_.ProseMirror_p.is-editor-empty:first-child::before]:h-0",p,g),e[3]=c,e[4]=p,e[5]=g,e[6]=_):_=e[6];let v;e[7]!==h||e[8]!==_?(v=r.jsx(zm,{editor:h,className:_}),e[7]=h,e[8]=_,e[9]=v):v=e[9];const x=i??null;let b;e[10]!==h||e[11]!==x?(b=r.jsx(j.Suspense,{fallback:null,children:r.jsx(Xx,{editor:h,virtualMcpId:x})}),e[10]=h,e[11]=x,e[12]=b):b=e[12];const y=i??null;let V;e[13]!==h||e[14]!==y?(V=r.jsx(j.Suspense,{fallback:null,children:r.jsx(qx,{editor:h,virtualMcpId:y})}),e[13]=h,e[14]=y,e[15]=V):V=e[15];let C;e[16]!==h||e[17]!==a||e[18]!==o||e[19]!==u?(C=u&&o?r.jsx(E_,{editor:h,selectedModel:o,onUnsupportedFile:a}):null,e[16]=h,e[17]=a,e[18]=o,e[19]=u,e[20]=C):C=e[20];let S;return e[21]!==b||e[22]!==V||e[23]!==C||e[24]!==v?(S=r.jsxs(r.Fragment,{children:[v,b,V,C]}),e[21]=b,e[22]=V,e[23]=C,e[24]=v,e[25]=S):S=e[25],S}function Lo(t){const e=B.c(3),[s]=ei();let i;return e[0]!==s.enableSounds||e[1]!==t?(i=()=>{s.enableSounds&&Rp(t.dataUri).catch(o=>{console.warn(`[sound] ${t.name} playback failed:`,o)})},e[0]=s.enableSounds,e[1]=t,e[2]=i):i=e[2],i}const e1={name:"switch-005",dataUri:"data:audio/mpeg;base64,SUQzBAAAAAAAIlRTU0VAAAAOAAADTGF2ZjYyLjMuMTAwAAAAAAAAAAAAAAD/+1DAAAAAAAAAAAAAAAAAAAAAAABJbmZvAAAADwAAABkAABU4ABMTEx0dHR0nJycnMTExMTs7OztERERETk5OTlhYWFhiYmJibGxsbHZ2dnZ/f39/iYmJiZOTk5OdnZ2dp6enp7GxsbG7u7u7xMTExM7Ozs7Y2NjY4uLi4uzs7Oz29vb2/////wAAAABMYXZjNjIuMTEAAAAAAAAAAAAAAAAkBVYAAAAAAAAVOPCP8KUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//tQxAAACEwDXvQRAAG8Ii93HtACUCAABAKCJwfaCEHwfeoEAQdEAYygIHBOCAIAgCAJh9QIOg+D5/ygPh/wfB8DuKAgCHyn9QPh/5SCDv+CEHAQdxOD4B27c39tbckkqYbBAYAN9bNJLB+aXAf5wQAKdzxfbmrVIRQ4xNx3HwnoDmLhfMhgJiiw/HREXNCHqjvHEPEG8QjBYlxQNepJAT0kC8ip6JzSWj1TasoG+iyycbf2Uil1ovf1f/oUtR1qP+s1WSBFKoAAU02BDjMhuP/7UsQEgws8bRpd8YABJYPeBf9wCGXTGxBYcw5AJFMFMAmQQAhGAxgLBgHIAMYAAALhgAchipbe/91aU1VV4zcZj1Vf1XgYCIMBNrsBAIGs9/Ue4i/xFPeqCqwViI9/UeLf///rOngdA3OPHFjmOBv+EQnGahgaZxVplmkAH5JadDTQlNCEuGNiWYbCCONWdUJg6HXNazFdu1T+VgaEpOP70exv7f2/4b/yH//2/4cqCX/zWRUrIw+IPNMNlDnjAXQas/I4AzmYifA0tMSCgQDF//tSxBCDSzzi3k/sQwEyCtjJ/rBZAk+Uqj1YhA5YMCAAMwgOUchTkK7OR7LbMl0W1H6SvzG0Q2ZzfKUhnmTobv9DNhS1v7P8h//8Gv8gTRt1jReZ7YEjmMQg9hhwwMycHooasFmZyjcZGBKJD+IwbMCQQLoi+IQXCcIoydKoilI2MWFS5uJdDEu2taRrYI2ZSqKY50pJLv2NfjUAAuQAMfqVQ/T3PDQgMJMeEZ45hJzY6MNoFMxqTj1zNGQKJjAxEsSCBgQJBSIL0mcKYQJfVAn/+1LEGwLKlEKrD3MiYcuMkVa/wABB8Vh6M1q1epbvXwWBURhkyEhWZ/////////////9gjZ/Wt4w+4MNMCpE4TBYQl4w1IHvMDdA2zBngBMwc8COMDhCpDAfgOAAgrBgNYU+YC0FBGAkAMpgWoSCYAGESGBGAKBgXgJOdiOJmMCmNwCYNDJhYRPykRCJhTBnEUzlsjv4UNLj/z97n3Mv/7z1nZqyitYAZIqErIwMwJAqEw0GAAMFptJMaqFwB8CQIWlhuhuDAwNjfuwrQFAYXCf/7UsQVAA+9PTP42gYRdiIu9zBwAPbFUCi0DAhgNcS+7cDwVgM05A9bUDeuQMyE/u3CygVISgZhpIau/9PhdQG2C9DpxZZJmn/dn/Psmt0EFm////l84ThUTopE4VD/9JkubOGasTvN30C20G21qgUCkVCoUCgPMywrPCGly27V5q5t24vl/8jSlSAPCxzNseNCw3oh3NGBu4BZJ5hv7DRSfR/+eWG7nA8IKh2Olv5iz3q5m3//Joxo3JqNyYkSuGt/k6D4DeoBOHmHdl0dkZYA//tSxAUAC4B1Z/2DADEcA17Z/uhI4Yoik/TrZo+ww7UtmpW4LDWu2IacoJKJJeTSM+ZmAYBEiU+ZnnAwCn1VVVV6JUJQVnioKhrgqdKgqGpUFeCp0sDR3ztQNREDRUFioKuxKCpYGQBlRIBk+aLwb8KblGQVDdphPYTUdBOGbVpAaTF6ZdjEV0iRUZRCYkA4oUQDx5zqDugtXvza/7fuNNvfZ+j9v+T/2f//J/4cAAOTpE5K4zksR9MfIB+TDcQTI4gNs1XKAzEFUrGkxABYEBb/+1LEEYNKrEjgT/TCwYYVmUX+mHoKgWhKU5Eiw9SFIRmppw+3fYo4siPhUFeexM8KgIO6wVuPDDy01qeRaVbw357//y3+o8M0pBNlNLCGBzGKwyYw2IIFOE1WNTjRM6x8MlA1AxDhUHTAkEiyKpnbWrLcaOBotBUKbk1pypcWDAIK00AhKLGkUco6q9VWvM53mcaq3tVa8zjTM/tX//EDP//////////XAAmrwAAPoKwcw0ShDCZD/BQlhzinxQdorsOuXTEIC01ZkJyu4k/qPP/7UsQUAEjkrrkvZaPBIRXUoe5QObfMhYKX9RVgTPqCSCaSCaSC0XVdV1f/////6IAlguuAJSiDRNloNBsZg+0+Ts8MMCn81WUTRAlIi+GHECD0y8AWDIqswYsxGOSKVV7MqOni8tkVOip0fZX/////9HrMCbAz2EHGS4GKAAiRAAAYAcDdKd4G6Z/nwYgJ0ZAIgZyC8aPAs/iPBhwMpWDQNARltNS5Y61v//9i8Yl4SkFkIGTkAc0UBrIYLPA4MYBEy+YLMRuY4nhTC3hZA68H//tSxCoAyQC6mY6CkWDJBIsBz/QUrgNmahSzcrYw0/HhfnMAZBojDsgTFkDR5MDkG/DZEbk2FCmowqdqv2TYABiJwqqYjaQRGZ1URZ1DhSsdiHX/GBu0QpzIBNSaLqZ0ARkwFARxMrpt/Eh47mbQAhhU6sisFUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LESoHHJCRaj/dmYAIAQAAQAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsSLg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsShg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",duration:.609,format:"mp3",license:"CC0",author:"Kenney"},t1=[{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/perplexity.png",name:"Perplexity"},{src:"/connections/github.png",name:"GitHub"}];function s1(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center -space-x-1.5",children:t1.map(i1)}),t[0]=e):e=t[0],e}function i1(t){return r.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-1 ring-border object-cover bg-white"},t.name)}function r1(t){const e=B.c(129),{disabled:s,onOpenConnections:i,virtualMcpId:n}=t,[o,a]=j.useState(!1),l=Lo(e1),{org:c}=xe(),{editor:d}=jn();let u;e[0]!==c.id||e[1]!==n?(u={connectionId:n,orgId:c.id},e[0]=c.id,e[1]=n,e[2]=u):u=e[2];const h=Ae(u);let f;e[3]!==c.id||e[4]!==n?(f=Ze.virtualMcpPrompts(n,c.id),e[3]=c.id,e[4]=n,e[5]=f):f=e[5];const m=f;let p;e[6]!==h?(p=()=>hn(h),e[6]=h,e[7]=p):p=e[7];const g=o&&!!h;let _;e[8]!==m||e[9]!==p||e[10]!==g?(_={queryKey:m,queryFn:p,staleTime:6e4,enabled:g},e[8]=m,e[9]=p,e[10]=g,e[11]=_):_=e[11];const{data:v,isLoading:x}=ji(_);let b;e[12]!==v?.prompts?(b=v?.prompts??[],e[12]=v?.prompts,e[13]=b):b=e[13];const y=b,[V,C]=j.useState(null),{credentialId:S,imageModel:w,setImageModel:k,deepResearchModel:T,setDeepResearchModel:M,chatMode:I,setChatMode:E,simpleModeEnabled:N}=$s(),A=I==="plan",[D,L]=j.useState(!1),[R,P]=j.useState(!1),{models:O,isLoading:z}=eh(D||R?S??void 0:void 0);let $,q,F,W,H,U,X,K,G,ie,te,J,ae;if(e[14]!==V||e[15]!==O||e[16]!==I||e[17]!==h||e[18]!==T||e[19]!==s||e[20]!==d||e[21]!==w||e[22]!==D||e[23]!==z||e[24]!==A||e[25]!==i||e[26]!==o||e[27]!==l||e[28]!==R||e[29]!==E||e[30]!==M||e[31]!==k||e[32]!==N){const ee=O.filter(o1),se=O.filter(n1);let Ve;e[46]!==I||e[47]!==A||e[48]!==l||e[49]!==E?(Ve=()=>{l();const _e=A?"default":"plan";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[46]=I,e[47]=A,e[48]=l,e[49]=E,e[50]=Ve):Ve=e[50];const ze=Ve;let Fe;e[51]!==i?(Fe=()=>{i(),a(!1)},e[51]=i,e[52]=Fe):Fe=e[52],F=Fe;let ft;e[53]!==h||e[54]!==d?(ft=async(_e,Vs)=>{if(!d||!h)return;const Di=Ls(_e._meta),Pi={from:d.state.selection.from,to:d.state.selection.to};try{const wf=await Ea(h,_e.name,Vs);or(d,Pi,{id:_e.name,name:ka(_e.name,Di),metadata:wf.messages,char:"/"})}catch{he.error("Failed to load prompt. Please try again.")}},e[53]=h,e[54]=d,e[55]=ft):ft=e[55];const He=ft;let tt;e[56]!==He?(tt=async _e=>{a(!1);const Vs=!!(_e.arguments&&_e.arguments.length>0);if(re("chat_prompt_inserted",{prompt_name:_e.name,with_arguments:Vs}),Vs){C(_e);return}await He(_e)},e[56]=He,e[57]=tt):tt=e[57],H=tt;let ht;e[58]!==V||e[59]!==He?(ht=async _e=>{V&&(await He(V,_e),C(null))},e[58]=V,e[59]=He,e[60]=ht):ht=e[60],W=ht;let me;e[61]!==l||e[62]!==k?(me=_e=>{l(),re("chat_image_model_selected",{model_id:_e.modelId,model_title:_e.title,provider:_e.providerId??null}),k(_e),a(!1)},e[61]=l,e[62]=k,e[63]=me):me=e[63];const ke=me;let st;e[64]!==l||e[65]!==M?(st=_e=>{l(),re("chat_search_model_selected",{model_id:_e.modelId,model_title:_e.title,provider:_e.providerId??null}),M(_e),a(!1)},e[64]=l,e[65]=M,e[66]=st):st=e[66];const zt=st;let De;e[67]!==I||e[68]!==l||e[69]!==E?(De=()=>{l();const _e=I==="gen-image"?"default":"gen-image";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[67]=I,e[68]=l,e[69]=E,e[70]=De):De=e[70];const Yt=De;let At;e[71]!==I||e[72]!==l||e[73]!==E?(At=()=>{l();const _e=I==="web-search"?"default":"web-search";re("chat_mode_changed",{from_mode:I,to_mode:_e,source:"tools_popover"}),E(_e),a(!1)},e[71]=I,e[72]=l,e[73]=E,e[74]=At):At=e[74];const Et=At,Ct=I==="gen-image",ws=I==="web-search";q=cs,K=o,e[75]!==I||e[76]!==o?(G=_e=>{_e&&!o&&re("chat_tools_popover_opened",{chat_mode:I}),a(_e)},e[75]=I,e[76]=o,e[77]=G):G=e[77];let Rr,Mr;e[78]===Symbol.for("react.memo_cache_sentinel")?(Rr=r.jsx(zd,{size:14}),Mr=r.jsx("span",{className:"hidden sm:inline",children:"Tools"}),e[78]=Rr,e[79]=Mr):(Rr=e[78],Mr=e[79]),e[80]!==s?(ie=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"ghost",size:"default",disabled:s,className:"text-muted-foreground hover:text-foreground",children:[Rr,Mr]})}),e[80]=s,e[81]=ie):ie=e[81],$=hs,te="start",J="w-52 p-1.5";const Hn=A&&"text-violet-600 dark:text-violet-400";let li;e[82]!==Hn?(li=Y(Hn),e[82]=Hn,e[83]=li):li=e[83];const Wn=A&&"text-violet-500";let ci;e[84]!==Wn?(ci=Y(Wn),e[84]=Wn,e[85]=ci):ci=e[85];let di;e[86]!==ci?(di=r.jsx(Yd,{size:16,className:ci}),e[86]=ci,e[87]=di):di=e[87];let Dr;e[88]===Symbol.for("react.memo_cache_sentinel")?(Dr=r.jsx("span",{className:"flex-1",children:"Plan mode"}),e[88]=Dr):Dr=e[88];let hi;e[89]!==A?(hi=A&&r.jsx("span",{className:"text-xs text-violet-500 font-medium",children:"On"}),e[89]=A,e[90]=hi):hi=e[90],e[91]!==ze||e[92]!==li||e[93]!==di||e[94]!==hi?(ae=r.jsxs(Qe,{onClick:ze,className:li,children:[di,Dr,hi]}),e[91]=ze,e[92]=li,e[93]=di,e[94]=hi,e[95]=ae):ae=e[95],U=N?r.jsxs(Qe,{onClick:Yt,className:Y(Ct&&"text-pink-600 dark:text-pink-400"),children:[r.jsx(Io,{size:16,className:Y(Ct&&"text-pink-500")}),r.jsx("span",{className:"flex-1",children:"Create image"}),Ct&&r.jsx("span",{className:"text-xs text-pink-500 font-medium",children:"On"})]}):r.jsxs(Qr,{open:D,onOpenChange:L,children:[r.jsxs("div",{className:"flex items-center rounded-lg",children:[r.jsxs(Qe,{onClick:Yt,disabled:!w,className:Y("flex-1 rounded-r-none pr-1",Ct&&"text-pink-600 dark:text-pink-400"),children:[r.jsx(Io,{size:16,className:Y(Ct&&"text-pink-500")}),r.jsx("span",{className:"flex-1",children:"Create image"}),Ct&&r.jsx("span",{className:"text-xs text-pink-500 font-medium",children:"On"})]}),r.jsx(pl,{className:Y("flex items-center justify-center rounded-r-lg rounded-l-none px-1.5 py-1.5 text-muted-foreground outline-hidden select-none","hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground"),children:r.jsx(cr,{size:14})})]}),r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:z?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading models…"]}):ee.length===0?r.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:"No image models available"}):ee.map(_e=>{const Vs=w?.modelId===_e.modelId,Di=Cl(_e),Pi=_e.title.includes(": ")?_e.title.split(": ").slice(1).join(": "):_e.title;return r.jsxs(Qe,{onClick:()=>ke(_e),className:"flex items-center gap-2",children:[r.jsx("img",{src:Di,alt:"",className:"size-4 shrink-0 rounded-sm dark:bg-white dark:p-px"}),r.jsx("span",{className:"flex-1 text-sm truncate",children:Pi}),Vs&&r.jsx(Mt,{size:14,className:"text-pink-500 shrink-0"})]},_e.modelId)})})]}),X=N?r.jsxs(Qe,{onClick:Et,className:Y(ws&&"text-blue-600 dark:text-blue-400"),children:[r.jsx(vi,{size:16,className:Y(ws&&"text-blue-500")}),r.jsx("span",{className:"flex-1",children:"Web search"}),ws&&r.jsx("span",{className:"text-xs text-blue-500 font-medium",children:"On"})]}):T&&r.jsxs(Qr,{open:R,onOpenChange:P,children:[r.jsxs("div",{className:"flex items-center rounded-lg",children:[r.jsxs(Qe,{onClick:Et,className:Y("flex-1 rounded-r-none pr-1",ws&&"text-blue-600 dark:text-blue-400"),children:[r.jsx(vi,{size:16,className:Y(ws&&"text-blue-500")}),r.jsx("span",{className:"flex-1",children:"Web search"}),ws&&r.jsx("span",{className:"text-xs text-blue-500 font-medium",children:"On"})]}),r.jsx(pl,{className:Y("flex items-center justify-center rounded-r-lg rounded-l-none px-1.5 py-1.5 text-muted-foreground outline-hidden select-none","hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground"),children:r.jsx(cr,{size:14})})]}),r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:z?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading models…"]}):se.map(_e=>{const Vs=T?.modelId===_e.modelId,Di=Cl(_e),Pi=_e.title.includes(": ")?_e.title.split(": ").slice(1).join(": "):_e.title;return r.jsxs(Qe,{onClick:()=>zt(_e),className:"flex items-center gap-2",children:[r.jsx("img",{src:Di,alt:"",className:"size-4 shrink-0 rounded-sm dark:bg-white dark:p-px"}),r.jsx("span",{className:"flex-1 text-sm truncate",children:Pi}),Vs&&r.jsx(Mt,{size:14,className:"text-blue-500 shrink-0"})]},_e.modelId)})})]}),e[14]=V,e[15]=O,e[16]=I,e[17]=h,e[18]=T,e[19]=s,e[20]=d,e[21]=w,e[22]=D,e[23]=z,e[24]=A,e[25]=i,e[26]=o,e[27]=l,e[28]=R,e[29]=E,e[30]=M,e[31]=k,e[32]=N,e[33]=$,e[34]=q,e[35]=F,e[36]=W,e[37]=H,e[38]=U,e[39]=X,e[40]=K,e[41]=G,e[42]=ie,e[43]=te,e[44]=J,e[45]=ae}else $=e[33],q=e[34],F=e[35],W=e[36],H=e[37],U=e[38],X=e[39],K=e[40],G=e[41],ie=e[42],te=e[43],J=e[44],ae=e[45];let Z;e[96]===Symbol.for("react.memo_cache_sentinel")?(Z=r.jsxs(Pd,{className:"gap-2",children:[r.jsx("span",{className:"flex size-4 items-center justify-center text-base font-medium text-muted-foreground",children:"/"}),r.jsx("span",{className:"flex-1",children:"Prompts"})]}),e[96]=Z):Z=e[96];let de;e[97]!==H||e[98]!==x||e[99]!==y?(de=x?r.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[r.jsx(Ne,{size:14,className:"animate-spin"}),"Loading prompts…"]}):y.length===0?r.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:"No prompts available"}):y.map(ee=>r.jsxs(Qe,{onClick:()=>H(ee),className:"flex flex-col items-start gap-0.5",children:[r.jsx("span",{className:"font-medium text-sm capitalize",children:ee.title||kn(ee.name,Ls(ee._meta))}),ee.description&&r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:ee.description})]},ee.name)),e[97]=H,e[98]=x,e[99]=y,e[100]=de):de=e[100];let fe;e[101]!==de?(fe=r.jsxs(Qr,{children:[Z,r.jsx(Zr,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:de})]}),e[101]=de,e[102]=fe):fe=e[102];let ye,ge;e[103]===Symbol.for("react.memo_cache_sentinel")?(ye=r.jsx(_p,{size:16}),ge=r.jsx("span",{className:"flex-1",children:"Connections"}),e[103]=ye,e[104]=ge):(ye=e[103],ge=e[104]);let ce;e[105]===Symbol.for("react.memo_cache_sentinel")?(ce=r.jsx(j.Suspense,{children:r.jsx(s1,{})}),e[105]=ce):ce=e[105];let ue;e[106]!==F?(ue=r.jsxs(Qe,{onClick:F,children:[ye,ge,ce]}),e[106]=F,e[107]=ue):ue=e[107];let be;e[108]!==$||e[109]!==U||e[110]!==X||e[111]!==fe||e[112]!==ue||e[113]!==te||e[114]!==J||e[115]!==ae?(be=r.jsxs($,{align:te,className:J,children:[ae,U,X,fe,ue]}),e[108]=$,e[109]=U,e[110]=X,e[111]=fe,e[112]=ue,e[113]=te,e[114]=J,e[115]=ae,e[116]=be):be=e[116];let pe;e[117]!==q||e[118]!==K||e[119]!==G||e[120]!==ie||e[121]!==be?(pe=r.jsxs(q,{open:K,onOpenChange:G,children:[ie,be]}),e[117]=q,e[118]=K,e[119]=G,e[120]=ie,e[121]=be,e[122]=pe):pe=e[122];let Ce;e[123]!==V||e[124]!==W?(Ce=r.jsx(Ga,{prompt:V,setPrompt:C,onSubmit:W}),e[123]=V,e[124]=W,e[125]=Ce):Ce=e[125];let Ie;return e[126]!==pe||e[127]!==Ce?(Ie=r.jsxs(r.Fragment,{children:[pe,Ce]}),e[126]=pe,e[127]=Ce,e[128]=Ie):Ie=e[128],Ie}function n1(t){const e=t.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return e.includes("sonar")||e.includes("deepresearch")}function o1(t){return t.capabilities?.includes("image")}function a1({open:t,onOpenChange:e,onCreated:s}){const{org:i}=xe(),{data:n}=dt.useSession(),{stdioEnabled:o}=Of(),a=ms(),l=Mn(),c=ah(),u=lh(c,"").items,h=Ai({resolver:gr(Dp),defaultValues:{title:"",description:null,icon:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]}}),f=h.watch("ui_type"),m=h.watch("connection_url"),p=h.watch("npx_package"),g=Lr({uiType:f,connectionUrl:m??"",npxPackage:p??""})??kl({uiType:f,connectionUrl:m??"",registryItems:u}),_=S=>{const w=S.trim();if(!w)return;const k=!!h.formState.dirtyFields.title,T=!!h.formState.dirtyFields.description,M=!!h.formState.dirtyFields.env_vars,I=N=>{if(N&&(!k&&!h.getValues("title").trim()&&N.title&&h.setValue("title",N.title,{shouldDirty:!1}),!T&&!(h.getValues("description")??"").trim()&&N.description&&h.setValue("description",N.description,{shouldDirty:!1}),!M&&N.envVarKeys?.length)){const A=h.getValues("env_vars")??[],D=new Set(A.map(R=>R.key)),L=N.envVarKeys.filter(R=>!D.has(R));L.length>0&&h.setValue("env_vars",[...A,...L.map(R=>({key:R,value:""}))],{shouldDirty:!0})}},E=Lp(w);if(E&&o){h.setValue("ui_type","NPX",{shouldDirty:!0}),h.setValue("npx_package",E.packageName,{shouldDirty:!0}),h.setValue("connection_url","",{shouldDirty:!0}),h.setValue("connection_token",null,{shouldDirty:!0}),I(Lr({uiType:"NPX",npxPackage:E.packageName}));return}if(w.startsWith("http://")||w.startsWith("https://")){const N=f==="HTTP"||f==="SSE"||f==="Websocket"?f:"HTTP";h.setValue("ui_type",N,{shouldDirty:!0}),h.setValue("connection_url",w,{shouldDirty:!0}),I(Lr({uiType:N,connectionUrl:w})??kl({uiType:N,connectionUrl:w,registryItems:u}));return}f==="NPX"&&I(Lr({uiType:"NPX",npxPackage:w}))},v=S=>{S||h.reset(),e(S)},x=async S=>{let w,k=null,T=null,M=null;S.ui_type==="NPX"?(w="STDIO",k="",M=Op(S.npx_package||"",S.env_vars||[])):S.ui_type==="STDIO"?(w="STDIO",k="",M=Bp(S.stdio_command||"",S.stdio_args||"",S.stdio_cwd,S.env_vars||[])):(w=S.ui_type,k=S.connection_url||"",T=S.connection_token||null);const I=dh("conn");try{await l.create.mutateAsync({id:I,title:S.title,description:S.description||null,connection_type:w,connection_url:k,connection_token:T,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:n?.user?.id||"system",organization_id:i.id,icon:S.icon??null,app_name:null,app_id:null,connection_headers:M,oauth_config:null,configuration_state:null,metadata:null,tools:null,bindings:null,status:"inactive"}),h.reset(),e(!1),s?.(I)}catch{he.error("Failed to create connection")}},b="Create Connection",y="Create a custom connection in your organization. Fill in the details below.",V=h.formState.isSubmitting?"Saving...":"Create Connection",C=r.jsxs("div",{className:"grid gap-4",children:[r.jsx(gt,{control:h.control,name:"ui_type",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Type *"}),r.jsxs(Rs,{value:S.value,onValueChange:S.onChange,children:[r.jsx(xt,{children:r.jsx(Ms,{children:r.jsx(Ds,{})})}),r.jsxs(Ts,{children:[r.jsx(Nt,{value:"HTTP",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"HTTP"]})}),r.jsx(Nt,{value:"SSE",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"SSE"]})}),r.jsx(Nt,{value:"Websocket",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(vi,{className:"w-4 h-4"}),"Websocket"]})}),o&&r.jsxs(r.Fragment,{children:[r.jsx(Nt,{value:"NPX",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(en,{className:"w-4 h-4"}),"NPX Package"]})}),r.jsx(Nt,{value:"STDIO",children:r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(Ia,{className:"w-4 h-4"}),"Custom Command"]})})]})]})]}),r.jsx(vt,{})]})}),f==="NPX"&&r.jsx(gt,{control:h.control,name:"npx_package",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"NPM Package *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"@perplexity-ai/mcp-server",...S,value:S.value??"",onPaste:w=>{const k=w.clipboardData.getData("text");k&&(w.preventDefault(),h.setValue("npx_package",k.trim(),{shouldDirty:!0}),_(k))},onBlur:w=>{_(w.target.value),S.onBlur()}})}),r.jsx(vt,{})]})}),f==="STDIO"&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"grid grid-cols-2 gap-4 items-start",children:[r.jsx(gt,{control:h.control,name:"stdio_command",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Command *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"node, bun, python...",...S,value:S.value??""})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"stdio_args",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Arguments"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"arg1 arg2 --flag value",...S,value:S.value??""})}),r.jsx(vt,{})]})})]}),r.jsx(gt,{control:h.control,name:"stdio_cwd",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Working Directory"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"/path/to/project (optional)",...S,value:S.value??""})}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Directory where the command will be executed"}),r.jsx(vt,{})]})})]}),(f==="NPX"||f==="STDIO")&&r.jsx(gt,{control:h.control,name:"env_vars",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Environment Variables"}),r.jsx(xt,{children:r.jsx(Pp,{value:S.value??[],onChange:S.onChange})}),r.jsx(vt,{})]})}),f!=="NPX"&&f!=="STDIO"&&r.jsxs(r.Fragment,{children:[r.jsx(gt,{control:h.control,name:"connection_url",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"URL *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"https://example.com/mcp",...S,value:S.value??"",onPaste:w=>{const k=w.clipboardData.getData("text");k&&(w.preventDefault(),h.setValue("connection_url",k.trim(),{shouldDirty:!0}),_(k))},onBlur:w=>{_(w.target.value),S.onBlur()}})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"connection_token",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:g?.token?.label??"Token (optional)"}),r.jsx(xt,{children:r.jsx(at,{type:"password",placeholder:g?.token?.placeholder??"Bearer token or API key",className:"ph-no-capture",...S,value:S.value??""})}),g?.token?.helperText&&r.jsxs("p",{className:"text-xs text-muted-foreground",children:[g.token.helperText,g.id==="github"&&r.jsxs(r.Fragment,{children:[" ","·"," ",r.jsx("a",{className:"text-foreground underline underline-offset-4 hover:text-foreground/80",href:"https://github.com/settings/personal-access-tokens",target:"_blank",rel:"noreferrer",children:"Open GitHub PAT settings"})]})]}),r.jsx(vt,{})]})})]}),r.jsx(gt,{control:h.control,name:"title",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Name *"}),r.jsx(xt,{children:r.jsx(at,{placeholder:"My Connection",...S})}),r.jsx(vt,{})]})}),r.jsx(gt,{control:h.control,name:"description",render:({field:S})=>r.jsxs(_t,{children:[r.jsx(Ht,{children:"Description"}),r.jsx(xt,{children:r.jsx(To,{placeholder:"A brief description of this connection",rows:3,...S,value:S.value??""})}),r.jsx(vt,{})]})})]});return a?r.jsx(ri,{open:t,onOpenChange:v,children:r.jsxs(ii,{className:"max-h-[90vh]",children:[r.jsx(An,{className:"pb-2",children:r.jsxs("div",{className:"flex items-start justify-between gap-4",children:[r.jsxs("div",{className:"flex-1 text-left",children:[r.jsx(si,{children:b}),r.jsx(Fm,{className:"mt-1",children:y})]}),r.jsx(Um,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"shrink-0 -mt-1",children:r.jsx(Os,{size:16})})})]})}),r.jsx(yi,{...h,children:r.jsxs("form",{onSubmit:h.handleSubmit(x),children:[r.jsx("div",{className:"overflow-y-auto px-4 pb-4",children:C}),r.jsx(Hm,{children:r.jsx(oe,{type:"submit",disabled:h.formState.isSubmitting,className:"w-full",children:V})})]})})]})}):r.jsx(Bt,{open:t,onOpenChange:v,children:r.jsxs(Ot,{className:"sm:max-w-[525px]",children:[r.jsxs(Gt,{children:[r.jsx(qt,{children:b}),r.jsx(Nn,{children:y})]}),r.jsx(yi,{...h,children:r.jsxs("form",{onSubmit:h.handleSubmit(x),children:[r.jsx("div",{className:"py-4",children:C}),r.jsxs(Na,{children:[r.jsx(oe,{type:"button",variant:"outline",onClick:()=>v(!1),children:"Cancel"}),r.jsx(oe,{type:"submit",disabled:h.formState.isSubmitting,className:"min-w-40",children:V})]})]})})]})})}function l1(t){const e=B.c(79),{mode:s,agentId:i,addedConnectionIds:n,onAdd:o,onCloneAndAdd:a,onConnectAndAdd:l,connectingItemId:c,search:d,onCreateConnection:u,onBrowseNavigate:h,defaultTab:f}=t,m=s===void 0?"add":s,p=f===void 0?"connected":f,{org:g}=xe(),_=j.useDeferredValue(d),v=d!==_;let x;e[0]!==_?(x=_.toLowerCase(),e[0]=_,e[1]=x):x=e[1];const b=x;let y;e[2]!==p?(y=me=>me??p,e[2]=p,e[3]=y):y=e[3];const[V,C]=Va(Ca.connectionsTab(g.slug)+(p==="all"?":home-modal":":agent-modal"),y);let S;e[4]!==V||e[5]!==C?(S=me=>{me!==V&&re("connections_dialog_tab_changed",{to_tab:me}),C(me)},e[4]=V,e[5]=C,e[6]=S):S=e[6];const w=S;let k;e[7]!==g.id?(k={connectionId:yt,orgId:g.id},e[7]=g.id,e[8]=k):k=e[8];const T=Ae(k);let M,I,E;if(e[9]!==T||e[10]!==_||e[11]!==g.id){E=_?.trim()?{operator:"or",conditions:[{field:["title"],operator:"contains",value:_.trim()},{field:["description"],operator:"contains",value:_.trim()}]}:void 0;const me={...E&&{where:E},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:0},ke=JSON.stringify(me);I=$p,M=Ze.collectionListInfinite(T,g.id,"","CONNECTIONS",ke),e[9]=T,e[10]=_,e[11]=g.id,e[12]=M,e[13]=I,e[14]=E}else M=e[12],I=e[13],E=e[14];let N;e[15]!==T||e[16]!==E?(N=async me=>{const{pageParam:ke}=me,st=ke===void 0?0:ke;return(await T.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{...E&&{where:E},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:st}})).structuredContent},e[15]=T,e[16]=E,e[17]=N):N=e[17];let A;e[18]!==M||e[19]!==N?(A={queryKey:M,queryFn:N,initialPageParam:0,getNextPageParam:m1,staleTime:3e4},e[18]=M,e[19]=N,e[20]=A):A=e[20];const{data:D,fetchNextPage:L,hasNextPage:R,isFetchingNextPage:P}=I(A),O=D?.pages.flatMap(f1)??[],z=Mp(O),$=new Set(O.filter(u1).map(h1)),q=ah(),F=lh(q,_),W=jl(F.loadMore,F.hasMore,F.isLoadingMore),H=jl(L,R??!1,P),U=V==="all"||!!b,X=U?F.items.filter(me=>{const ke=zp(me);return!(ke&&$.has(ke))}):[],K=X.filter(d1),G=X.filter(c1);let ie;e[21]!==n?(ie=me=>me.some(ke=>n.has(ke.id)),e[21]=n,e[22]=ie):ie=e[22];const te=ie;let J;e[23]!==n||e[24]!==i||e[25]!==c||e[26]!==te||e[27]!==m||e[28]!==o||e[29]!==h||e[30]!==a?(J=(me,ke,st,zt,De)=>{const Yt=te(De),At=De.find(Ct=>!n.has(Ct.id)),Et=De[0];if(m==="browse"){const Ct=nh(Et);return r.jsx(Xn,{connection:{title:ke,icon:st,description:De.length>1?`${De.length} instances`:zt??void 0},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsxs(Nl,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[r.jsx(Mt,{size:11})," Connected"]}),onClick:()=>{re("connection_browse_clicked",{app_name:Et.app_name??null,connection_id:Et.id,instances_count:De.length}),h?.(Ct)}},me)}return r.jsx(Xn,{connection:{title:ke,icon:st,description:zt},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsxs("div",{className:"flex items-center gap-1.5",children:[Yt&&r.jsxs(Nl,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[r.jsx(Mt,{size:11})," Added"]}),r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:c!==null,onClick:Ct=>{Ct.stopPropagation(),At?(re("connection_add_clicked",{action:"use_existing",app_name:Et.app_name??null,connection_id:At.id}),i&&re("agent_connection_attached",{agent_id:i,connection_id:At.id,app_name:Et.app_name??null,mode:"existing"}),o(At.id)):(re("connection_add_clicked",{action:"clone",app_name:Et.app_name??null,base_connection_id:Et.id}),a(Et))},children:"Add"})]})},me)},e[23]=n,e[24]=i,e[25]=c,e[26]=te,e[27]=m,e[28]=o,e[29]=h,e[30]=a,e[31]=J):J=e[31];const ae=J;let Z;e[32]!==c||e[33]!==m||e[34]!==l?(Z=me=>{const ke=me._meta?.["mcp.mesh"],st=ke?.friendlyName||ke?.friendly_name||me.server?.title||me.title||me.server?.name||me.name||me.id||"",zt=me.server?.description||me.description||null,De=me.server?.icons?.[0]?.src||Up(me.server?.repository)||null;return r.jsx(Xn,{connection:{title:st,description:zt,icon:De},fallbackIcon:r.jsx(en,{}),headerActionsAlwaysVisible:!0,headerActions:r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:c!==null,onClick:Yt=>{Yt.stopPropagation(),re("connection_add_clicked",{action:"connect_new",registry_item_id:me.id,app_name:me._meta?.["mcp.mesh"]?.friendlyName||me.server?.name||me.name||null}),l(me)},children:c===me.id?r.jsx(Ne,{size:14,className:"animate-spin"}):m==="browse"?"Connect":"Add"})},`catalog-${me.id}`)},e[32]=c,e[33]=m,e[34]=l,e[35]=Z):Z=e[35];const de=Z;let fe;e[36]!==V||e[37]!==w||e[38]!==u||e[39]!==b?(fe=!b&&r.jsxs("div",{className:"flex items-center justify-between px-5 py-3 border-b border-border shrink-0",children:[r.jsx(ch,{tabs:[{id:"all",label:"All"},{id:"connected",label:"Connected"}],activeTab:V,onTabChange:me=>w(me)}),r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 px-2 text-sm",onClick:()=>{re("connections_dialog_custom_clicked"),u()},children:[r.jsx(Dt,{size:12}),"Custom Connection"]})]}),e[36]=V,e[37]=w,e[38]=u,e[39]=b,e[40]=fe):fe=e[40];const ye=v&&"opacity-50 pointer-events-none";let ge;e[41]!==ye?(ge=Y("flex-1 overflow-auto p-5 transition-opacity duration-150",ye),e[41]=ye,e[42]=ge):ge=e[42];const ce="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4";let ue;e[43]!==ae?(ue=me=>{if(me.type==="group")return ae(me.key,me.title,me.icon,null,me.connections);const ke=me.connection;return ae(ke.id,ke.title,ke.icon,ke.description??null,[ke])},e[43]=ae,e[44]=ue):ue=e[44];const be=z.map(ue);let pe;e[45]!==H?(pe=r.jsx("div",{ref:H,className:"col-span-full h-1"}),e[45]=H,e[46]=pe):pe=e[46];let Ce;e[47]!==P?(Ce=P&&r.jsx("div",{className:"col-span-full flex justify-center py-6",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),e[47]=P,e[48]=Ce):Ce=e[48];const Ie=U&&K.length>0&&r.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[r.jsx(xp,{size:13,className:"text-muted-foreground shrink-0"}),r.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"Verified"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),ee=U&&K.map(de),se=U&&G.length>0&&r.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[r.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"All connections"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),Ve=U&&G.map(de);let ze;e[49]!==W||e[50]!==q||e[51]!==U?(ze=U&&q.length>0&&r.jsx("div",{ref:W,className:"col-span-full h-1"}),e[49]=W,e[50]=q,e[51]=U,e[52]=ze):ze=e[52];let Fe;e[53]!==F.isLoadingMore||e[54]!==U?(Fe=U&&F.isLoadingMore&&r.jsx("div",{className:"col-span-full flex justify-center py-6",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),e[53]=F.isLoadingMore,e[54]=U,e[55]=Fe):Fe=e[55];let ft;e[56]!==be||e[57]!==pe||e[58]!==Ce||e[59]!==Ie||e[60]!==ee||e[61]!==se||e[62]!==Ve||e[63]!==ze||e[64]!==Fe?(ft=r.jsxs("div",{className:ce,children:[be,pe,Ce,Ie,ee,se,Ve,ze,Fe]}),e[56]=be,e[57]=pe,e[58]=Ce,e[59]=Ie,e[60]=ee,e[61]=se,e[62]=Ve,e[63]=ze,e[64]=Fe,e[65]=ft):ft=e[65];let He;e[66]!==V||e[67]!==z.length||e[68]!==G||e[69]!==d||e[70]!==K?(He=z.length===0&&K.length===0&&G.length===0&&r.jsx("div",{className:"flex items-center justify-center h-48 text-sm text-muted-foreground",children:d?`No connections match "${d}"`:V==="connected"?"No connections yet":"No connections available"}),e[66]=V,e[67]=z.length,e[68]=G,e[69]=d,e[70]=K,e[71]=He):He=e[71];let tt;e[72]!==ge||e[73]!==ft||e[74]!==He?(tt=r.jsxs("div",{className:ge,children:[ft,He]}),e[72]=ge,e[73]=ft,e[74]=He,e[75]=tt):tt=e[75];let ht;return e[76]!==fe||e[77]!==tt?(ht=r.jsxs(r.Fragment,{children:[fe,tt]}),e[76]=fe,e[77]=tt,e[78]=ht):ht=e[78],ht}function c1(t){return!t.verified&&!t._meta?.["mcp.mesh"]?.verified&&!t.meta?.verified}function d1(t){return t.verified||t._meta?.["mcp.mesh"]?.verified||t.meta?.verified}function h1(t){return t.app_name}function u1(t){return t.app_name}function f1(t){return t?.items??[]}function m1(t,e){if(t?.hasMore)return e.reduce(p1,0)}function p1(t,e){return t+(e?.items?.length??0)}function Qa({open:t,onOpenChange:e,defaultTab:s,initialSearch:i="",...n}){const o=n.mode??"add",a="agentId"in n?n.agentId:void 0,l="addedConnectionIds"in n?n.addedConnectionIds??new Set:new Set,c="onAdd"in n&&n.onAdd?n.onAdd:w=>{},d=(w,k,T)=>{a&&re("agent_connection_attached",{agent_id:a,connection_id:w,app_name:k,mode:T})},[u,h]=j.useState(null),[f,m]=j.useState(i),[p,g]=j.useState(!1),{org:_}=xe(),{data:v}=dt.useSession(),x=Mn(),b=bt(),y=Oe(),V=w=>{e(!1),y({to:"/$org/settings/connections/$appSlug",params:{org:_.slug,appSlug:w}})},C=async w=>{h(w.app_name??w.id);try{const T=`${w.title.replace(/\s*\(\d+\)\s*$/,"")} (${Date.now().toString(36).slice(-4)})`,I=(await x.create.mutateAsync({title:T,description:w.description??null,connection_type:w.connection_type,connection_url:w.connection_url??null,connection_token:null,icon:w.icon??null,app_name:w.app_name??null,app_id:w.app_id??null,connection_headers:w.connection_headers??null})).id,E=new URL(`/mcp/${I}`,window.location.origin),N=await Zi({url:E.href,token:null});if(N.supportsOAuth&&!N.isAuthenticated){const{token:A,tokenInfo:D,error:L}=await Yr({connectionId:I,scope:"offline_access"});if(L||!A){re("connection_oauth_failed",{connection_id:I,flow:"clone",error:L??"no_token"}),he.error(`Authentication failed: ${L??"no token received"}`),await x.delete.mutateAsync(I);return}if(re("connection_oauth_succeeded",{connection_id:I,flow:"clone"}),D)try{(await fetch(`/api/connections/${I}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:D.accessToken,refreshToken:D.refreshToken,expiresIn:D.expiresIn,scope:D.scope,clientId:D.clientId,clientSecret:D.clientSecret,tokenEndpoint:D.tokenEndpoint})})).ok?await x.update.mutateAsync({id:I,data:{}}):await x.update.mutateAsync({id:I,data:{connection_token:A}})}catch{await x.update.mutateAsync({id:I,data:{connection_token:A}})}else await x.update.mutateAsync({id:I,data:{connection_token:A}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(E.href,null)})}d(I,w.app_name??null,"clone"),c(I)}catch(k){console.error("Failed to add connection:",k),he.error("Failed to add connection")}finally{h(null)}},S=async w=>{if(!(!_||!v?.user?.id)){h(w.id);try{const k=Fp(w,_.id,v.user.id,{remoteIndex:0}),T=k.connection_type==="STDIO",M=!!k.connection_url,I=T&&k.connection_headers&&typeof k.connection_headers=="object"&&"command"in k.connection_headers;if(!M&&!I){he.error("This MCP Server cannot be connected: no connection method available"),h(null);return}const{id:E}=await x.create.mutateAsync(k),N=new URL(`/mcp/${E}`,window.location.origin),A=await Zi({url:N.href,token:null});if(A.supportsOAuth&&!A.isAuthenticated){const{token:D,tokenInfo:L,error:R}=await Yr({connectionId:E,scope:"offline_access"});if(R||!D){re("connection_oauth_failed",{connection_id:E,flow:"connect_new",error:R??"no_token"}),he.error(`Authentication failed: ${R??"no token received"}`),d(E,k.app_name??null,"new"),c(E);return}if(re("connection_oauth_succeeded",{connection_id:E,flow:"connect_new"}),L)try{(await fetch(`/api/connections/${E}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:L.accessToken,refreshToken:L.refreshToken,expiresIn:L.expiresIn,scope:L.scope,clientId:L.clientId,clientSecret:L.clientSecret,tokenEndpoint:L.tokenEndpoint})})).ok?await x.update.mutateAsync({id:E,data:{}}):await x.update.mutateAsync({id:E,data:{connection_token:D}})}catch{await x.update.mutateAsync({id:E,data:{connection_token:D}})}else await x.update.mutateAsync({id:E,data:{connection_token:D}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(N.href,null)}),he.success("Connected and authenticated")}else he.success("Connected");d(E,k.app_name??null,"new"),c(E)}catch(k){console.error("Failed to connect:",k),he.error("Failed to connect")}finally{h(null)}}};return r.jsxs(Bt,{open:t,onOpenChange:e,children:[r.jsxs(Ot,{className:"sm:max-w-5xl h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[r.jsx(Gt,{className:"px-6 pt-5 pb-0 shrink-0",children:r.jsx(qt,{className:"text-base font-semibold",children:o==="browse"?"Connections":"Add Connection"})}),r.jsx("div",{className:"pt-3 shrink-0",children:r.jsx(Id,{value:f,onChange:m,placeholder:"Search connections..."})}),r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"})}),children:r.jsx(l1,{mode:o,agentId:a,addedConnectionIds:l,onAdd:c,onCloneAndAdd:C,onConnectAndAdd:S,connectingItemId:u,search:f,onCreateConnection:()=>g(!0),onBrowseNavigate:V,defaultTab:s})})]}),r.jsx(a1,{open:p,onOpenChange:g,onCreated:async w=>{g(!1);const k=new URL(`/mcp/${w}`,window.location.origin),T=await Zi({url:k.href,token:null});if(T.supportsOAuth&&!T.isAuthenticated){const{token:M,tokenInfo:I,error:E}=await Yr({connectionId:w,scope:"offline_access"});if(E||!M){re("connection_oauth_failed",{connection_id:w,flow:"custom_create",error:E??"no_token"}),he.error(`Authentication failed: ${E??"no token received"}`),await x.delete.mutateAsync(w);return}if(re("connection_oauth_succeeded",{connection_id:w,flow:"custom_create"}),I)try{(await fetch(`/api/connections/${w}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:I.accessToken,refreshToken:I.refreshToken,expiresIn:I.expiresIn,scope:I.scope,clientId:I.clientId,clientSecret:I.clientSecret,tokenEndpoint:I.tokenEndpoint})})).ok?await x.update.mutateAsync({id:w,data:{}}):await x.update.mutateAsync({id:w,data:{connection_token:M}})}catch{await x.update.mutateAsync({id:w,data:{connection_token:M}})}else await x.update.mutateAsync({id:w,data:{connection_token:M}});await b.invalidateQueries({queryKey:Ze.isMCPAuthenticated(k.href,null)})}d(w,null,"custom"),c(w),e(!1)}})]})}const g1=[{src:"/connections/github.png",name:"GitHub"},{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/linear.png",name:"Linear"},{src:"/connections/shopify.png",name:"Shopify"},{src:"/connections/firecrawl.png",name:"Firecrawl"},{src:"/connections/perplexity.png",name:"Perplexity"}];function _1(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center -space-x-1",children:g1.map(x1)}),t[0]=e):e=t[0],e}function x1(t){return r.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-2 ring-muted object-cover bg-white"},t.name)}function v1(t){const e=B.c(6),{onClick:s}=t;let i,n,o,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=Y("group relative z-10 flex items-center gap-3 w-full px-4 py-3","rounded-b-2xl","cursor-pointer"),n=r.jsx("p",{className:"flex-1 text-xs text-muted-foreground truncate text-left",children:"Connect tools and get more done"}),o=r.jsx(_1,{}),a=r.jsx($a,{size:14,className:"shrink-0 text-muted-foreground/60 group-hover:text-muted-foreground transition-colors"}),e[0]=i,e[1]=n,e[2]=o,e[3]=a):(i=e[0],n=e[1],o=e[2],a=e[3]);let l;return e[4]!==s?(l=r.jsxs("button",{type:"button",onClick:s,className:i,children:[n,o,a]}),e[4]=s,e[5]=l):l=e[5],l}const Ki=48;function b1(){const t=B.c(9),[e,s]=j.useState("idle"),[i,n]=j.useState(""),[o,a]=j.useState(""),[l,c]=j.useState(w1),d=j.useRef(null),u=j.useRef(null),h=j.useRef(null),f=j.useRef(null),m=j.useRef(0),p=j.useRef(!1),g=j.useRef(""),_=j.useRef(""),v=typeof window<"u"&&!!(window.SpeechRecognition||window.webkitSpeechRecognition);let x;t[0]===Symbol.for("react.memo_cache_sentinel")?(x=()=>{m.current&&(cancelAnimationFrame(m.current),m.current=0),u.current?.close().catch(S1),f.current?.getTracks().forEach(y1),h.current=null,u.current=null,f.current=null},t[0]=x):x=t[0];const b=x;let y;if(t[1]===Symbol.for("react.memo_cache_sentinel")){const M=I=>{f.current=I;const E=new AudioContext;u.current=E;const N=E.createMediaStreamSource(I),A=E.createAnalyser();A.fftSize=128,A.smoothingTimeConstant=.8,N.connect(A),h.current=A;const D=new Uint8Array(A.frequencyBinCount),L=()=>{if(!h.current)return;h.current.getByteFrequencyData(D);const R=[];for(let P=0;P<Ki;P++){const O=Math.floor(P/Ki*D.length);R.push(Math.max(.04,(D[O]??0)/255))}c(R),m.current=requestAnimationFrame(L)};L()};y=async()=>{const I=window.SpeechRecognition||window.webkitSpeechRecognition;if(!I){s("unsupported");return}let E;try{E=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{s("permission-denied");return}n(""),a(""),_.current="",g.current="",p.current=!0,s("recording"),M(E);const N=new I;d.current=N,N.interimResults=!0,N.continuous=!0,N.lang=navigator.language||"en-US",N.onresult=A=>{let D="",L="";for(let R=A.resultIndex;R<A.results.length;R++){const P=A.results[R],O=P?.[0]?.transcript??"";P?.isFinal?L=L+O:D=D+O}L&&(g.current=g.current+L,n(g.current)),_.current=D,a(D)},N.onend=()=>{if(p.current)try{N.start()}catch{}};try{N.start()}catch{s("idle")}},t[1]=y}else y=t[1];const V=y;let C;t[2]===Symbol.for("react.memo_cache_sentinel")?(C=()=>{p.current=!1,d.current?.stop(),b(),s("idle"),c(Array(Ki).fill(.05)),a("");const M=(g.current+(_.current?" "+_.current:"")).trim();return n(""),g.current="",_.current="",M},t[2]=C):C=t[2];const S=C;let w;t[3]===Symbol.for("react.memo_cache_sentinel")?(w=()=>{p.current=!1,d.current?.abort(),b(),s("idle"),n(""),a(""),c(Array(Ki).fill(.05)),g.current="",_.current=""},t[3]=w):w=t[3];const k=w;let T;return t[4]!==o||t[5]!==e||t[6]!==i||t[7]!==l?(T={status:e,transcript:i,interimTranscript:o,waveformData:l,isSupported:v,startRecording:V,stopRecording:S,cancelRecording:k},t[4]=o,t[5]=e,t[6]=i,t[7]=l,t[8]=T):T=t[8],T}function y1(t){return t.stop()}function S1(){}function w1(){return Array(Ki).fill(.05)}function V1(t){const e=B.c(4),{data:s}=t;let i;e[0]!==s?(i=s.map(C1),e[0]=s,e[1]=i):i=e[1];let n;return e[2]!==i?(n=r.jsx("div",{className:"flex items-center justify-center gap-[2px] h-10 overflow-hidden","aria-hidden":"true",children:i}),e[2]=i,e[3]=n):n=e[3],n}function C1(t,e){return r.jsx("div",{className:"w-[2px] shrink-0 rounded-full bg-chart-2 transition-[height] duration-75 ease-out",style:{height:`${Math.max(4,Math.round(t*40))}px`}},e)}const to=[{value:"fast",label:"Fast",Icon:Fd,description:"Quicker responses"},{value:"smart",label:"Smart",Icon:Da,description:"Balanced quality"},{value:"thinking",label:"Thinking",Icon:Qm,description:"Deeper reasoning"}];function k1(t){const e=B.c(17),{tier:s,onSelect:i}=t;let n;e[0]!==s?(n=to.find(m=>m.value===s)??to[1],e[0]=s,e[1]=n):n=e[1];const o=n,a=o.Icon;let l;e[2]!==a?(l=r.jsx(a,{size:14}),e[2]=a,e[3]=l):l=e[3];let c;e[4]!==o.label?(c=r.jsx("span",{className:"hidden sm:inline",children:o.label}),e[4]=o.label,e[5]=c):c=e[5];let d;e[6]!==l||e[7]!==c?(d=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"ghost",size:"default",className:"text-muted-foreground hover:text-foreground",children:[l,c]})}),e[6]=l,e[7]=c,e[8]=d):d=e[8];let u;e[9]!==i||e[10]!==s?(u=to.map(m=>{const{value:p,label:g,Icon:_,description:v}=m;return r.jsxs(Qe,{onSelect:()=>i(p),children:[r.jsx(_,{size:16,className:"text-muted-foreground"}),r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1",children:[r.jsx("span",{children:g}),r.jsx("span",{className:"text-xs text-muted-foreground font-normal",children:v})]}),s===p&&r.jsx("span",{className:"text-xs text-muted-foreground font-medium",children:"On"})]},p)}),e[9]=i,e[10]=s,e[11]=u):u=e[11];let h;e[12]!==u?(h=r.jsx(hs,{align:"end",className:"w-52 p-1.5",children:u}),e[12]=u,e[13]=h):h=e[13];let f;return e[14]!==d||e[15]!==h?(f=r.jsxs(cs,{children:[d,h]}),e[14]=d,e[15]=h,e[16]=f):f=e[16],f}function j1(t,e){const s=B.c(5),{editor:i}=jn(),[n,o]=j.useState(!1),a=j.useRef(0);let l,c;return s[0]!==i||s[1]!==e||s[2]!==t?(l=()=>{const d=m=>{m.dataTransfer?.types.includes("Files")&&(m.preventDefault(),a.current=a.current+1,o(!0))},u=m=>{m.preventDefault(),a.current=Math.max(0,a.current-1),a.current===0&&o(!1)},h=N1,f=m=>{if(m.preventDefault(),a.current=0,o(!1),!i||!t||!Tn(t))return;const p=m.dataTransfer?.files;if(!p||p.length===0)return;const{from:g}=i.state.selection;for(const _ of Array.from(p))Ya(i,t,_,g,e)};return window.addEventListener("dragenter",d),window.addEventListener("dragleave",u),window.addEventListener("dragover",h),window.addEventListener("drop",f),()=>{window.removeEventListener("dragenter",d),window.removeEventListener("dragleave",u),window.removeEventListener("dragover",h),window.removeEventListener("drop",f)}},c=[i,t,e],s[0]=i,s[1]=e,s[2]=t,s[3]=l,s[4]=c):(l=s[3],c=s[4]),j.useEffect(l,c),n}function N1(t){t.dataTransfer?.types.includes("Files")&&t.preventDefault()}function A1(t){const e=B.c(11),{selectedModel:s,onUnsupportedFile:i}=t,n=j1(s,i);let o;e[0]!==s?(o=Tn(s),e[0]=s,e[1]=o):o=e[1];const a=o,l=n?"opacity-100":"opacity-0 pointer-events-none",c=a?"border-primary/40 text-primary/70":"border-destructive/30 text-destructive/70";let d;e[2]!==l||e[3]!==c?(d=Y("absolute inset-0 z-20 rounded-xl flex flex-col items-center justify-center gap-2 bg-muted border-2 border-dashed transition-opacity",l,c),e[2]=l,e[3]=c,e[4]=d):d=e[4];let u;e[5]!==s||e[6]!==a?(u=a?r.jsxs(r.Fragment,{children:[r.jsx(Jd,{size:24}),r.jsxs("span",{className:"text-sm font-medium",children:["Drop ",th(s)," here"]})]}):r.jsxs(r.Fragment,{children:[r.jsx(Xd,{size:24}),r.jsx("span",{className:"text-sm font-medium",children:"This model can't read attachments — switch to one with vision or file support"})]}),e[5]=s,e[6]=a,e[7]=u):u=e[7];let h;return e[8]!==d||e[9]!==u?(h=r.jsx("div",{className:d,children:u}),e[8]=d,e[9]=u,e[10]=h):h=e[10],h}function E1({onOpenContextPanel:t,showConnectionsBanner:e=!1}){const{messages:s,isStreaming:i,isRunInProgress:n,sendMessage:o,stop:a}=Ii(),{taskId:l,tasks:c}=Lt(),{selectedModel:d,selectedVirtualMcp:u,isModelsLoading:h,tiptapDocRef:f,imageModel:m,deepResearchModel:p,chatMode:g,setChatMode:_,simpleModeEnabled:v,simpleModeTier:x,setSimpleModeTier:b}=$s(),{data:y}=dt.useSession(),V=y?.user?.id,{org:C}=xe(),S=En(C.id).id,w=Lo(Vl),[k,T]=j.useState(!1),{unsupportedFile:M,onUnsupportedFile:I,clearUnsupportedFile:E}=O_(),N=b1(),A=j.useRef(void 0),D=async()=>{A.current=O,await N.startRecording();const Z=N.status==="recording"?"started":N.status==="unsupported"?"unsupported":N.status==="permission-denied"?"permission_denied":"unknown";re("chat_voice_started",{thread_id:l,outcome:Z})},L=()=>{re("chat_voice_confirmed",{thread_id:l});const Z=N.stopRecording();H.current?.syncVoiceText(A.current,Z),H.current?.focus()},R=()=>{re("chat_voice_cancelled",{thread_id:l}),N.cancelRecording(),H.current?.restoreContent(A.current)};j.useEffect(()=>{if(N.status!=="recording")return;const Z=(N.transcript+(N.interimTranscript?" "+N.interimTranscript:"")).trim();H.current?.syncVoiceText(A.current,Z)},[N.transcript,N.interimTranscript,N.status]);const P=c.find(Z=>Z.id===l),[O,z]=j.useState(void 0),$=Z=>{z(Z),f.current=Z},q=j.useRef(l);q.current!==l&&(q.current=l,z(void 0),f.current=void 0);const W=[...s].reverse().find(Z=>Z.role==="assistant")?.metadata?.modelLimits?.contextWindow??d?.limits?.contextWindow,H=j.useRef(null),U=g==="plan";j.useEffect(()=>{const Z=de=>{Md(de)&&de.code==="KeyL"&&(de.preventDefault(),de.shiftKey&&_(g==="plan"?"default":"plan"),H.current?.focus())};return document.addEventListener("keydown",Z),()=>document.removeEventListener("keydown",Z)},[g,_]);const X=Nd(s),K=[...s].reverse().find(Z=>Z.role==="assistant"&&Z.metadata?.usage)?.metadata?.usage,G=K?.contextTokens??(K?.totalTokens??0)-(K?.reasoningTokens??0),ie=Lo(Vl),te=!i&&!!d&&!h&&!$g(O),J=i||n,ae=Z=>{Z?.preventDefault(),i?(re("chat_message_stopped",{thread_id:l}),a()):n?(re("chat_message_stopped",{thread_id:l}),a()):te&&O&&(re("chat_message_sent",{thread_id:l,mode:g,model_id:d?.modelId??null,model_provider:d?.providerId??null,virtual_mcp_id:u?.id??null,submission:Z?"button_or_enter":"programmatic"}),ie(),o(O),$(void 0))};return V&&P?.created_by&&P.created_by!==V?r.jsxs("div",{className:"flex w-full items-center gap-2 px-3 py-2.5 rounded-xl border border-border bg-muted/40 text-muted-foreground",children:[r.jsx(Xd,{size:14,className:"shrink-0"}),r.jsx("span",{className:"text-sm",children:"Read only — you're viewing someone else's thread"})]}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"flex flex-col w-full justify-end",children:r.jsxs("div",{className:"relative rounded-2xl w-full flex flex-col",children:[e&&r.jsx("div",{className:"absolute inset-0 rounded-2xl pointer-events-none bg-muted/50"}),r.jsx(Ln,{}),r.jsx(Gh,{tiptapDoc:O,setTiptapDoc:$,disabled:i||!d,enterToSubmit:!0,onSubmit:ae,children:r.jsxs("form",{onSubmit:ae,className:Y("w-full relative rounded-2xl min-h-[110px] md:min-h-[130px] flex flex-col bg-background dark:bg-muted card-shadow"),children:[r.jsx(A1,{selectedModel:d,onUnsupportedFile:I}),r.jsx("div",{className:"group/input relative flex flex-col gap-2 flex-1",children:r.jsx(Yh,{ref:H,disabled:i||!d||N.status==="recording",virtualMcpId:u?.id??S,showFileUploader:!0,selectedModel:d,onUnsupportedFile:I})}),r.jsx("div",{className:"flex items-center justify-between p-2.5 gap-1",children:N.status==="recording"?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"flex-1"}),r.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[r.jsx(V1,{data:N.waveformData.slice(0,28)}),r.jsx("button",{type:"button",onClick:R,className:"flex items-center justify-center size-8 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Cancel recording",children:r.jsx(Es,{size:16})}),r.jsx("button",{type:"button",onClick:L,className:"flex items-center justify-center size-8 rounded-lg bg-foreground text-background hover:opacity-80 transition-opacity","aria-label":"Use transcription",children:r.jsx(Mt,{size:16})})]})]}):r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 shrink-0",children:[r.jsx(R_,{selectedModel:d,isStreaming:i,icon:r.jsx(Dt,{size:16}),onUnsupportedFile:I}),r.jsx(r1,{disabled:i,onOpenConnections:()=>{re("connections_dialog_opened",{source:"tools_popover",mode:"add"}),T(!0)},virtualMcpId:u?.id??S}),U&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"plan",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-violet-600 dark:text-violet-400 hover:bg-violet-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(Yd,{size:14,className:"shrink-0"}),"Plan mode",r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),g==="gen-image"&&m&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"gen-image",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-pink-600 dark:text-pink-400 hover:bg-pink-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(Io,{size:14,className:"shrink-0"}),r.jsx("span",{className:"max-w-[120px] truncate",children:v?"Create image":m.title.includes(": ")?m.title.split(": ").slice(1).join(": "):m.title}),r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),g==="web-search"&&p&&r.jsxs("button",{type:"button",onClick:()=>{w(),re("chat_mode_changed",{from_mode:"web-search",to_mode:"default",source:"pill_dismiss"}),_("default")},className:"flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 group whitespace-nowrap animate-in fade-in duration-200",children:[r.jsx(vi,{size:14,className:"shrink-0"}),r.jsx("span",{className:"max-w-[120px] truncate",children:v?"Web search":p.title.includes(": ")?p.title.split(": ").slice(1).join(": "):p.title}),r.jsx(Es,{size:14,className:"shrink-0 hidden group-hover:block"})]}),W&&G>0&&r.jsx(Sm,{usage:X,totalTokens:G,contextWindow:W,onOpenContextPanel:t})]}),r.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[v?r.jsx(k1,{tier:x,onSelect:b}):r.jsx(sh,{placeholder:"Model",variant:"borderless",className:"h-8 text-sm py-2 min-w-0"}),N.isSupported&&!i&&!n&&r.jsx(oe,{type:"button",onClick:D,variant:"ghost",size:"icon",className:Y("size-8 rounded-lg transition-colors",N.status==="permission-denied"?"text-destructive hover:text-destructive hover:bg-destructive/10":"text-muted-foreground hover:text-foreground"),title:N.status==="permission-denied"?"Microphone access denied — click to try again":"Voice input",children:r.jsx(Xm,{size:18})}),r.jsx(oe,{type:J?"button":"submit",onClick:Z=>{J&&(Z.preventDefault(),Z.stopPropagation(),a())},variant:te||J?"default":"ghost",size:"icon",disabled:!te&&!J,className:Y("size-8 rounded-lg transition-all",!te&&!J&&"bg-muted text-muted-foreground hover:bg-muted hover:text-muted-foreground cursor-not-allowed"),title:i?"Stop generating":n?"Cancel run":"Send message (Enter)",children:J?r.jsx(Jm,{size:20}):r.jsx(Od,{size:20})})]})]})})]})},l),e&&r.jsx(v1,{onClick:()=>{re("connections_banner_clicked",{source:"home_chat_input"}),re("connections_dialog_opened",{source:"home_banner",mode:"add"}),T(!0)}})]})}),r.jsx(Qa,{mode:"browse",open:k,onOpenChange:T,defaultTab:"all"}),r.jsx(D_,{info:M,onClose:E})]})}const I1={usd:[{dollars:10,label:"Starter"},{dollars:20,label:"Popular"},{dollars:100,label:"Best value"}],brl:[{dollars:50,label:"Starter"},{dollars:100,label:"Popular"},{dollars:500,label:"Best value"}]};function Xh(t){return`deco-credits-empty-dismissed:${t}`}function T1(t){try{return localStorage.getItem(Xh(t))==="1"}catch{return!1}}function R1(){const t=B.c(49),{org:e}=xe(),s=Oe(),{decoKeyId:i}=Pn();let n;t[0]!==e.id?(n={connectionId:yt,orgId:e.id},t[0]=e.id,t[1]=n):n=t[1];const o=Ae(n),[a,l]=j.useState(!0),[c,d]=j.useState(""),[u,h]=j.useState(!1),[f,m]=j.useState("usd"),p=f==="brl"?"R$":"$";let g;t[2]!==e.id?(g=()=>{re("credits_empty_state_dismissed",{organization_id:e.id}),l(!1);try{localStorage.setItem(Xh(e.id),"1")}catch{}},t[2]=e.id,t[3]=g):g=t[3];const _=g;let v,x;t[4]!==a||t[5]!==e.id?(v=()=>{a&&re("credits_empty_state_shown",{organization_id:e.id})},x=[a,e.id],t[4]=a,t[5]=e.id,t[6]=v,t[7]=x):(v=t[6],x=t[7]),j.useEffect(v,x);let b;t[8]!==o||t[9]!==f?(b=async $=>{const q=await o.callTool({name:"AI_PROVIDER_TOPUP_URL",arguments:{providerId:"deco",amountCents:$,currency:f}});if(q?.isError)throw new Error(q.content?.[0]?.text??"Failed to get top-up URL");return q.structuredContent?.url},t[8]=o,t[9]=f,t[10]=b):b=t[10];let y;t[11]!==_?(y=$=>{$&&window.open($,"_blank","noopener,noreferrer"),_()},t[11]=_,t[12]=y):y=t[12];let V;t[13]!==b||t[14]!==y?(V={mutationFn:b,onSuccess:y,onError:D1},t[13]=b,t[14]=y,t[15]=V):V=t[15];const{mutate:C,isPending:S}=Ni(V),w=parseFloat(c),k=!isNaN(w)&&w>=1;if(!a)return null;let T;t[16]!==_?(T=$=>!$&&_(),t[16]=_,t[17]=T):T=t[17];let M;t[18]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx("div",{className:"absolute inset-x-0 top-0 h-24 bg-gradient-to-b from-amber-500/8 to-transparent pointer-events-none rounded-t-lg"}),t[18]=M):M=t[18];let I;t[19]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx("div",{className:"flex items-center justify-center size-11 rounded-full bg-amber-100 dark:bg-amber-900/40 border border-amber-200/60 dark:border-amber-800/40 mx-auto",children:r.jsx(Ta,{size:20,className:"text-amber-600 dark:text-amber-400"})}),t[19]=I):I=t[19];let E;t[20]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsxs("div",{className:"relative px-6 pt-7 pb-5",children:[M,r.jsxs(Gt,{className:"relative gap-3",children:[I,r.jsxs("div",{className:"text-center",children:[r.jsx(qt,{className:"text-lg font-semibold",children:"This workspace has no credits"}),r.jsx(Nn,{className:"mt-2 text-[13px] leading-relaxed max-w-[320px] mx-auto",children:"Your free credits were used in another workspace. Add credits to use AI here."})]})]})]}),t[20]=E):E=t[20];let N;t[21]!==f||t[22]!==p||t[23]!==c||t[24]!==w||t[25]!==i||t[26]!==k||t[27]!==S||t[28]!==u||t[29]!==C?(N=i&&r.jsxs("div",{className:"px-6 pb-5",children:[r.jsx("div",{className:"mb-4",children:r.jsxs(Zd,{type:"single",variant:"outline",size:"sm",value:f,onValueChange:$=>{$&&m($)},children:[r.jsx(un,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),r.jsx(un,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"})]})}),r.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:I1[f].map($=>{const{dollars:q,label:F}=$;return r.jsxs("button",{type:"button",disabled:S,onClick:()=>{re("credits_topup_clicked",{amount_cents:q*100,currency:f,tier_label:F,source:"empty_state"}),C(q*100)},className:Y("relative flex flex-col items-center gap-1 py-6 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[r.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[p,q]}),r.jsx("span",{className:"text-xs text-muted-foreground",children:F})]},q)})}),u?r.jsxs("div",{className:"flex gap-2 mt-3",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:p}),r.jsx(at,{type:"number",min:"1",step:"1",placeholder:"50",value:c,onChange:$=>d($.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),r.jsx(oe,{className:"h-10",disabled:!k||S,onClick:()=>{re("credits_topup_clicked",{amount_cents:Math.round(w*100),currency:f,tier_label:"custom",source:"empty_state"}),C(Math.round(w*100))},children:S?"Opening...":"Add"})]}):r.jsx("button",{type:"button",className:"w-full mt-2.5 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>h(!0),children:"Enter custom amount"})]}),t[21]=f,t[22]=p,t[23]=c,t[24]=w,t[25]=i,t[26]=k,t[27]=S,t[28]=u,t[29]=C,t[30]=N):N=t[30];let A;t[31]!==_||t[32]!==s||t[33]!==e.slug?(A=()=>{s({to:"/$org/settings/ai-providers",params:{org:e.slug}}),_()},t[31]=_,t[32]=s,t[33]=e.slug,t[34]=A):A=t[34];let D;t[35]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(In,{size:12,className:"transition-transform duration-150 group-hover:translate-x-0.5"}),t[35]=D):D=t[35];let L;t[36]!==A?(L=r.jsxs("button",{type:"button",className:"group flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:A,children:["Use your own provider",D]}),t[36]=A,t[37]=L):L=t[37];let R;t[38]!==_?(R=r.jsx(oe,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:_,children:"Skip for now"}),t[38]=_,t[39]=R):R=t[39];let P;t[40]!==L||t[41]!==R?(P=r.jsxs("div",{className:"px-6 py-3.5 border-t border-border bg-muted/30 flex items-center justify-between",children:[L,R]}),t[40]=L,t[41]=R,t[42]=P):P=t[42];let O;t[43]!==N||t[44]!==P?(O=r.jsxs(Ot,{className:"sm:max-w-[500px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:M1,children:[E,N,P]}),t[43]=N,t[44]=P,t[45]=O):O=t[45];let z;return t[46]!==O||t[47]!==T?(z=r.jsx(Bt,{open:!0,onOpenChange:T,children:O}),t[46]=O,t[47]=T,t[48]=z):z=t[48],z}function M1(t){return t.preventDefault()}function D1(t){he.error(`Top-up failed: ${t.message}`)}function P1(t){const e=B.c(6),{balanceDollars:s}=t;let i;e[0]!==s?(i=s.toFixed(2),e[0]=s,e[1]=i):i=e[1];const n=i;let o,a;e[2]===Symbol.for("react.memo_cache_sentinel")?(o=Y("inline-flex items-center gap-1.5 px-3 py-1 rounded-full","bg-emerald-50 dark:bg-emerald-950/30","border border-emerald-200/60 dark:border-emerald-800/40","animate-in fade-in-0 slide-in-from-bottom-2 duration-300"),a=r.jsx(Ta,{size:13,className:"text-emerald-600 dark:text-emerald-400"}),e[2]=o,e[3]=a):(o=e[2],a=e[3]);let l;return e[4]!==n?(l=r.jsxs("div",{className:o,children:[a,r.jsxs("span",{className:"text-xs font-medium text-emerald-700 dark:text-emerald-300 tabular-nums",children:["$",n," in credits to get started"]})]}),e[4]=n,e[5]=l):l=e[5],l}function L1(){const t=B.c(8),{org:e}=xe(),s=Oe();let i;t[0]!==s||t[1]!==e.slug?(i=()=>s({to:"/$org/settings/ai-providers",params:{org:e.slug}}),t[0]=s,t[1]=e.slug,t[2]=i):i=t[2];let n,o,a;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=Y("inline-flex items-center gap-1.5 px-3 py-1 rounded-full cursor-pointer","bg-amber-50 dark:bg-amber-950/30","border border-amber-200/60 dark:border-amber-800/40","hover:bg-amber-100/60 dark:hover:bg-amber-900/30","transition-colors duration-150","animate-in fade-in-0 slide-in-from-bottom-2 duration-300"),o=r.jsx(Bs,{size:13,className:"text-amber-600 dark:text-amber-400"}),a=r.jsx("span",{className:"text-xs font-medium text-amber-700 dark:text-amber-300",children:"No credits remaining · Add more"}),t[3]=n,t[4]=o,t[5]=a):(n=t[3],o=t[4],a=t[5]);let l;return t[6]!==i?(l=r.jsxs("button",{type:"button",onClick:i,className:n,children:[o,a]}),t[6]=i,t[7]=l):l=t[7],l}function O1(t){const e=B.c(11),{className:s}=t;let i;e[0]!==s?(i=Y("flex h-full w-full flex-col bg-background",s),e[0]=s,e[1]=i):i=e[1];let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"size-6 rounded-lg bg-muted animate-pulse"}),e[2]=n):n=e[2];let o;e[3]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs("div",{className:"flex items-center gap-3",children:[n,r.jsxs("div",{className:"flex flex-col gap-2",children:[r.jsx("div",{className:"h-3.5 w-28 rounded bg-muted animate-pulse"}),r.jsx("div",{className:"h-3 w-40 rounded bg-muted/60 animate-pulse"})]})]}),e[3]=o):o=e[3];let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"flex items-center h-12 flex-none border-b border-border/80 px-4",children:r.jsxs("div",{className:"flex items-center justify-between gap-3 w-full",children:[o,r.jsxs("div",{className:"flex items-end gap-2",children:[r.jsx("div",{className:"h-6 w-6 rounded-full bg-muted animate-pulse"}),r.jsx("div",{className:"h-6 w-6 rounded-lg bg-muted animate-pulse"})]})]})}),e[4]=a):a=e[4];let l;e[5]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"flex-1 overflow-hidden px-4 py-4",children:r.jsxs("div",{className:"mx-auto flex w-full max-w-2xl flex-col gap-4",children:[r.jsx(Or,{align:"right",width:"w-3/4"}),r.jsx(Or,{align:"left",width:"w-full",lines:3}),r.jsx(Or,{align:"right",width:"w-2/3"}),r.jsx(Or,{align:"left",width:"w-5/6",lines:2})]})}),e[5]=l):l=e[5];let c;e[6]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"relative flex flex-1 flex-col gap-2 p-2.5",children:r.jsx("div",{className:"relative flex-1",children:r.jsxs("div",{className:"space-y-2 p-2",children:[r.jsx("div",{className:"h-3 w-full rounded bg-muted/40 animate-pulse"}),r.jsx("div",{className:"h-3 w-4/5 rounded bg-muted/40 animate-pulse"})]})})}),e[6]=c):c=e[6];let d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center gap-1",children:r.jsx("div",{className:"size-8 rounded-full bg-muted/60 animate-pulse"})}),e[7]=d):d=e[7];let u;e[8]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"px-4 py-4",children:r.jsx("div",{className:"mx-auto w-full max-w-2xl",children:r.jsxs("div",{className:"relative flex min-h-[130px] flex-col rounded-xl bg-background card-shadow",children:[c,r.jsxs("div",{className:"flex items-center justify-between px-2.5 pb-2.5",children:[d,r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("div",{className:"h-8 w-32 rounded-lg bg-muted/60 animate-pulse"}),r.jsx("div",{className:"size-8 rounded-full bg-muted animate-pulse"})]})]})]})})}),e[8]=u):u=e[8];let h;return e[9]!==i?(h=r.jsxs("div",{className:i,children:[a,l,u]}),e[9]=i,e[10]=h):h=e[10],h}function Or(t){const e=B.c(22),{align:s,width:i,lines:n}=t,o=i===void 0?"w-full":i,a=n===void 0?1:n,l=s==="right"?"flex-row-reverse":"flex-row";let c;e[0]!==l?(c=Y("flex w-full gap-4 px-4 py-2",l),e[0]=l,e[1]=c):c=e[1];const d=s==="right"?"ml-auto max-w-3/4 items-end":"w-full items-start";let u;e[2]!==d?(u=Y("flex min-w-0 flex-col gap-2",d),e[2]=d,e[3]=u):u=e[3];let h;e[4]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx("div",{className:"h-3 w-16 rounded bg-muted/40 animate-pulse"}),e[4]=h):h=e[4];const f=s==="right"?"bg-muted":"bg-transparent border border-border/40";let m;e[5]!==f||e[6]!==o?(m=Y("min-w-0 rounded-2xl p-4",f,o),e[5]=f,e[6]=o,e[7]=m):m=e[7];let p;e[8]!==a?(p=Array.from({length:a}),e[8]=a,e[9]=p):p=e[9];let g;e[10]!==a||e[11]!==p?(g=r.jsx("div",{className:"space-y-2",children:p.map((b,y)=>r.jsx("div",{className:Y("h-3 rounded bg-muted-foreground/20 animate-pulse",y===a-1?"w-3/4":"w-full"),style:{animationDelay:`${y*.1}s`}},y))}),e[10]=a,e[11]=p,e[12]=g):g=e[12];let _;e[13]!==g||e[14]!==m?(_=r.jsx("div",{className:m,children:g}),e[13]=g,e[14]=m,e[15]=_):_=e[15];let v;e[16]!==_||e[17]!==u?(v=r.jsxs("div",{className:u,children:[h,_]}),e[16]=_,e[17]=u,e[18]=v):v=e[18];let x;return e[19]!==v||e[20]!==c?(x=r.jsx("div",{className:c,children:v}),e[19]=v,e[20]=c,e[21]=x):x=e[21],x}function B1(t){const e=B.c(5),{className:s,children:i}=t;let n;e[0]!==s?(n=Y("flex flex-col h-full w-full bg-background transform-[translateZ(0)]",s),e[0]=s,e[1]=n):n=e[1];let o;return e[2]!==i||e[3]!==n?(o=r.jsx("div",{className:n,children:i}),e[2]=i,e[3]=n,e[4]=o):o=e[4],o}function $1(t){const e=B.c(5),{children:s,className:i}=t;let n;e[0]!==i?(n=Y("flex-1 min-h-0 overflow-y-auto isolate",i),e[0]=i,e[1]=n):n=e[1];let o;return e[2]!==s||e[3]!==n?(o=r.jsx("div",{className:n,children:s}),e[2]=s,e[3]=n,e[4]=o):o=e[4],o}function z1(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"h-full w-full flex items-center justify-center max-w-2xl mx-auto",children:s}),e[0]=s,e[1]=i):i=e[1],i}function F1(){const t=B.c(16),{messages:e,status:s}=Ii(),i=wm(e);let n;t[0]!==i?(n=i.at(-1),t[0]=i,t[1]=n):n=t[1];const o=n,a=s==="submitted"||s==="streaming";let l;if(t[2]!==a||t[3]!==o||t[4]!==i||t[5]!==e||t[6]!==s){const c=e.at(-1),d=!a&&c?.role==="assistant"&&c.parts.filter(W1).some(H1),u=!a&&c?.role==="assistant"&&c.parts.some(U1);let h;if(t[8]!==i||t[9]!==s){let m;t[11]!==i.length||t[12]!==s?(m=(p,g)=>r.jsx(_l,{pair:p,isLastPair:!1,status:g===i.length-1?s:void 0},`pair-${p.user.id}`),t[11]=i.length,t[12]=s,t[13]=m):m=t[13],h=i.slice(0,-1).map(m),t[8]=i,t[9]=s,t[10]=h}else h=t[10];let f;t[14]!==h?(f=r.jsx("div",{className:"flex flex-col min-w-0 max-w-2xl mx-auto w-full",children:h}),t[14]=h,t[15]=f):f=t[15],l=r.jsxs("div",{className:"w-full min-w-0 max-w-full overflow-y-auto h-full overflow-x-hidden",children:[f,o&&r.jsx("div",{className:Y("min-h-full min-w-0 max-w-2xl mx-auto w-full",(d||u)&&"pb-60"),children:r.jsx(_l,{pair:o,isLastPair:!0,status:s},`pair-${o?.user.id}`)})]}),t[2]=a,t[3]=o,t[4]=i,t[5]=e,t[6]=s,t[7]=l}else l=t[7];return l}function U1(t){return"state"in t&&t.state==="approval-requested"}function H1(t){return t.state==="input-available"}function W1(t){return t.type==="tool-user_ask"}function K1(t){const e=B.c(5),{children:s,className:i}=t;let n;e[0]!==i?(n=Y("flex-none w-full mx-auto p-2 pt-0","max-w-2xl min-w-0",i),e[0]=i,e[1]=n):n=e[1];let o;return e[2]!==s||e[3]!==n?(o=r.jsx("div",{className:n,children:s}),e[2]=s,e[3]=n,e[4]=o):o=e[4],o}const Ee=Object.assign(B1,{Main:$1,Messages:F1,EmptyState:z1,Footer:K1,Input:E1,Provider:mm,ActiveTaskProvider:fm,Skeleton:O1,IceBreakers:Yg,NoAiProviderEmptyState:wp,CreditsEmptyState:R1,CreditsEyebrow:P1,NoCreditsEyebrow:L1,CreditsExhaustedBanner:Rh}),q1=`You are an image generator agent. Every request of the user is somewhat related to creating, editing or varying an image. You have access to image generation tools
|
|
5
5
|
|
|
6
6
|
These guidelines define how prompts should be structured, specified, and iterated to produce high-quality, controlled image outputs across different use cases.
|
|
7
7
|
|
|
@@ -245,7 +245,7 @@ This helps define finish quality and realism level.
|
|
|
245
245
|
* Prefer clarity over poetic language.
|
|
246
246
|
* Keep prompts structured, not verbose.
|
|
247
247
|
* Add detail only when it improves control.
|
|
248
|
-
* Prevent drift by restating critical constraints`,G1=["Turn ideas into detailed, ready-to-use image generation prompts","Offer multiple artistic directions for every concept","Refine prompts iteratively based on your feedback","Advise on style, lighting, composition, and color palette","Support any use case: product shots, illustrations, concept art, and more"];function Jl(t){const e=B.c(7),{onRecruit:s,isRecruiting:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Add an Image Creator agent that turns your ideas into precise, evocative prompts for any AI image generation tool."}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("p",{className:"text-sm font-medium text-foreground",children:"Capabilities"}),e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"space-y-2",children:[o,r.jsx("ul",{className:"space-y-1.5",children:G1.map(Y1)})]}),e[2]=a):a=e[2];const l=i?"Setting up...":"Add Image Creator";let c;return e[3]!==i||e[4]!==s||e[5]!==l?(c=r.jsxs("div",{className:"flex flex-col gap-6",children:[n,a,r.jsx(oe,{onClick:s,disabled:i,className:"w-full cursor-pointer",children:l})]}),e[3]=i,e[4]=s,e[5]=l,e[6]=c):c=e[6],c}function Y1(t){return r.jsxs("li",{className:"text-sm text-muted-foreground flex items-start gap-2",children:[r.jsx("span",{className:"text-rose-500 mt-0.5 shrink-0",children:"+"}),t]},t)}function
|
|
248
|
+
* Prevent drift by restating critical constraints`,G1=["Turn ideas into detailed, ready-to-use image generation prompts","Offer multiple artistic directions for every concept","Refine prompts iteratively based on your feedback","Advise on style, lighting, composition, and color palette","Support any use case: product shots, illustrations, concept art, and more"];function Jl(t){const e=B.c(7),{onRecruit:s,isRecruiting:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Add an Image Creator agent that turns your ideas into precise, evocative prompts for any AI image generation tool."}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("p",{className:"text-sm font-medium text-foreground",children:"Capabilities"}),e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"space-y-2",children:[o,r.jsx("ul",{className:"space-y-1.5",children:G1.map(Y1)})]}),e[2]=a):a=e[2];const l=i?"Setting up...":"Add Image Creator";let c;return e[3]!==i||e[4]!==s||e[5]!==l?(c=r.jsxs("div",{className:"flex flex-col gap-6",children:[n,a,r.jsx(oe,{onClick:s,disabled:i,className:"w-full cursor-pointer",children:l})]}),e[3]=i,e[4]=s,e[5]=l,e[6]=c):c=e[6],c}function Y1(t){return r.jsxs("li",{className:"text-sm text-muted-foreground flex items-start gap-2",children:[r.jsx("span",{className:"text-rose-500 mt-0.5 shrink-0",children:"+"}),t]},t)}function Jh({open:t,onOpenChange:e,existingAgent:s}){const i=ms(),n=Sr(),o=Oa(),[a,l]=j.useState(!1),c=jt.find(f=>f.id==="ai-image"),d=r.jsx(ps,{icon:c.icon,name:c.title,size:"sm"}),u=async()=>{if(s){e(!1),n(s.id);return}l(!0);try{const f=await o.create.mutateAsync({title:c.title,description:"AI image prompt engineering and visual ideation assistant",icon:c.icon,status:"active",connections:[],metadata:{type:"ai-image",instructions:q1}});re("agent_recruit_confirmed",{template_id:"ai-image",agent_id:f.id}),e(!1),n(f.id)}catch(f){re("agent_recruit_failed",{template_id:"ai-image",error:f instanceof Error?f.message:String(f)}),console.error("Failed to create Image Creator agent:",f)}finally{l(!1)}},h=`Add ${c.title}`;return i?r.jsx(ri,{open:t,onOpenChange:e,children:r.jsxs(ii,{className:"h-[70dvh]",children:[r.jsx(An,{className:"px-4 pt-4 pb-4 shrink-0",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(si,{className:"text-xl font-semibold",children:h})]})}),r.jsx("div",{className:"flex flex-col flex-1 min-h-0 px-4 pb-8",children:r.jsx(Jl,{onRecruit:u,isRecruiting:a})})]})}):r.jsx(Bt,{open:t,onOpenChange:e,children:r.jsxs(Ot,{className:"sm:max-w-[500px] p-8",children:[r.jsx(Gt,{className:"mb-4",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(qt,{className:"text-xl font-semibold",children:h})]})}),r.jsx(Jl,{onRecruit:u,isRecruiting:a})]})})}const X1=`You are a systematic research assistant. You have access to web search tools and user's prompts will have somewhat relation to searching the web. Help users conduct thorough, well-structured research on any topic.
|
|
249
249
|
|
|
250
250
|
VERY IMPORTANT: The user might not have any web research model connected. If so, guide the user to use an AI Provider that has an Web Search generation, or connect a specific model in our connections.
|
|
251
251
|
|
|
@@ -256,7 +256,7 @@ When given a research question or topic:
|
|
|
256
256
|
- Identify sources, patterns, gaps, and contradictions
|
|
257
257
|
- Deliver findings as clear, structured summaries with actionable insights
|
|
258
258
|
|
|
259
|
-
Approach every request with rigor and intellectual honesty. Always surface what is uncertain or debated, not just what is known.`,J1=["Break any topic into key sub-questions and define scope","Synthesize information from multiple angles and sources","Distinguish facts, expert consensus, and contested claims","Identify gaps, contradictions, and emerging patterns","Deliver structured summaries with actionable insights"];function Ql(t){const e=B.c(7),{onRecruit:s,isRecruiting:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Add a Web Researcher agent that conducts thorough, rigorous research on any topic and delivers structured, actionable insights."}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("p",{className:"text-sm font-medium text-foreground",children:"Capabilities"}),e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"space-y-2",children:[o,r.jsx("ul",{className:"space-y-1.5",children:J1.map(Q1)})]}),e[2]=a):a=e[2];const l=i?"Setting up...":"Add Web Researcher";let c;return e[3]!==i||e[4]!==s||e[5]!==l?(c=r.jsxs("div",{className:"flex flex-col gap-6",children:[n,a,r.jsx(oe,{onClick:s,disabled:i,className:"w-full cursor-pointer",children:l})]}),e[3]=i,e[4]=s,e[5]=l,e[6]=c):c=e[6],c}function Q1(t){return r.jsxs("li",{className:"text-sm text-muted-foreground flex items-start gap-2",children:[r.jsx("span",{className:"text-amber-500 mt-0.5 shrink-0",children:"+"}),t]},t)}function Jh({open:t,onOpenChange:e,existingAgent:s}){const i=ms(),n=Sr(),o=Oa(),[a,l]=j.useState(!1),c=jt.find(f=>f.id==="ai-research"),d=r.jsx(ps,{icon:c.icon,name:c.title,size:"sm"}),u=async()=>{if(s){e(!1),n(s.id);return}l(!0);try{const f=await o.create.mutateAsync({title:c.title,description:"Systematic research and information synthesis assistant",icon:c.icon,status:"active",connections:[],metadata:{type:"ai-research",instructions:X1}});re("agent_recruit_confirmed",{template_id:"ai-research",agent_id:f.id}),e(!1),n(f.id)}catch(f){re("agent_recruit_failed",{template_id:"ai-research",error:f instanceof Error?f.message:String(f)}),console.error("Failed to create Researcher agent:",f)}finally{l(!1)}},h=`Add ${c.title}`;return i?r.jsx(ri,{open:t,onOpenChange:e,children:r.jsxs(ii,{className:"h-[70dvh]",children:[r.jsx(An,{className:"px-4 pt-4 pb-4 shrink-0",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(si,{className:"text-xl font-semibold",children:h})]})}),r.jsx("div",{className:"flex flex-col flex-1 min-h-0 px-4 pb-8",children:r.jsx(Ql,{onRecruit:u,isRecruiting:a})})]})}):r.jsx(Bt,{open:t,onOpenChange:e,children:r.jsxs(Ot,{className:"sm:max-w-[500px] p-8",children:[r.jsx(Gt,{className:"mb-4",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(qt,{className:"text-xl font-semibold",children:h})]})}),r.jsx(Ql,{onRecruit:u,isRecruiting:a})]})})}const Z1='# Broken Link Finder\n\nYou are the **Broken Link Finder**, a specialist agent focused on the health of the site\'s link structure.\n\n## Your mission\n\nDiscover and track broken links and long redirect chains. You are invoked as a sub-task by an orchestrator agent — your job is to detect link health and return a structured findings report. The orchestrator decides what to do with your findings (file issues, dedup, etc.).\n\nYou are **mechanical**: collect → check → classify → emit findings. Leave subjective judgment to other agents.\n\n## Input (expect this in the prompt)\n\nThe orchestrator will pass per-site configuration. Expected fields:\n\n```yaml\nsite_root_url: <https://example.com>\nmax_pages: <optional integer, default 100, max 200>\ncheck_external: <optional bool, default false>\n```\n\nIf required fields are missing (`site_root_url`), return an error summary and stop — do not proceed with defaults or guess.\n\n## Available tools\n\n- **site-diagnostics MCP**:\n - `collect_site_links` — discovers all unique outbound link targets across the site and returns them with source-page attribution. Does NOT check status.\n - `check_urls` — takes a batch of URLs (max 100 per call) and returns their HTTP status, error kind, and redirect chains.\n\n---\n\n## Step 1 — Collect link targets (one call)\n\nCall `collect_site_links` once to get the full deduplicated list of outbound link targets and their source pages:\n\n```\ncollect_site_links({\n url: <site_root_url from input>,\n maxPages: <max_pages from input, default 100>,\n checkExternal: <check_external from input, default false>\n})\n```\n\nThis returns:\n- `links`: array of `{ targetUrl, scope: "internal"|"external", sourcePages, sourcePagesTotal }` — **each target appears exactly once**\n- Metadata: `pagesCrawled`, `pagesFetched`, `linksSkipped`, optional `error`\n\n**If `result.error` is set**, the scan failed at the root (e.g. site unreachable). Return a single finding with `kind: site-unreachable` and the error in `evidence`. Then stop.\n\nKeep the `links` array in memory — you\'ll need it in Step 3 for classification and source attribution.\n\n## Step 2 — Check the targets (batched calls)\n\nExtract `targetUrl` from each entry in `links`. Slice the resulting URL list into **disjoint batches of up to 100 URLs** and call `check_urls` on each batch:\n\n```\ncheck_urls({ urls: batch_of_100_urls })\n```\n\nCollect every batch\'s `results` entries into a single flat array. Order doesn\'t matter — you\'ll join back by `targetUrl`.\n\n**Rules for this step:**\n- Slice deterministically (e.g. consecutive slices of 100) so batches are disjoint. Do not pass the same URL in two batches.\n- Call `check_urls` sequentially or in parallel — your choice. The tool is idempotent.\n- If a single `check_urls` call errors entirely, skip that batch and continue with the others. Note the skipped count in the wrap-up summary.\n\n## Step 3 — Classify each finding\n\nFor every target with a check result, join the `collect_site_links` entry (for `scope`, `sourcePages`, `sourcePagesTotal`) with the `check_urls` entry (for `status`, `errorKind`, `chain`, `hops`).\n\nA finding is emitted for:\n- **Broken**: `status >= 400` OR `status === 0`\n- **Long redirect chain**: `hops > 3` (even if the final status is 2xx)\n\nOther targets (2xx, short-chain redirects) produce no finding.\n\nMap check result → `kind`:\n\n| Check result | `kind` |\n|---|---|\n| `status: 404` | `link-404` |\n| `status: 4xx` (not 404) | `link-4xx-other` |\n| `status: 5xx` | `link-5xx` |\n| `status: 0`, `errorKind: "dns"` | `link-dns-failure` |\n| `status: 0`, `errorKind: "redirect-loop"` | `redirect-loop` |\n| `hops > 3` (success final status) | `redirect-chain-long` |\n| `status: 0`, `errorKind: "timeout"` or `"connection"` | **skip — no finding** |\n\n**Important**: timeouts and connection errors are **not** broken links — they just mean the server didn\'t respond in our time window. Could be a slow server, an overloaded CDN, rate-limiting against our bot, or a transient network blip. Flagging these as broken produces false positives. If a URL is genuinely dead, it\'ll usually surface as `dns`, a 4xx/5xx, or a redirect loop. Skip timeout/connection entries silently.\n\n## Catalog of severity rules\n\n**High severity:**\n- `link-404` when `scope: "internal"`\n- `link-5xx` when `scope: "internal"`\n- `redirect-loop` (either scope)\n\n**Medium severity:**\n- `link-4xx-other` (internal)\n- `redirect-chain-long` (internal)\n- `link-404` (external) when `sourcePagesTotal >= 5`\n\n**Low severity:**\n- `link-404` (external) when `sourcePagesTotal < 5`\n- `link-dns-failure` (external)\n- `redirect-chain-long` (external)\n- `link-4xx-other` on external scope\n\n## Step 4 — Return a structured findings report\n\nReturn a single response with this shape (YAML preferred):\n\n```yaml\nspecialist: links\nsummary:\n pages_crawled: <pagesCrawled>\n pages_fetched: <pagesFetched>\n unique_link_targets: <links.length>\n targets_dropped_by_collect_cap: <linksSkipped>\n batches_checked: <n>\n batches_skipped_due_to_errors: <n>\n broken_links: <n> # internal + external\n long_redirect_chains: <n>\nfindings:\n - kind: <kind slug>\n severity: <low|medium|high>\n target:\n url: <full broken URL>\n route: <path if internal; otherwise the external host>\n scope: <internal | external>\n evidence: |\n - Status code / error: <e.g. `404 Not Found`, `DNS failure`, `redirect-loop`>\n - Redirect chain (if applicable): A → B → C → D → E\n - Found on pages (at time of detection):\n - /page-1\n - /page-2\n - (... up to 20 from `sourcePages`)\n - Total pages linking to this target: <sourcePagesTotal>\n impact: <1 sentence tailored to scope + kind>\n suggested_fix: |\n <actionable:>\n - If internal 404: update link to correct destination OR create 301 redirect\n - If internal 5xx: investigate server-side handler for the route (may be app bug)\n - If redirect chain: shorten to single-hop direct redirect in routing config\n - If external: update link to equivalent resource OR remove the mention\n - List likely files/components if you can infer (e.g. "appears on many pages — likely in a shared component like `app/components/Nav.tsx` or menu config")\n - ...\n```\n\nIf `collect_site_links` returned `error`, return a single `kind: site-unreachable` finding with the error in `evidence`.\n\nIf there are zero findings, return `findings: []` — that is the correct output for a healthy link graph.\n\n---\n\n## General rules\n\n- **Trust the scanner.** If `check_urls` reports a URL as broken or long-chain, emit a finding. Do not re-verify with other tools.\n- **Accept some flakiness.** A transient network blip may cause a false positive once. Downstream dedup across runs resolves it.\n- **Group by destination, not by origin.** One broken URL = one finding, even if linked on 50 pages. `collect_site_links` already returns it grouped this way.\n- **Prioritize internals.** Broken external links are the other site\'s responsibility; report but with lower severity.\n- **Never invent status codes.** Report what the scanner returned.\n',ev='# SEO Auditor\n\nYou are the **SEO Auditor**, a specialist agent focused on technical SEO hygiene.\n\n## Your mission\n\nAudit the on-page SEO health of target URLs and return a structured findings report. You focus on **technical SEO** (meta tags, structured data, canonicals, sitemap/robots, heading structure, indexability) — not editorial content or keyword strategy (those are the scope of other agents).\n\nYou are invoked as a sub-task by an orchestrator agent. Your job is to analyze and report. The orchestrator decides what to do with your findings (file issues, dedup against history, etc.).\n\n## Input (expect this in the prompt)\n\nThe orchestrator will pass per-site configuration. Expected fields:\n\n```yaml\nurls:\n - <url to audit>\n - <... one or more>\n```\n\nIf required fields are missing, return an error summary and stop — do not proceed with defaults or guess.\n\n## Available tools\n\n- **site-diagnostics MCP**: `audit_seo`, `fetch_page`, `render_page`, `crawl_site`\n\n---\n\n## Step 1 — Diagnostic\n\nFor each target URL:\n\n1. **Structured audit**: call `audit_seo({ url })`. It returns a structured report — use it as your primary source.\n2. **Raw HTML check**: use `fetch_page({ url })` to see the HTML served (important for crawlers that don\'t execute JS). Confirm critical meta tags are in the initial HTML, not only after hydration.\n3. **Post-render check**: use `render_page({ url })` to see the final DOM. Problems like canonical being overwritten by JS show up here.\n4. **Site structure checks** (only if you have permission for broad crawling, or via sampling): use `crawl_site` to identify orphan pages, canonical loops, or excessive navigation depth.\n5. **Always check**: `/robots.txt` and `/sitemap.xml` via `fetch_page`. These two are root-level and affect the whole site.\n\nOrganize findings into a list. Each finding must have:\n- `kind` (kebab-case slug, see catalog below)\n- `severity` (high | medium | low, see criteria below)\n- `target.url` and `target.route` (normalize: lowercase host, no query, no trailing slash except for `/`)\n- `evidence` (raw data: CSS selector, HTML snippet, observed value)\n- `impact` (1-2 sentences connecting to real metrics)\n- `suggested_fix` (actionable; include file/line if you can infer from framework patterns)\n\n## Step 1.5 — Validate page intent (critical; runs before classification)\n\nBefore you emit *any* finding about a page\'s title, meta description, headings, or indexability, you must answer one question: **did the site owner intend this URL to be a public, indexable page?**\n\nIf the answer is no, the observed "problems" are intentional configuration, not bugs. Reporting them wastes maintainer time and erodes this agent\'s credibility.\n\n### Three signals that the URL is NOT a real public page\n\nCheck these in order. Hitting any one of them means **skip all SEO findings for this URL** except legitimately site-wide problems (e.g. broken sitemap, broken robots.txt).\n\n**Signal 1 — Not in sitemap.** Fetch `/sitemap.xml` (and its child sitemaps, if it\'s a sitemap index). If the URL doesn\'t appear in any sitemap, the owner didn\'t declare it as public. Common on e-commerce platforms where routes like `/p`, `/c`, `/blog` are catchall or routing prefixes, not real pages.\n\n**Signal 2 — Explicit `noindex` + not in sitemap.** If the page serves `<meta name="robots" content="noindex*">` **and** isn\'t in the sitemap, this is a deliberate double-lock by the owner. Respect it. Do **not** flag `noindex-on-important-page` in this case.\n\n**Signal 3 — Title is the URL slug (template fallback).** If `<title>` equals the last path segment (e.g. `<title>blog</title>` for `/blog`, `<title>p</title>` for `/p`), the page is being rendered by a fallback template — nobody configured real content for this route. Skip.\n\n### Platform-specific catchalls (especially Brazilian e-commerce / VTEX / deco-cx)\n\nThese paths are routing prefixes, **not pages**. They may return HTTP 200 but are not meant to be indexable:\n\n- `/p`, `/c`, `/b` — VTEX product / category / brand route prefixes. Real pages live at `/<slug>/p`, `/<slug>/c`, etc. The bare prefixes are catchalls.\n- `/blog`, `/blogs`, `/editorial`, `/revista`, `/conteudo`, `/magazine`, `/noticias`, `/artigos` — common editorial prefixes. If the site doesn\'t have an editorial section, these hit a fallback.\n- `/search`, `/busca`, `/s` — search endpoints, not indexable pages.\n- `/departamento`, `/categoria` — category prefixes.\n- `/checkout`, `/cart`, `/carrinho`, `/login`, `/account`, `/minha-conta` — transactional/private routes. Intentionally `noindex`.\n\n### The "is this page actually important?" checklist\n\nBefore emitting a finding that calls a page "important" (like `noindex-on-important-page` or `title-missing` on anything critical):\n\n1. Is the URL in `/sitemap.xml`? → If no, skip.\n2. Does the page have substantive, unique content (not a fallback with title = URL slug)? → If no, skip.\n3. Is the path a known platform catchall (see list above)? → If yes, skip.\n\nOnly flag if all three pass.\n\n### What still counts as a finding even on non-indexable pages\n\nSite-wide SEO issues affect the whole domain and are worth reporting regardless of individual page intent:\n- `sitemap-missing` (the sitemap itself is broken)\n- `robots-blocking-important-path` (robots.txt blocks something that IS in the sitemap)\n- `structured-data-invalid` on pages that ARE in the sitemap\n- Duplicate titles / meta descriptions across pages that ARE in the sitemap\n\n## Catalog of `kind`\n\nTwo flavors of finding:\n\n- **Per-page** kinds — emitted when auditing a specific URL (e.g. `audit_seo` of a single page OR when your targeted inspection of one of the input URLs finds the issue). Marked **[intent-gated]** — must pass Step 1.5 before being emitted. Target is the specific URL.\n- **Aggregate** kinds — emitted once per site-wide pattern detected by `audit_seo`. Marked **[aggregate]**. Target is the site root (`/`). Evidence MUST include the affected URL sample from `audit_seo.issues[].sampleUrls`. One finding per aggregate kind per site.\n\n**High severity (per-page):**\n- `noindex-on-important-page` **[intent-gated]** — meta robots `noindex` on a page that IS in the sitemap and should be indexed\n- `canonical-pointing-to-wrong-url` **[intent-gated]** — canonical points to a different URL that isn\'t the canonical equivalent\n- `canonical-missing-on-paginated-or-faceted` **[intent-gated]** — pagination/filters without canonical\n- `title-missing` **[intent-gated]** — no `<title>` or empty on a page that IS in the sitemap\n- `structured-data-invalid` **[intent-gated]** — JSON-LD with syntax error or invalid schema.org\n\n**High severity (site-wide):**\n- `sitemap-missing` — `/sitemap.xml` returns 404 or 5xx\n- `robots-blocking-important-path` — `/robots.txt` disallows a path that IS in the sitemap\n- `broken-links-site-wide` **[aggregate]** — `audit_seo` reports broken outbound links across the site\n- `non-indexable-pages-site-wide` **[aggregate]** — `audit_seo` reports many non-indexable pages (note: some non-indexable pages are intentional catchalls — only high severity if the absolute count is large relative to `totalPagesCrawled`, e.g. > 30%)\n\n**Medium severity (per-page):**\n- `meta-description-missing` **[intent-gated]** — no `<meta name="description">` on a sitemap page the agent audited directly\n- `h1-missing` **[intent-gated]** — no `<h1>` on a sitemap page the agent audited directly\n- `h1-duplicate` **[intent-gated]** — multiple `<h1>` on a single page\n- `og-tags-missing` **[intent-gated]** — `og:title` and/or `og:description` missing\n- `structured-data-missing` **[intent-gated]** — page-type (product, article, etc.) without relevant JSON-LD\n- `title-too-long` **[intent-gated]** — `<title>` > 60 characters (truncation in SERP)\n- `title-too-short` **[intent-gated]** — `<title>` < 10 characters (rare; usually means template fallback — double-check page intent)\n- `meta-description-too-long` **[intent-gated]** — description > 160 characters\n\n**Medium severity (site-wide):**\n- `pages-missing-h1` **[aggregate]** — `audit_seo` reports N pages without an H1 tag\n- `pages-missing-meta-description` **[aggregate]** — `audit_seo` reports N pages without a meta description\n- `duplicate-titles` **[aggregate]** — multiple pages share the same `<title>`\n- `duplicate-meta-descriptions` **[aggregate]** — multiple pages share the same meta description\n- `duplicate-content` **[aggregate]** — multiple pages share substantially identical content\n- `broken-resources-site-wide` **[aggregate]** — broken images / scripts across the site\n- `hreflang-broken` — `hreflang` attribute with invalid value or broken reciprocity\n\n**Low severity (per-page):**\n- `meta-description-too-short` **[intent-gated]** — description < 50 characters\n- `og-image-missing` **[intent-gated]** — `og:image` missing\n- `heading-hierarchy-skipped` **[intent-gated]** — jumps from H1 to H3, etc.\n\n**Low severity (site-wide):**\n- `internal-link-using-absolute-url` — internal links with absolute URLs\n\n### Evidence requirements for aggregate kinds\n\nWhen emitting an `[aggregate]` kind, the `evidence` of the finding MUST include:\n\n1. **Total count** — from `audit_seo.issues[].count`\n2. **Sample URLs** — from `audit_seo.issues[].sampleUrls`. Render up to all 20 entries as a bulleted list. If `count > sampleUrls.length`, add a line like `(and <count - sampleUrls.length> more)`.\n3. **If `sampleUrls` is empty** (the tool didn\'t expose per-URL detail — happens for `broken-links-site-wide`, `duplicate-content`, `broken-resources-site-wide`), note it explicitly: `Note: audit_seo did not return per-URL detail for this issue type. A human will need to inspect the full audit_seo report or re-run with deeper crawling.`\n\nAn aggregate finding without either sample URLs or the note is **not actionable** and must not be emitted.\n\nTarget for aggregate kinds stays `target.url: https://<host>/` and `target.route: /`.\n\n## Step 2 — Return a structured findings report\n\nReturn a single response with this shape (YAML or JSON; YAML preferred for readability):\n\n```yaml\nspecialist: seo\nsummary:\n urls_audited: <n>\n findings: <n>\n diagnostic_failures: <n> # urls where audit tooling errored\nfindings:\n - kind: <kind slug>\n severity: <low|medium|high>\n target:\n url: <full URL>\n route: <normalized path>\n evidence: |\n <multi-line raw data: observed value, selector, HTML snippet, audit_seo output>\n impact: <1-2 sentences connecting to ranking/indexation/CTR>\n suggested_fix: <actionable; likely file/component, pseudo-code, correct value>\n - ...\n```\n\nIf a URL\'s diagnostic tooling errored entirely, emit a single `kind: diagnostic-failed` finding for that URL with the error in `evidence` instead of inventing data.\n\nIf there are zero findings, return `findings: []` — that is the correct output for healthy targets.\n\n---\n\n## General rules\n\n- **Never invent data in `evidence`.** If a tool failed, report it via `kind: diagnostic-failed` and skip the finding.\n- Always normalize `route`: lowercase host, no trailing slash (except for `/`), no query string, no fragment.\n- Your credibility is your currency. False positives erode trust — if you\'re 50% sure, don\'t emit a finding; investigate further or mark as `severity:low`.\n- **Never report a page as broken when it\'s a known catchall.** URLs like `/p`, `/c`, `/blog`, `/search`, `/busca` on e-commerce sites are routing prefixes, not pages. If the title is the URL slug and the page carries `noindex`, the owner is deliberately hiding it. That\'s correct behavior, not a bug.\n- **Sitemap is the ground truth for "is this page public?"**. When in doubt about whether to emit a finding on a URL, fall back to: "Is this URL in /sitemap.xml?" If not, default to silence.\n',tv=`# Performance Watchdog
|
|
259
|
+
Approach every request with rigor and intellectual honesty. Always surface what is uncertain or debated, not just what is known.`,J1=["Break any topic into key sub-questions and define scope","Synthesize information from multiple angles and sources","Distinguish facts, expert consensus, and contested claims","Identify gaps, contradictions, and emerging patterns","Deliver structured summaries with actionable insights"];function Ql(t){const e=B.c(7),{onRecruit:s,isRecruiting:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Add a Web Researcher agent that conducts thorough, rigorous research on any topic and delivers structured, actionable insights."}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("p",{className:"text-sm font-medium text-foreground",children:"Capabilities"}),e[1]=o):o=e[1];let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"space-y-2",children:[o,r.jsx("ul",{className:"space-y-1.5",children:J1.map(Q1)})]}),e[2]=a):a=e[2];const l=i?"Setting up...":"Add Web Researcher";let c;return e[3]!==i||e[4]!==s||e[5]!==l?(c=r.jsxs("div",{className:"flex flex-col gap-6",children:[n,a,r.jsx(oe,{onClick:s,disabled:i,className:"w-full cursor-pointer",children:l})]}),e[3]=i,e[4]=s,e[5]=l,e[6]=c):c=e[6],c}function Q1(t){return r.jsxs("li",{className:"text-sm text-muted-foreground flex items-start gap-2",children:[r.jsx("span",{className:"text-amber-500 mt-0.5 shrink-0",children:"+"}),t]},t)}function Qh({open:t,onOpenChange:e,existingAgent:s}){const i=ms(),n=Sr(),o=Oa(),[a,l]=j.useState(!1),c=jt.find(f=>f.id==="ai-research"),d=r.jsx(ps,{icon:c.icon,name:c.title,size:"sm"}),u=async()=>{if(s){e(!1),n(s.id);return}l(!0);try{const f=await o.create.mutateAsync({title:c.title,description:"Systematic research and information synthesis assistant",icon:c.icon,status:"active",connections:[],metadata:{type:"ai-research",instructions:X1}});re("agent_recruit_confirmed",{template_id:"ai-research",agent_id:f.id}),e(!1),n(f.id)}catch(f){re("agent_recruit_failed",{template_id:"ai-research",error:f instanceof Error?f.message:String(f)}),console.error("Failed to create Researcher agent:",f)}finally{l(!1)}},h=`Add ${c.title}`;return i?r.jsx(ri,{open:t,onOpenChange:e,children:r.jsxs(ii,{className:"h-[70dvh]",children:[r.jsx(An,{className:"px-4 pt-4 pb-4 shrink-0",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(si,{className:"text-xl font-semibold",children:h})]})}),r.jsx("div",{className:"flex flex-col flex-1 min-h-0 px-4 pb-8",children:r.jsx(Ql,{onRecruit:u,isRecruiting:a})})]})}):r.jsx(Bt,{open:t,onOpenChange:e,children:r.jsxs(Ot,{className:"sm:max-w-[500px] p-8",children:[r.jsx(Gt,{className:"mb-4",children:r.jsxs("div",{className:"flex items-center gap-3",children:[d,r.jsx(qt,{className:"text-xl font-semibold",children:h})]})}),r.jsx(Ql,{onRecruit:u,isRecruiting:a})]})})}const Z1='# Broken Link Finder\n\nYou are the **Broken Link Finder**, a specialist agent focused on the health of the site\'s link structure.\n\n## Your mission\n\nDiscover and track broken links and long redirect chains. You are invoked as a sub-task by an orchestrator agent — your job is to detect link health and return a structured findings report. The orchestrator decides what to do with your findings (file issues, dedup, etc.).\n\nYou are **mechanical**: collect → check → classify → emit findings. Leave subjective judgment to other agents.\n\n## Input (expect this in the prompt)\n\nThe orchestrator will pass per-site configuration. Expected fields:\n\n```yaml\nsite_root_url: <https://example.com>\nmax_pages: <optional integer, default 100, max 200>\ncheck_external: <optional bool, default false>\n```\n\nIf required fields are missing (`site_root_url`), return an error summary and stop — do not proceed with defaults or guess.\n\n## Available tools\n\n- **site-diagnostics MCP**:\n - `collect_site_links` — discovers all unique outbound link targets across the site and returns them with source-page attribution. Does NOT check status.\n - `check_urls` — takes a batch of URLs (max 100 per call) and returns their HTTP status, error kind, and redirect chains.\n\n---\n\n## Step 1 — Collect link targets (one call)\n\nCall `collect_site_links` once to get the full deduplicated list of outbound link targets and their source pages:\n\n```\ncollect_site_links({\n url: <site_root_url from input>,\n maxPages: <max_pages from input, default 100>,\n checkExternal: <check_external from input, default false>\n})\n```\n\nThis returns:\n- `links`: array of `{ targetUrl, scope: "internal"|"external", sourcePages, sourcePagesTotal }` — **each target appears exactly once**\n- Metadata: `pagesCrawled`, `pagesFetched`, `linksSkipped`, optional `error`\n\n**If `result.error` is set**, the scan failed at the root (e.g. site unreachable). Return a single finding with `kind: site-unreachable` and the error in `evidence`. Then stop.\n\nKeep the `links` array in memory — you\'ll need it in Step 3 for classification and source attribution.\n\n## Step 2 — Check the targets (batched calls)\n\nExtract `targetUrl` from each entry in `links`. Slice the resulting URL list into **disjoint batches of up to 100 URLs** and call `check_urls` on each batch:\n\n```\ncheck_urls({ urls: batch_of_100_urls })\n```\n\nCollect every batch\'s `results` entries into a single flat array. Order doesn\'t matter — you\'ll join back by `targetUrl`.\n\n**Rules for this step:**\n- Slice deterministically (e.g. consecutive slices of 100) so batches are disjoint. Do not pass the same URL in two batches.\n- Call `check_urls` sequentially or in parallel — your choice. The tool is idempotent.\n- If a single `check_urls` call errors entirely, skip that batch and continue with the others. Note the skipped count in the wrap-up summary.\n\n## Step 3 — Classify each finding\n\nFor every target with a check result, join the `collect_site_links` entry (for `scope`, `sourcePages`, `sourcePagesTotal`) with the `check_urls` entry (for `status`, `errorKind`, `chain`, `hops`).\n\nA finding is emitted for:\n- **Broken**: `status >= 400` OR `status === 0`\n- **Long redirect chain**: `hops > 3` (even if the final status is 2xx)\n\nOther targets (2xx, short-chain redirects) produce no finding.\n\nMap check result → `kind`:\n\n| Check result | `kind` |\n|---|---|\n| `status: 404` | `link-404` |\n| `status: 4xx` (not 404) | `link-4xx-other` |\n| `status: 5xx` | `link-5xx` |\n| `status: 0`, `errorKind: "dns"` | `link-dns-failure` |\n| `status: 0`, `errorKind: "redirect-loop"` | `redirect-loop` |\n| `hops > 3` (success final status) | `redirect-chain-long` |\n| `status: 0`, `errorKind: "timeout"` or `"connection"` | **skip — no finding** |\n\n**Important**: timeouts and connection errors are **not** broken links — they just mean the server didn\'t respond in our time window. Could be a slow server, an overloaded CDN, rate-limiting against our bot, or a transient network blip. Flagging these as broken produces false positives. If a URL is genuinely dead, it\'ll usually surface as `dns`, a 4xx/5xx, or a redirect loop. Skip timeout/connection entries silently.\n\n## Catalog of severity rules\n\n**High severity:**\n- `link-404` when `scope: "internal"`\n- `link-5xx` when `scope: "internal"`\n- `redirect-loop` (either scope)\n\n**Medium severity:**\n- `link-4xx-other` (internal)\n- `redirect-chain-long` (internal)\n- `link-404` (external) when `sourcePagesTotal >= 5`\n\n**Low severity:**\n- `link-404` (external) when `sourcePagesTotal < 5`\n- `link-dns-failure` (external)\n- `redirect-chain-long` (external)\n- `link-4xx-other` on external scope\n\n## Step 4 — Return a structured findings report\n\nReturn a single response with this shape (YAML preferred):\n\n```yaml\nspecialist: links\nsummary:\n pages_crawled: <pagesCrawled>\n pages_fetched: <pagesFetched>\n unique_link_targets: <links.length>\n targets_dropped_by_collect_cap: <linksSkipped>\n batches_checked: <n>\n batches_skipped_due_to_errors: <n>\n broken_links: <n> # internal + external\n long_redirect_chains: <n>\nfindings:\n - kind: <kind slug>\n severity: <low|medium|high>\n target:\n url: <full broken URL>\n route: <path if internal; otherwise the external host>\n scope: <internal | external>\n evidence: |\n - Status code / error: <e.g. `404 Not Found`, `DNS failure`, `redirect-loop`>\n - Redirect chain (if applicable): A → B → C → D → E\n - Found on pages (at time of detection):\n - /page-1\n - /page-2\n - (... up to 20 from `sourcePages`)\n - Total pages linking to this target: <sourcePagesTotal>\n impact: <1 sentence tailored to scope + kind>\n suggested_fix: |\n <actionable:>\n - If internal 404: update link to correct destination OR create 301 redirect\n - If internal 5xx: investigate server-side handler for the route (may be app bug)\n - If redirect chain: shorten to single-hop direct redirect in routing config\n - If external: update link to equivalent resource OR remove the mention\n - List likely files/components if you can infer (e.g. "appears on many pages — likely in a shared component like `app/components/Nav.tsx` or menu config")\n - ...\n```\n\nIf `collect_site_links` returned `error`, return a single `kind: site-unreachable` finding with the error in `evidence`.\n\nIf there are zero findings, return `findings: []` — that is the correct output for a healthy link graph.\n\n---\n\n## General rules\n\n- **Trust the scanner.** If `check_urls` reports a URL as broken or long-chain, emit a finding. Do not re-verify with other tools.\n- **Accept some flakiness.** A transient network blip may cause a false positive once. Downstream dedup across runs resolves it.\n- **Group by destination, not by origin.** One broken URL = one finding, even if linked on 50 pages. `collect_site_links` already returns it grouped this way.\n- **Prioritize internals.** Broken external links are the other site\'s responsibility; report but with lower severity.\n- **Never invent status codes.** Report what the scanner returned.\n',ev='# SEO Auditor\n\nYou are the **SEO Auditor**, a specialist agent focused on technical SEO hygiene.\n\n## Your mission\n\nAudit the on-page SEO health of target URLs and return a structured findings report. You focus on **technical SEO** (meta tags, structured data, canonicals, sitemap/robots, heading structure, indexability) — not editorial content or keyword strategy (those are the scope of other agents).\n\nYou are invoked as a sub-task by an orchestrator agent. Your job is to analyze and report. The orchestrator decides what to do with your findings (file issues, dedup against history, etc.).\n\n## Input (expect this in the prompt)\n\nThe orchestrator will pass per-site configuration. Expected fields:\n\n```yaml\nurls:\n - <url to audit>\n - <... one or more>\n```\n\nIf required fields are missing, return an error summary and stop — do not proceed with defaults or guess.\n\n## Available tools\n\n- **site-diagnostics MCP**: `audit_seo`, `fetch_page`, `render_page`, `crawl_site`\n\n---\n\n## Step 1 — Diagnostic\n\nFor each target URL:\n\n1. **Structured audit**: call `audit_seo({ url })`. It returns a structured report — use it as your primary source.\n2. **Raw HTML check**: use `fetch_page({ url })` to see the HTML served (important for crawlers that don\'t execute JS). Confirm critical meta tags are in the initial HTML, not only after hydration.\n3. **Post-render check**: use `render_page({ url })` to see the final DOM. Problems like canonical being overwritten by JS show up here.\n4. **Site structure checks** (only if you have permission for broad crawling, or via sampling): use `crawl_site` to identify orphan pages, canonical loops, or excessive navigation depth.\n5. **Always check**: `/robots.txt` and `/sitemap.xml` via `fetch_page`. These two are root-level and affect the whole site.\n\nOrganize findings into a list. Each finding must have:\n- `kind` (kebab-case slug, see catalog below)\n- `severity` (high | medium | low, see criteria below)\n- `target.url` and `target.route` (normalize: lowercase host, no query, no trailing slash except for `/`)\n- `evidence` (raw data: CSS selector, HTML snippet, observed value)\n- `impact` (1-2 sentences connecting to real metrics)\n- `suggested_fix` (actionable; include file/line if you can infer from framework patterns)\n\n## Step 1.5 — Validate page intent (critical; runs before classification)\n\nBefore you emit *any* finding about a page\'s title, meta description, headings, or indexability, you must answer one question: **did the site owner intend this URL to be a public, indexable page?**\n\nIf the answer is no, the observed "problems" are intentional configuration, not bugs. Reporting them wastes maintainer time and erodes this agent\'s credibility.\n\n### Three signals that the URL is NOT a real public page\n\nCheck these in order. Hitting any one of them means **skip all SEO findings for this URL** except legitimately site-wide problems (e.g. broken sitemap, broken robots.txt).\n\n**Signal 1 — Not in sitemap.** Fetch `/sitemap.xml` (and its child sitemaps, if it\'s a sitemap index). If the URL doesn\'t appear in any sitemap, the owner didn\'t declare it as public. Common on e-commerce platforms where routes like `/p`, `/c`, `/blog` are catchall or routing prefixes, not real pages.\n\n**Signal 2 — Explicit `noindex` + not in sitemap.** If the page serves `<meta name="robots" content="noindex*">` **and** isn\'t in the sitemap, this is a deliberate double-lock by the owner. Respect it. Do **not** flag `noindex-on-important-page` in this case.\n\n**Signal 3 — Title is the URL slug (template fallback).** If `<title>` equals the last path segment (e.g. `<title>blog</title>` for `/blog`, `<title>p</title>` for `/p`), the page is being rendered by a fallback template — nobody configured real content for this route. Skip.\n\n### Platform-specific catchalls (especially Brazilian e-commerce / VTEX / deco-cx)\n\nThese paths are routing prefixes, **not pages**. They may return HTTP 200 but are not meant to be indexable:\n\n- `/p`, `/c`, `/b` — VTEX product / category / brand route prefixes. Real pages live at `/<slug>/p`, `/<slug>/c`, etc. The bare prefixes are catchalls.\n- `/blog`, `/blogs`, `/editorial`, `/revista`, `/conteudo`, `/magazine`, `/noticias`, `/artigos` — common editorial prefixes. If the site doesn\'t have an editorial section, these hit a fallback.\n- `/search`, `/busca`, `/s` — search endpoints, not indexable pages.\n- `/departamento`, `/categoria` — category prefixes.\n- `/checkout`, `/cart`, `/carrinho`, `/login`, `/account`, `/minha-conta` — transactional/private routes. Intentionally `noindex`.\n\n### The "is this page actually important?" checklist\n\nBefore emitting a finding that calls a page "important" (like `noindex-on-important-page` or `title-missing` on anything critical):\n\n1. Is the URL in `/sitemap.xml`? → If no, skip.\n2. Does the page have substantive, unique content (not a fallback with title = URL slug)? → If no, skip.\n3. Is the path a known platform catchall (see list above)? → If yes, skip.\n\nOnly flag if all three pass.\n\n### What still counts as a finding even on non-indexable pages\n\nSite-wide SEO issues affect the whole domain and are worth reporting regardless of individual page intent:\n- `sitemap-missing` (the sitemap itself is broken)\n- `robots-blocking-important-path` (robots.txt blocks something that IS in the sitemap)\n- `structured-data-invalid` on pages that ARE in the sitemap\n- Duplicate titles / meta descriptions across pages that ARE in the sitemap\n\n## Catalog of `kind`\n\nTwo flavors of finding:\n\n- **Per-page** kinds — emitted when auditing a specific URL (e.g. `audit_seo` of a single page OR when your targeted inspection of one of the input URLs finds the issue). Marked **[intent-gated]** — must pass Step 1.5 before being emitted. Target is the specific URL.\n- **Aggregate** kinds — emitted once per site-wide pattern detected by `audit_seo`. Marked **[aggregate]**. Target is the site root (`/`). Evidence MUST include the affected URL sample from `audit_seo.issues[].sampleUrls`. One finding per aggregate kind per site.\n\n**High severity (per-page):**\n- `noindex-on-important-page` **[intent-gated]** — meta robots `noindex` on a page that IS in the sitemap and should be indexed\n- `canonical-pointing-to-wrong-url` **[intent-gated]** — canonical points to a different URL that isn\'t the canonical equivalent\n- `canonical-missing-on-paginated-or-faceted` **[intent-gated]** — pagination/filters without canonical\n- `title-missing` **[intent-gated]** — no `<title>` or empty on a page that IS in the sitemap\n- `structured-data-invalid` **[intent-gated]** — JSON-LD with syntax error or invalid schema.org\n\n**High severity (site-wide):**\n- `sitemap-missing` — `/sitemap.xml` returns 404 or 5xx\n- `robots-blocking-important-path` — `/robots.txt` disallows a path that IS in the sitemap\n- `broken-links-site-wide` **[aggregate]** — `audit_seo` reports broken outbound links across the site\n- `non-indexable-pages-site-wide` **[aggregate]** — `audit_seo` reports many non-indexable pages (note: some non-indexable pages are intentional catchalls — only high severity if the absolute count is large relative to `totalPagesCrawled`, e.g. > 30%)\n\n**Medium severity (per-page):**\n- `meta-description-missing` **[intent-gated]** — no `<meta name="description">` on a sitemap page the agent audited directly\n- `h1-missing` **[intent-gated]** — no `<h1>` on a sitemap page the agent audited directly\n- `h1-duplicate` **[intent-gated]** — multiple `<h1>` on a single page\n- `og-tags-missing` **[intent-gated]** — `og:title` and/or `og:description` missing\n- `structured-data-missing` **[intent-gated]** — page-type (product, article, etc.) without relevant JSON-LD\n- `title-too-long` **[intent-gated]** — `<title>` > 60 characters (truncation in SERP)\n- `title-too-short` **[intent-gated]** — `<title>` < 10 characters (rare; usually means template fallback — double-check page intent)\n- `meta-description-too-long` **[intent-gated]** — description > 160 characters\n\n**Medium severity (site-wide):**\n- `pages-missing-h1` **[aggregate]** — `audit_seo` reports N pages without an H1 tag\n- `pages-missing-meta-description` **[aggregate]** — `audit_seo` reports N pages without a meta description\n- `duplicate-titles` **[aggregate]** — multiple pages share the same `<title>`\n- `duplicate-meta-descriptions` **[aggregate]** — multiple pages share the same meta description\n- `duplicate-content` **[aggregate]** — multiple pages share substantially identical content\n- `broken-resources-site-wide` **[aggregate]** — broken images / scripts across the site\n- `hreflang-broken` — `hreflang` attribute with invalid value or broken reciprocity\n\n**Low severity (per-page):**\n- `meta-description-too-short` **[intent-gated]** — description < 50 characters\n- `og-image-missing` **[intent-gated]** — `og:image` missing\n- `heading-hierarchy-skipped` **[intent-gated]** — jumps from H1 to H3, etc.\n\n**Low severity (site-wide):**\n- `internal-link-using-absolute-url` — internal links with absolute URLs\n\n### Evidence requirements for aggregate kinds\n\nWhen emitting an `[aggregate]` kind, the `evidence` of the finding MUST include:\n\n1. **Total count** — from `audit_seo.issues[].count`\n2. **Sample URLs** — from `audit_seo.issues[].sampleUrls`. Render up to all 20 entries as a bulleted list. If `count > sampleUrls.length`, add a line like `(and <count - sampleUrls.length> more)`.\n3. **If `sampleUrls` is empty** (the tool didn\'t expose per-URL detail — happens for `broken-links-site-wide`, `duplicate-content`, `broken-resources-site-wide`), note it explicitly: `Note: audit_seo did not return per-URL detail for this issue type. A human will need to inspect the full audit_seo report or re-run with deeper crawling.`\n\nAn aggregate finding without either sample URLs or the note is **not actionable** and must not be emitted.\n\nTarget for aggregate kinds stays `target.url: https://<host>/` and `target.route: /`.\n\n## Step 2 — Return a structured findings report\n\nReturn a single response with this shape (YAML or JSON; YAML preferred for readability):\n\n```yaml\nspecialist: seo\nsummary:\n urls_audited: <n>\n findings: <n>\n diagnostic_failures: <n> # urls where audit tooling errored\nfindings:\n - kind: <kind slug>\n severity: <low|medium|high>\n target:\n url: <full URL>\n route: <normalized path>\n evidence: |\n <multi-line raw data: observed value, selector, HTML snippet, audit_seo output>\n impact: <1-2 sentences connecting to ranking/indexation/CTR>\n suggested_fix: <actionable; likely file/component, pseudo-code, correct value>\n - ...\n```\n\nIf a URL\'s diagnostic tooling errored entirely, emit a single `kind: diagnostic-failed` finding for that URL with the error in `evidence` instead of inventing data.\n\nIf there are zero findings, return `findings: []` — that is the correct output for healthy targets.\n\n---\n\n## General rules\n\n- **Never invent data in `evidence`.** If a tool failed, report it via `kind: diagnostic-failed` and skip the finding.\n- Always normalize `route`: lowercase host, no trailing slash (except for `/`), no query string, no fragment.\n- Your credibility is your currency. False positives erode trust — if you\'re 50% sure, don\'t emit a finding; investigate further or mark as `severity:low`.\n- **Never report a page as broken when it\'s a known catchall.** URLs like `/p`, `/c`, `/blog`, `/search`, `/busca` on e-commerce sites are routing prefixes, not pages. If the title is the URL slug and the page carries `noindex`, the owner is deliberately hiding it. That\'s correct behavior, not a bug.\n- **Sitemap is the ground truth for "is this page public?"**. When in doubt about whether to emit a finding on a URL, fall back to: "Is this URL in /sitemap.xml?" If not, default to silence.\n',tv=`# Performance Watchdog
|
|
260
260
|
|
|
261
261
|
You are the **Performance Watchdog**, a specialist agent focused on web performance.
|
|
262
262
|
|
|
@@ -545,8 +545,8 @@ target:
|
|
|
545
545
|
• One issue per { kind, target.route } pair. Dedup uses those two fields from the body frontmatter.
|
|
546
546
|
• Always normalize route: lowercase host, no trailing slash (except "/"), no query string, no fragment.`)])),{type:"doc",content:c.map((d,u)=>u<c.length-1?rv(d):d)}}function rv(t){const e=t.content;if(!e||e.length===0)return t;const s=e[e.length-1];return!s||s.type!=="text"||typeof s.text!="string"?t:{...t,content:[...e.slice(0,-1),{...s,text:`${s.text}
|
|
547
547
|
|
|
548
|
-
`}]}}function Ws(t){return{type:"paragraph",content:t}}function Cs(t){return{type:"text",text:t}}function nv({agentId:t,title:e}){return{type:"mention",attrs:{id:t,name:e,char:"@",metadata:{agentId:t,title:e}}}}const qi="deco/site-diagnostics";function Qh(t){const e=B.c(15),{open:s,onOpenChange:i}=t,[n,o]=j.useState(null);let a;e[0]!==i?(a=()=>{o(null),i(!1)},e[0]=i,e[1]=a):a=e[1];const l=a,c=s&&n===null;let d;e[2]!==n||e[3]!==i?(d=p=>{!p&&n===null&&i(!1)},e[2]=n,e[3]=i,e[4]=d):d=e[4];let u;e[5]!==c||e[6]!==d?(u=r.jsx(hh,{open:c,onOpenChange:d,title:"Set up self-healing repo",hideAutoRespondCheckbox:!0,onImportComplete:o}),e[5]=c,e[6]=d,e[7]=u):u=e[7];const h=s&&n!==null;let f;e[8]!==l||e[9]!==n||e[10]!==h?(f=r.jsx(ov,{open:h,payload:n,onClose:l}),e[8]=l,e[9]=n,e[10]=h,e[11]=f):f=e[11];let m;return e[12]!==u||e[13]!==f?(m=r.jsxs(r.Fragment,{children:[u,f]}),e[12]=u,e[13]=f,e[14]=m):m=e[14],m}function ov(t){const e=B.c(66),{open:s,payload:i,onClose:n}=t,{org:o}=xe(),a=Sr(),l=Mn();let c;e[0]!==o.id?(c={connectionId:yt,orgId:o.id},e[0]=o.id,e[1]=c):c=e[1];const d=Ae(c),[u,h]=j.useState(""),[f,m]=j.useState(cv);let p;e[2]!==s?(p={enabled:s},e[2]=s,e[3]=p):p=e[3];const{data:g}=Hp(qi,p);let _;e[4]!==l||e[5]!==f||e[6]!==i||e[7]!==d||e[8]!==g||e[9]!==u?(_=async()=>{if(!i)throw new Error("No imported repo payload");const X=Zl(u);if(!X)throw new Error("Enter a valid https:// URL");const K=Oo.filter(J=>f[J.id]);if(K.length===0)return{succeeded:[],failed:[]};const G=await fv({selfClient:d,createConnection:l.create.mutateAsync,registry:g}),ie=[],te=[];for(const J of K)try{await mv({template:J,selfClient:d,siteDiagnosticsConnectionId:G,projectAgentId:i.virtualMcpId,owner:i.repo.owner,repo:i.repo.name,siteRootUrl:X}),ie.push(J.title)}catch(ae){const Z=ae;console.error(`Failed to set up ${J.title}:`,Z),te.push(J.title)}return{succeeded:ie,failed:te}},e[4]=l,e[5]=f,e[6]=i,e[7]=d,e[8]=g,e[9]=u,e[10]=_):_=e[10];let v;e[11]!==a||e[12]!==n||e[13]!==i?.virtualMcpId?(v=X=>{const{succeeded:K,failed:G}=X;K.length>0?he.success(`Self-healing repo ready — ${K.length} specialist${K.length>1?"s":""} set up`):G.length===0&&he.success("Repo imported. Add specialists later from automations."),G.length>0&&he.warning(`Could not set up: ${G.join(", ")}. You can add them later from the automations view.`);const ie=i?.virtualMcpId;n(),localStorage.setItem("mesh:sidebar-open",JSON.stringify(!1)),ie&&a(ie)},e[11]=a,e[12]=n,e[13]=i?.virtualMcpId,e[14]=v):v=e[14];let x;e[15]!==_||e[16]!==v?(x={mutationFn:_,onSuccess:v,onError:lv},e[15]=_,e[16]=v,e[17]=x):x=e[17];const b=Ni(x);let y;e[18]!==b.isPending||e[19]!==u?(y=Zl(u)!==null&&!b.isPending,e[18]=b.isPending,e[19]=u,e[20]=y):y=e[20];const V=y;let C;e[21]!==n||e[22]!==b.isPending?(C=X=>{!X&&!b.isPending&&n()},e[21]=n,e[22]=b.isPending,e[23]=C):C=e[23];let S;e[24]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Gt,{className:"h-12 border-b border-border px-4 flex flex-row items-center shrink-0 space-y-0",children:r.jsx(qt,{className:"text-sm font-medium text-foreground",children:"Add specialist monitors"})}),e[24]=S):S=e[24];let w;e[25]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Specialists run on a daily schedule. Your repo agent collects their findings and opens GitHub issues, then writes the fixes."}),e[25]=w):w=e[25];let k;e[26]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx("label",{htmlFor:"self-healing-site-url",className:"text-xs font-medium text-foreground",children:"Production URL"}),e[26]=k):k=e[26];let T;e[27]===Symbol.for("react.memo_cache_sentinel")?(T=X=>h(X.target.value),e[27]=T):T=e[27];let M;e[28]!==u?(M=r.jsx(at,{id:"self-healing-site-url",type:"url",placeholder:"https://example.com",value:u,onChange:T,autoFocus:!0}),e[28]=u,e[29]=M):M=e[29];let I;e[30]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx("p",{className:"text-xs text-muted-foreground",children:"The site the specialists will monitor."}),e[30]=I):I=e[30];let E;e[31]!==M?(E=r.jsxs("div",{className:"flex flex-col gap-1.5",children:[k,M,I]}),e[31]=M,e[32]=E):E=e[32];let N;e[33]!==f?(N=Oo.map(X=>r.jsx(dv,{template:X,enabled:f[X.id]??!1,onToggle:K=>m(G=>({...G,[X.id]:K}))},X.id)),e[33]=f,e[34]=N):N=e[34];let A,D;e[35]===Symbol.for("react.memo_cache_sentinel")?(A=sv.map(av),D=r.jsx(uv,{}),e[35]=A,e[36]=D):(A=e[35],D=e[36]);let L;e[37]!==N?(L=r.jsxs("div",{className:"flex flex-col gap-2",children:[N,A,D]}),e[37]=N,e[38]=L):L=e[38];let R;e[39]!==E||e[40]!==L?(R=r.jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 flex flex-col gap-4",children:[w,E,L]}),e[39]=E,e[40]=L,e[41]=R):R=e[41];let P;e[42]!==a||e[43]!==n||e[44]!==i?.virtualMcpId||e[45]!==b.isPending?(P=()=>{if(!b.isPending){const X=i?.virtualMcpId;n(),X&&a(X)}},e[42]=a,e[43]=n,e[44]=i?.virtualMcpId,e[45]=b.isPending,e[46]=P):P=e[46];let O;e[47]!==b.isPending||e[48]!==P?(O=r.jsx("button",{type:"button",onClick:P,disabled:b.isPending,className:"text-xs text-muted-foreground hover:text-foreground transition-colors disabled:opacity-50 cursor-pointer",children:"Skip for now"}),e[47]=b.isPending,e[48]=P,e[49]=O):O=e[49];let z;e[50]!==b?(z=()=>b.mutate(),e[50]=b,e[51]=z):z=e[51];const $=!V,q=b.isPending?"Setting up...":"Set up specialists";let F;e[52]!==z||e[53]!==$||e[54]!==q?(F=r.jsx(oe,{onClick:z,disabled:$,size:"sm",children:q}),e[52]=z,e[53]=$,e[54]=q,e[55]=F):F=e[55];let W;e[56]!==O||e[57]!==F?(W=r.jsxs("div",{className:"border-t border-border px-4 py-3 flex items-center justify-between gap-3 shrink-0",children:[O,F]}),e[56]=O,e[57]=F,e[58]=W):W=e[58];let H;e[59]!==R||e[60]!==W?(H=r.jsxs(Ot,{className:"sm:max-w-[560px] max-h-[85svh] p-0 gap-0 overflow-hidden flex flex-col",children:[S,R,W]}),e[59]=R,e[60]=W,e[61]=H):H=e[61];let U;return e[62]!==s||e[63]!==H||e[64]!==C?(U=r.jsx(Bt,{open:s,onOpenChange:C,children:H}),e[62]=s,e[63]=H,e[64]=C,e[65]=U):U=e[65],U}function av(t){return r.jsx(hv,{title:t.title,description:t.description,icon:t.icon},t.id)}function lv(t){he.error("Failed to set up specialists: "+(t instanceof Error?t.message:"Unknown error"))}function cv(){const t={};for(const e of Oo)t[e.id]=!0;return t}function dv(t){const e=B.c(20),{template:s,enabled:i,onToggle:n}=t,o=i?"bg-accent/30":"hover:bg-accent/30";let a;e[0]!==o?(a=Y("flex items-center gap-3 rounded-lg border border-border px-3 py-3 cursor-pointer transition-colors",o),e[0]=o,e[1]=a):a=e[1];let l;e[2]!==s.icon||e[3]!==s.title?(l=r.jsx(Qt,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[2]=s.icon,e[3]=s.title,e[4]=l):l=e[4];let c;e[5]!==s.title?(c=r.jsx("span",{className:"text-sm font-medium text-foreground leading-tight",children:s.title}),e[5]=s.title,e[6]=c):c=e[6];let d;e[7]!==s.description?(d=r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[7]=s.description,e[8]=d):d=e[8];let u;e[9]!==c||e[10]!==d?(u=r.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[c,d]}),e[9]=c,e[10]=d,e[11]=u):u=e[11];let h;e[12]!==i||e[13]!==n?(h=r.jsx(mn,{checked:i,onCheckedChange:n,className:"shrink-0"}),e[12]=i,e[13]=n,e[14]=h):h=e[14];let f;return e[15]!==a||e[16]!==l||e[17]!==u||e[18]!==h?(f=r.jsxs("label",{className:a,children:[l,u,h]}),e[15]=a,e[16]=l,e[17]=u,e[18]=h,e[19]=f):f=e[19],f}function hv(t){const e=B.c(14),{title:s,description:i,icon:n}=t;let o;e[0]!==n||e[1]!==s?(o=r.jsx(Qt,{icon:n,name:s,size:"sm",className:"shrink-0"}),e[0]=n,e[1]=s,e[2]=o):o=e[2];let a;e[3]!==s?(a=r.jsx("span",{className:"text-sm font-medium text-foreground leading-tight",children:s}),e[3]=s,e[4]=a):a=e[4];let l;e[5]!==i?(l=r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:i}),e[5]=i,e[6]=l):l=e[6];let c;e[7]!==a||e[8]!==l?(c=r.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[a,l]}),e[7]=a,e[8]=l,e[9]=c):c=e[9];let d;e[10]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("span",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground shrink-0",children:"Coming soon"}),e[10]=d):d=e[10];let u;return e[11]!==o||e[12]!==c?(u=r.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-dashed border-border px-3 py-3 opacity-60",children:[o,c,d]}),e[11]=o,e[12]=c,e[13]=u):u=e[13],u}function uv(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center justify-center rounded-lg border border-dashed border-border px-3 py-3 text-xs text-muted-foreground",children:"More specialists coming soon"}),t[0]=e):e=t[0],e}function Zl(t){const e=t.trim();if(!e)return null;try{const s=new URL(e);return s.protocol!=="https:"&&s.protocol!=="http:"?null:s.origin+(s.pathname==="/"?"":s.pathname)}catch{return null}}async function fv({selfClient:t,createConnection:e,registry:s}){const n=(await t.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{where:{field:["app_id"],operator:"eq",value:qi},limit:1,offset:0}})).structuredContent?.items?.find(u=>u.app_id===qi);if(n)return n.id;const o=s?.server?.remotes?.[0]?.url;if(!o)throw new Error("Site Diagnostics MCP is not available in the registry right now.");const a=s?.title??s?.server?.title??s?.server?.name??"Site Diagnostics",l=s?.server?.icons?.[0]?.src??null,c=s?.server?.description??null;return(await e({title:a,description:c,icon:l,connection_type:"HTTP",connection_url:o,app_name:s?.server?.name??"site-diagnostics",app_id:qi,metadata:{type:"site-diagnostics",source:"store",registry_item_id:qi,verified:!0}})).id}async function mv({template:t,selfClient:e,siteDiagnosticsConnectionId:s,projectAgentId:i,owner:n,repo:o,siteRootUrl:a}){const l=`${o}: ${t.title}`,d=(await e.callTool({name:"AUTOMATION_LIST",arguments:{virtual_mcp_id:i}})).structuredContent?.automations?.find(h=>h.name===l);let u;if(!(d&&d.trigger_count>0)){if(d)u=d.id;else{const h=await pv({template:t,selfClient:e,siteDiagnosticsConnectionId:s}),f=iv({template:t,specialistAgentId:h,owner:n,repo:o,siteRootUrl:a}),m=jd(f),p=await e.callTool({name:"AUTOMATION_CREATE",arguments:{name:l,virtual_mcp_id:i,agent:{id:i},messages:m,active:!0}});u=(p.structuredContent??p).id}await e.callTool({name:"AUTOMATION_TRIGGER_ADD",arguments:{automation_id:u,type:"cron",cron_expression:t.cron}})}}async function pv({template:t,selfClient:e,siteDiagnosticsConnectionId:s}){const n=(await e.callTool({name:"COLLECTION_VIRTUAL_MCP_LIST",arguments:{where:{field:["metadata","specialistId"],operator:"eq",value:t.id},limit:1,offset:0}})).structuredContent?.items?.find(l=>l.metadata?.specialistId===t.id);if(n)return n.id;const o=await e.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:t.title,description:t.description,icon:t.icon,pinned:!1,metadata:{specialistId:t.id,instructions:t.instructions},connections:[{connection_id:s,selected_tools:t.siteDiagnosticsTools,selected_resources:null,selected_prompts:null}]}}});return(o.structuredContent??o).item.id}function gv(t){try{const e=localStorage.getItem(`mesh:chat:recent-agents:${t}`);return e?JSON.parse(e):[]}catch{return[]}}const _v=8;function ec(t){const e=B.c(21),{agent:s,onSpecialClick:i,tracking:n}=t,{org:o}=xe(),a=Oe();let l;e[0]!==s.id||e[1]!==s.title||e[2]!==a||e[3]!==i||e[4]!==o||e[5]!==n.action||e[6]!==n.template_id||e[7]!==n.tile_kind?(l=()=>{if(re("home_agent_tile_clicked",{template_id:n.template_id,agent_id:s.id,agent_title:s.title,tile_kind:n.tile_kind,action:n.action}),i)i();else{const g=crypto.randomUUID();a({to:"/$org/$taskId",params:{org:o.slug,taskId:g},search:{virtualmcpid:s.id}})}},e[0]=s.id,e[1]=s.title,e[2]=a,e[3]=i,e[4]=o,e[5]=n.action,e[6]=n.template_id,e[7]=n.tile_kind,e[8]=l):l=e[8];const c=l;let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group"),e[9]=d):d=e[9];const u=`Select agent ${s.title}`;let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx(Dn,{size:24}),e[10]=h):h=e[10];let f;e[11]!==s.icon||e[12]!==s.title?(f=r.jsx(ps,{icon:s.icon,name:s.title,size:"md",fallbackIcon:h,className:"transition-transform group-hover:scale-110"}),e[11]=s.icon,e[12]=s.title,e[13]=f):f=e[13];let m;e[14]!==s.title?(m=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight line-clamp-2 break-words w-full",children:s.title}),e[14]=s.title,e[15]=m):m=e[15];let p;return e[16]!==c||e[17]!==u||e[18]!==f||e[19]!==m?(p=r.jsxs("button",{type:"button",onClick:c,className:d,"aria-label":u,children:[f,m]}),e[16]=c,e[17]=u,e[18]=f,e[19]=m,e[20]=p):p=e[20],p}function xv(){const t=B.c(8),e=Oe(),{org:s}=xe();let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group"),t[0]=i):i=t[0];let n;t[1]!==e||t[2]!==s.slug?(n=()=>{re("home_see_all_agents_clicked"),e({to:"/$org/settings/agents",params:{org:s.slug}})},t[1]=e,t[2]=s.slug,t[3]=n):n=t[3];let o,a;t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"size-12 rounded-xl bg-accent flex items-center justify-center shrink-0 transition-transform group-hover:scale-110",children:r.jsx($a,{size:20,className:"text-foreground"})}),a=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight",children:"See all"}),t[4]=o,t[5]=a):(o=t[4],a=t[5]);let l;return t[6]!==n?(l=r.jsxs("button",{type:"button",className:i,"aria-label":"See all agents",onClick:n,children:[o,a]}),t[6]=n,t[7]=l):l=t[7],l}function vv(){const t=B.c(9);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={navigateOnCreate:!0},t[0]=e):e=t[0];const{createVirtualMCP:s,isCreating:i}=_h(e);let n;t[1]!==s?(n=()=>{re("home_create_agent_clicked"),s()},t[1]=s,t[2]=n):n=t[2];let o;t[3]===Symbol.for("react.memo_cache_sentinel")?(o=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group","disabled:opacity-50 disabled:cursor-not-allowed"),t[3]=o):o=t[3];let a,l;t[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"size-12 rounded-xl bg-background border-2 border-dashed border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-110",children:r.jsx(Dt,{size:20,className:"text-muted-foreground"})}),l=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight",children:"Create agent"}),t[4]=a,t[5]=l):(a=t[4],l=t[5]);let c;return t[6]!==i||t[7]!==n?(c=r.jsxs("button",{type:"button",onClick:n,disabled:i,className:o,"aria-label":"Create agent",children:[a,l]}),t[6]=i,t[7]=n,t[8]=c):c=t[8],c}function Br(t,e,s){return t.find(i=>i.id!==null&&(i.metadata?.type===e||i.title===s))}function bv(){const t=B.c(52),e=Rn(),{locator:s}=xe(),i=Up(),[n,o]=j.useState(!1),[a,l]=j.useState(!1),[c,d]=j.useState(!1),[u,h]=j.useState(!1),[f,m]=j.useState(!1),[p,g]=j.useState(!1),[_,v]=j.useState(!1),[x]=ei(),b=Sr();let y,V,C,S,w,k,T,M;if(t[0]!==s||t[1]!==b||t[2]!==i||t[3]!==x||t[4]!==e){const F=jt.find(Tv),W=jt.find(Iv),H=jt.find(Ev),U=jt.find(Av),X=jt.find(Nv),K=jt.find(jv),G=jt.find(kv);C=Br(e,W.id,W.title),y=Br(e,H.id,H.title),V=Br(e,U.id,U.title),S=Br(e,X.id,X.title);const ie=Z=>{if(Z===F.id)return{key:Z,kind:"template-recruit",templateId:"site-editor",agent:F,onClick:"import-deco"};if(Z===W.id)return C?{key:C.id,kind:"existing",templateId:"site-diagnostics",agent:C}:{key:Z,kind:"template-recruit",templateId:"site-diagnostics",agent:W,onClick:"diagnostics"};if(Z===H.id)return y?{key:y.id,kind:"existing",templateId:"ai-image",agent:y}:{key:Z,kind:"template-recruit",templateId:"ai-image",agent:H,onClick:"ai-image"};if(Z===X.id)return S?{key:S.id,kind:"existing",templateId:"lean-canvas",agent:S}:{key:Z,kind:"template-recruit",templateId:"lean-canvas",agent:X,onClick:"lean-canvas"};if(Z===K.id)return{key:Z,kind:"template-recruit",templateId:"studio-pack",agent:K,onClick:"studio-pack"};if(Z===G.id)return x.experimental_vibecode?{key:Z,kind:"template-recruit",templateId:"self-healing-storefront",agent:G,onClick:"self-healing"}:null;if(Z===U.id)return V?{key:V.id,kind:"existing",templateId:"ai-research",agent:V}:{key:Z,kind:"template-recruit",templateId:"ai-research",agent:U,onClick:"ai-research"};const de=e.find(fe=>fe.id!==null&&fe.id===Z&&!lr(fe.id));return de?{key:de.id,kind:"existing",templateId:null,agent:de}:null};let te;if(i?.ids)te=i.ids.map(ie).filter(Cv).slice(0,_v);else{const de=[F.id,G.id,W.id,H.id,U.id].map(ie).filter(Vv),fe=gv(s),ye=e.filter(wv).filter(ge=>ge.id!==C?.id&&ge.id!==y?.id&&ge.id!==V?.id).sort((ge,ce)=>{const ue=fe.indexOf(ge.id),be=fe.indexOf(ce.id);return ue!==-1&&be!==-1?ue-be:ue!==-1?-1:be!==-1?1:new Date(ce.updated_at).getTime()-new Date(ge.updated_at).getTime()}).slice(0,4).map(Sv);te=[...de,...ye]}w=te.some(yv);let J;t[13]!==b?(J=Z=>{if(Z.kind==="template-recruit"){const de={"import-deco":()=>o(!0),diagnostics:()=>l(!0),"ai-image":()=>d(!0),"ai-research":()=>h(!0),"lean-canvas":()=>m(!0),"studio-pack":()=>g(!0),"self-healing":()=>v(!0)}[Z.onClick];return r.jsx(ec,{agent:Z.agent,onSpecialClick:de,tracking:{template_id:Z.templateId,tile_kind:"template",action:"open_modal"}},Z.key)}return r.jsx(ec,{agent:Z.agent,onSpecialClick:()=>b(Z.agent.id),tracking:{template_id:Z.templateId,tile_kind:Z.templateId?"existing":"recent",action:"navigate"}},Z.key)},t[13]=b,t[14]=J):J=t[14];const ae=J;M="w-full max-md:overflow-x-auto max-md:[scrollbar-width:none] max-md:[&::-webkit-scrollbar]:hidden",k="flex flex-wrap justify-center gap-1.5 max-md:flex-nowrap max-md:justify-start md:max-h-52 md:overflow-hidden",T=te.map(ae),t[0]=s,t[1]=b,t[2]=i,t[3]=x,t[4]=e,t[5]=y,t[6]=V,t[7]=C,t[8]=S,t[9]=w,t[10]=k,t[11]=T,t[12]=M}else y=t[5],V=t[6],C=t[7],S=t[8],w=t[9],k=t[10],T=t[11],M=t[12];let I;t[15]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(vv,{}),t[15]=I):I=t[15];let E;t[16]!==w?(E=w&&r.jsx(xv,{}),t[16]=w,t[17]=E):E=t[17];let N;t[18]!==k||t[19]!==T||t[20]!==E?(N=r.jsxs("div",{className:k,children:[T,I,E]}),t[18]=k,t[19]=T,t[20]=E,t[21]=N):N=t[21];let A;t[22]!==M||t[23]!==N?(A=r.jsx("div",{className:M,children:N}),t[22]=M,t[23]=N,t[24]=A):A=t[24];let D;t[25]!==n?(D=r.jsx(fn,{open:n,onOpenChange:o}),t[25]=n,t[26]=D):D=t[26];let L;t[27]!==a||t[28]!==C?(L=r.jsx(uh,{open:a,onOpenChange:l,existingAgent:C}),t[27]=a,t[28]=C,t[29]=L):L=t[29];let R;t[30]!==c||t[31]!==y?(R=r.jsx(Xh,{open:c,onOpenChange:d,existingAgent:y}),t[30]=c,t[31]=y,t[32]=R):R=t[32];let P;t[33]!==u||t[34]!==V?(P=r.jsx(Jh,{open:u,onOpenChange:h,existingAgent:V}),t[33]=u,t[34]=V,t[35]=P):P=t[35];let O;t[36]!==S||t[37]!==f?(O=r.jsx(fh,{open:f,onOpenChange:m,existingAgent:S}),t[36]=S,t[37]=f,t[38]=O):O=t[38];let z;t[39]!==p?(z=r.jsx(mh,{open:p,onOpenChange:g}),t[39]=p,t[40]=z):z=t[40];let $;t[41]!==_?($=r.jsx(Qh,{open:_,onOpenChange:v}),t[41]=_,t[42]=$):$=t[42];let q;return t[43]!==P||t[44]!==O||t[45]!==z||t[46]!==$||t[47]!==A||t[48]!==D||t[49]!==L||t[50]!==R?(q=r.jsxs(r.Fragment,{children:[A,D,L,R,P,O,z,$]}),t[43]=P,t[44]=O,t[45]=z,t[46]=$,t[47]=A,t[48]=D,t[49]=L,t[50]=R,t[51]=q):q=t[51],q}function yv(t){return t.kind==="existing"&&t.templateId===null}function Sv(t){return{key:t.id,kind:"existing",templateId:null,agent:t}}function wv(t){return t.id!==null&&!lr(t.id)}function Vv(t){return t!==null}function Cv(t){return t!==null}function kv(t){return t.id==="self-healing-storefront"}function jv(t){return t.id==="studio-pack"}function Nv(t){return t.id==="lean-canvas"}function Av(t){return t.id==="ai-research"}function Ev(t){return t.id==="ai-image"}function Iv(t){return t.id==="site-diagnostics"}function Tv(t){return t.id==="site-editor"}function Rv(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"w-full max-md:overflow-x-auto max-md:[scrollbar-width:none] max-md:[&::-webkit-scrollbar]:hidden",children:r.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 max-md:flex-nowrap max-md:justify-start md:max-h-52 md:overflow-hidden",children:Array.from({length:7}).map(Mv)})}),t[0]=e):e=t[0],e}function Mv(t,e){return r.jsxs("div",{className:"flex flex-col items-center gap-3 p-2 w-[100px] shrink-0",children:[r.jsx(wi,{className:"size-12 rounded-xl shrink-0"}),r.jsx(wi,{className:"h-3 sm:h-4 w-full"})]},e)}function tc(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:r.jsx(Rv,{}),children:r.jsx(bv,{})}),t[0]=e):e=t[0],e}function Bi(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function sc(t){if(!t)return"—";const e=typeof t=="string"?new Date(t):t;return isNaN(e.getTime())?"—":e.toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})}function Dv(t){return t?t.replace(/-\d{8}(?:-[a-z0-9]+)*$/i,"").replace(/-/g," "):"—"}function Pv(t){const e=B.c(4),{items:s}=t;let i;e[0]!==s?(i=s.map(Lv),e[0]=s,e[1]=i):i=e[1];let n;return e[2]!==i?(n=r.jsx("div",{className:"grid grid-cols-2 gap-x-8 gap-y-6",children:i}),e[2]=i,e[3]=n):n=e[3],n}function Lv(t){return r.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[r.jsx("span",{className:"text-xs text-muted-foreground truncate",children:t.label}),r.jsx("span",{className:"text-sm text-foreground tabular-nums truncate",children:t.value})]},t.label)}function Ov(t){const e=B.c(30),{userTokens:s,assistantTokens:i,otherTokens:n}=t,o=s+i+n,a=o>0?s/o*100:0,l=o>0?i/o*100:0,c=o>0?n/o*100:0;let d;e[0]!==a?(d=a>0&&r.jsx("div",{className:"h-full bg-chart-1",style:{width:`${a}%`}}),e[0]=a,e[1]=d):d=e[1];let u;e[2]!==l?(u=l>0&&r.jsx("div",{className:"h-full bg-chart-2",style:{width:`${l}%`}}),e[2]=l,e[3]=u):u=e[3];let h;e[4]!==c?(h=c>0&&r.jsx("div",{className:"h-full bg-muted-foreground/30",style:{width:`${c}%`}}),e[4]=c,e[5]=h):h=e[5];let f;e[6]!==d||e[7]!==u||e[8]!==h?(f=r.jsxs("div",{className:"flex h-2 w-full overflow-hidden rounded-full bg-muted",children:[d,u,h]}),e[6]=d,e[7]=u,e[8]=h,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-1 shrink-0"}),e[10]=m):m=e[10];let p;e[11]!==a?(p=a.toFixed(1),e[11]=a,e[12]=p):p=e[12];let g;e[13]!==p?(g=r.jsxs("div",{className:"flex items-center gap-1.5",children:[m,r.jsxs("span",{className:"text-xs text-muted-foreground",children:["User ",p,"%"]})]}),e[13]=p,e[14]=g):g=e[14];let _;e[15]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-2 shrink-0"}),e[15]=_):_=e[15];let v;e[16]!==l?(v=l.toFixed(1),e[16]=l,e[17]=v):v=e[17];let x;e[18]!==v?(x=r.jsxs("div",{className:"flex items-center gap-1.5",children:[_,r.jsxs("span",{className:"text-xs text-muted-foreground",children:["Assistant ",v,"%"]})]}),e[18]=v,e[19]=x):x=e[19];let b;e[20]!==c||e[21]!==n?(b=n>0&&r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-muted-foreground/30 shrink-0"}),r.jsxs("span",{className:"text-xs text-muted-foreground",children:["Other ",c.toFixed(1),"%"]})]}),e[20]=c,e[21]=n,e[22]=b):b=e[22];let y;e[23]!==x||e[24]!==b||e[25]!==g?(y=r.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[g,x,b]}),e[23]=x,e[24]=b,e[25]=g,e[26]=y):y=e[26];let V;return e[27]!==y||e[28]!==f?(V=r.jsxs("div",{className:"flex flex-col gap-2",children:[f,y]}),e[27]=y,e[28]=f,e[29]=V):V=e[29],V}function Bv(t){const e=B.c(19),{part:s}=t,i=s.input?.agent_id,n=$t(i),o=n?.title??"Subtask",a=n?.icon??null,l=s.state==="input-streaming"||s.state==="input-available"||s.state==="output-available"&&s.preliminary===!0,c=s.state==="output-error",d=s.state==="approval-requested";let u;e[0]!==a||e[1]!==o?(u=r.jsx(ps,{icon:a,name:o,size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=a,e[1]=o,e[2]=u):u=e[2];const h=c?"text-destructive":"text-foreground";let f;e[3]!==h?(f=Y("shrink-0 font-medium",h),e[3]=h,e[4]=f):f=e[4];let m;e[5]!==o||e[6]!==f?(m=r.jsx("span",{className:f,children:o}),e[5]=o,e[6]=f,e[7]=m):m=e[7];let p;e[8]!==s.input?(p=s.input?.prompt&&r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"text-muted-foreground/50",children:"·"}),r.jsx("span",{className:"truncate text-muted-foreground",children:s.input.prompt})]}),e[8]=s.input,e[9]=p):p=e[9];let g;e[10]!==d||e[11]!==c||e[12]!==l?(g=r.jsx("span",{className:"ml-auto shrink-0",children:l?r.jsx(Ne,{size:12,className:"animate-spin text-muted-foreground"}):c?r.jsx(xp,{size:12,className:"text-destructive"}):d?r.jsx(Bs,{size:12,className:"text-warning"}):r.jsx(Wp,{size:12,className:"text-emerald-500"})}),e[10]=d,e[11]=c,e[12]=l,e[13]=g):g=e[13];let _;return e[14]!==u||e[15]!==m||e[16]!==p||e[17]!==g?(_=r.jsxs("div",{className:"flex items-center gap-2 text-xs min-w-0",children:[u,m,p,g]}),e[14]=u,e[15]=m,e[16]=p,e[17]=g,e[18]=_):_=e[18],_}function $v(t){const e=B.c(58),{onClose:s,back:i,className:n}=t,[o,a]=j.useState(null),{messages:l}=Ii(),{tasks:c,taskId:d}=Lt(),{selectedModel:u,selectedVirtualMcp:h}=$s();let f,m,p,g,_,v,x,b;if(e[0]!==i||e[1]!==n||e[2]!==l||e[3]!==s||e[4]!==o?.id||e[5]!==u||e[6]!==h?.title||e[7]!==d||e[8]!==c){b=Symbol.for("react.early_return_sentinel");e:{let C;e[17]!==d?(C=J=>J.id===d,e[17]=d,e[18]=C):C=e[18];const S=c.find(C),w=Nd(l),k=[...l].reverse().find(Yv),T=k?.metadata?.usage,M=k?.metadata?.modelLimits?.contextWindow??u?.limits?.contextWindow??null,I=T?.contextTokens??T?.totalTokens??0,E=M&&M>0?(I/M*100).toFixed(1):null,N=l;let A;e[19]!==N?(A=N.filter(Gv).reduce(qv,0),e[19]=N,e[20]=A):A=e[20];const D=A,L=l;let R;e[21]!==L?(R=L.filter(Kv).reduce(Wv,0),e[21]=L,e[22]=R):R=e[22];const P=R,O=Math.max(0,w.totalTokens-D-P),z=l[0],$=l.at(-1),q=z?.metadata?.created_at??S?.created_at,F=$?.metadata?.created_at??S?.updated_at,W=l.filter(Hv),H=l.flatMap(Fv),U=u?.modelId?Dv(u.modelId):"—",X=h?.title??"Decopilot",K=[{label:"Session",value:S?.title??"New chat"},{label:"Messages",value:W.length},{label:"Agent",value:X},{label:"Model",value:U},{label:"Context Limit",value:M?Bi(M):"—"},{label:"Session Tokens (billed)",value:w.totalTokens>0?Bi(w.totalTokens):"0"},{label:"Usage",value:E!==null?`${E}%`:"—"},{label:"Input Tokens",value:w.inputTokens>0?Bi(w.inputTokens):"0"},{label:"Output Tokens",value:w.outputTokens>0?Bi(w.outputTokens):"0"},{label:"Reasoning Tokens",value:w.reasoningTokens>0?Bi(w.reasoningTokens):"0"},{label:"Cost",value:w.cost>0?`$${w.cost<.001?w.cost.toFixed(6):w.cost.toFixed(4)}`:"$0.00"},{label:"Session Created",value:sc(q)},{label:"Last Activity",value:sc(F)}];if(!S&&W.length===0){let J;e[23]!==n?(J=Y("flex flex-col h-full w-full border-l border-border bg-background",n),e[23]=n,e[24]=J):J=e[24];let ae;e[25]===Symbol.for("react.memo_cache_sentinel")?(ae=r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[25]=ae):ae=e[25];let Z;e[26]!==i?(Z=i?r.jsx(Eo,{size:14,className:"text-muted-foreground"}):r.jsx(Os,{size:14,className:"text-muted-foreground"}),e[26]=i,e[27]=Z):Z=e[27];let de;e[28]!==s||e[29]!==Z?(de=r.jsxs("div",{className:"h-11 px-4 flex items-center justify-between shrink-0 border-b border-border/50",children:[ae,r.jsx("button",{type:"button",onClick:s,className:"flex size-6 items-center justify-center rounded hover:bg-accent transition-colors",children:Z})]}),e[28]=s,e[29]=Z,e[30]=de):de=e[30];let fe;e[31]===Symbol.for("react.memo_cache_sentinel")?(fe=r.jsx("div",{className:"flex-1 flex items-center justify-center px-4 text-center",children:r.jsx("p",{className:"text-xs text-muted-foreground",children:"Start a conversation to see context"})}),e[31]=fe):fe=e[31];let ye;e[32]!==J||e[33]!==de?(ye=r.jsxs("div",{className:J,children:[de,fe]}),e[32]=J,e[33]=de,e[34]=ye):ye=e[34],b=ye;break e}e[35]!==n?(v=Y("flex flex-col h-full w-full border-l border-border bg-background overflow-y-auto",n),e[35]=n,e[36]=v):v=e[36];let G;e[37]===Symbol.for("react.memo_cache_sentinel")?(G=r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[37]=G):G=e[37];let ie;e[38]!==i?(ie=i?r.jsx(Eo,{size:14}):r.jsx(Os,{size:14}),e[38]=i,e[39]=ie):ie=e[39],e[40]!==s||e[41]!==ie?(x=r.jsxs("div",{className:"flex h-11 shrink-0 items-center justify-between border-b border-border/50 px-4",children:[G,r.jsx("button",{type:"button",onClick:s,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:ie})]}),e[40]=s,e[41]=ie,e[42]=x):x=e[42],f="flex flex-col gap-8 p-6",m=H.length>0&&r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"Subtasks"}),r.jsx("div",{className:"flex flex-col gap-1",children:H.map(zv)})]}),p=r.jsx(Pv,{items:K});let te;e[43]===Symbol.for("react.memo_cache_sentinel")?(te=r.jsx("span",{className:"text-xs text-muted-foreground",children:"Context Breakdown"}),e[43]=te):te=e[43],e[44]!==P||e[45]!==O||e[46]!==D?(g=r.jsxs("div",{className:"flex flex-col gap-3",children:[te,r.jsx(Ov,{userTokens:D,assistantTokens:P,otherTokens:O})]}),e[44]=P,e[45]=O,e[46]=D,e[47]=g):g=e[47],_=W.length>0&&r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"Raw messages"}),r.jsx("div",{className:"flex flex-col gap-1",children:W.map(J=>{const ae=J.metadata?.created_at,Z=o?.id===J.id;return r.jsxs("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[r.jsxs("button",{type:"button",onClick:()=>a(Z?null:J),className:"flex items-center justify-between gap-2 px-3 py-2 text-xs hover:bg-accent/50 w-full text-left cursor-pointer",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[r.jsx("span",{className:Y("shrink-0 font-medium",J.role==="user"?"text-chart-1":"text-chart-2"),children:J.role}),r.jsx("span",{className:"text-muted-foreground",children:"•"}),r.jsx("span",{className:"truncate text-muted-foreground font-mono",children:J.id})]}),ae&&r.jsx("span",{className:"shrink-0 text-muted-foreground tabular-nums",children:new Date(ae).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})})]}),Z&&r.jsx("pre",{className:"text-xs font-mono bg-muted px-3 py-2 overflow-auto whitespace-pre-wrap break-all border-t border-border/50 max-h-64",children:JSON.stringify(J,null,2)})]},J.id)})})]})}e[0]=i,e[1]=n,e[2]=l,e[3]=s,e[4]=o?.id,e[5]=u,e[6]=h?.title,e[7]=d,e[8]=c,e[9]=f,e[10]=m,e[11]=p,e[12]=g,e[13]=_,e[14]=v,e[15]=x,e[16]=b}else f=e[9],m=e[10],p=e[11],g=e[12],_=e[13],v=e[14],x=e[15],b=e[16];if(b!==Symbol.for("react.early_return_sentinel"))return b;let y;e[48]!==f||e[49]!==m||e[50]!==p||e[51]!==g||e[52]!==_?(y=r.jsxs("div",{className:f,children:[m,p,g,_]}),e[48]=f,e[49]=m,e[50]=p,e[51]=g,e[52]=_,e[53]=y):y=e[53];let V;return e[54]!==v||e[55]!==x||e[56]!==y?(V=r.jsxs("div",{className:v,children:[x,y]}),e[54]=v,e[55]=x,e[56]=y,e[57]=V):V=e[57],V}function zv(t,e){return r.jsx(Bv,{part:t},e)}function Fv(t){return(t.parts??[]).filter(Uv)}function Uv(t){return t.type==="tool-subtask"}function Hv(t){return t.role!=="system"}function Wv(t,e){const s=e.metadata?.usage;return t+(s?.outputTokens??0)}function Kv(t){return t.role==="assistant"}function qv(t,e){const s=e.metadata?.usage;return t+(s?.inputTokens??0)}function Gv(t){return t.role==="user"}function Yv(t){return t.role==="assistant"&&t.metadata?.usage}const ic=["amber","bold","bright","calm","crimson","coral","daring","deep","dusty","eager","faint","fierce","frozen","gentle","golden","grand","green","hollow","iron","ivory","keen","lasting","lunar","mellow","misty","noble","olive","pale","prime","quiet","rapid","rustic","serene","sharp","silver","sleek","solar","stark","still","swift","tawny","tender","thin","true","vast","velvet","warm","wild","young","zen"],rc=["anchor","birch","brook","cedar","cliff","cove","crane","dune","echo","ember","falcon","fern","flint","forge","frost","glade","grove","harbor","hawk","iris","jade","lark","maple","marsh","mesa","opal","orbit","peak","pine","plume","quartz","rapids","reef","ridge","river","sage","shore","slate","spruce","stone","summit","thorn","tide","trail","vale","wren","aspen","delta","crest","spark"];function Xv(){const t=ic[Math.floor(Math.random()*ic.length)],e=rc[Math.floor(Math.random()*rc.length)];return`deco/${t}-${e}`}function Jv(t){const e=t;if(e.structuredContent)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(s)try{return JSON.parse(s)}catch{return[]}return[]}function Qv(t){const e=B.c(25),{orgId:s,userId:i,connectionId:n,vmMap:o,owner:a,repo:l,enabled:c}=t,d=c===void 0?!0:c,u=n??null;let h;e[0]!==s||e[1]!==u?(h={connectionId:u,orgId:s},e[0]=s,e[1]=u,e[2]=h):h=e[2];const f=Ae(h);let m;e[3]!==a||e[4]!==l?(m={owner:a,repo:l},e[3]=a,e[4]=l,e[5]=m):m=e[5];const p=d&&!!n&&!!a&&!!l;let g;e[6]!==f||e[7]!==m||e[8]!==p?(g={client:f,toolName:"list_branches",toolArguments:m,enabled:p,staleTime:3e4,select:sb},e[6]=f,e[7]=m,e[8]=p,e[9]=g):g=e[9];const{data:_,isLoading:v,isError:x}=ni(g);let b,y;e[10]!==i||e[11]!==o?(y=new Set(Object.keys(o?.[i]??{})),b=[...y].sort().map(tb),e[10]=i,e[11]=o,e[12]=b,e[13]=y):(b=e[12],y=e[13]);const V=b;let C;if(e[14]!==_||e[15]!==y){const T=Array.isArray(_)?_:_?.branches??[];let M;e[17]!==y?(M=I=>!y.has(I.name),e[17]=y,e[18]=M):M=e[18],C=T.filter(eb).filter(M).map(Zv),e[14]=_,e[15]=y,e[16]=C}else C=e[16];const S=C,w=Array.isArray(_)?null:_?.default_branch??null;let k;return e[19]!==w||e[20]!==x||e[21]!==v||e[22]!==S||e[23]!==V?(k={yours:V,others:S,defaultBase:w,isLoading:v,isError:x},e[19]=w,e[20]=x,e[21]=v,e[22]=S,e[23]=V,e[24]=k):k=e[24],k}function Zv(t){return{name:t.name,source:"other",author:typeof t.commit?.author=="string"?t.commit.author:t.commit?.author?.login??null}}function eb(t){return typeof t.name=="string"}function tb(t){return{name:t,source:"yours"}}function sb(t){return Jv(t)}function ib(t){const e=B.c(41),{orgId:s,userId:i,connectionId:n,owner:o,repo:a,vmMap:l,value:c,onChange:d}=t,[u,h]=j.useState(!1);let f;e[0]!==n||e[1]!==u||e[2]!==s||e[3]!==o||e[4]!==a||e[5]!==i||e[6]!==l?(f={orgId:s,userId:i,connectionId:n,vmMap:l,owner:o,repo:a,enabled:u},e[0]=n,e[1]=u,e[2]=s,e[3]=o,e[4]=a,e[5]=i,e[6]=l,e[7]=f):f=e[7];const{yours:m,others:p,isLoading:g,isError:_}=Qv(f);let v;e[8]!==d?(v=A=>{d(A),h(!1)},e[8]=d,e[9]=v):v=e[9];const x=v,b=c??"Select branch…";let y;e[10]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(er,{className:"h-3.5 w-3.5"}),e[10]=y):y=e[10];let V;e[11]!==b?(V=r.jsx(zs,{asChild:!0,children:r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 font-mono text-xs",children:[y,r.jsx("span",{className:"max-w-[200px] truncate",children:b})]})}),e[11]=b,e[12]=V):V=e[12];let C;e[13]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(Gp,{placeholder:"Search branches…"}),e[13]=C):C=e[13];let S;e[14]!==x?(S=r.jsxs("div",{className:"flex items-center border-b pr-2 [&>[data-slot=command-input-wrapper]]:flex-1 [&>[data-slot=command-input-wrapper]]:border-b-0",children:[C,r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 shrink-0",onClick:()=>x(Xv()),children:"New"})]}),e[14]=x,e[15]=S):S=e[15];let w;e[16]!==_?(w=_&&r.jsx("div",{className:"p-3 text-xs text-muted-foreground",children:"Couldn't load branches from GitHub. You can still pick from your branches."}),e[16]=_,e[17]=w):w=e[17];let k;e[18]!==_||e[19]!==g||e[20]!==p.length||e[21]!==m.length?(k=!_&&!g&&m.length===0&&p.length===0&&r.jsx(Kp,{children:"No branches found."}),e[18]=_,e[19]=g,e[20]=p.length,e[21]=m.length,e[22]=k):k=e[22];let T;e[23]!==x||e[24]!==m?(T=m.length>0&&r.jsx(Al,{heading:"Your branches",children:m.map(A=>r.jsxs(El,{value:A.name,onSelect:()=>x(A.name),children:[r.jsx(er,{className:"mr-2 h-4 w-4"}),r.jsx("span",{className:"flex-1 truncate",children:A.name})]},A.name))}),e[23]=x,e[24]=m,e[25]=T):T=e[25];let M;e[26]!==p||e[27]!==x?(M=p.length>0&&r.jsxs(r.Fragment,{children:[r.jsx(qp,{}),r.jsx(Al,{heading:"Other branches in repo",children:p.map(A=>r.jsxs(El,{value:A.name,onSelect:()=>x(A.name),children:[r.jsx(er,{className:"mr-2 h-4 w-4"}),r.jsx("span",{className:"flex-1 truncate",children:A.name}),A.author&&r.jsxs("span",{className:"text-xs text-muted-foreground",children:["@",A.author]})]},A.name))})]}),e[26]=p,e[27]=x,e[28]=M):M=e[28];let I;e[29]!==M||e[30]!==w||e[31]!==k||e[32]!==T?(I=r.jsxs(Yp,{children:[w,k,T,M]}),e[29]=M,e[30]=w,e[31]=k,e[32]=T,e[33]=I):I=e[33];let E;e[34]!==I||e[35]!==S?(E=r.jsx(Fs,{className:"w-[min(420px,calc(100vw-2rem))] p-0",align:"start",children:r.jsxs(Xp,{children:[S,I]})}),e[34]=I,e[35]=S,e[36]=E):E=e[36];let N;return e[37]!==u||e[38]!==E||e[39]!==V?(N=r.jsxs(Us,{open:u,onOpenChange:h,children:[V,E]}),e[37]=u,e[38]=E,e[39]=V,e[40]=N):N=e[40],N}const rb=["radial-gradient(ellipse 25% 220% at -5% 120%, rgba(165,149,255,0.35) 0%, transparent 100%)","radial-gradient(ellipse 25% 220% at 105% -20%, rgba(208,236,26,0.32) 0%, transparent 100%)"].join(", "),nb="/decotexture.svg";function nc(t){const e=B.c(7),{onClick:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={backgroundImage:rb},e[0]=i):i=e[0];let n,o;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"relative shrink-0 p-1.5 bg-[var(--brand-green-light)] rounded-lg border border-border",children:r.jsx(ps,{icon:"/logos/deco%20logo.svg",name:"deco.cx",size:"xs",className:"border-0 rounded-none bg-transparent"})}),o=r.jsx("p",{className:"flex-1 relative text-sm font-medium text-foreground leading-none whitespace-nowrap",children:"Import your deco.cx site"}),e[1]=n,e[2]=o):(n=e[1],o=e[2]);let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("img",{src:nb,alt:"","aria-hidden":!0,className:"absolute pointer-events-none",style:{width:"274.5px",height:"272.25px",left:"calc(50% + 145.5px)",top:"calc(50% + 40px)",transform:"translate(-50%, -50%)"}}),e[3]=a):a=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"relative bg-background flex items-center justify-center size-8 rounded-md shrink-0",children:r.jsx(In,{size:16,className:"text-foreground transition-transform group-hover:translate-x-0.5"})}),e[4]=l):l=e[4];let c;return e[5]!==s?(c=r.jsxs("button",{type:"button",onClick:s,className:"w-full relative flex items-center gap-4 px-4 py-4 rounded-lg border border-border bg-background overflow-hidden transition-colors text-left cursor-pointer group",style:i,children:[n,o,a,l]}),e[5]=s,e[6]=c):c=e[6],c}function ob(){const t=B.c(5),{data:e}=dt.useSession();let s;t[0]!==e?.user?.email?(s=Ze.decoProfile(e?.user?.email),t[0]=e?.user?.email,t[1]=s):s=t[1];const i=!!e?.user?.email;let n;t[2]!==s||t[3]!==i?(n={queryKey:s,queryFn:ab,enabled:i,staleTime:3e5},t[2]=s,t[3]=i,t[4]=n):n=t[4];const{data:o}=ji(n);return o?.isDecoUser??!1}async function ab(){const t=await fetch("/api/deco-sites/profile");return t.ok?t.json():{isDecoUser:!1}}function lb(t){const e=B.c(56),{onOpenContextPanel:s}=t,{data:i}=dt.useSession(),[n,o]=j.useState(!1),a=ob(),l=ms(),{hasDecoKey:c,isZeroBalance:d,isInitialFreeCredit:u,balanceDollars:h,hasOnlyDecoProvider:f}=Pn();let m;e[0]!==i?.user?.name?(m=i?.user?.name?.split(" ")[0]||"there",e[0]=i?.user?.name,e[1]=m):m=e[1];const p=m,g=c&&u&&h!=null,_=c&&d&&f;if(l){let E;e[2]!==h||e[3]!==g?(E=g&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.CreditsEyebrow,{balanceDollars:h})}),e[2]=h,e[3]=g,e[4]=E):E=e[4];let N;e[5]!==_?(N=_&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.NoCreditsEyebrow,{})}),e[5]=_,e[6]=N):N=e[6];let A;e[7]!==p?(A=r.jsxs("p",{className:"text-3xl font-medium text-foreground text-center max-w-[280px]",children:["What's on your mind, ",p,"?"]}),e[7]=p,e[8]=A):A=e[8];let D;e[9]!==E||e[10]!==N||e[11]!==A?(D=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center w-full",children:[E,N,A]}),e[9]=E,e[10]=N,e[11]=A,e[12]=D):D=e[12];let L;e[13]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(tc,{}),e[13]=L):L=e[13];let R;e[14]!==s?(R=r.jsxs("div",{className:"w-full flex flex-col gap-4 pb-4",children:[L,r.jsx(Ee.Input,{onOpenContextPanel:s,showConnectionsBanner:!0})]}),e[14]=s,e[15]=R):R=e[15];let P;e[16]!==a?(P=a&&r.jsx("div",{className:"w-full",children:r.jsx(nc,{onClick:()=>o(!0)})}),e[16]=a,e[17]=P):P=e[17];let O;e[18]!==D||e[19]!==R||e[20]!==P?(O=r.jsxs("div",{className:"flex-1 relative flex flex-col items-center px-4",children:[D,R,P]}),e[18]=D,e[19]=R,e[20]=P,e[21]=O):O=e[21];let z;e[22]!==n?(z=r.jsx(fn,{open:n,onOpenChange:o}),e[22]=n,e[23]=z):z=e[23];let $;return e[24]!==z||e[25]!==O?($=r.jsxs(r.Fragment,{children:[O,z]}),e[24]=z,e[25]=O,e[26]=$):$=e[26],$}let v;e[27]!==h||e[28]!==g?(v=g&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.CreditsEyebrow,{balanceDollars:h})}),e[27]=h,e[28]=g,e[29]=v):v=e[29];let x;e[30]!==_?(x=_&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.NoCreditsEyebrow,{})}),e[30]=_,e[31]=x):x=e[31];let b;e[32]!==p?(b=r.jsxs("p",{className:"text-3xl font-medium text-foreground",children:["What's on your mind, ",p,"?"]}),e[32]=p,e[33]=b):b=e[33];let y;e[34]!==v||e[35]!==x||e[36]!==b?(y=r.jsxs("div",{className:"text-center mb-10",children:[v,x,b]}),e[34]=v,e[35]=x,e[36]=b,e[37]=y):y=e[37];let V;e[38]!==s?(V=r.jsx("div",{className:"w-full",children:r.jsx(Ee.Input,{onOpenContextPanel:s,showConnectionsBanner:!0})}),e[38]=s,e[39]=V):V=e[39];let C;e[40]!==y||e[41]!==V?(C=r.jsxs("div",{className:"flex flex-col items-center w-full max-w-[672px]",children:[y,V]}),e[40]=y,e[41]=V,e[42]=C):C=e[42];let S;e[43]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx("div",{className:"w-full mt-10 mx-auto",children:r.jsx(tc,{})}),e[43]=S):S=e[43];let w;e[44]!==C?(w=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center w-full",children:[C,S]}),e[44]=C,e[45]=w):w=e[45];let k;e[46]!==a?(k=a&&r.jsx("div",{className:"absolute bottom-6 left-0 right-0 px-10",children:r.jsx("div",{className:"w-full max-w-[500px] mx-auto",children:r.jsx(nc,{onClick:()=>o(!0)})})}),e[46]=a,e[47]=k):k=e[47];let T;e[48]!==k||e[49]!==w?(T=r.jsxs("div",{className:"flex-1 relative flex flex-col items-center px-10",children:[w,k]}),e[48]=k,e[49]=w,e[50]=T):T=e[50];let M;e[51]!==n?(M=r.jsx(fn,{open:n,onOpenChange:o}),e[51]=n,e[52]=M):M=e[52];let I;return e[53]!==T||e[54]!==M?(I=r.jsxs(r.Fragment,{children:[T,M]}),e[53]=T,e[54]=M,e[55]=I):I=e[55],I}function cb(){const t=B.c(26),{org:e}=xe(),{selectedVirtualMcp:s}=$s(),{data:i}=dt.useSession(),{currentBranch:n,setCurrentTaskBranch:o}=Lt();let a;t[0]!==e.id?(a=En(e.id),t[0]=e.id,t[1]=a):a=t[1];const c=s??a,d=$t(c.id),u=i?.user?.id??"",h=d?.metadata?.githubRepo??null,f=!!h?.connectionId&&!!u;let m;t[2]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx(Dn,{size:32}),t[2]=m):m=t[2];let p;t[3]!==c.icon||t[4]!==c.title?(p=r.jsx(ps,{icon:c.icon,name:c.title,size:"lg",fallbackIcon:m,className:"size-10 min-w-10 md:size-[60px]! md:min-w-[60px] rounded-xl md:rounded-[18px]!"}),t[3]=c.icon,t[4]=c.title,t[5]=p):p=t[5];let g;t[6]!==c.title?(g=r.jsx("h3",{className:"text-base md:text-xl font-medium text-foreground",children:c.title}),t[6]=c.title,t[7]=g):g=t[7];const _=c.description??"Ask anything about configuring model providers or using MCP Mesh.";let v;t[8]!==_?(v=r.jsx("div",{className:"text-muted-foreground text-center text-base max-w-md line-clamp-2",children:_}),t[8]=_,t[9]=v):v=t[9];let x;t[10]!==n||t[11]!==d?.metadata?.vmMap||t[12]!==h||t[13]!==e.id||t[14]!==o||t[15]!==f||t[16]!==u?(x=f&&r.jsx("div",{className:"mt-2",children:r.jsx(ib,{orgId:e.id,userId:u,connectionId:h.connectionId,owner:h.owner,repo:h.name,vmMap:d?.metadata?.vmMap,value:n??void 0,onChange:o})}),t[10]=n,t[11]=d?.metadata?.vmMap,t[12]=h,t[13]=e.id,t[14]=o,t[15]=f,t[16]=u,t[17]=x):x=t[17];let b;t[18]!==p||t[19]!==g||t[20]!==v||t[21]!==x?(b=r.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 md:gap-4 text-center",children:[p,g,v,x]}),t[18]=p,t[19]=g,t[20]=v,t[21]=x,t[22]=b):b=t[22];let y;t[23]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx("div",{className:"w-full max-w-3xl mx-auto",children:r.jsx(Ee.IceBreakers,{})}),t[23]=y):y=t[23];let V;return t[24]!==b?(V=r.jsxs("div",{className:"h-full w-full flex flex-col items-center justify-center gap-6 px-4",children:[b,y]}),t[24]=b,t[25]=V):V=t[25],V}function db(t){const e=B.c(27),{variant:s}=t,{org:i}=xe(),n=La(),{isChatEmpty:o}=Ii(),[a,l]=j.useState("chat"),c=Pn();if(n.length===0){let V;return e[0]===Symbol.for("react.memo_cache_sentinel")?(V=r.jsx(Ee,{className:"animate-in fade-in-0 duration-200",children:r.jsx(Ee.Main,{className:"flex flex-col items-center",children:r.jsx(Ee.EmptyState,{children:r.jsx(Ee.NoAiProviderEmptyState,{})})})}),e[0]=V):V=e[0],V}let d;e[1]!==c.hasDecoKey||e[2]!==c.hasOnlyDecoProvider||e[3]!==c.isLoading||e[4]!==c.isZeroBalance||e[5]!==o||e[6]!==i?(d=c.hasDecoKey&&c.isZeroBalance&&c.hasOnlyDecoProvider&&!c.isLoading&&o&&!T1(i.id),e[1]=c.hasDecoKey,e[2]=c.hasOnlyDecoProvider,e[3]=c.isLoading,e[4]=c.isZeroBalance,e[5]=o,e[6]=i,e[7]=d):d=e[7];const u=d;let h;e[8]!==u?(h=u&&r.jsx(Ee.CreditsEmptyState,{}),e[8]=u,e[9]=h):h=e[9];const f=a!=="chat"?"opacity-0 pointer-events-none":"opacity-100";let m;e[10]!==f?(m=Y("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",f),e[10]=f,e[11]=m):m=e[11];let p;e[12]!==o||e[13]!==s?(p=o?s==="home"?r.jsx(lb,{onOpenContextPanel:()=>l("context")}):r.jsxs(r.Fragment,{children:[r.jsx(Ee.Main,{children:r.jsx(cb,{})}),r.jsx(Ee.Footer,{children:r.jsx(Ee.Input,{onOpenContextPanel:()=>l("context")})})]}):r.jsxs(r.Fragment,{children:[r.jsx(Ee.Main,{children:r.jsx(Ee.Messages,{})}),r.jsx(Ee.Footer,{children:r.jsx(Ee.Input,{onOpenContextPanel:()=>l("context")})})]}),e[12]=o,e[13]=s,e[14]=p):p=e[14];let g;e[15]!==m||e[16]!==p?(g=r.jsx("div",{className:m,children:p}),e[15]=m,e[16]=p,e[17]=g):g=e[17];const _=a==="context"?"opacity-100":"opacity-0 pointer-events-none";let v;e[18]!==_?(v=Y("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",_),e[18]=_,e[19]=v):v=e[19];let x;e[20]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx($v,{back:!0,onClose:()=>l("chat")}),e[20]=x):x=e[20];let b;e[21]!==v?(b=r.jsx("div",{className:v,children:x}),e[21]=v,e[22]=b):b=e[22];let y;return e[23]!==b||e[24]!==h||e[25]!==g?(y=r.jsxs(Ee,{className:"relative overflow-hidden animate-in fade-in-0 duration-200",children:[h,g,b]}),e[23]=b,e[24]=h,e[25]=g,e[26]=y):y=e[26],y}function Zh(t){const e=B.c(4),{variant:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Ee.Skeleton,{}),e[0]=i):i=e[0];let n;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(Ee.Skeleton,{}),e[1]=n):n=e[1];let o;return e[2]!==s?(o=r.jsx(ls,{fallback:i,children:r.jsx(j.Suspense,{fallback:n,children:r.jsx(db,{variant:s})})}),e[2]=s,e[3]=o):o=e[3],o}function hb(){const t=B.c(6),{org:e,locator:s}=xe(),i=bt();let n;t[0]!==s||t[1]!==i?(n=()=>{i.invalidateQueries({queryKey:Ze.tasksPrefix(s)})},t[0]=s,t[1]=i,t[2]=n):n=t[2];let o;t[3]!==e.id||t[4]!==n?(o={orgId:e.id,onTaskStatus:n},t[3]=e.id,t[4]=n,t[5]=o):o=t[5],Qp(o)}function ub(t){const e=B.c(8),{virtualMcpId:s,size:i,showAutomationBadge:n}=t,o=i===void 0?"sm":i;let a;e[0]!==o||e[1]!==s?(a=s?r.jsx(fb,{virtualMcpId:s,size:o}):r.jsx(Qt,{icon:null,name:"?",size:o}),e[0]=o,e[1]=s,e[2]=a):a=e[2];let l;e[3]!==n?(l=n&&r.jsx("span",{"aria-label":"Automation-triggered",className:"absolute -bottom-0.5 -right-0.5 flex size-4 items-center justify-center rounded-full bg-blue-500 border border-blue-600 text-white",children:r.jsx(Ci,{size:10,className:"text-white"})}),e[3]=n,e[4]=l):l=e[4];let c;return e[5]!==a||e[6]!==l?(c=r.jsxs("div",{className:"relative shrink-0",children:[a,l]}),e[5]=a,e[6]=l,e[7]=c):c=e[7],c}function fb(t){const e=B.c(6),{virtualMcpId:s,size:i}=t,n=$t(s);if(!n){let l;return e[0]!==i?(l=r.jsx(Qt,{icon:null,name:"?",size:i}),e[0]=i,e[1]=l):l=e[1],l}const o=n.icon??null;let a;return e[2]!==n.title||e[3]!==i||e[4]!==o?(a=r.jsx(Qt,{icon:o,name:n.title,size:i}),e[2]=n.title,e[3]=i,e[4]=o,e[5]=a):a=e[5],a}function bs(t){const e=t?.metadata?.githubRepo;return e?.connectionId&&t?.connections?.some(i=>i.connection_id===e.connectionId)?e:null}function mb(t){const e=B.c(42),{task:s,isActive:i,onClick:n,onArchive:o,showAutomationBadge:a}=t,l=wm(s.status),c=l.icon,d=$t(s.virtual_mcp_id);let u;e[0]!==d?(u=bs(d),e[0]=d,e[1]=u):u=e[1];const h=u,f="button",m=0;let p;e[2]!==n?(p=O=>{O.target===O.currentTarget&&(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),n())},e[2]=n,e[3]=p):p=e[3];const g=i?"bg-accent":"hover:bg-accent/60";let _;e[4]!==g?(_=Y("group/row flex items-center gap-3 px-2 py-1.5 rounded-md cursor-pointer transition-colors",g),e[4]=g,e[5]=_):_=e[5];let v;e[6]!==a||e[7]!==s.virtual_mcp_id?(v=r.jsx(ub,{virtualMcpId:s.virtual_mcp_id,size:"xs",showAutomationBadge:a}),e[6]=a,e[7]=s.virtual_mcp_id,e[8]=v):v=e[8];const x=s.title||"Untitled task";let b;e[9]!==x?(b=r.jsx("div",{className:"text-sm text-foreground truncate",children:x}),e[9]=x,e[10]=b):b=e[10];let y;e[11]!==h||e[12]!==s.branch||e[13]!==s.updated_at?(y=s.updated_at&&r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground min-w-0",children:[s.branch?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"truncate font-mono",children:s.branch}),r.jsx("span",{className:"shrink-0",children:"·"})]}):h?r.jsxs(r.Fragment,{children:[r.jsxs("span",{className:"truncate",children:[h.owner,"/",h.name]}),r.jsx("span",{className:"shrink-0",children:"·"})]}):null,r.jsx("span",{className:"shrink-0",children:Vm(new Date(s.updated_at))})]}),e[11]=h,e[12]=s.branch,e[13]=s.updated_at,e[14]=y):y=e[14];let V;e[15]!==y||e[16]!==b?(V=r.jsxs("div",{className:"flex-1 min-w-0",children:[b,y]}),e[15]=y,e[16]=b,e[17]=V):V=e[17];const C="shrink-0 grid [grid-template-areas:'slot'] items-center justify-items-center",S="[grid-area:slot] flex size-7 items-center justify-center group-hover/row:invisible",w=l.label,k=14,T=Y(l.iconClassName,s.status==="in_progress"&&"animate-spin");let M;e[18]!==c||e[19]!==T?(M=r.jsx(c,{size:k,className:T}),e[18]=c,e[19]=T,e[20]=M):M=e[20];let I;e[21]!==l||e[22]!==M?(I=r.jsx("span",{className:S,"aria-label":w,children:M}),e[21]=l,e[22]=M,e[23]=I):I=e[23];let E;e[24]!==o?(E=O=>{O.stopPropagation(),o()},e[24]=o,e[25]=E):E=e[25];let N;e[26]===Symbol.for("react.memo_cache_sentinel")?(N=r.jsx(Qm,{size:14}),e[26]=N):N=e[26];let A;e[27]!==E?(A=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Archive task",onClick:E,className:"[grid-area:slot] invisible group-hover/row:visible flex size-7 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-muted",children:N})}),e[27]=E,e[28]=A):A=e[28];let D;e[29]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(Ge,{side:"right",children:"Archive"}),e[29]=D):D=e[29];let L;e[30]!==A?(L=r.jsxs(Ye,{children:[A,D]}),e[30]=A,e[31]=L):L=e[31];let R;e[32]!==I||e[33]!==L?(R=r.jsxs("div",{className:C,children:[I,L]}),e[32]=I,e[33]=L,e[34]=R):R=e[34];let P;return e[35]!==n||e[36]!==V||e[37]!==R||e[38]!==p||e[39]!==_||e[40]!==v?(P=r.jsxs("div",{role:f,tabIndex:m,onClick:n,onKeyDown:p,className:_,children:[v,V,R]}),e[35]=n,e[36]=V,e[37]=R,e[38]=p,e[39]=_,e[40]=v,e[41]=P):P=e[41],P}const eu={all:"All tasks",manual:"Chats",automation:"Automation"},tu={all:"All members",mine:"Mine only"};function pb(t){const e=B.c(57),{title:s,tasks:i,activeTaskId:n,onSelect:o,onArchive:a,onNew:l,showNewButton:c,showAutomationBadge:d,emptyLabel:u,currentUserId:h}=t,[f,m]=j.useState("all"),[p,g]=j.useState("mine");let _;e[0]!==h||e[1]!==p||e[2]!==i?(_=p==="mine"&&h?i.filter(W=>W.created_by===h):i,e[0]=h,e[1]=p,e[2]=i,e[3]=_):_=e[3];const v=_;let x;e[4]!==f||e[5]!==v?(x=f==="automation"?v.filter(vb):f==="manual"?v.filter(xb):v,e[4]=f,e[5]=v,e[6]=x):x=e[6];const b=x;let y;e[7]!==s?(y=r.jsx("span",{children:s}),e[7]=s,e[8]=y):y=e[8];let V;e[9]!==p?(V=r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Filter by member",className:"flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",children:p==="mine"?r.jsx(Zm,{size:16}):r.jsx(Dn,{size:16})})}),e[9]=p,e[10]=V):V=e[10];let C;e[11]!==p?(C=W=>{const H=W;H!==p&&re("tasks_panel_member_filter_changed",{to_value:H}),g(H)},e[11]=p,e[12]=C):C=e[12];let S;e[13]===Symbol.for("react.memo_cache_sentinel")?(S=Object.keys(tu),e[13]=S):S=e[13];let w;e[14]===Symbol.for("react.memo_cache_sentinel")?(w=S.map(_b),e[14]=w):w=e[14];let k;e[15]!==p||e[16]!==C?(k=r.jsx(hs,{align:"end",children:r.jsx(xl,{value:p,onValueChange:C,children:w})}),e[15]=p,e[16]=C,e[17]=k):k=e[17];let T;e[18]!==V||e[19]!==k?(T=r.jsxs(cs,{children:[V,k]}),e[18]=V,e[19]=k,e[20]=T):T=e[20];const M=f!=="all"&&"text-purple-500";let I;e[21]!==M?(I=Y("flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",M),e[21]=M,e[22]=I):I=e[22];let E;e[23]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsx(vp,{size:16}),e[23]=E):E=e[23];let N;e[24]!==I?(N=r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Filter tasks",className:I,children:E})}),e[24]=I,e[25]=N):N=e[25];let A;e[26]!==f?(A=W=>{const H=W;H!==f&&re("tasks_panel_filter_changed",{to_value:H}),m(H)},e[26]=f,e[27]=A):A=e[27];let D;e[28]===Symbol.for("react.memo_cache_sentinel")?(D=Object.keys(eu),e[28]=D):D=e[28];let L;e[29]===Symbol.for("react.memo_cache_sentinel")?(L=D.map(gb),e[29]=L):L=e[29];let R;e[30]!==f||e[31]!==A?(R=r.jsx(hs,{align:"end",children:r.jsx(xl,{value:f,onValueChange:A,children:L})}),e[30]=f,e[31]=A,e[32]=R):R=e[32];let P;e[33]!==N||e[34]!==R?(P=r.jsxs(cs,{children:[N,R]}),e[33]=N,e[34]=R,e[35]=P):P=e[35];let O;e[36]!==l||e[37]!==c||e[38]!==s?(O=c&&l&&r.jsx("button",{type:"button",onClick:()=>{re("tasks_panel_new_clicked"),l()},"aria-label":`New ${s.toLowerCase()}`,className:"flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",children:r.jsx(Ra,{size:16})}),e[36]=l,e[37]=c,e[38]=s,e[39]=O):O=e[39];let z;e[40]!==P||e[41]!==O||e[42]!==T?(z=r.jsxs("div",{className:"flex items-center gap-0.5",children:[T,P,O]}),e[40]=P,e[41]=O,e[42]=T,e[43]=z):z=e[43];let $;e[44]!==z||e[45]!==y?($=r.jsxs("div",{className:"pl-2 pr-1.5 h-7 flex items-center justify-between text-xs font-medium text-muted-foreground mb-1",children:[y,z]}),e[44]=z,e[45]=y,e[46]=$):$=e[46];let q;e[47]!==n||e[48]!==u||e[49]!==a||e[50]!==o||e[51]!==d||e[52]!==b?(q=b.length===0&&u?r.jsx("div",{className:"px-2 py-1.5 text-xs text-muted-foreground/70",children:u}):b.map(W=>r.jsx(mb,{task:W,isActive:n===W.id,onClick:()=>{n!==W.id&&re("tasks_panel_task_clicked",{thread_id:W.id,virtual_mcp_id:W.virtual_mcp_id??null,from_automation:!!W.fromAutomation}),o(W)},onArchive:()=>{re("tasks_panel_task_archived",{thread_id:W.id,virtual_mcp_id:W.virtual_mcp_id??null}),a(W)},showAutomationBadge:d||W.fromAutomation},W.id)),e[47]=n,e[48]=u,e[49]=a,e[50]=o,e[51]=d,e[52]=b,e[53]=q):q=e[53];let F;return e[54]!==$||e[55]!==q?(F=r.jsxs("div",{className:"flex flex-col gap-0.5 mt-1",children:[$,q]}),e[54]=$,e[55]=q,e[56]=F):F=e[56],F}function gb(t){return r.jsx(Ld,{value:t,children:eu[t]},t)}function _b(t){return r.jsx(Ld,{value:t,children:tu[t]},t)}function xb(t){return!t.fromAutomation}function vb(t){return t.fromAutomation}function bb(){const t=B.c(22);hb();const{data:e}=dt.useSession(),s=e?.user?.id;let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={owner:"me",status:"open",hasTrigger:!1},t[0]=i):i=t[0];const{tasks:n}=Co(i);let o;t[1]===Symbol.for("react.memo_cache_sentinel")?(o={owner:"all",status:"open",hasTrigger:!0},t[1]=o):o=t[1];const{tasks:a}=Co(o),{setTaskId:l,createNewTask:c}=xr();let d;t[2]===Symbol.for("react.memo_cache_sentinel")?(d={strict:!1},t[2]=d):d=t[2];const u=_r(d),{locator:h,org:f}=xe(),m=bt();let p;t[3]!==f.id?(p={connectionId:yt,orgId:f.id},t[3]=f.id,t[4]=p):p=t[4];const g=Ae(p),_=u.taskId??null;let v;t[5]!==a||t[6]!==n?(v=[...n,...a.map(Sb)].sort(yb),t[5]=a,t[6]=n,t[7]=v):v=t[7];const x=v;let b;t[8]!==g||t[9]!==h||t[10]!==m?(b=async S=>{try{await mm(g,S.id,{hidden:!0}),m.invalidateQueries({queryKey:Ze.tasksPrefix(h)})}catch(w){const T=w;he.error(`Failed to archive task: ${T.message}`)}},t[8]=g,t[9]=h,t[10]=m,t[11]=b):b=t[11];const y=b;if(x.length===0){let S;return t[12]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx("div",{className:"h-full flex items-center justify-center p-4",children:r.jsx(Vi,{image:r.jsx(ep,{size:48,className:"text-muted-foreground"}),title:"No tasks yet",description:"Start a conversation to create your first task."})}),t[12]=S):S=t[12],S}let V;t[13]!==l?(V=S=>l(S.id,S.virtual_mcp_id),t[13]=l,t[14]=V):V=t[14];let C;return t[15]!==_||t[16]!==x||t[17]!==c||t[18]!==s||t[19]!==y||t[20]!==V?(C=r.jsx("div",{className:"flex flex-col h-full min-h-0 overflow-y-auto p-2 gap-3",children:r.jsx(pb,{title:"Tasks",tasks:x,activeTaskId:_,onSelect:V,onArchive:y,onNew:c,showNewButton:!0,currentUserId:s})}),t[15]=_,t[16]=x,t[17]=c,t[18]=s,t[19]=y,t[20]=V,t[21]=C):C=t[21],C}function yb(t,e){return(e.updated_at??"").localeCompare(t.updated_at??"")}function Sb(t){return{...t,fromAutomation:!0}}function wb(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex flex-col h-full p-2 gap-1.5",children:Array.from({length:6}).map(Vb)}),t[0]=e):e=t[0],e}function Vb(t,e){return r.jsx("div",{className:"h-10 rounded-md bg-muted/60 animate-pulse"},e)}function su(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(Ee.Skeleton,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(ls,{fallback:e,children:r.jsx(j.Suspense,{fallback:r.jsx(wb,{}),children:r.jsx(bb,{})})}),t[1]=s):s=t[1],s}function iu(){const t=B.c(77),{org:e}=xe(),s=Oe(),i=yd(),{setTasksOpen:n,openTab:o}=xr(),a=e.slug,l=xe().project;let c;t[0]===Symbol.for("react.memo_cache_sentinel")?(c={strict:!1},t[0]=c):c=t[0];const d=_r(c);let u;t[1]===Symbol.for("react.memo_cache_sentinel")?(u={strict:!1},t[1]=u):u=t[1];const h=ti(u),f=i.location.pathname;let m;t[2]!==l.enabledPlugins?(m=l.enabledPlugins??[],t[2]=l.enabledPlugins,t[3]=m):m=t[3];const p=m;let g;t[4]!==l.ui?(g=l.ui?.pinnedViews??[],t[4]=l.ui,t[5]=g):g=t[5];const _=g;let v,x,b,y;if(t[6]!==l.id||t[7]!==p||t[8]!==s||t[9]!==a||t[10]!==d.pluginId||t[11]!==d.taskId||t[12]!==h.virtualmcpid){let H;t[17]!==p?(H=ae=>p.includes(ae.pluginId),t[17]=p,t[18]=H):H=t[18];const U=Of.filter(H),X=h.virtualmcpid??l.id;x=!!h.virtualmcpid;const K=d.taskId??"",G=d.pluginId;let ie;t[19]!==G?(ie=ae=>G===ae,t[19]=G,t[20]=ie):ie=t[20],v=ie;let te;t[21]!==K||t[22]!==s||t[23]!==a||t[24]!==X?(te=ae=>{const Z=K||crypto.randomUUID();s({to:"/$org/$taskId/$pluginId",params:{org:a,taskId:Z,pluginId:ae},search:de=>({...de,virtualmcpid:X})})},t[21]=K,t[22]=s,t[23]=a,t[24]=X,t[25]=te):te=t[25],b=te;let J;t[26]!==v||t[27]!==b?(J=ae=>({key:ae.pluginId,label:ae.label,icon:ae.icon,isActive:v(ae.pluginId),onClick:()=>b(ae.pluginId)}),t[26]=v,t[27]=b,t[28]=J):J=t[28],y=U.map(J),t[6]=l.id,t[7]=p,t[8]=s,t[9]=a,t[10]=d.pluginId,t[11]=d.taskId,t[12]=h.virtualmcpid,t[13]=v,t[14]=x,t[15]=b,t[16]=y}else v=t[13],x=t[14],b=t[15],y=t[16];const V=y;let C;if(t[29]!==p||t[30]!==v||t[31]!==b){let H;t[33]!==p?(H=K=>p.includes(K.pluginId),t[33]=p,t[34]=H):H=t[34];const U=Bf.filter(H);let X;t[35]!==v||t[36]!==b?(X=K=>({type:"group",group:{id:`${K.pluginId}-${K.id}`,label:K.label,items:K.items.map((G,ie)=>({key:`${K.pluginId}-${K.id}-${ie}`,label:G.label,icon:G.icon,isActive:v(K.pluginId),onClick:()=>b(K.pluginId)})),defaultExpanded:K.defaultExpanded??!0}}),t[35]=v,t[36]=b,t[37]=X):X=t[37],C=U.map(X),t[29]=p,t[30]=v,t[31]=b,t[32]=C}else C=t[32];const S=C;let w;if(t[38]!==o||t[39]!==_){let H;t[41]!==o?(H=U=>{const X=vr(U.icon),K=X.type==="icon"?br(X.name):null;return{key:`app-${U.connectionId}-${U.toolName}`,label:U.label||U.toolName,icon:K?r.jsx(K,{size:16,className:"text-muted-foreground"}):X.type==="url"?r.jsx("img",{src:X.url,alt:"",className:"size-4 rounded"}):r.jsx(xh,{size:16,className:"text-muted-foreground"}),isActive:!1,onClick:()=>o(jo(U.connectionId,U.toolName))}},t[41]=o,t[42]=H):H=t[42],w=_.map(H),t[38]=o,t[39]=_,t[40]=w}else w=t[40];const k=w;let T;t[43]!==k?(T=k.length>0?{type:"group",group:{id:"apps",label:"Apps",items:k,defaultExpanded:!0}}:null,t[43]=k,t[44]=T):T=t[44];const M=T;let I;t[45]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(tp,{className:"size-4!"}),t[45]=I):I=t[45];const E=f===`/${a}`||f===`/${a}/`;let N;t[46]!==s||t[47]!==a||t[48]!==n?(N=()=>{n(!1),s({to:"/$org",params:{org:a}})},t[46]=s,t[47]=a,t[48]=n,t[49]=N):N=t[49];let A;t[50]!==N||t[51]!==E?(A={key:"home",label:"Home",icon:I,isActive:E,onClick:N},t[50]=N,t[51]=E,t[52]=A):A=t[52];const D=A;let L;t[53]!==p?(L=p.includes($f),t[53]=p,t[54]=L):L=t[54];const R=L;let P;t[55]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(zf,{className:"size-4!"}),t[55]=P):P=t[55];let O;t[56]!==a||t[57]!==f?(O=f.startsWith(`/${a}/settings/workflows`),t[56]=a,t[57]=f,t[58]=O):O=t[58];let z;t[59]!==s||t[60]!==a?(z=()=>s({to:"/$org/settings/workflows",params:{org:a}}),t[59]=s,t[60]=a,t[61]=z):z=t[61];let $;t[62]!==O||t[63]!==z?($={key:"workflows",label:"Workflows",icon:P,isActive:O,onClick:z},t[62]=O,t[63]=z,t[64]=$):$=t[64];const q=$;let F;if(t[65]!==D||t[66]!==x||t[67]!==R||t[68]!==q){const H=[D];x&&R&&H.push(q),F={type:"items",items:H},t[65]=D,t[66]=x,t[67]=R,t[68]=q,t[69]=F}else F=t[69];let W;if(t[70]!==M||t[71]!==S||t[72]!==V||t[73]!==F){if(W=[F],V.length>0){let H;t[75]!==V?(H={type:"items",items:V},t[75]=V,t[76]=H):H=t[76],W.push(H)}S.length>0&&W.push(...S),M&&W.push(M),t[70]=M,t[71]=S,t[72]=V,t[73]=F,t[74]=W}else W=t[74];return W}function ru(t){const e=B.c(3),{children:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex h-6 items-center",children:r.jsx("div",{className:"h-0.5 w-16 rounded-full bg-sidebar-foreground/15"})}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsxs(wr,{className:"pt-0 pr-0 pb-2 pl-0 mt-2",children:[i,r.jsx(Vr,{children:r.jsx(es,{className:"gap-0.5",children:s})})]}),e[1]=s,e[2]=n):n=e[2],n}function Cb(){const t=B.c(7),s=Sd().logo??wd,i=typeof s=="string"?s:s.light,n=typeof s=="string"?s:s.dark;let o;t[0]!==i?(o=r.jsx("img",{src:i,alt:"Logo",className:"size-6 object-contain dark:hidden"}),t[0]=i,t[1]=o):o=t[1];let a;t[2]!==n?(a=r.jsx("img",{src:n,alt:"Logo",className:"size-6 object-contain hidden dark:block"}),t[2]=n,t[3]=a):a=t[3];let l;return t[4]!==o||t[5]!==a?(l=r.jsx(yh,{className:"flex items-center justify-center shrink-0 px-2 pb-0",children:r.jsxs("div",{className:"flex w-full aspect-square items-center justify-center",children:[o,a]})}),t[4]=o,t[5]=a,t[6]=l):l=t[6],l}function nu(t){const e=B.c(15),{item:s}=t,{isMobile:i,setOpenMobile:n}=Cr();let o;e[0]!==i||e[1]!==s||e[2]!==n?(o=()=>{re("nav_item_clicked",{nav_key:s.key,nav_label:s.label,is_active:!!s.isActive,is_mobile:i}),s.onClick?.(),i&&n(!1)},e[0]=i,e[1]=s,e[2]=n,e[3]=o):o=e[3];const a=o,l=s.key,c=s.isActive&&"z-10";let d;e[4]!==c?(d=Y(c),e[4]=c,e[5]=d):d=e[5];let u;e[6]!==a||e[7]!==s.icon||e[8]!==s.isActive||e[9]!==s.label?(u=r.jsx(Zt,{onClick:a,isActive:s.isActive,tooltip:s.label,className:"bg-muted/75",children:s.icon}),e[6]=a,e[7]=s.icon,e[8]=s.isActive,e[9]=s.label,e[10]=u):u=e[10];let h;return e[11]!==s.key||e[12]!==d||e[13]!==u?(h=r.jsx(Pt,{className:d,children:u},l),e[11]=s.key,e[12]=d,e[13]=u,e[14]=h):h=e[14],h}function kb(t){const e=B.c(12),{section:s}=t;switch(s.type){case"divider":{let i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(vh,{className:"my-2"}),e[0]=i):i=e[0],i}case"spacer":{let i;return e[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex-1"}),e[1]=i):i=e[1],i}case"group":{const i=s.group.label,n=s.group.defaultExpanded;let o;e[2]!==s.group.items?(o=s.group.items.map(Nb),e[2]=s.group.items,e[3]=o):o=e[3];let a;return e[4]!==s.group.defaultExpanded||e[5]!==s.group.label||e[6]!==o?(a=r.jsx(ru,{label:i,defaultExpanded:n,children:o}),e[4]=s.group.defaultExpanded,e[5]=s.group.label,e[6]=o,e[7]=a):a=e[7],a}case"items":{let i;e[8]!==s.items?(i=s.items.map(jb),e[8]=s.items,e[9]=i):i=e[9];let n;return e[10]!==i?(n=r.jsx(wr,{className:"pt-0 pr-0 pb-0 pl-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-1.5",children:i})})}),e[10]=i,e[11]=n):n=e[11],n}}}function jb(t){return r.jsx(nu,{item:t},t.key)}function Nb(t){return r.jsx(nu,{item:t},t.key)}function Ab(t){const e=B.c(14),{sections:s,header:i,footer:n,additionalContent:o,variant:a,contentClassName:l}=t,c=a===void 0?"sidebar":a;let d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"h-10 shrink-0"}),children:r.jsx(Cb,{})}),e[0]=d):d=e[0];let u;e[1]!==l?(u=Y("flex flex-col flex-1 px-2 py-2 gap-0",l),e[1]=l,e[2]=u):u=e[2];let h;e[3]!==s?(h=s.map(Eb),e[3]=s,e[4]=h):h=e[4];let f;e[5]!==o||e[6]!==u||e[7]!==h?(f=r.jsxs(bh,{className:u,children:[h,o]}),e[5]=o,e[6]=u,e[7]=h,e[8]=f):f=e[8];let m;return e[9]!==n||e[10]!==i||e[11]!==f||e[12]!==c?(m=r.jsxs(Zp,{variant:c,children:[d,i,f,n]}),e[9]=n,e[10]=i,e[11]=f,e[12]=c,e[13]=m):m=e[13],m}function Eb(t,e){return r.jsx(kb,{section:t},e)}function ou(t){const e=B.c(2);let s;return e[0]!==t?(s=r.jsx(Ab,{...t}),e[0]=t,e[1]=s):s=e[1],s}ou.Skeleton=function(){return r.jsx("div",{className:"flex flex-col gap-0.5",children:Array.from({length:8}).map((e,s)=>r.jsx("div",{className:"w-full h-8",children:r.jsx(wi,{className:"h-full bg-sidebar-accent rounded-md"})},s))})};function Ib(){const t=B.c(7),s=Sd().logo??wd,i=typeof s=="string"?s:s.light,n=typeof s=="string"?s:s.dark;let o;t[0]!==i?(o=r.jsx("img",{src:i,alt:"Logo",className:"size-6 object-contain dark:hidden"}),t[0]=i,t[1]=o):o=t[1];let a;t[2]!==n?(a=r.jsx("img",{src:n,alt:"Logo",className:"size-6 object-contain hidden dark:block"}),t[2]=n,t[3]=a):a=t[3];let l;return t[4]!==o||t[5]!==a?(l=r.jsx(yh,{className:"flex items-center justify-center shrink-0 px-2 pb-0",children:r.jsxs("div",{className:"flex w-full aspect-square items-center justify-center",children:[o,a]})}),t[4]=o,t[5]=a,t[6]=l):l=t[6],l}function oc(t){const e=B.c(15),{item:s,onClose:i}=t,n=s.isActive&&"z-10";let o;e[0]!==n?(o=Y(n),e[0]=n,e[1]=o):o=e[1];let a;e[2]!==s||e[3]!==i?(a=()=>{s.onClick?.(),i()},e[2]=s,e[3]=i,e[4]=a):a=e[4];let l;e[5]!==s.icon?(l=r.jsx("span",{className:"[&>svg]:size-8",children:s.icon}),e[5]=s.icon,e[6]=l):l=e[6];let c;e[7]!==s.isActive||e[8]!==s.label||e[9]!==a||e[10]!==l?(c=r.jsx(Zt,{onClick:a,isActive:s.isActive,tooltip:s.label,className:"bg-muted/75",children:l}),e[7]=s.isActive,e[8]=s.label,e[9]=a,e[10]=l,e[11]=c):c=e[11];let d;return e[12]!==o||e[13]!==c?(d=r.jsx(Pt,{className:o,children:c}),e[12]=o,e[13]=c,e[14]=d):d=e[14],d}function Tb(t){const e=B.c(18),{section:s,onClose:i}=t;switch(s.type){case"divider":{let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(vh,{className:"my-2"}),e[0]=n):n=e[0],n}case"spacer":{let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"flex-1"}),e[1]=n):n=e[1],n}case"group":{const n=s.group.label,o=s.group.defaultExpanded;let a;if(e[2]!==i||e[3]!==s.group.items){let c;e[5]!==i?(c=d=>r.jsx(oc,{item:d,onClose:i},d.key),e[5]=i,e[6]=c):c=e[6],a=s.group.items.map(c),e[2]=i,e[3]=s.group.items,e[4]=a}else a=e[4];let l;return e[7]!==s.group.defaultExpanded||e[8]!==s.group.label||e[9]!==a?(l=r.jsx(ru,{label:n,defaultExpanded:o,children:a}),e[7]=s.group.defaultExpanded,e[8]=s.group.label,e[9]=a,e[10]=l):l=e[10],l}case"items":{let n;if(e[11]!==i||e[12]!==s.items){let a;e[14]!==i?(a=l=>r.jsx(oc,{item:l,onClose:i},l.key),e[14]=i,e[15]=a):a=e[15],n=s.items.map(a),e[11]=i,e[12]=s.items,e[13]=n}else n=e[13];let o;return e[16]!==n?(o=r.jsx(wr,{className:"pt-0 pr-0 pb-0 pl-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-1.5",children:n})})}),e[16]=n,e[17]=o):o=e[17],o}}}function Rb(t){const e=B.c(12),{sections:s,onClose:i,footer:n,additionalContent:o}=t;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"h-10 shrink-0"}),children:r.jsx(Ib,{})}),e[0]=a):a=e[0];let l;if(e[1]!==i||e[2]!==s){let u;e[4]!==i?(u=(h,f)=>r.jsx(Tb,{section:h,onClose:i},f),e[4]=i,e[5]=u):u=e[5],l=s.map(u),e[1]=i,e[2]=s,e[3]=l}else l=e[3];let c;e[6]!==o||e[7]!==l?(c=r.jsxs(bh,{className:"flex flex-col flex-1 px-2 py-2 gap-0",children:[l,o]}),e[6]=o,e[7]=l,e[8]=c):c=e[8];let d;return e[9]!==n||e[10]!==c?(d=r.jsxs("div",{className:"bg-sidebar flex h-full w-full flex-col","data-sidebar":"sidebar",children:[a,c,n]}),e[9]=n,e[10]=c,e[11]=d):d=e[11],d}function au(t){return t.toLowerCase().trim().replace(/[^a-z0-9\s_-]+/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Mb=as({name:pt().min(2,"Organization name is required")});function Db(t){const e=B.c(41),{open:s,onOpenChange:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={resolver:gr(Mb),defaultValues:{name:""}},e[0]=n):n=e[0];const o=Ai(n);let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a={mutationFn:Lb,onSuccess:Pb},e[1]=a):a=e[1];const l=Ni(a),c=l.error instanceof Error?l.error.message:l.error?"Failed to create organization.":null;let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Create a new organization"}),r.jsx(Wa,{children:"Set up a new organization to collaborate with others."})]}),e[2]=d):d=e[2];let u;if(e[3]!==l||e[4]!==o){let S;e[6]!==l?(S=w=>l.mutateAsync(w),e[6]=l,e[7]=S):S=e[7],u=o.handleSubmit(S),e[3]=l,e[4]=o,e[5]=u}else u=e[5];let h;e[8]!==o.formState.isSubmitting?(h=S=>{const{field:w}=S;return r.jsxs(_t,{children:[r.jsx(Ht,{children:"Organization Name"}),r.jsx(xt,{children:r.jsx(at,{...w,placeholder:"Acme Inc.",disabled:o.formState.isSubmitting})}),r.jsx(qm,{children:"The name of your company or organization"}),w.value&&r.jsxs("div",{className:"text-xs text-muted-foreground mt-1",children:["Organization URL:"," ",r.jsxs("span",{className:"font-mono",children:[typeof window<"u"?globalThis.location.origin:"","/",au(w.value)]})]}),r.jsx(vt,{})]})},e[8]=o.formState.isSubmitting,e[9]=h):h=e[9];let f;e[10]!==o.control||e[11]!==h?(f=r.jsx(gt,{control:o.control,name:"name",render:h}),e[10]=o.control,e[11]=h,e[12]=f):f=e[12];let m;e[13]!==c?(m=c&&r.jsx("div",{className:"text-destructive text-sm mt-2",children:c}),e[13]=c,e[14]=m):m=e[14];let p;e[15]!==l||e[16]!==o?(p=()=>{l.reset(),o.reset()},e[15]=l,e[16]=o,e[17]=p):p=e[17];let g;e[18]!==o.formState.isSubmitting||e[19]!==p?(g=r.jsx(za,{disabled:o.formState.isSubmitting,onClick:p,children:"Cancel"}),e[18]=o.formState.isSubmitting,e[19]=p,e[20]=g):g=e[20];const _=!o.formState.isValid||o.formState.isSubmitting;let v;e[21]!==o.formState.isSubmitting?(v=o.formState.isSubmitting?r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(ar,{size:"xs"})," Creating..."]}):"Create Organization",e[21]=o.formState.isSubmitting,e[22]=v):v=e[22];let x;e[23]!==_||e[24]!==v?(x=r.jsx(oe,{type:"submit",variant:"default",disabled:_,children:v}),e[23]=_,e[24]=v,e[25]=x):x=e[25];let b;e[26]!==x||e[27]!==g?(b=r.jsxs(Ka,{children:[g,x]}),e[26]=x,e[27]=g,e[28]=b):b=e[28];let y;e[29]!==b||e[30]!==u||e[31]!==f||e[32]!==m?(y=r.jsxs("form",{className:"space-y-6",onSubmit:u,autoComplete:"off",children:[f,m,b]}),e[29]=b,e[30]=u,e[31]=f,e[32]=m,e[33]=y):y=e[33];let V;e[34]!==o||e[35]!==y?(V=r.jsxs(Fa,{children:[d,r.jsx(yi,{...o,children:y})]}),e[34]=o,e[35]=y,e[36]=V):V=e[36];let C;return e[37]!==i||e[38]!==s||e[39]!==V?(C=r.jsx(qa,{open:s,onOpenChange:i,children:V}),e[37]=i,e[38]=s,e[39]=V,e[40]=C):C=e[40],C}function Pb(t){const{orgSlug:e}=t;window.location.href=`/${e}`}async function Lb(t){const e=au(t.name);if(!e)throw new Error("Organization slug is invalid");const s=await dt.organization.create({name:t.name,slug:e});if(s?.error)throw new Error(s.error.message||"Failed to create organization");const i=s?.data?.slug??e;if(!i)throw new Error("Failed to create organization");return{orgSlug:i}}function Bo(t){let e=0;for(let i=0;i<t.length;i++)e=t.charCodeAt(i)+((e<<5)-e);const s=Math.abs(e)%360;return{backgroundColor:`hsl(${s} 55% 70%)`,color:`hsl(${s} 55% 20%)`}}function Ob(t){const e=B.c(13),{org:s,size:i}=t,n=i===void 0?"sm":i,o=n==="xs"?"size-5":"size-6",a=n==="xs"?"text-[9px]":"text-xs";let l;e[0]!==o?(l=Y(o,"shrink-0 rounded-md flex items-center justify-center border border-border/50 overflow-hidden"),e[0]=o,e[1]=l):l=e[1];let c;e[2]!==s.logo||e[3]!==s.name?(c=s.logo?void 0:Bo(s.name),e[2]=s.logo,e[3]=s.name,e[4]=c):c=e[4];let d;e[5]!==s.logo||e[6]!==s.name||e[7]!==a?(d=s.logo?r.jsx("img",{src:s.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:Y("font-semibold leading-none",a),children:s.name.slice(0,2).toUpperCase()}),e[5]=s.logo,e[6]=s.name,e[7]=a,e[8]=d):d=e[8];let u;return e[9]!==l||e[10]!==c||e[11]!==d?(u=r.jsx("div",{className:l,style:c,children:d}),e[9]=l,e[10]=c,e[11]=d,e[12]=u):u=e[12],u}function $r(t){const e=B.c(22),{item:s,onClose:i}=t;if(s.href){const c=s.external?"_blank":void 0,d=s.external?"noopener noreferrer":void 0;let u;e[0]!==s.icon?(u=r.jsx("span",{className:"shrink-0 text-muted-foreground",children:s.icon}),e[0]=s.icon,e[1]=u):u=e[1];let h;e[2]!==s.label?(h=r.jsx("span",{className:"flex-1",children:s.label}),e[2]=s.label,e[3]=h):h=e[3];let f;return e[4]!==s.href||e[5]!==i||e[6]!==c||e[7]!==d||e[8]!==u||e[9]!==h?(f=r.jsxs("a",{href:s.href,target:c,rel:d,className:"flex items-center gap-2.5 px-3 py-2 rounded-md text-sm text-left w-full transition-colors text-foreground/80 hover:bg-sidebar-accent hover:text-foreground",onClick:i,children:[u,h]}),e[4]=s.href,e[5]=i,e[6]=c,e[7]=d,e[8]=u,e[9]=h,e[10]=f):f=e[10],f}let n;e[11]!==s||e[12]!==i?(n=()=>{s.onClick?.(),i()},e[11]=s,e[12]=i,e[13]=n):n=e[13];let o;e[14]!==s.icon?(o=r.jsx("span",{className:"shrink-0 text-muted-foreground",children:s.icon}),e[14]=s.icon,e[15]=o):o=e[15];let a;e[16]!==s.label?(a=r.jsx("span",{className:"flex-1",children:s.label}),e[16]=s.label,e[17]=a):a=e[17];let l;return e[18]!==n||e[19]!==o||e[20]!==a?(l=r.jsxs("button",{type:"button",onClick:n,className:"flex items-center gap-2.5 px-3 py-2 rounded-md text-sm text-left w-full transition-colors text-foreground/80 hover:bg-sidebar-accent hover:text-foreground",children:[o,a]}),e[18]=n,e[19]=o,e[20]=a,e[21]=l):l=e[21],l}function ac(t){const e=B.c(16),{sortedOrgs:s,orgParam:i,onSelectOrg:n,onCreateOrg:o}=t;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("span",{className:"text-sm font-medium text-muted-foreground/60",children:"Your Organizations"}),e[0]=a):a=e[0];let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Dt,{size:16}),e[1]=l):l=e[1];let c;e[2]!==o?(c=r.jsxs("div",{className:"flex items-center justify-between px-4 py-3",children:[a,r.jsx("button",{type:"button",onClick:o,className:"flex items-center justify-center size-7 rounded-md text-muted-foreground hover:bg-accent/50 hover:text-foreground transition-colors",children:l})]}),e[2]=o,e[3]=c):c=e[3];let d;if(e[4]!==n||e[5]!==i||e[6]!==s){let f;e[8]!==n||e[9]!==i?(f=m=>r.jsxs("button",{type:"button",onClick:()=>n(m.slug),className:Y("flex items-center gap-3 px-3 py-2.5 rounded-md text-sm text-left w-full transition-colors",m.slug===i?"bg-accent text-accent-foreground":"text-foreground hover:bg-accent/50"),children:[r.jsx(Ob,{org:m,size:"sm"}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:"text-sm font-medium truncate",children:m.name}),r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:m.slug})]}),m.slug===i&&r.jsx(Mt,{size:14,className:"ml-auto text-muted-foreground shrink-0"})]},m.id),e[8]=n,e[9]=i,e[10]=f):f=e[10],d=s.map(f),e[4]=n,e[5]=i,e[6]=s,e[7]=d}else d=e[7];let u;e[11]!==d?(u=r.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto p-1.5 flex flex-col gap-1",children:d}),e[11]=d,e[12]=u):u=e[12];let h;return e[13]!==c||e[14]!==u?(h=r.jsxs(r.Fragment,{children:[c,u]}),e[13]=c,e[14]=u,e[15]=h):h=e[15],h}function lc(t){const e=B.c(142),{user:s,userImage:i,menuItems:n,signOutItem:o,themeOptions:a,preferences:l,setPreferences:c,sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f,close:m,isMobile:p}=t;if(p){const K=s?.name??"U";let G;e[0]!==K||e[1]!==i?(G=r.jsx(Il,{url:i,fallback:K,shape:"circle",size:"sm",className:"shrink-0"}),e[0]=K,e[1]=i,e[2]=G):G=e[2];const ie=s?.name??"User";let te;e[3]!==ie?(te=r.jsx("p",{className:"text-sm font-medium truncate",children:ie}),e[3]=ie,e[4]=te):te=e[4];const J=s?.email;let ae;e[5]!==J?(ae=r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:J}),e[5]=J,e[6]=ae):ae=e[6];let Z;e[7]!==te||e[8]!==ae?(Z=r.jsxs("div",{className:"flex-1 min-w-0",children:[te,ae]}),e[7]=te,e[8]=ae,e[9]=Z):Z=e[9];let de;e[10]!==s?(de=()=>{s?.id&&navigator.clipboard.writeText(s.id).then(Fb)},e[10]=s,e[11]=de):de=e[11];let fe;e[12]===Symbol.for("react.memo_cache_sentinel")?(fe=r.jsx(Si,{size:14}),e[12]=fe):fe=e[12];let ye;e[13]!==de?(ye=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",tabIndex:-1,onClick:de,className:"shrink-0 text-muted-foreground hover:text-foreground transition-colors",children:fe})}),e[13]=de,e[14]=ye):ye=e[14];let ge;e[15]===Symbol.for("react.memo_cache_sentinel")?(ge=r.jsx(Ge,{side:"right",children:r.jsx("p",{className:"text-xs",children:"Copy user ID"})}),e[15]=ge):ge=e[15];let ce;e[16]!==ye?(ce=r.jsx(bi,{delayDuration:300,children:r.jsxs(Ye,{children:[ye,ge]})}),e[16]=ye,e[17]=ce):ce=e[17];let ue;e[18]!==ce||e[19]!==G||e[20]!==Z?(ue=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-4 border-b border-border",children:[G,Z,ce]}),e[18]=ce,e[19]=G,e[20]=Z,e[21]=ue):ue=e[21];let be;e[22]!==f||e[23]!==h||e[24]!==u||e[25]!==d?(be=r.jsx("div",{className:"border-b border-border pb-2",children:r.jsx(ac,{sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f})}),e[22]=f,e[23]=h,e[24]=u,e[25]=d,e[26]=be):be=e[26];let pe;if(e[27]!==m||e[28]!==n){let De;e[30]!==m?(De=Yt=>r.jsx($r,{item:Yt,onClose:m},Yt.key),e[30]=m,e[31]=De):De=e[31],pe=n.map(De),e[27]=m,e[28]=n,e[29]=pe}else pe=e[29];let Ce;e[32]!==m||e[33]!==o?(Ce=r.jsx($r,{item:o,onClose:m}),e[32]=m,e[33]=o,e[34]=Ce):Ce=e[34];let Ie;e[35]!==pe||e[36]!==Ce?(Ie=r.jsxs("nav",{className:"flex flex-col px-2 pt-2 pb-2 gap-0.5",children:[pe,Ce]}),e[35]=pe,e[36]=Ce,e[37]=Ie):Ie=e[37];let ee;e[38]!==be||e[39]!==Ie?(ee=r.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto",children:[be,Ie]}),e[38]=be,e[39]=Ie,e[40]=ee):ee=e[40];let se;if(e[41]!==l.theme||e[42]!==c||e[43]!==a){let De;e[45]!==l.theme||e[46]!==c?(De=Yt=>{const{value:At,icon:Et,label:Ct}=Yt;return r.jsx("button",{type:"button","aria-label":Ct,onClick:()=>c(ws=>({...ws,theme:At})),className:Y("size-8 rounded-md flex items-center justify-center transition-colors",l.theme===At?"bg-sidebar-accent text-foreground":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground"),children:Et},At)},e[45]=l.theme,e[46]=c,e[47]=De):De=e[47],se=a.map(De),e[41]=l.theme,e[42]=c,e[43]=a,e[44]=se}else se=e[44];let Ve;e[48]!==se?(Ve=r.jsx("div",{className:"flex items-center gap-0.5",children:se}),e[48]=se,e[49]=Ve):Ve=e[49];const ze=l.enableSounds?"Disable sounds":"Enable sounds";let Fe;e[50]!==c?(Fe=()=>c(zb),e[50]=c,e[51]=Fe):Fe=e[51];const ft=l.enableSounds?"text-foreground hover:bg-sidebar-accent/50":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground";let He;e[52]!==ft?(He=Y("size-8 rounded-md flex items-center justify-center transition-colors",ft),e[52]=ft,e[53]=He):He=e[53];let tt;e[54]!==l.enableSounds?(tt=l.enableSounds?r.jsx(vl,{size:14}):r.jsx(bl,{size:14}),e[54]=l.enableSounds,e[55]=tt):tt=e[55];let ht;e[56]!==ze||e[57]!==Fe||e[58]!==He||e[59]!==tt?(ht=r.jsx("button",{type:"button","aria-label":ze,onClick:Fe,className:He,children:tt}),e[56]=ze,e[57]=Fe,e[58]=He,e[59]=tt,e[60]=ht):ht=e[60];let me;e[61]===Symbol.for("react.memo_cache_sentinel")?(me=r.jsxs("span",{className:"text-xs text-muted-foreground/60",children:["v","2.291.1"]}),e[61]=me):me=e[61];let ke;e[62]!==ht?(ke=r.jsxs("div",{className:"flex items-center gap-2",children:[ht,me]}),e[62]=ht,e[63]=ke):ke=e[63];let st;e[64]!==Ve||e[65]!==ke?(st=r.jsxs("div",{className:"flex items-center justify-between px-3 py-3 border-t border-border/50",children:[Ve,ke]}),e[64]=Ve,e[65]=ke,e[66]=st):st=e[66];let zt;return e[67]!==ue||e[68]!==ee||e[69]!==st?(zt=r.jsxs("div",{className:"flex flex-col h-full overflow-hidden",children:[ue,ee,st]}),e[67]=ue,e[68]=ee,e[69]=st,e[70]=zt):zt=e[70],zt}const g=s?.name??"U";let _;e[71]!==g||e[72]!==i?(_=r.jsx(Il,{url:i,fallback:g,shape:"circle",size:"sm",className:"shrink-0"}),e[71]=g,e[72]=i,e[73]=_):_=e[73];const v=s?.name??"User";let x;e[74]!==v?(x=r.jsx("p",{className:"text-sm font-medium truncate",children:v}),e[74]=v,e[75]=x):x=e[75];const b=s?.email;let y;e[76]!==b?(y=r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:b}),e[76]=b,e[77]=y):y=e[77];let V;e[78]!==x||e[79]!==y?(V=r.jsxs("div",{className:"flex-1 min-w-0",children:[x,y]}),e[78]=x,e[79]=y,e[80]=V):V=e[80];let C;e[81]!==s?(C=()=>{s?.id&&navigator.clipboard.writeText(s.id).then($b)},e[81]=s,e[82]=C):C=e[82];let S;e[83]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Si,{size:14}),e[83]=S):S=e[83];let w;e[84]!==C?(w=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",tabIndex:-1,onClick:C,className:"shrink-0 text-muted-foreground hover:text-foreground transition-colors",children:S})}),e[84]=C,e[85]=w):w=e[85];let k;e[86]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx(Ge,{side:"right",children:r.jsx("p",{className:"text-xs",children:"Copy user ID"})}),e[86]=k):k=e[86];let T;e[87]!==w?(T=r.jsx(bi,{delayDuration:300,children:r.jsxs(Ye,{children:[w,k]})}),e[87]=w,e[88]=T):T=e[88];let M;e[89]!==T||e[90]!==_||e[91]!==V?(M=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 mx-1 mt-1",children:[_,V,T]}),e[89]=T,e[90]=_,e[91]=V,e[92]=M):M=e[92];let I;if(e[93]!==m||e[94]!==n){let K;e[96]!==m?(K=G=>r.jsx($r,{item:G,onClose:m},G.key),e[96]=m,e[97]=K):K=e[97],I=n.map(K),e[93]=m,e[94]=n,e[95]=I}else I=e[95];let E;e[98]!==m||e[99]!==o?(E=r.jsx($r,{item:o,onClose:m}),e[98]=m,e[99]=o,e[100]=E):E=e[100];let N;e[101]!==I||e[102]!==E?(N=r.jsxs("nav",{className:"flex-1 flex flex-col px-2 pt-1 overflow-y-auto",children:[I,E]}),e[101]=I,e[102]=E,e[103]=N):N=e[103];let A;if(e[104]!==l.theme||e[105]!==c||e[106]!==a){let K;e[108]!==l.theme||e[109]!==c?(K=G=>{const{value:ie,icon:te,label:J}=G;return r.jsx("button",{type:"button","aria-label":J,onClick:()=>c(ae=>({...ae,theme:ie})),className:Y("size-7 rounded-md flex items-center justify-center transition-colors",l.theme===ie?"bg-sidebar-accent text-foreground":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground"),children:te},ie)},e[108]=l.theme,e[109]=c,e[110]=K):K=e[110],A=a.map(K),e[104]=l.theme,e[105]=c,e[106]=a,e[107]=A}else A=e[107];let D;e[111]!==A?(D=r.jsx("div",{className:"flex items-center gap-0.5",children:A}),e[111]=A,e[112]=D):D=e[112];const L=l.enableSounds?"Disable sounds":"Enable sounds";let R;e[113]!==c?(R=()=>c(Bb),e[113]=c,e[114]=R):R=e[114];const P=l.enableSounds?"text-foreground hover:bg-sidebar-accent/50":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground";let O;e[115]!==P?(O=Y("size-7 rounded-md flex items-center justify-center transition-colors",P),e[115]=P,e[116]=O):O=e[116];let z;e[117]!==l.enableSounds?(z=l.enableSounds?r.jsx(vl,{size:14}):r.jsx(bl,{size:14}),e[117]=l.enableSounds,e[118]=z):z=e[118];let $;e[119]!==L||e[120]!==R||e[121]!==O||e[122]!==z?($=r.jsx("button",{type:"button","aria-label":L,onClick:R,className:O,children:z}),e[119]=L,e[120]=R,e[121]=O,e[122]=z,e[123]=$):$=e[123];let q;e[124]===Symbol.for("react.memo_cache_sentinel")?(q=r.jsxs("span",{className:"text-xs text-muted-foreground/60",children:["v","2.291.1"]}),e[124]=q):q=e[124];let F;e[125]!==$?(F=r.jsxs("div",{className:"flex items-center gap-2",children:[$,q]}),e[125]=$,e[126]=F):F=e[126];let W;e[127]!==D||e[128]!==F?(W=r.jsxs("div",{className:"flex items-center justify-between px-2 py-1.5 border-t border-border/50",children:[D,F]}),e[127]=D,e[128]=F,e[129]=W):W=e[129];let H;e[130]!==M||e[131]!==N||e[132]!==W?(H=r.jsxs("div",{className:"w-60 shrink-0 flex flex-col border-r border-border bg-sidebar/75",children:[M,N,W]}),e[130]=M,e[131]=N,e[132]=W,e[133]=H):H=e[133];let U;e[134]!==f||e[135]!==h||e[136]!==u||e[137]!==d?(U=r.jsx("div",{className:"flex-1 flex flex-col min-w-0 min-h-0 overflow-hidden",children:r.jsx(ac,{sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f})}),e[134]=f,e[135]=h,e[136]=u,e[137]=d,e[138]=U):U=e[138];let X;return e[139]!==H||e[140]!==U?(X=r.jsxs("div",{className:"flex min-h-[380px] w-full overflow-hidden",children:[H,U]}),e[139]=H,e[140]=U,e[141]=X):X=e[141],X}function Bb(t){return{...t,enableSounds:!t.enableSounds}}function $b(){he.success("User ID copied")}function zb(t){return{...t,enableSounds:!t.enableSounds}}function Fb(){he.success("User ID copied")}function lu(){const t=B.c(50),{data:e}=dt.useSession(),{data:s}=dt.useListOrganizations(),i=Oe();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={from:"/shell/$org",shouldThrow:!1},t[0]=n):n=t[0];const a=Ff(n)?.params.org,[l,c]=ei(),d=ms(),[u,h]=j.useState(!1),[f,m]=j.useState(!1),p=e?.user,g=p?.image;let _;if(t[1]!==d||t[2]!==i||t[3]!==u||t[4]!==a||t[5]!==s||t[6]!==l||t[7]!==c||t[8]!==p||t[9]!==g){const b=s?.find(X=>X.slug===a);let y;if(t[11]!==a||t[12]!==s){let X;t[14]!==a?(X=(K,G)=>K.slug===a?-1:G.slug===a?1:K.name.localeCompare(G.name),t[14]=a,t[15]=X):X=t[15],y=[...s??[]].sort(X),t[11]=a,t[12]=s,t[13]=y}else y=t[13];const V=y;let C;t[16]!==i?(C=X=>{h(!1),i({to:"/$org",params:{org:X}})},t[16]=i,t[17]=C):C=t[17];const S=C;let w;t[18]===Symbol.for("react.memo_cache_sentinel")?(w=()=>h(!1),t[18]=w):w=t[18];const k=w;let T;t[19]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx(kr,{size:16}),t[19]=T):T=t[19];let M;t[20]!==i||t[21]!==a?(M={key:"preferences",label:"Preferences",icon:T,onClick:()=>{i({to:"/$org/settings/profile",params:{org:a??""}})}},t[20]=i,t[21]=a,t[22]=M):M=t[22];let I;t[23]===Symbol.for("react.memo_cache_sentinel")?(I={key:"terms",label:"Terms of Use",icon:r.jsx(sp,{size:16}),href:"https://www.decocms.com/terms-of-use",external:!0},t[23]=I):I=t[23];let E;t[24]===Symbol.for("react.memo_cache_sentinel")?(E={key:"privacy",label:"Privacy Policy",icon:r.jsx(cg,{size:16}),href:"https://www.decocms.com/privacy-policy",external:!0},t[24]=E):E=t[24];let N;t[25]===Symbol.for("react.memo_cache_sentinel")?(N={key:"github",label:"decocms/studio",icon:r.jsx(Uf,{className:"w-4 h-4"}),href:"https://github.com/decocms/studio",external:!0},t[25]=N):N=t[25];let A;t[26]===Symbol.for("react.memo_cache_sentinel")?(A={key:"community",label:"Community",icon:r.jsx(Dn,{size:16}),href:"https://decocms.com/discord",external:!0},t[26]=A):A=t[26];let D;t[27]===Symbol.for("react.memo_cache_sentinel")?(D={key:"homepage",label:"Homepage",icon:r.jsx(Qd,{size:16}),href:"https://decocms.com",external:!0},t[27]=D):D=t[27];let L;t[28]!==M?(L=[M,I,E,N,A,D],t[28]=M,t[29]=L):L=t[29];const R=L;let P;t[30]===Symbol.for("react.memo_cache_sentinel")?(P={key:"logout",label:"Sign out",icon:r.jsx(up,{size:16}),onClick:Hb},t[30]=P):P=t[30];const O=P;let z;t[31]===Symbol.for("react.memo_cache_sentinel")?(z={value:"light",icon:r.jsx(og,{size:14}),label:"Light theme"},t[31]=z):z=t[31];let $;t[32]===Symbol.for("react.memo_cache_sentinel")?($={value:"dark",icon:r.jsx(ag,{size:14}),label:"Dark theme"},t[32]=$):$=t[32];let q;t[33]===Symbol.for("react.memo_cache_sentinel")?(q=[z,$,{value:"system",icon:r.jsx(lg,{size:14}),label:"System theme"}],t[33]=q):q=t[33];const F=q;let W;t[34]===Symbol.for("react.memo_cache_sentinel")?(W=()=>{h(!1),m(!0)},t[34]=W):W=t[34];let H;t[35]!==S||t[36]!==d||t[37]!==R||t[38]!==a||t[39]!==l||t[40]!==c||t[41]!==V||t[42]!==p||t[43]!==g?(H={user:p,userImage:g,menuItems:R,signOutItem:O,themeOptions:F,preferences:l,setPreferences:c,sortedOrgs:V,orgParam:a,onSelectOrg:S,onCreateOrg:W,close:k,isMobile:d},t[35]=S,t[36]=d,t[37]=R,t[38]=a,t[39]=l,t[40]=c,t[41]=V,t[42]=p,t[43]=g,t[44]=H):H=t[44];const U=H;_=d?r.jsxs(ri,{open:u,onOpenChange:h,direction:"bottom",children:[r.jsxs("button",{type:"button",onClick:()=>h(!0),className:"flex items-center gap-3 w-full px-3 py-2.5 rounded-lg transition-colors text-sm text-sidebar-foreground/70 hover:bg-sidebar-accent hover:text-sidebar-foreground",children:[r.jsx("div",{className:"shrink-0 size-5 rounded-md flex items-center justify-center border border-border/50 overflow-hidden",style:b?.logo?void 0:Bo(b?.name??""),children:b?.logo?r.jsx("img",{src:b.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:"font-semibold leading-none text-[8px]",children:(b?.name??"?").slice(0,2).toUpperCase()})}),r.jsx("span",{className:"truncate",children:b?.name??"Account"})]}),r.jsxs(ii,{className:"h-[80dvh] p-0",children:[r.jsx(si,{className:"sr-only",children:"Account"}),r.jsx(lc,{...U})]})]}):r.jsxs(Us,{open:u,onOpenChange:h,children:[r.jsx(zs,{asChild:!0,children:r.jsx(Zt,{tooltip:b?.name??"Account",className:"rounded-md",children:r.jsx("div",{className:"shrink-0 size-6 rounded-md flex items-center justify-center border border-border/50 overflow-hidden",style:b?.logo?void 0:Bo(b?.name??""),children:b?.logo?r.jsx("img",{src:b.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:"font-semibold leading-none text-[9px]",children:(b?.name??"?").slice(0,2).toUpperCase()})})})}),r.jsx(Fs,{side:"right",align:"end",sideOffset:18,collisionPadding:16,className:"w-[520px] p-0 flex max-h-[520px]",onCloseAutoFocus:Ub,children:r.jsx(lc,{...U})})]}),t[1]=d,t[2]=i,t[3]=u,t[4]=a,t[5]=s,t[6]=l,t[7]=c,t[8]=p,t[9]=g,t[10]=_}else _=t[10];let v;t[45]!==f?(v=r.jsx(Db,{open:f,onOpenChange:m}),t[45]=f,t[46]=v):v=t[46];let x;return t[47]!==_||t[48]!==v?(x=r.jsxs(r.Fragment,{children:[_,v]}),t[47]=_,t[48]=v,t[49]=x):x=t[49],x}function Ub(t){return t.preventDefault()}function Hb(){re("signed_out",{source:"account_popover"}),dt.signOut()}function Wb({invitation:t}){const[e,s]=j.useState(!1),[i,n]=j.useState(!1),o=bt(),a=async()=>{s(!0);try{const c=await dt.organization.acceptInvitation({invitationId:t.id});if(c.error)he.error(c.error.message),s(!1);else{const d=await dt.organization.setActive({organizationId:t.organizationId});he.success("Invitation accepted!");const u=d?.data?.slug;window.location.href=u?`/${u}`:"/"}}catch{he.error("Failed to accept invitation"),s(!1)}},l=async()=>{n(!0);try{const c=await dt.organization.rejectInvitation({invitationId:t.id});c.error?(he.error(c.error.message),n(!1)):(he.success("Invitation declined"),o.invalidateQueries())}catch{he.error("Failed to decline invitation"),n(!1)}};return r.jsxs("div",{className:"flex items-center gap-3 px-5 py-4 border-b border-border last:border-0 hover:bg-muted/25 transition-colors",children:[r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:"text-xs text-muted-foreground",children:"You've been invited to join"}),r.jsx("p",{className:"text-sm font-medium truncate",children:t.organizationName??"Unknown organization"})]}),r.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[r.jsx(oe,{size:"icon",variant:"ghost",className:"size-7 text-green-600 hover:text-green-700 hover:bg-green-50 dark:hover:bg-green-950",onClick:a,disabled:e||i,"aria-label":"Accept invitation",children:r.jsx(Mt,{size:14})}),r.jsx(oe,{size:"icon",variant:"ghost",className:"size-7 text-muted-foreground hover:text-destructive hover:bg-destructive/10",onClick:l,disabled:e||i,"aria-label":"Decline invitation",children:r.jsx(Os,{size:14})})]})]})}function Kb(){const t=j.useContext(Hf),{data:e}=t.hooks.useListUserInvitations();return(e??[]).filter(i=>i.status==="pending"&&new Date(i.expiresAt)>new Date)}class qb extends j.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,s){}render(){return this.state.hasError?null:this.props.children}}function Gb(t){return t<=1?"text-destructive":t<=5?"text-amber-500 dark:text-amber-400":"text-foreground/70"}function Yb(){const t=B.c(19),e=Oe(),{org:s}=xe();let i;t[0]!==s.id?(i={connectionId:yt,orgId:s.id},t[0]=s.id,t[1]=i):i=t[1];const n=Ae(i);let o;t[2]===Symbol.for("react.memo_cache_sentinel")?(o={providerId:"deco"},t[2]=o):o=t[2];let a;t[3]!==n?(a={client:n,toolName:"AI_PROVIDER_CREDITS",toolArguments:o,staleTime:6e4,select:Xb},t[3]=n,t[4]=a):a=t[4];const{data:l,isPending:c,isError:d}=ni(a),u=l?.balanceCents!=null?l.balanceCents/100:null;let h;t[5]!==u||t[6]!==d||t[7]!==c?(h=c||d||u==null?"Credits":`Credits: $${u.toFixed(2)}`,t[5]=u,t[6]=d,t[7]=c,t[8]=h):h=t[8];const f=h;let m;t[9]!==u?(m=Y(u!=null&&Gb(u)),t[9]=u,t[10]=m):m=t[10];let p;t[11]!==e||t[12]!==s.slug?(p=()=>e({to:"/$org/settings/ai-providers",params:{org:s.slug}}),t[11]=e,t[12]=s.slug,t[13]=p):p=t[13];let g;t[14]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(Ta,{size:24}),t[14]=g):g=t[14];let _;return t[15]!==m||t[16]!==p||t[17]!==f?(_=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:f,className:m,onClick:p,children:g})})}),t[15]=m,t[16]=p,t[17]=f,t[18]=_):_=t[18],_}function Xb(t){return t.structuredContent}function Jb(){const t=B.c(1);if(!La().some(Qb))return null;let i;return t[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Yb,{}),t[0]=i):i=t[0],i}function Qb(t){return t.providerId==="deco"}function Zb(){const t=B.c(3),[e,s]=j.useState(!1);let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Connections",onClick:()=>{re("connections_dialog_opened",{source:"sidebar_footer",mode:"browse"}),s(!0)},children:r.jsx(fp,{size:24})})})}),t[0]=i):i=t[0];let n;return t[1]!==e?(n=r.jsxs(r.Fragment,{children:[i,r.jsx(Qa,{mode:"browse",open:e,onOpenChange:s,defaultTab:"all"})]}),t[1]=e,t[2]=n):n=t[2],n}function e0(){const t=B.c(11),e=Kb();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(yl,{size:24}),t[0]=s):s=t[0];let i;t[1]!==e.length?(i=e.length>0&&r.jsx("span",{className:"absolute top-1 right-1 size-2 rounded-full bg-red-500 pointer-events-none"}),t[1]=e.length,t[2]=i):i=t[2];let n;t[3]!==i?(n=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(zs,{asChild:!0,children:r.jsxs(Zt,{tooltip:"Inbox",className:"relative",children:[s,i]})})})}),t[3]=i,t[4]=n):n=t[4];let o;t[5]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"px-4 py-3 border-b border-border shrink-0",children:r.jsx("h3",{className:"text-sm font-medium",children:"Inbox"})}),t[5]=o):o=t[5];let a;t[6]!==e?(a=r.jsxs(Fs,{side:"right",align:"start",sideOffset:16,collisionPadding:16,className:"w-[min(400px,calc(100vw-2rem))] p-0 h-[min(650px,calc(100dvh-4rem))] flex flex-col",children:[o,e.length===0?r.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-2 px-6 text-center",children:[r.jsx(yl,{size:24,className:"text-muted-foreground/50"}),r.jsx("p",{className:"text-sm font-medium text-foreground",children:"No invites pending"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Organization invitations will appear here"})]}):r.jsx("div",{className:"overflow-y-auto flex-1",children:e.map(t0)})]}),t[6]=e,t[7]=a):a=t[7];let l;return t[8]!==n||t[9]!==a?(l=r.jsxs(Us,{children:[n,a]}),t[8]=n,t[9]=a,t[10]=l):l=t[10],l}function t0(t){return r.jsx(Wb,{invitation:t},t.id)}function s0(){const t=B.c(6),e=Oe(),{org:s}=xe();let i;t[0]!==e||t[1]!==s.slug?(i=()=>e({to:"/$org/settings",params:{org:s.slug}}),t[0]=e,t[1]=s.slug,t[2]=i):i=t[2];let n;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(kr,{size:24}),t[3]=n):n=t[3];let o;return t[4]!==i?(o=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Settings",onClick:i,children:n})})}),t[4]=i,t[5]=o):o=t[5],o}function i0(){const t=B.c(5);let e,s,i,n;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(qb,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(Jb,{})})}),s=r.jsx(Zb,{}),i=r.jsx(e0,{}),n=r.jsx(s0,{}),t[0]=e,t[1]=s,t[2]=i,t[3]=n):(e=t[0],s=t[1],i=t[2],n=t[3]);let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(Sh,{className:"px-2 pb-3 gap-1",children:[e,s,i,n,r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(lu,{})})})]}),t[4]=o):o=t[4],o}function r0(){const t=B.c(10),e=Oe(),{org:s}=xe(),{setOpenMobile:i}=Cr();let n;t[0]!==e||t[1]!==s.slug||t[2]!==i?(n=()=>{e({to:"/$org/settings",params:{org:s.slug}}),i(!1)},t[0]=e,t[1]=s.slug,t[2]=i,t[3]=n):n=t[3];let o;t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(kr,{}),t[4]=o):o=t[4];let a;t[5]!==n?(a=r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Settings",onClick:n,children:o})}),t[5]=n,t[6]=a):a=t[6];let l;t[7]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Pt,{children:r.jsx(lu,{})}),t[7]=l):l=t[7];let c;return t[8]!==a?(c=r.jsx(Sh,{children:r.jsxs(es,{children:[a,l]})}),t[8]=a,t[9]=c):c=t[9],c}var Za="ContextMenu",[n0]=Zf(Za,[Vd]),St=Vd(),[o0,cu]=n0(Za),du=t=>{const{__scopeContextMenu:e,children:s,onOpenChange:i,dir:n,modal:o=!0}=t,[a,l]=j.useState(!1),c=St(e),d=Wf(i),u=j.useCallback(h=>{l(h),d(h)},[d]);return r.jsx(o0,{scope:e,open:a,onOpenChange:u,modal:o,children:r.jsx(Kf,{...c,dir:n,open:a,onOpenChange:u,modal:o,children:s})})};du.displayName=Za;var hu="ContextMenuTrigger",uu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,disabled:i=!1,...n}=t,o=cu(hu,s),a=St(s),l=j.useRef({x:0,y:0}),c=j.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...l.current})}),d=j.useRef(0),u=j.useCallback(()=>window.clearTimeout(d.current),[]),h=f=>{l.current={x:f.clientX,y:f.clientY},o.onOpenChange(!0)};return j.useEffect(()=>u,[u]),j.useEffect(()=>{i&&u()},[i,u]),r.jsxs(r.Fragment,{children:[r.jsx(qf,{...a,virtualRef:c}),r.jsx(Gf.span,{"data-state":o.open?"open":"closed","data-disabled":i?"":void 0,...n,ref:e,style:{WebkitTouchCallout:"none",...t.style},onContextMenu:i?t.onContextMenu:Li(t.onContextMenu,f=>{u(),h(f),f.preventDefault()}),onPointerDown:i?t.onPointerDown:Li(t.onPointerDown,zr(f=>{u(),d.current=window.setTimeout(()=>h(f),700)})),onPointerMove:i?t.onPointerMove:Li(t.onPointerMove,zr(u)),onPointerCancel:i?t.onPointerCancel:Li(t.onPointerCancel,zr(u)),onPointerUp:i?t.onPointerUp:Li(t.onPointerUp,zr(u))})]})});uu.displayName=hu;var a0="ContextMenuPortal",fu=t=>{const{__scopeContextMenu:e,...s}=t,i=St(e);return r.jsx(Yf,{...i,...s})};fu.displayName=a0;var mu="ContextMenuContent",pu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=cu(mu,s),o=St(s),a=j.useRef(!1);return r.jsx(Xf,{...o,...i,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:l=>{t.onCloseAutoFocus?.(l),!l.defaultPrevented&&a.current&&l.preventDefault(),a.current=!1},onInteractOutside:l=>{t.onInteractOutside?.(l),!l.defaultPrevented&&!n.modal&&(a.current=!0)},style:{...t.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});pu.displayName=mu;var l0="ContextMenuGroup",c0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(em,{...n,...i,ref:e})});c0.displayName=l0;var d0="ContextMenuLabel",h0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(tm,{...n,...i,ref:e})});h0.displayName=d0;var u0="ContextMenuItem",gu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(Jf,{...n,...i,ref:e})});gu.displayName=u0;var f0="ContextMenuCheckboxItem",m0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(sm,{...n,...i,ref:e})});m0.displayName=f0;var p0="ContextMenuRadioGroup",g0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(im,{...n,...i,ref:e})});g0.displayName=p0;var _0="ContextMenuRadioItem",x0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(rm,{...n,...i,ref:e})});x0.displayName=_0;var v0="ContextMenuItemIndicator",b0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(nm,{...n,...i,ref:e})});b0.displayName=v0;var y0="ContextMenuSeparator",_u=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(Qf,{...n,...i,ref:e})});_u.displayName=y0;var S0="ContextMenuArrow",w0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(om,{...n,...i,ref:e})});w0.displayName=S0;var V0="ContextMenuSubTrigger",C0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(am,{...n,...i,ref:e})});C0.displayName=V0;var k0="ContextMenuSubContent",j0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(lm,{...n,...i,ref:e,style:{...t.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});j0.displayName=k0;function zr(t){return e=>e.pointerType!=="mouse"?t(e):void 0}var N0=du,A0=uu,E0=fu,I0=pu,T0=gu,R0=_u;function M0(t){const e=B.c(4);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let i;return e[2]!==s?(i=r.jsx(N0,{"data-slot":"context-menu",...s}),e[2]=s,e[3]=i):i=e[3],i}function D0(t){const e=B.c(4);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let i;return e[2]!==s?(i=r.jsx(A0,{"data-slot":"context-menu-trigger",...s}),e[2]=s,e[3]=i):i=e[3],i}function P0(t){const e=B.c(8);let s,i;e[0]!==t?({className:s,...i}=t,e[0]=t,e[1]=s,e[2]=i):(s=e[1],i=e[2]);let n;e[3]!==s?(n=Y("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",s),e[3]=s,e[4]=n):n=e[4];let o;return e[5]!==i||e[6]!==n?(o=r.jsx(E0,{children:r.jsx(I0,{"data-slot":"context-menu-content",className:n,...i})}),e[5]=i,e[6]=n,e[7]=o):o=e[7],o}function cc(t){const e=B.c(12);let s,i,n,o;e[0]!==t?({className:s,inset:i,variant:o,...n}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=n,e[4]=o):(s=e[1],i=e[2],n=e[3],o=e[4]);const a=o===void 0?"default":o;let l;e[5]!==s?(l=Y("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),e[5]=s,e[6]=l):l=e[6];let c;return e[7]!==i||e[8]!==n||e[9]!==l||e[10]!==a?(c=r.jsx(T0,{"data-slot":"context-menu-item","data-inset":i,"data-variant":a,className:l,...n}),e[7]=i,e[8]=n,e[9]=l,e[10]=a,e[11]=c):c=e[11],c}function L0(t){const e=B.c(8);let s,i;e[0]!==t?({className:s,...i}=t,e[0]=t,e[1]=s,e[2]=i):(s=e[1],i=e[2]);let n;e[3]!==s?(n=Y("bg-border -mx-1 my-1 h-px",s),e[3]=s,e[4]=n):n=e[4];let o;return e[5]!==i||e[6]!==n?(o=r.jsx(R0,{"data-slot":"context-menu-separator",className:n,...i}),e[5]=i,e[6]=n,e[7]=o):o=e[7],o}function xu(t){const e=Oe(),s=bt(),i=Vh(),{locator:n}=xe(),o=_r({strict:!1}),a=ti({strict:!1});return async l=>{const c=crypto.randomUUID(),d=l===a.virtualmcpid?Dd(s,n,o.taskId??""):null;try{await i.create.mutateAsync({id:c,virtual_mcp_id:l,...d?{branch:d}:{}})}catch{}e({to:"/$org/$taskId",params:{org:t,taskId:c},search:{virtualmcpid:l}})}}function O0({agent:t,org:e,onUnpin:s,isDragging:i}){const n=Oe(),{isMobile:o,setOpenMobile:a}=Cr(),l=xu(e),d=yd({select:b=>b.location.pathname}).startsWith(`/${e}/${t.id}`),[u,h]=j.useState(null),f=j.useRef(null),m=j.useRef(null),p=j.useRef(!1);p.current=!!i,i&&(u||m.current)&&(m.current&&(clearTimeout(m.current),m.current=null),u&&h(null));const g=b=>{if(p.current)return;const y=b.currentTarget.getBoundingClientRect();m.current=setTimeout(()=>{p.current||h(y)},550)},_=b=>{m.current&&(clearTimeout(m.current),m.current=null),!(f.current&&b.relatedTarget instanceof Node&&f.current.contains(b.relatedTarget))&&h(null)},v=u?Math.round(u.height*.9):0,x=u?u.width+v:0;return r.jsx(M0,{children:r.jsxs(Pt,{className:Y(u&&"z-[55]"),children:[r.jsx(D0,{asChild:!0,children:r.jsx(Zt,{tooltip:u?void 0:t.title,isActive:d,onClick:()=>{re("sidebar_agent_pin_clicked",{agent_id:t.id,agent_title:t.title}),l(t.id),o&&a(!1)},onMouseEnter:g,onMouseLeave:_,children:r.jsx(Qt,{icon:t.icon,name:t.title,size:"xs",className:"w-full h-full [&_svg]:w-1/2 [&_svg]:h-1/2"})})}),r.jsxs(P0,{children:[r.jsxs(cc,{onClick:()=>{const b=crypto.randomUUID();n({to:"/$org/$taskId",params:{org:e,taskId:b},search:{virtualmcpid:t.id}})},children:[r.jsx(kr,{size:14}),"Settings"]}),r.jsx(L0,{}),r.jsxs(cc,{onClick:()=>{s(),d&&n({to:"/$org",params:{org:e}})},className:"",children:[r.jsx(Es,{size:14}),"Unpin"]})]}),u&&Ei.createPortal(r.jsx("button",{ref:f,type:"button",onMouseLeave:()=>h(null),onClick:b=>{b.stopPropagation(),h(null),s(),n({to:"/$org",params:{org:e}})},className:Y("flex items-center justify-center","bg-sidebar-accent text-muted-foreground","rounded-xl cursor-pointer","animate-in fade-in-0 slide-in-from-right-2","duration-150 [animation-timing-function:cubic-bezier(0.165,0.84,0.44,1)]","hover:text-foreground transition-colors"),style:{position:"fixed",top:u.top,left:u.left,height:u.height,width:x,paddingLeft:u.width,zIndex:50,boxShadow:"inset 0 0 0.5px 1px hsla(0, 0%, 100%, 0.075), 0 0 0 0.5px hsla(0, 0%, 0%, 0.12)"},children:r.jsx(Es,{size:14})}),document.body)]})})}function B0(t){const e=B.c(18);let s;e[0]!==t.agent.id?(s={id:t.agent.id},e[0]=t.agent.id,e[1]=s):s=e[1];const{attributes:i,listeners:n,setNodeRef:o,transform:a,transition:l,isDragging:c}=vg(s);let d;e[2]!==a?(d=bg.Transform.toString(a?{...a,x:0}:null),e[2]=a,e[3]=d):d=e[3];const u=c?.5:void 0,h=c?100:void 0;let f;e[4]!==d||e[5]!==u||e[6]!==h||e[7]!==l?(f={transform:d,transition:l,opacity:u,zIndex:h},e[4]=d,e[5]=u,e[6]=h,e[7]=l,e[8]=f):f=e[8];const m=f;let p;e[9]!==c||e[10]!==t?(p=r.jsx(O0,{...t,isDragging:c}),e[9]=c,e[10]=t,e[11]=p):p=e[11];let g;return e[12]!==i||e[13]!==n||e[14]!==o||e[15]!==m||e[16]!==p?(g=r.jsx("div",{ref:o,style:m,...i,...n,tabIndex:-1,className:"w-full",children:p}),e[12]=i,e[13]=n,e[14]=o,e[15]=m,e[16]=p,e[17]=g):g=e[17],g}function $0(t){const e=B.c(9),{agent:s,onClick:i}=t;let n;e[0]!==s.icon||e[1]!==s.title?(n=r.jsx(Qt,{icon:s.icon,name:s.title,size:"md",className:"transition-transform group-hover:scale-105"}),e[0]=s.icon,e[1]=s.title,e[2]=n):n=e[2];let o;e[3]!==s.title?(o=r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground line-clamp-2 w-full",children:s.title}),e[3]=s.title,e[4]=o):o=e[4];let a;return e[5]!==i||e[6]!==n||e[7]!==o?(a=r.jsxs("button",{type:"button",onClick:i,className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group",children:[n,o]}),e[5]=i,e[6]=n,e[7]=o,e[8]=a):a=e[8],a}function z0(t){const e=B.c(80),{onClose:s,onOpenImportDeco:i,onOpenGithubImport:n,onOpenSelfHealing:o,onOpenDiagnosticsModal:a,onOpenLeanCanvasModal:l,onOpenStudioPackModal:c,onOpenAiImageModal:d,onOpenAiResearchModal:u}=t,[h,f]=j.useState(""),m=Rn(),{org:p}=xe();let g;e[0]!==m?(g=m.filter(Y0).map(G0),e[0]=m,e[1]=g):g=e[1];const _=g,{pin:v,isPinned:x}=gh(p.id,_);let b;e[2]===Symbol.for("react.memo_cache_sentinel")?(b={navigateOnCreate:!0},e[2]=b):b=e[2];const{createVirtualMCP:y,isCreating:V}=_h(b),[C]=ei(),S=xu(p.slug),w=Sr();let k,T,M,I,E,N,A,D;if(e[3]!==m||e[4]!==y||e[5]!==V||e[6]!==x||e[7]!==w||e[8]!==S||e[9]!==s||e[10]!==d||e[11]!==u||e[12]!==a||e[13]!==n||e[14]!==i||e[15]!==l||e[16]!==o||e[17]!==c||e[18]!==v||e[19]!==C.experimental_vibecode||e[20]!==h){const q=h.toLowerCase();D=m.filter(q0).filter(se=>!h||se.title.toLowerCase().includes(q));let F;e[29]!==m?(F=m.some(K0),e[29]=m,e[30]=F):F=e[30];const W=F;k=jt.filter(se=>(!h||se.title.toLowerCase().includes(q))&&!(se.id==="studio-pack"&&W)&&!(se.id==="self-healing-storefront"&&!C.experimental_vibecode));let H;e[31]===Symbol.for("react.memo_cache_sentinel")?(H=jt.find(W0),e[31]=H):H=e[31];const U=H,X=U?m.find(se=>se.metadata?.type===U.id):void 0;let K;e[32]===Symbol.for("react.memo_cache_sentinel")?(K=jt.find(H0),e[32]=K):K=e[32];const G=K,ie=G?m.find(se=>se.metadata?.type===G.id):void 0;let te;e[33]===Symbol.for("react.memo_cache_sentinel")?(te=jt.find(U0),e[33]=te):te=e[33];const J=te,ae=J?m.find(se=>se.metadata?.type===J.id):void 0;let Z;e[34]===Symbol.for("react.memo_cache_sentinel")?(Z=jt.find(F0),e[34]=Z):Z=e[34];const de=Z,fe=de?m.find(se=>se.metadata?.type===de.id):void 0;let ye;e[35]!==x||e[36]!==S||e[37]!==s||e[38]!==v?(ye=se=>{x(se.id)||v(se.id),s(),f(""),S(se.id)},e[35]=x,e[36]=S,e[37]=s,e[38]=v,e[39]=ye):ye=e[39];const ge=ye,ce=se=>{s(),f(""),se==="self-healing-storefront"?o():se==="site-editor"?i():se==="site-diagnostics"?X?w(X.id):a():se==="lean-canvas"?ie?w(ie.id):l():se==="ai-image"?ae?w(ae.id):d():se==="ai-research"?fe?w(fe.id):u():se==="studio-pack"?c():S(se)};N="flex flex-col max-h-[min(640px,80dvh)]",e[40]!==h?(A=r.jsx(yg,{value:h,onChange:f,placeholder:"Search agents..."}),e[40]=h,e[41]=A):A=e[41],T="overflow-y-auto flex-1 min-h-0 px-3 pb-3",e[42]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx("div",{className:"px-1 pt-3 pb-2",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Agents"})}),e[42]=M):M=e[42];let ue;e[43]!==y||e[44]!==s?(ue=async()=>{re("agent_create_new_clicked",{source:"browse_popover"}),await y(),s()},e[43]=y,e[44]=s,e[45]=ue):ue=e[45];let be,pe;e[46]===Symbol.for("react.memo_cache_sentinel")?(be=r.jsx("div",{className:"w-12 h-12 rounded-xl border-2 border-dashed border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-105",children:r.jsx(Dt,{size:16,className:"text-muted-foreground"})}),pe=r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground",children:"Create new"}),e[46]=be,e[47]=pe):(be=e[46],pe=e[47]);let Ce;e[48]!==V||e[49]!==ue?(Ce=r.jsxs("button",{type:"button",disabled:V,onClick:ue,className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group disabled:opacity-50 disabled:cursor-not-allowed",children:[be,pe]}),e[48]=V,e[49]=ue,e[50]=Ce):Ce=e[50];let Ie;e[51]!==s||e[52]!==n||e[53]!==C.experimental_vibecode?(Ie=C.experimental_vibecode&&r.jsxs("button",{type:"button",onClick:()=>{re("agent_import_clicked",{source:"github"}),n(),s()},className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group",children:[r.jsx("div",{className:"w-12 h-12 rounded-xl border-2 border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-105",children:r.jsx(ph,{className:"size-5 text-muted-foreground"})}),r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground",children:"Import GitHub"})]}),e[51]=s,e[52]=n,e[53]=C.experimental_vibecode,e[54]=Ie):Ie=e[54];let ee;e[55]!==ge?(ee=se=>r.jsx($0,{agent:se,onClick:()=>ge(se)},se.id),e[55]=ge,e[56]=ee):ee=e[56],I=r.jsxs("div",{className:"grid grid-cols-3 gap-1",children:[Ce,Ie,D.map(ee)]}),E=k.length>0&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"px-1 pt-4 pb-2",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Agent templates"})}),r.jsx("div",{className:"grid grid-cols-3 gap-1",children:k.map(se=>r.jsxs("button",{type:"button",onClick:()=>{re("agent_template_clicked",{template_id:se.id,template_title:se.title}),ce(se.id)},className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group disabled:opacity-50 disabled:cursor-not-allowed",children:[r.jsx(Qt,{icon:se.icon,name:se.title,size:"md",className:"transition-transform group-hover:scale-105"}),r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground line-clamp-2 w-full",children:se.title})]},se.id))})]}),e[3]=m,e[4]=y,e[5]=V,e[6]=x,e[7]=w,e[8]=S,e[9]=s,e[10]=d,e[11]=u,e[12]=a,e[13]=n,e[14]=i,e[15]=l,e[16]=o,e[17]=c,e[18]=v,e[19]=C.experimental_vibecode,e[20]=h,e[21]=k,e[22]=T,e[23]=M,e[24]=I,e[25]=E,e[26]=N,e[27]=A,e[28]=D}else k=e[21],T=e[22],M=e[23],I=e[24],E=e[25],N=e[26],A=e[27],D=e[28];let L;e[57]!==k||e[58]!==V||e[59]!==h||e[60]!==D.length?(L=D.length===0&&k.length===0&&!V&&r.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:h?"No agents found":"No agents yet"}),e[57]=k,e[58]=V,e[59]=h,e[60]=D.length,e[61]=L):L=e[61];let R;e[62]!==T||e[63]!==M||e[64]!==I||e[65]!==E||e[66]!==L?(R=r.jsxs("div",{className:T,children:[M,I,E,L]}),e[62]=T,e[63]=M,e[64]=I,e[65]=E,e[66]=L,e[67]=R):R=e[67];let P;e[68]!==p.slug?(P={org:p.slug},e[68]=p.slug,e[69]=P):P=e[69];let O;e[70]!==s?(O=()=>s(),e[70]=s,e[71]=O):O=e[71];let z;e[72]!==P||e[73]!==O?(z=r.jsx("div",{className:"border-t border-border px-3 py-2.5",children:r.jsx(Cd,{to:"/$org/settings/agents",params:P,onClick:O,className:"text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center justify-center",children:"See all agents"})}),e[72]=P,e[73]=O,e[74]=z):z=e[74];let $;return e[75]!==R||e[76]!==z||e[77]!==N||e[78]!==A?($=r.jsxs("div",{className:N,children:[A,R,z]}),e[75]=R,e[76]=z,e[77]=N,e[78]=A,e[79]=$):$=e[79],$}function F0(t){return t.id==="ai-research"}function U0(t){return t.id==="ai-image"}function H0(t){return t.id==="lean-canvas"}function W0(t){return t.id==="site-diagnostics"}function K0(t){return Wm(t.id)}function q0(t){return!lr(t.id)}function G0(t){return t.id}function Y0(t){return t.pinned}function X0(){const t=B.c(36),[e,s]=j.useState(!1),[i,n]=j.useState(!1),[o,a]=j.useState(!1),[l,c]=j.useState(!1),[d,u]=j.useState(!1),[h,f]=j.useState(!1),[m,p]=j.useState(!1),[g,_]=j.useState(!1),[v,x]=j.useState(!1),b=ms(),{setOpenMobile:y}=Cr();let V;t[0]!==b||t[1]!==y?(V=()=>{s(!1),b&&y(!1)},t[0]=b,t[1]=y,t[2]=V):V=t[2];const C=V;let S;t[3]!==C||t[4]!==e?(S=e&&r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex items-center justify-center py-8",children:r.jsx(wi,{className:"h-4 w-24"})}),children:r.jsx(z0,{onClose:C,onOpenImportDeco:()=>n(!0),onOpenGithubImport:()=>{a(!0),C()},onOpenSelfHealing:()=>{c(!0),C()},onOpenDiagnosticsModal:()=>u(!0),onOpenLeanCanvasModal:()=>f(!0),onOpenStudioPackModal:()=>p(!0),onOpenAiImageModal:()=>_(!0),onOpenAiResearchModal:()=>x(!0)})}),t[3]=C,t[4]=e,t[5]=S):S=t[5];const w=S;let k;t[6]!==b||t[7]!==e||t[8]!==w?(k=b?r.jsxs(r.Fragment,{children:[r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Browse agents",className:"bg-muted/75 hover:bg-sidebar-accent",onClick:()=>{re("agent_browser_opened",{surface:"mobile_drawer"}),s(!0)},children:r.jsx(Dt,{className:"!opacity-100"})})}),r.jsx(ri,{open:e,onOpenChange:s,direction:"bottom",children:r.jsxs(ii,{className:"max-h-[85dvh] p-0",children:[r.jsx(si,{className:"sr-only",children:"Browse agents"}),w]})})]}):r.jsxs(Us,{open:e,onOpenChange:P=>{P&&!e&&re("agent_browser_opened",{surface:"desktop_popover"}),s(P)},children:[r.jsx(Pt,{children:r.jsx(zs,{asChild:!0,children:r.jsx(Zt,{tooltip:"Browse agents",className:"bg-muted/75 hover:bg-sidebar-accent",children:r.jsx(Dt,{className:"!opacity-100"})})})}),r.jsx(Fs,{className:"w-[380px] p-0 overflow-hidden",side:"right",align:"start",children:w})]}),t[6]=b,t[7]=e,t[8]=w,t[9]=k):k=t[9];let T;t[10]!==i?(T=r.jsx(fn,{open:i,onOpenChange:n}),t[10]=i,t[11]=T):T=t[11];let M;t[12]!==o?(M=r.jsx(hh,{open:o,onOpenChange:a}),t[12]=o,t[13]=M):M=t[13];let I;t[14]!==l?(I=r.jsx(Qh,{open:l,onOpenChange:c}),t[14]=l,t[15]=I):I=t[15];let E;t[16]!==d?(E=r.jsx(uh,{open:d,onOpenChange:u}),t[16]=d,t[17]=E):E=t[17];let N;t[18]!==h?(N=r.jsx(fh,{open:h,onOpenChange:f}),t[18]=h,t[19]=N):N=t[19];let A;t[20]!==m?(A=r.jsx(mh,{open:m,onOpenChange:p}),t[20]=m,t[21]=A):A=t[21];let D;t[22]!==g?(D=r.jsx(Xh,{open:g,onOpenChange:_}),t[22]=g,t[23]=D):D=t[23];let L;t[24]!==v?(L=r.jsx(Jh,{open:v,onOpenChange:x}),t[24]=v,t[25]=L):L=t[25];let R;return t[26]!==L||t[27]!==k||t[28]!==T||t[29]!==M||t[30]!==I||t[31]!==E||t[32]!==N||t[33]!==A||t[34]!==D?(R=r.jsxs(r.Fragment,{children:[k,T,M,I,E,N,A,D,L]}),t[26]=L,t[27]=k,t[28]=T,t[29]=M,t[30]=I,t[31]=E,t[32]=N,t[33]=A,t[34]=D,t[35]=R):R=t[35],R}function J0(){const t=B.c(34),e=Rn(),{org:s}=xe();let i;t[0]!==e?(i=e.filter(ty).map(ey),t[0]=e,t[1]=i):i=t[1];const n=i,{pinnedIds:o,unpin:a,reorder:l}=gh(s.id,n),c=new Map(e.map(Z0)),d=o.map(R=>c.get(R)).filter(Q0);let u;t[2]===Symbol.for("react.memo_cache_sentinel")?(u={activationConstraint:{distance:5}},t[2]=u):u=t[2];let h;t[3]===Symbol.for("react.memo_cache_sentinel")?(h={coordinateGetter:_g},t[3]=h):h=t[3];const f=dg(Tl(ug,u),Tl(hg,h));let m;t[4]!==o||t[5]!==l?(m=R=>{const{active:P,over:O}=R;if(!O||P.id===O.id)return;const z=o.indexOf(P.id),$=o.indexOf(O.id);z===-1||$===-1||l(xg([...o],z,$))},t[4]=o,t[5]=l,t[6]=m):m=t[6];const p=m,g=wr,_="py-0 px-0 mt-2 flex-1 min-h-0";let v;t[7]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"h-px bg-border mx-2 mb-2"}),t[7]=v):v=t[7];const x=Vr,b="flex flex-1 min-h-0 flex-col overflow-y-auto [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden",y=es,V="gap-2";let C;t[8]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(X0,{}),t[8]=C):C=t[8];const S=pg,w=gg,k=fg,T=mg;let M;t[9]!==s.slug||t[10]!==a?(M=R=>r.jsx(B0,{agent:R,org:s.slug,onUnpin:()=>a(R.id)},R.id),t[9]=s.slug,t[10]=a,t[11]=M):M=t[11];const I=d.map(M);let E;t[12]!==k||t[13]!==o||t[14]!==T||t[15]!==I?(E=r.jsx(k,{items:o,strategy:T,children:I}),t[12]=k,t[13]=o,t[14]=T,t[15]=I,t[16]=E):E=t[16];let N;t[17]!==S||t[18]!==p||t[19]!==f||t[20]!==E||t[21]!==w?(N=r.jsx(S,{sensors:f,collisionDetection:w,onDragEnd:p,children:E}),t[17]=S,t[18]=p,t[19]=f,t[20]=E,t[21]=w,t[22]=N):N=t[22];let A;t[23]!==y||t[24]!==N||t[25]!==C?(A=r.jsxs(y,{className:V,children:[C,N]}),t[23]=y,t[24]=N,t[25]=C,t[26]=A):A=t[26];let D;t[27]!==x||t[28]!==A?(D=r.jsx(x,{className:b,children:A}),t[27]=x,t[28]=A,t[29]=D):D=t[29];let L;return t[30]!==g||t[31]!==D||t[32]!==v?(L=r.jsxs(g,{className:_,children:[v,D]}),t[30]=g,t[31]=D,t[32]=v,t[33]=L):L=t[33],L}function Q0(t){return!!t}function Z0(t){return[t.id,t]}function ey(t){return t.id}function ty(t){return t.pinned}function vu(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:r.jsx(wr,{className:"py-0 px-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-2",children:r.jsx(Pt,{children:r.jsxs("div",{className:"flex items-center gap-2 px-2 py-2",children:[r.jsx(wi,{className:"h-4 w-4 rounded"}),r.jsx(wi,{className:"h-4 flex-1"})]})})})})}),children:r.jsx(J0,{})}),t[0]=e):e=t[0],e}function sy(){const t=B.c(4),e=iu();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(i0,{}),t[0]=s):s=t[0];let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(ls,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(vu,{})})}),t[1]=i):i=t[1];let n;return t[2]!==e?(n=r.jsx(ou,{sections:e,footer:s,additionalContent:i}),t[2]=e,t[3]=n):n=t[3],n}function iy(t){const e=B.c(5),{onClose:s}=t,i=iu();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(r0,{}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(ls,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(vu,{})})}),e[1]=o):o=e[1];let a;return e[2]!==s||e[3]!==i?(a=r.jsx(Rb,{sections:i,onClose:s,footer:n,additionalContent:o}),e[2]=s,e[3]=i,e[4]=a):a=e[4],a}async function ry(t,e,s){const i=await t.callTool({name:e,arguments:s});if(i.isError){const n=i.content?.[0]?.text??`Tool ${e} failed without a message`;throw new Error(n)}return i}const bu=["VM_START"],Fr=new Map,ny=t=>`${t.virtualMcpId}::${t.branch??""}`;function el(t){const e=bt();return Ni({mutationKey:bu,mutationFn:async s=>{const i=ny(s),n=Fr.get(i);if(n)return n;const o=(async()=>(await ry(t,"VM_START",s)).structuredContent)();Fr.set(i,o);try{return await o}finally{Fr.get(i)===o&&Fr.delete(i)}},onSuccess:()=>{Xr(e)}})}function oy(t,e){const s=B.c(3);let i;return s[0]!==e||s[1]!==t?(i={mutationKey:bu,predicate:o=>{if(!t)return!1;const a=o.state.variables;return!a||a.virtualMcpId!==t?!1:(a.branch??"")===(e??"")}},s[0]=e,s[1]=t,s[2]=i):i=s[2],Dg(i)>0}function ay(t,e){return t===1?!0:t===0?!1:e}function ly(t){const e=t.entityMetadata?.defaultMainView??null,s=e==null||e.type==="chat",i=t.mainParamPresent?t.mainParamValue!=="0":!s,n=s?!0:t.entityMetadata?.chatDefaultOpen??!1;return{mainOpen:i,chatOpen:n}}function dc(t,e){return t&&e?{chat:45,main:55}:t&&!e?{chat:100,main:0}:!t&&e?{chat:0,main:100}:{chat:0,main:0}}function cy(t,e){return t===1?!0:t===0?!1:e}function dy(t,e){const s=Oe(),i=ti({strict:!1}),n=_r({strict:!1}),o=bt(),a=Vh(),{locator:l}=xe(),{virtualMcpId:c,orgSlug:d,isAgentRoute:u}=e,h=ly({entityMetadata:t,mainParamPresent:i.main!==void 0,mainParamValue:i.main}),f=cy(i.chat,h.chatOpen),m=h.mainOpen,p=j.useRef(crypto.randomUUID()),g=n.taskId??p.current,_="/$org/$taskId",v=T=>({org:d,taskId:T}),x=u?{virtualmcpid:c}:{},b=(T,M)=>{s({to:_,params:v(g),search:I=>({...I,...T}),replace:M?.replace??!1})},y=(T,M)=>{s({to:_,params:v(T),search:I=>{const E={};return M?E.virtualmcpid=M:u&&(E.virtualmcpid=c),I.tasks&&(E.tasks=I.tasks),E}})},V=()=>{m?b({main:"0"},{replace:!0}):b({main:Cm(t)},{replace:!0})},C=()=>{b({chat:f?0:1},{replace:!0})},S=()=>{f||b({chat:1},{replace:!0})},w=async()=>{const T=crypto.randomUUID(),M=Dd(o,l,g);try{await a.create.mutateAsync({id:T,virtual_mcp_id:c,...M?{branch:M}:{}})}catch{}s({to:_,params:v(T),search:I=>{const E={...x,chat:1};return I.tasks&&(E.tasks=I.tasks),E}})},k=T=>{b({main:T},{replace:!0})};return{taskId:g,mainOpen:m,chatOpen:f,mainParam:i.main,setTaskId:y,toggleMain:V,toggleChat:C,openChat:S,createNewTask:w,openTab:k}}const tl=j.createContext(null);function hy(t){const e=B.c(15),{children:s}=t,i=Oe();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},e[0]=n):n=e[0];const o=ti(n);let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a={owner:"all",status:"open"},e[1]=a):a=e[1];const{tasks:l}=Co(a);let c;e[2]!==o.tasks||e[3]!==l.length?(c=()=>ay(o.tasks,l.length>0),e[2]=o.tasks,e[3]=l.length,e[4]=c):c=e[4];const[d,u]=j.useState(c);let h,f;e[5]!==i||e[6]!==d?(h=()=>{i({search:(v=>({...v,tasks:d?1:0})),replace:!0})},f=[d,i],e[5]=i,e[6]=d,e[7]=h,e[8]=f):(h=e[7],f=e[8]),j.useEffect(h,f);let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=()=>u(uy),e[9]=m):m=e[9];const p=m;let g;e[10]!==d?(g={tasksOpen:d,toggleTasks:p},e[10]=d,e[11]=g):g=e[11];let _;return e[12]!==s||e[13]!==g?(_=r.jsx(tl.Provider,{value:g,children:s}),e[12]=s,e[13]=g,e[14]=_):_=e[14],_}function uy(t){return!t}function yu(){const t=j.useContext(tl);if(!t)throw new Error("useTasksPanelState must be used inside <TasksPanelStateProvider>");return t}function fy(){return j.useContext(tl)}const Su=j.createContext(null);function Hs(){const t=j.use(Su);if(!t)throw new Error("Toolbar.* must be used inside <Toolbar>");return t}function Re(t){const e=B.c(10),{children:s}=t,[i,n]=j.useState(null),[o,a]=j.useState(null),[l,c]=j.useState(null),[d,u]=j.useState(null);let h;e[0]!==l||e[1]!==d||e[2]!==o||e[3]!==i?(h={togglesEl:i,setTogglesEl:n,tabsEl:o,setTabsEl:a,centerEl:l,setCenterEl:c,rightEl:d,setRightEl:u},e[0]=l,e[1]=d,e[2]=o,e[3]=i,e[4]=h):h=e[4];let f;e[5]!==s?(f=r.jsx("div",{className:"flex flex-col h-full min-h-0",children:s}),e[5]=s,e[6]=f):f=e[6];let m;return e[7]!==h||e[8]!==f?(m=r.jsx(Su,{value:h,children:f}),e[7]=h,e[8]=f,e[9]=m):m=e[9],m}function my(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"shrink-0 grid grid-cols-3 items-center pl-1 pr-2 pt-0.25 h-12",children:s}),e[0]=s,e[1]=i):i=e[1],i}function py(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"flex items-center gap-0.5 min-w-0 justify-self-start",children:s}),e[0]=s,e[1]=i):i=e[1],i}function gy(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"flex items-center justify-end gap-0.5 min-w-0 justify-self-end",children:s}),e[0]=s,e[1]=i):i=e[1],i}function _y(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("button",{type:"button",onClick:vy,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground transition-colors",title:"Go back",children:r.jsx(Eo,{size:16})}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs(r.Fragment,{children:[e,r.jsx("button",{type:"button",onClick:xy,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground transition-colors",title:"Go forward",children:r.jsx($a,{size:16})})]}),t[1]=s):s=t[1],s}function xy(){return window.history.forward()}function vy(){return window.history.back()}function by(){const t=B.c(2),{setCenterEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"min-w-0 flex items-center justify-center gap-2"}),t[0]=e,t[1]=s):s=t[1],s}function yy(t){const e=B.c(3),{children:s}=t,{centerEl:i}=Hs();if(!i)return null;let n;return e[0]!==i||e[1]!==s?(n=Ei.createPortal(s,i),e[0]=i,e[1]=s,e[2]=n):n=e[2],n}function Sy(){const t=B.c(2),{setTabsEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"shrink-0 flex items-center overflow-x-auto"}),t[0]=e,t[1]=s):s=t[1],s}function wy(t){const e=B.c(3),{children:s}=t,{tabsEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}function Vy(){const t=B.c(2),{setTogglesEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"flex items-center gap-0.5 shrink-0 ml-0.5"}),t[0]=e,t[1]=s):s=t[1],s}function Cy(t){const e=B.c(3),{children:s}=t,{togglesEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}function ky(){const t=B.c(2),{setRightEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"flex items-center justify-end gap-0.5 shrink-0"}),t[0]=e,t[1]=s):s=t[1],s}function jy(t){const e=B.c(3),{children:s}=t,{rightEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}Re.Header=my;Re.LeftColumn=py;Re.RightColumn=gy;Re.Nav=_y;Re.CenterSlot=by;Re.Center=yy;Re.TabsSlot=Sy;Re.Tabs=wy;Re.TogglesSlot=Vy;Re.Toggles=Cy;Re.RightSlot=ky;Re.Right=jy;const Ny=280;function Ay(){const t=B.c(2),{tasksOpen:e}=yu();if(!e)return null;let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={width:`${Ny}px`},t[0]=s):s=t[0];let i;return t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("aside",{className:"shrink-0 h-full bg-sidebar pb-1",style:s,children:r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:r.jsx(su,{})})})}),t[1]=i):i=t[1],i}function Ey(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:null,children:r.jsx(Ay,{})}),t[0]=e):e=t[0],e}const Iy={settings:ip,automations:Fd,env:Ia,preview:Qd,git:er};function hc(t){const e=vr(t);if(e.type==="icon"){const s=br(e.name);return s?{kind:"component",Component:s}:null}return e.type==="url"?{kind:"url",src:e.url}:null}function io(t){if(t.kind==="system")return{kind:"component",Component:Iy[t.tabId]};const e=hc(t.iconUrl);if(e)return e;if(!t.appId)return{kind:"fallback"};const s=t.connections.find(n=>n.id===t.appId);if(!s)return{kind:"fallback"};const i=hc(s.icon);return i||{kind:"fallback"}}function Ty(t){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),{data:i}=bd({queryKey:Ze.threadMetadata(t),queryFn:async()=>{if(!s||!t)return null;try{const n=await s.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}});return(n.structuredContent??n).item?.metadata??null}catch{return null}},staleTime:3e4});return i}function wu(t){const e=B.c(8),s=Oe();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},e[0]=i):i=e[0];const n=ti(i),o=$t(t.virtualMcpId),a=Ty(t.taskId),{currentBranch:l}=Lt(),c=o?.metadata?.ui??null,d=c?.layout??null,u=d?.tabs??[],h=c?.pinnedViews??[],f=a?.expanded_tools??[],m=!!(o&&bs(o));let p;e[1]===Symbol.for("react.memo_cache_sentinel")?(p={includeVirtual:!0},e[1]=p):p=e[1];const g=yr(p),{activeTab:_,mainOpen:v}=km({mainParam:n.main,metadata:d?{defaultMainView:d.defaultMainView??null,tabs:u.map(Ry)}:null}),x=Ad(_),b=[];m&&(b.push({id:"preview",title:"Preview"}),b.push({id:"env",title:"Terminal"}),b.push({id:"git",title:l??"git"})),b.push({id:"settings",title:"Settings"}),b.push({id:"automations",title:"Automations"});const y=new Map;for(const k of f){const T=jo(k.appId,k.toolName);y.set(T,{id:T,title:k.toolName,appId:k.appId,iconKey:k.toolName})}for(const k of h){const T=jo(k.connectionId,k.toolName);y.set(T,{id:T,title:k.label||k.toolName,appId:k.connectionId,iconKey:k.toolName,iconUrl:k.icon??null})}let V;e[2]!==g?(V=k=>({id:k.id,title:k.title,kind:"agent",icon:io({tabId:k.id,kind:"agent",appId:k.view.appId,connections:g})}),e[2]=g,e[3]=V):V=e[3];const C=[...u.map(V),...Array.from(y.values()).map(k=>({id:k.id,title:k.title,kind:"expanded",icon:io({tabId:k.iconKey,kind:"expanded",appId:k.appId,iconUrl:k.iconUrl,connections:g})})),...b.map(k=>({id:k.id,title:k.title,kind:"system",icon:io({tabId:k.id,kind:"system",connections:g})}))];let S;return e[4]!==_||e[5]!==v||e[6]!==s?(S=k=>{const T=jm({clickedId:k,activeTab:_,mainOpen:v});s({to:".",search:M=>({...M,main:T}),replace:!0})},e[4]=_,e[5]=v,e[6]=s,e[7]=S):S=e[7],{activeTab:_,mainOpen:v,setActiveTab:S,systemTabs:b,layoutTabs:u,expandedTools:f,automationTabParsed:x,tabs:C}}function Ry(t){return{id:t.id}}function My(t){const e=B.c(84),{value:s,onChange:i,onColorChange:n,name:o,size:a,className:l,avatarClassName:c,showHoverOverlay:d,disabled:u}=t,h=a===void 0?"lg":a,f=d===void 0?!0:d,m=u===void 0?!1:u,[p,g]=j.useState(!1),[_,v]=j.useState("icons"),[x,b]=j.useState(""),[y,V]=j.useState("blue");let C;e[0]!==s?(C=vr(s),e[0]=s,e[1]=C):C=e[1];const S=C,w=S.type==="icon"||S.type==="url"&&S.color?S.color:y;let k;e[2]!==i||e[3]!==w?(k=pe=>{i(Yn(pe,w))},e[2]=i,e[3]=w,e[4]=k):k=e[4];const T=k;let M;e[5]!==i||e[6]!==n||e[7]!==S.name||e[8]!==S.type||e[9]!==S.url?(M=pe=>{V(pe),n?.(pe),S.type==="icon"?i(Yn(S.name,pe)):S.type==="url"&&i(Sl(S.url,pe))},e[5]=i,e[6]=n,e[7]=S.name,e[8]=S.type,e[9]=S.url,e[10]=M):M=e[10];const I=M;let E;e[11]!==i||e[12]!==w?(E=pe=>{i(Sl(pe,w)),g(!1)},e[11]=i,e[12]=w,e[13]=E):E=e[13];const N=E;let A;e[14]!==i||e[15]!==w?(A=()=>{const pe=Ma(),Ce=pe[Math.floor(Math.random()*pe.length)];i(Yn(Ce,w))},e[14]=i,e[15]=w,e[16]=A):A=e[16];const D=A;let L,R,P,O,z,$,q,F;if(e[17]!==l||e[18]!==m||e[19]!==p||e[20]!==h){const pe={xs:"rounded-md",sm:"rounded-lg","sm+":"rounded-xl",md:"rounded-xl",lg:"rounded-2xl",xl:"rounded-2xl"};R=Us,$=m?!1:p,q=g,L=zs,z=!0,F="button",P=m,O=Y("relative group overflow-hidden",m?"cursor-default opacity-50":"cursor-pointer",pe[h],l),e[17]=l,e[18]=m,e[19]=p,e[20]=h,e[21]=L,e[22]=R,e[23]=P,e[24]=O,e[25]=z,e[26]=$,e[27]=q,e[28]=F}else L=e[21],R=e[22],P=e[23],O=e[24],z=e[25],$=e[26],q=e[27],F=e[28];let W;e[29]!==c||e[30]!==o||e[31]!==h||e[32]!==s?(W=r.jsx(Qt,{icon:s,name:o,size:h,className:c}),e[29]=c,e[30]=o,e[31]=h,e[32]=s,e[33]=W):W=e[33];let H;e[34]!==m||e[35]!==f?(H=f&&!m&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity",children:r.jsx(Ra,{size:16,className:"text-white"})}),e[34]=m,e[35]=f,e[36]=H):H=e[36];let U;e[37]!==P||e[38]!==O||e[39]!==W||e[40]!==H||e[41]!==F?(U=r.jsxs("button",{type:F,disabled:P,className:O,children:[W,H]}),e[37]=P,e[38]=O,e[39]=W,e[40]=H,e[41]=F,e[42]=U):U=e[42];let X;e[43]!==L||e[44]!==z||e[45]!==U?(X=r.jsx(L,{asChild:z,children:U}),e[43]=L,e[44]=z,e[45]=U,e[46]=X):X=e[46];let K;e[47]!==o||e[48]!==s?(K=r.jsx("div",{className:"flex items-center justify-center py-4",children:r.jsx(Qt,{icon:s,name:o,size:"xl"})}),e[47]=o,e[48]=s,e[49]=K):K=e[49];let G;e[50]===Symbol.for("react.memo_cache_sentinel")?(G=()=>v("icons"),e[50]=G):G=e[50];const ie=_==="icons"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let te;e[51]!==ie?(te=Y("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",ie),e[51]=ie,e[52]=te):te=e[52];let J;e[53]!==te?(J=r.jsx("button",{type:"button",onClick:G,className:te,children:"Icons"}),e[53]=te,e[54]=J):J=e[54];let ae;e[55]===Symbol.for("react.memo_cache_sentinel")?(ae=()=>v("upload"),e[55]=ae):ae=e[55];const Z=_==="upload"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let de;e[56]!==Z?(de=Y("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",Z),e[56]=Z,e[57]=de):de=e[57];let fe;e[58]!==de?(fe=r.jsx("button",{type:"button",onClick:ae,className:de,children:"Upload"}),e[58]=de,e[59]=fe):fe=e[59];let ye;e[60]===Symbol.for("react.memo_cache_sentinel")?(ye=r.jsx("div",{className:"flex-1"}),e[60]=ye):ye=e[60];let ge;e[61]!==J||e[62]!==fe?(ge=r.jsxs("div",{className:"flex items-center border-b border-border px-3",children:[J,fe,ye]}),e[61]=J,e[62]=fe,e[63]=ge):ge=e[63];let ce;e[64]!==I||e[65]!==D||e[66]!==T||e[67]!==N||e[68]!==S.name||e[69]!==S.type||e[70]!==x||e[71]!==w||e[72]!==_?(ce=_==="icons"?r.jsx(Oy,{search:x,onSearchChange:b,selectedColor:w,onColorChange:I,onSelectIcon:T,onRandom:D,currentIconName:S.type==="icon"?S.name:null}):r.jsx(By,{onUpload:N}),e[64]=I,e[65]=D,e[66]=T,e[67]=N,e[68]=S.name,e[69]=S.type,e[70]=x,e[71]=w,e[72]=_,e[73]=ce):ce=e[73];let ue;e[74]!==K||e[75]!==ge||e[76]!==ce?(ue=r.jsx(Fs,{align:"start",className:"w-80 p-0",onOpenAutoFocus:Dy,children:r.jsxs("div",{className:"flex flex-col",children:[K,ge,ce]})}),e[74]=K,e[75]=ge,e[76]=ce,e[77]=ue):ue=e[77];let be;return e[78]!==R||e[79]!==$||e[80]!==q||e[81]!==X||e[82]!==ue?(be=r.jsxs(R,{open:$,onOpenChange:q,children:[X,ue]}),e[78]=R,e[79]=$,e[80]=q,e[81]=X,e[82]=ue,e[83]=be):be=e[83],be}function Dy(t){return t.preventDefault()}function Py(t){const e=B.c(27),{selectedColor:s,onColorChange:i}=t,[n,o]=j.useState(!1);let a,l,c,d,u,h,f;if(e[0]!==n||e[1]!==s){const x=Ud(s);l=Us,h=n,f=o,a=zs,u=!0,c="button",d=Y("h-6 w-6 rounded-full shrink-0 ring-2 ring-offset-2 ring-offset-background transition-all cursor-pointer hover:scale-110",x.dot,"ring-foreground/20"),e[0]=n,e[1]=s,e[2]=a,e[3]=l,e[4]=c,e[5]=d,e[6]=u,e[7]=h,e[8]=f}else a=e[2],l=e[3],c=e[4],d=e[5],u=e[6],h=e[7],f=e[8];let m;e[9]!==c||e[10]!==d?(m=r.jsx("button",{type:c,className:d,title:"Change color"}),e[9]=c,e[10]=d,e[11]=m):m=e[11];let p;e[12]!==a||e[13]!==u||e[14]!==m?(p=r.jsx(a,{asChild:u,children:m}),e[12]=a,e[13]=u,e[14]=m,e[15]=p):p=e[15];let g;e[16]!==i||e[17]!==s?(g=np.map(x=>r.jsx("button",{type:"button",onClick:()=>{i(x.name),o(!1)},className:Y("h-5 w-5 rounded-full transition-all shrink-0 cursor-pointer",x.dot,s===x.name?"ring-2 ring-offset-1 ring-offset-background ring-foreground/30 scale-110":"hover:scale-110"),title:x.name},x.name)),e[16]=i,e[17]=s,e[18]=g):g=e[18];let _;e[19]!==g?(_=r.jsx(Fs,{align:"start",side:"right",sideOffset:8,className:"w-auto p-2",onOpenAutoFocus:Ly,children:r.jsx("div",{className:"grid grid-cols-4 gap-1",children:g})}),e[19]=g,e[20]=_):_=e[20];let v;return e[21]!==l||e[22]!==h||e[23]!==f||e[24]!==p||e[25]!==_?(v=r.jsxs(l,{open:h,onOpenChange:f,children:[p,_]}),e[21]=l,e[22]=h,e[23]=f,e[24]=p,e[25]=_,e[26]=v):v=e[26],v}function Ly(t){return t.preventDefault()}function Oy(t){const e=B.c(44),{search:s,onSearchChange:i,selectedColor:n,onColorChange:o,onSelectIcon:a,onRandom:l,currentIconName:c}=t;let d,u,h,f,m,p,g;if(e[0]!==c||e[1]!==o||e[2]!==l||e[3]!==i||e[4]!==a||e[5]!==s||e[6]!==n){const y=Ma(),V=Ud(n);u=s.trim()?y.filter(I=>{const E=Ao(I),N=s.toLowerCase();return E.includes(N)||I.toLowerCase().includes(N)}):y,p="flex flex-col";let C;e[14]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(kh,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[14]=C):C=e[14];let S;e[15]!==i?(S=I=>i(I.target.value),e[15]=i,e[16]=S):S=e[16];let w;e[17]!==s||e[18]!==S?(w=r.jsxs("div",{className:"relative flex-1",children:[C,r.jsx(at,{value:s,onChange:S,placeholder:"Filter...",className:"h-8 text-xs pl-7"})]}),e[17]=s,e[18]=S,e[19]=w):w=e[19];let k;e[20]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx(rp,{size:14,className:"text-muted-foreground"}),e[20]=k):k=e[20];let T;e[21]!==l?(T=r.jsx("button",{type:"button",onClick:l,className:"h-8 w-8 flex items-center justify-center rounded-md border border-border hover:bg-accent transition-colors shrink-0",title:"Random icon",children:k}),e[21]=l,e[22]=T):T=e[22];let M;e[23]!==o||e[24]!==n?(M=r.jsx(Py,{selectedColor:n,onColorChange:o}),e[23]=o,e[24]=n,e[25]=M):M=e[25],e[26]!==T||e[27]!==M||e[28]!==w?(g=r.jsxs("div",{className:"flex items-center gap-2 px-3 py-2",children:[w,T,M]}),e[26]=T,e[27]=M,e[28]=w,e[29]=g):g=e[29],d=Ed,m="h-56",h="grid grid-cols-9 gap-0.5 px-2 pb-2",f=u.map(I=>{const E=br(I);return E?r.jsx("button",{type:"button",onClick:()=>a(I),className:Y("h-8 w-8 flex items-center justify-center rounded-md transition-colors cursor-pointer",c===I?Y(V.bg,V.text):Y(V.text,"hover:bg-accent")),title:I,children:r.jsx(E,{size:18})},I):null}),e[0]=c,e[1]=o,e[2]=l,e[3]=i,e[4]=a,e[5]=s,e[6]=n,e[7]=d,e[8]=u,e[9]=h,e[10]=f,e[11]=m,e[12]=p,e[13]=g}else d=e[7],u=e[8],h=e[9],f=e[10],m=e[11],p=e[12],g=e[13];let _;e[30]!==h||e[31]!==f?(_=r.jsx("div",{className:h,children:f}),e[30]=h,e[31]=f,e[32]=_):_=e[32];let v;e[33]!==u.length?(v=u.length===0&&r.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No icons found"}),e[33]=u.length,e[34]=v):v=e[34];let x;e[35]!==d||e[36]!==m||e[37]!==_||e[38]!==v?(x=r.jsxs(d,{className:m,children:[_,v]}),e[35]=d,e[36]=m,e[37]=_,e[38]=v,e[39]=x):x=e[39];let b;return e[40]!==p||e[41]!==g||e[42]!==x?(b=r.jsxs("div",{className:p,children:[g,x]}),e[40]=p,e[41]=g,e[42]=x,e[43]=b):b=e[43],b}function By(t){const e=B.c(27),{onUpload:s}=t,i=j.useRef(null);let n;e[0]!==s?(n=C=>{const S=C.target.files?.[0];if(!S)return;if(S.size>2097152){he.error("Image must be smaller than 2MB"),C.target.value="";return}const w=new FileReader;w.onerror=()=>{he.error("Failed to read image file"),i.current&&(i.current.value="")},w.onloadend=()=>{w.readyState===FileReader.DONE&&w.result&&s(w.result),i.current&&(i.current.value="")},w.readAsDataURL(S)},e[0]=s,e[1]=n):n=e[1];const o=n,[a,l]=j.useState("");let c;e[2]!==s||e[3]!==a?(c=()=>{const C=a.trim();C&&(s(C),l(""))},e[2]=s,e[3]=a,e[4]=c):c=e[4];const d=c;let u;e[5]!==o?(u=r.jsx("input",{type:"file",ref:i,className:"hidden",accept:"image/*",onChange:o}),e[5]=o,e[6]=u):u=e[6];let h;e[7]===Symbol.for("react.memo_cache_sentinel")?(h=()=>i.current?.click(),e[7]=h):h=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsxs("button",{type:"button",onClick:h,className:"h-24 rounded-lg border-2 border-dashed border-border hover:border-foreground/50 hover:bg-accent/50 transition-colors flex flex-col items-center justify-center gap-2 text-muted-foreground hover:text-foreground",children:[r.jsx(Jd,{size:20}),r.jsx("span",{className:"text-xs",children:"Click to upload an image (max 2MB)"})]}),e[8]=f):f=e[8];let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"or"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=C=>l(C.target.value),e[10]=p):p=e[10];let g;e[11]!==d?(g=C=>{C.key==="Enter"&&(C.preventDefault(),d())},e[11]=d,e[12]=g):g=e[12];let _;e[13]!==a||e[14]!==g?(_=r.jsx(at,{value:a,onChange:p,placeholder:"Paste image URL...",className:"h-8 text-xs flex-1",onKeyDown:g}),e[13]=a,e[14]=g,e[15]=_):_=e[15];let v;e[16]!==a?(v=a.trim(),e[16]=a,e[17]=v):v=e[17];const x=!v;let b;e[18]!==d||e[19]!==x?(b=r.jsx(oe,{variant:"outline",size:"sm",className:"h-8 px-3 text-xs shrink-0",onClick:d,disabled:x,children:"Apply"}),e[18]=d,e[19]=x,e[20]=b):b=e[20];let y;e[21]!==b||e[22]!==_?(y=r.jsxs("div",{className:"flex items-center gap-1.5",children:[_,b]}),e[21]=b,e[22]=_,e[23]=y):y=e[23];let V;return e[24]!==y||e[25]!==u?(V=r.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[u,f,m,y]}),e[24]=y,e[25]=u,e[26]=V):V=e[26],V}function $y(t){const e=B.c(5),{value:s}=t;let i;if(e[0]!==s){i=Symbol.for("react.early_return_sentinel");e:{const o=vr(s);if(o.type==="icon"){const a=br(o.name);if(a){let l;e[2]!==a?(l=r.jsx(a,{size:16,className:"text-muted-foreground"}),e[2]=a,e[3]=l):l=e[3],i=l;break e}}}e[0]=s,e[1]=i}else i=e[1];if(i!==Symbol.for("react.early_return_sentinel"))return i;let n;return e[4]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(xh,{size:16,className:"text-muted-foreground"}),e[4]=n):n=e[4],n}function zy(t){const e=B.c(66),{value:s,onChange:i,className:n,disabled:o}=t,[a,l]=j.useState(!1),[c,d]=j.useState("");let u;e[0]!==s?(u=vr(s),e[0]=s,e[1]=u):u=e[1];const h=u,f=h.type==="icon"?h.name:null;let m,p,g,_,v,x,b,y,V,C,S,w,k,T,M;if(e[2]!==n||e[3]!==f||e[4]!==o||e[5]!==i||e[6]!==a||e[7]!==c||e[8]!==s){const R=Ma();_=c.trim()?R.filter(W=>{const H=c.toLowerCase();return Ao(W).includes(H)||W.toLowerCase().includes(H)}):R,g=Us,v=o?!1:a,x=l;const P=o?"cursor-default opacity-50":"cursor-pointer hover:bg-accent";let O;e[24]!==n||e[25]!==P?(O=Y("size-7 shrink-0 rounded-md transition-colors flex items-center justify-center",P,n),e[24]=n,e[25]=P,e[26]=O):O=e[26];let z;e[27]!==s?(z=r.jsx($y,{value:s}),e[27]=s,e[28]=z):z=e[28],e[29]!==o||e[30]!==O||e[31]!==z?(b=r.jsx(zs,{asChild:!0,children:r.jsx("button",{type:"button",disabled:o,className:O,children:z})}),e[29]=o,e[30]=O,e[31]=z,e[32]=b):b=e[32],p=Fs,k="start",T="w-64 p-0",M=Fy,S="flex flex-col";let $;e[33]===Symbol.for("react.memo_cache_sentinel")?($=r.jsx(kh,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[33]=$):$=e[33];let q;e[34]===Symbol.for("react.memo_cache_sentinel")?(q=W=>d(W.target.value),e[34]=q):q=e[34],e[35]!==c?(w=r.jsx("div",{className:"px-2 py-2",children:r.jsxs("div",{className:"relative",children:[$,r.jsx(at,{value:c,onChange:q,placeholder:"Filter...",className:"h-7 text-xs pl-7"})]})}),e[35]=c,e[36]=w):w=e[36],m=Ed,C="h-48",y="grid grid-cols-8 gap-0.5 px-2 pb-2";let F;e[37]!==f||e[38]!==i?(F=W=>{const H=br(W);return H?r.jsx("button",{type:"button",onClick:()=>{i(`icon://${W}`),l(!1)},className:Y("h-7 w-7 flex items-center justify-center rounded-md transition-colors cursor-pointer",f===W?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"),title:Ao(W),children:r.jsx(H,{size:16})},W):null},e[37]=f,e[38]=i,e[39]=F):F=e[39],V=_.map(F),e[2]=n,e[3]=f,e[4]=o,e[5]=i,e[6]=a,e[7]=c,e[8]=s,e[9]=m,e[10]=p,e[11]=g,e[12]=_,e[13]=v,e[14]=x,e[15]=b,e[16]=y,e[17]=V,e[18]=C,e[19]=S,e[20]=w,e[21]=k,e[22]=T,e[23]=M}else m=e[9],p=e[10],g=e[11],_=e[12],v=e[13],x=e[14],b=e[15],y=e[16],V=e[17],C=e[18],S=e[19],w=e[20],k=e[21],T=e[22],M=e[23];let I;e[40]!==y||e[41]!==V?(I=r.jsx("div",{className:y,children:V}),e[40]=y,e[41]=V,e[42]=I):I=e[42];let E;e[43]!==_.length?(E=_.length===0&&r.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:"No icons found"}),e[43]=_.length,e[44]=E):E=e[44];let N;e[45]!==m||e[46]!==I||e[47]!==E||e[48]!==C?(N=r.jsxs(m,{className:C,children:[I,E]}),e[45]=m,e[46]=I,e[47]=E,e[48]=C,e[49]=N):N=e[49];let A;e[50]!==N||e[51]!==S||e[52]!==w?(A=r.jsxs("div",{className:S,children:[w,N]}),e[50]=N,e[51]=S,e[52]=w,e[53]=A):A=e[53];let D;e[54]!==p||e[55]!==A||e[56]!==k||e[57]!==T||e[58]!==M?(D=r.jsx(p,{align:k,className:T,onOpenAutoFocus:M,children:A}),e[54]=p,e[55]=A,e[56]=k,e[57]=T,e[58]=M,e[59]=D):D=e[59];let L;return e[60]!==g||e[61]!==v||e[62]!==x||e[63]!==b||e[64]!==D?(L=r.jsxs(g,{open:v,onOpenChange:x,children:[b,D]}),e[60]=g,e[61]=v,e[62]=x,e[63]=b,e[64]=D,e[65]=L):L=e[65],L}function Fy(t){return t.preventDefault()}function rn(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center justify-center h-32",children:r.jsx(Ne,{className:"animate-spin text-muted-foreground",size:24})}),t[0]=e):e=t[0],e}function ro(t){return({error:e})=>e?.message?.includes("Method not found")||e?.code===-32601?r.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:r.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:t})}):r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center h-full p-6 text-center space-y-4",children:[r.jsx("div",{className:"bg-destructive/10 p-3 rounded-full",children:r.jsx(wa,{className:"h-6 w-6 text-destructive"})}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("h3",{className:"text-lg font-medium",children:"Something went wrong"}),r.jsx("p",{className:"text-sm text-muted-foreground max-w-xs mx-auto",children:e?.message?e.message.length>200?`${e.message.slice(0,200)}...`:e.message:"An unexpected error occurred"})]})]})}function Uy(t){const e=B.c(23),{item:s,isSelected:i,onToggle:n,disabled:o}=t,a=o?"cursor-not-allowed opacity-50":"cursor-pointer",l=i?"bg-accent/25":"hover:bg-muted/50";let c;e[0]!==a||e[1]!==l?(c=Y("flex items-start gap-3 p-4 rounded-lg transition-colors",a,l),e[0]=a,e[1]=l,e[2]=c):c=e[2];let d;e[3]!==s.name?(d=r.jsx("p",{className:"text-sm font-medium leading-none truncate",children:s.name}),e[3]=s.name,e[4]=d):d=e[4];let u;e[5]!==s.tags?(u=s.tags&&r.jsx("span",{className:"shrink-0",children:s.tags}),e[5]=s.tags,e[6]=u):u=e[6];let h;e[7]!==d||e[8]!==u?(h=r.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[d,u]}),e[7]=d,e[8]=u,e[9]=h):h=e[9];let f;e[10]!==s.description?(f=s.description&&r.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[10]=s.description,e[11]=f):f=e[11];let m;e[12]!==h||e[13]!==f?(m=r.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[h,f]}),e[12]=h,e[13]=f,e[14]=m):m=e[14];let p;e[15]!==o||e[16]!==i||e[17]!==n?(p=r.jsx(kg,{checked:i,onCheckedChange:n,disabled:o,className:"mt-0.5"}),e[15]=o,e[16]=i,e[17]=n,e[18]=p):p=e[18];let g;return e[19]!==c||e[20]!==m||e[21]!==p?(g=r.jsxs("label",{className:c,children:[m,p]}),e[19]=c,e[20]=m,e[21]=p,e[22]=g):g=e[22],g}function sl(t){const e=B.c(13),{items:s,selections:i,onToggle:n,emptyMessage:o,disabled:a}=t;let l,c,d;if(e[0]!==a||e[1]!==o||e[2]!==s||e[3]!==n||e[4]!==i){d=Symbol.for("react.early_return_sentinel");e:{const h=s.map(Hy);if(s.length===0){let f;e[8]!==o?(f=r.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:r.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:o})}),e[8]=o,e[9]=f):f=e[9],d=f;break e}l="flex-1 overflow-auto px-4 py-3 space-y-1",c=s.map(f=>r.jsx(Uy,{item:f,isSelected:i===null||i?.includes(f.id),onToggle:()=>n(f.id,h),disabled:a},f.id))}e[0]=a,e[1]=o,e[2]=s,e[3]=n,e[4]=i,e[5]=l,e[6]=c,e[7]=d}else l=e[5],c=e[6],d=e[7];if(d!==Symbol.for("react.early_return_sentinel"))return d;let u;return e[10]!==l||e[11]!==c?(u=r.jsx("div",{className:l,children:c}),e[10]=l,e[11]=c,e[12]=u):u=e[12],u}function Hy(t){return t.id}function Wy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Jp(d);let h;e[5]!==u.tools?(h=u.tools.map(Ky),e[5]=u.tools,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No tools available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Ky(t){return{id:t.name,name:t.name,description:t.description,tags:r.jsx(wg,{annotations:t.annotations,_meta:t._meta})}}function qy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Ep(d);let h;e[5]!==u.resources?(h=u.resources.map(Gy),e[5]=u.resources,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No resources available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Gy(t){return{id:t.name||t.uri,name:t.name||t.uri,description:t.description}}function Yy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Td(d);let h;e[5]!==u.prompts?(h=u.prompts.map(Xy),e[5]=u.prompts,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No prompts available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Xy(t){return{id:t.name,name:t.name,description:t.description}}function Jy(t){const e=B.c(54),{currentConnection:s,activeTab:i,selectedId:n,formData:o,toggleTool:a,toggleResource:l,togglePrompt:c,toggleAllTools:d,toggleAllResources:u,toggleAllPrompts:h,onTabChange:f}=t,m=o[n],p=i==="tools"?m?.tools===null:i==="resources"?m?.resources===null:m?.prompts===null;let g;e[0]!==i||e[1]!==n||e[2]!==h||e[3]!==u||e[4]!==d?(g=()=>{i==="tools"?d(n):i==="resources"?u(n):h(n)},e[0]=i,e[1]=n,e[2]=h,e[3]=u,e[4]=d,e[5]=g):g=e[5];const _=g;let v;e[6]!==s.icon||e[7]!==s.title?(v=r.jsx(ps,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[6]=s.icon,e[7]=s.title,e[8]=v):v=e[8];let x;e[9]!==s.title?(x=r.jsx("h2",{className:"text-base font-semibold truncate",children:s.title}),e[9]=s.title,e[10]=x):x=e[10];let b;e[11]!==s.description?(b=s.description&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s.description}),e[11]=s.description,e[12]=b):b=e[12];let y;e[13]!==x||e[14]!==b?(y=r.jsxs("div",{className:"flex-1 min-w-0",children:[x,b]}),e[13]=x,e[14]=b,e[15]=y):y=e[15];let V;e[16]!==v||e[17]!==y?(V=r.jsx("div",{className:"px-6 pt-5 pb-4 shrink-0",children:r.jsxs("div",{className:"flex items-center gap-3",children:[v,y]})}),e[16]=v,e[17]=y,e[18]=V):V=e[18];let C;e[19]===Symbol.for("react.memo_cache_sentinel")?(C=[{id:"tools",label:"Tools"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[19]=C):C=e[19];let S;e[20]!==f?(S=L=>f(L),e[20]=f,e[21]=S):S=e[21];let w;e[22]!==i||e[23]!==S?(w=r.jsx(ch,{tabs:C,activeTab:i,onTabChange:S}),e[22]=i,e[23]=S,e[24]=w):w=e[24];const k=p?"Deselect all":"Select all";let T;e[25]!==_||e[26]!==k?(T=r.jsx("button",{type:"button",onClick:_,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:k}),e[25]=_,e[26]=k,e[27]=T):T=e[27];let M;e[28]!==T||e[29]!==w?(M=r.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-t border-border shrink-0",children:[w,T]}),e[28]=T,e[29]=w,e[30]=M):M=e[30];let I;e[31]!==i||e[32]!==o||e[33]!==n||e[34]!==a?(I=i==="tools"&&r.jsx(ls,{fallback:ro("Tools not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(Wy,{connectionId:n,selections:o[n]?o[n].tools:[],onToggle:(L,R)=>a(n,L,R)})})}),e[31]=i,e[32]=o,e[33]=n,e[34]=a,e[35]=I):I=e[35];let E;e[36]!==i||e[37]!==o||e[38]!==n||e[39]!==l?(E=i==="resources"&&r.jsx(ls,{fallback:ro("Resources not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(qy,{connectionId:n,selections:o[n]?o[n].resources:[],onToggle:(L,R)=>l(n,L,R)})})}),e[36]=i,e[37]=o,e[38]=n,e[39]=l,e[40]=E):E=e[40];let N;e[41]!==i||e[42]!==o||e[43]!==n||e[44]!==c?(N=i==="prompts"&&r.jsx(ls,{fallback:ro("Prompts not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(Yy,{connectionId:n,selections:o[n]?o[n].prompts:[],onToggle:(L,R)=>c(n,L,R)})})}),e[41]=i,e[42]=o,e[43]=n,e[44]=c,e[45]=N):N=e[45];let A;e[46]!==I||e[47]!==E||e[48]!==N?(A=r.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[I,E,N]}),e[46]=I,e[47]=E,e[48]=N,e[49]=A):A=e[49];let D;return e[50]!==M||e[51]!==A||e[52]!==V?(D=r.jsxs(r.Fragment,{children:[V,M,A]}),e[50]=M,e[51]=A,e[52]=V,e[53]=D):D=e[53],D}function Qy(t){const e=B.c(11),{connectionId:s,onAuthenticate:i,children:n}=t;let o;e[0]!==s?(o={connectionId:s},e[0]=s,e[1]=o):o=e[1];const a=Ch(o);if(a.supportsOAuth&&!a.isAuthenticated){let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center justify-center size-12 rounded-full bg-muted",children:r.jsx(op,{size:22,className:"text-muted-foreground"})}),e[2]=d):d=e[2];let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsxs("div",{className:"space-y-1",children:[r.jsx("p",{className:"text-sm font-medium",children:"Authorization required"}),r.jsx("p",{className:"text-xs text-muted-foreground max-w-xs",children:"This connection needs to be authorized before you can configure its tools and resources."})]}),e[3]=u):u=e[3];let h;e[4]!==s||e[5]!==i?(h=i&&r.jsx(oe,{variant:"outline",size:"sm",onClick:()=>i(s),children:"Authorize"}),e[4]=s,e[5]=i,e[6]=h):h=e[6];let f;return e[7]!==h?(f=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 p-8 text-center",children:[d,u,h]}),e[7]=h,e[8]=f):f=e[8],f}let c;return e[9]!==n?(c=r.jsx(r.Fragment,{children:n}),e[9]=n,e[10]=c):c=e[10],c}function Zy(t){const e={};for(const s of t)e[s.connection_id]={tools:s.selected_tools,resources:s.selected_resources??null,prompts:s.selected_prompts??null};return e}function uc(t){return Object.entries(t).map(([e,s])=>({connection_id:e,selected_tools:s.tools,selected_resources:s.resources,selected_prompts:s.prompts}))}function e2(t,e){return e.type==="SET_ACTIVE_TAB"?{...t,activeTab:e.payload}:t}function t2(t){const e=B.c(49),{open:s,onOpenChange:i,selectedId:n,form:o,connections:a,onAuthenticate:l}=t;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c={activeTab:"tools"},e[0]=c):c=e[0];const[d,u]=j.useReducer(e2,c),h=Ba(n??"");let f;e[1]!==a?(f=a??[],e[1]=a,e[2]=f):f=e[2];let m;e[3]!==f?(m=Zy(f),e[3]=f,e[4]=m):m=e[4];const p=m;let g;e[5]!==o||e[6]!==p?(g=($,q,F,W)=>{const H=p[$]?.[q];let U;H===null?U=W.filter(K=>K!==F):H?.includes(F)?U=H.filter(K=>K!==F):(U=[...H??[],F],U.length===W.length&&(U=null));const X={...p};X[$]?X[$]={...X[$]}:X[$]={tools:null,resources:null,prompts:null},X[$][q]=U,o.setValue("connections",uc(X),{shouldDirty:!0,shouldTouch:!0})},e[5]=o,e[6]=p,e[7]=g):g=e[7];const _=g;let v;e[8]!==o||e[9]!==p?(v=($,q)=>{const W=p[$]?.[q]===null?[]:null,H={...p};H[$]?H[$]={...H[$]}:H[$]={tools:null,resources:null,prompts:null},H[$][q]=W,o.setValue("connections",uc(H),{shouldDirty:!0,shouldTouch:!0})},e[8]=o,e[9]=p,e[10]=v):v=e[10];const x=v;let b;e[11]!==_?(b=($,q,F)=>_($,"tools",q,F),e[11]=_,e[12]=b):b=e[12];const y=b;let V;e[13]!==_?(V=($,q,F)=>_($,"resources",q,F),e[13]=_,e[14]=V):V=e[14];const C=V;let S;e[15]!==_?(S=($,q,F)=>_($,"prompts",q,F),e[15]=_,e[16]=S):S=e[16];const w=S;let k;e[17]!==x?(k=$=>x($,"tools"),e[17]=x,e[18]=k):k=e[18];const T=k;let M;e[19]!==x?(M=$=>x($,"resources"),e[19]=x,e[20]=M):M=e[20];const I=M;let E;e[21]!==x?(E=$=>x($,"prompts"),e[21]=x,e[22]=E):E=e[22];const N=E;if(!n||!h)return null;let A;e[23]===Symbol.for("react.memo_cache_sentinel")?(A=r.jsx(rn,{}),e[23]=A):A=e[23];let D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=$=>u({type:"SET_ACTIVE_TAB",payload:$}),e[24]=D):D=e[24];let L;e[25]!==h||e[26]!==d.activeTab||e[27]!==p||e[28]!==n||e[29]!==N||e[30]!==I||e[31]!==T||e[32]!==w||e[33]!==C||e[34]!==y?(L=r.jsx(Jy,{currentConnection:h,activeTab:d.activeTab,selectedId:n,formData:p,toggleTool:y,toggleResource:C,togglePrompt:w,toggleAllTools:T,toggleAllResources:I,toggleAllPrompts:N,onTabChange:D},n),e[25]=h,e[26]=d.activeTab,e[27]=p,e[28]=n,e[29]=N,e[30]=I,e[31]=T,e[32]=w,e[33]=C,e[34]=y,e[35]=L):L=e[35];let R;e[36]!==l||e[37]!==n||e[38]!==L?(R=r.jsx(j.Suspense,{fallback:A,children:r.jsx(Qy,{connectionId:n,onAuthenticate:l,children:L})}),e[36]=l,e[37]=n,e[38]=L,e[39]=R):R=e[39];let P;e[40]!==i?(P=r.jsx(Na,{className:"px-6 py-4 border-t border-border shrink-0",children:r.jsx(oe,{variant:"outline",onClick:()=>i(!1),children:"Done"})}),e[40]=i,e[41]=P):P=e[41];let O;e[42]!==R||e[43]!==P?(O=r.jsxs(Ot,{className:"sm:max-w-2xl h-[75vh] max-h-[75vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[R,P]}),e[42]=R,e[43]=P,e[44]=O):O=e[44];let z;return e[45]!==i||e[46]!==s||e[47]!==O?(z=r.jsx(Bt,{open:s,onOpenChange:i,children:O}),e[45]=i,e[46]=s,e[47]=O,e[48]=z):z=e[48],z}const no={tools:null,resources:null,prompts:null},s2=cm.pick({status:!0,title:!0,description:!0,icon:!0,metadata:!0,connections:!0});function i2(t){const s=new TextEncoder().encode(t),i=Array.from(s,n=>String.fromCharCode(n)).join("");return btoa(i)}function r2(t){const e=B.c(11),{url:s,agentId:i}=t,[n,o]=j.useState(!1);let a;e[0]!==i||e[1]!==s?(a=async()=>{re("agent_connect_action",{agent_id:i,action:"copy_url"}),await navigator.clipboard.writeText(s),o(!0),he.success("Agent URL copied to clipboard"),setTimeout(()=>o(!1),2e3)},e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a;let c;e[3]!==n?(c=n?r.jsx(Mt,{size:20,className:"text-green-600"}):r.jsx(Si,{size:20}),e[3]=n,e[4]=c):c=e[4];const d=n?"Copied!":"Copy URL";let u;e[5]!==d?(u=r.jsx("span",{className:"text-xs font-medium",children:d}),e[5]=d,e[6]=u):u=e[6];let h;return e[7]!==l||e[8]!==c||e[9]!==u?(h=r.jsxs(oe,{type:"button",variant:"outline",onClick:l,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[c,u]}),e[7]=l,e[8]=c,e[9]=u,e[10]=h):h=e[10],h}function n2(t){const e=B.c(8),{url:s,serverName:i,agentId:n}=t;let o;e[0]!==n||e[1]!==i||e[2]!==s?(o=()=>{re("agent_connect_action",{agent_id:n,action:"install_cursor"});const u=oh(i),f=i2(JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Cursor"}},null,2)),m=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(u)}&config=${encodeURIComponent(f)}`;window.open(m,"_blank"),he.success("Opening Cursor...")},e[0]=n,e[1]=i,e[2]=s,e[3]=o):o=e[3];const a=o;let l,c;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(11%) sepia(8%) saturate(785%) hue-rotate(1deg) brightness(95%) contrast(89%)"}}),c=r.jsx("span",{className:"text-xs font-medium",children:"Install on Cursor"}),e[4]=l,e[5]=c):(l=e[4],c=e[5]);let d;return e[6]!==a?(d=r.jsxs(oe,{type:"button",variant:"outline",onClick:a,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[l,c]}),e[6]=a,e[7]=d):d=e[7],d}function o2(t){const e=B.c(12),{url:s,serverName:i,agentId:n}=t,[o,a]=j.useState(!1);let l;e[0]!==n||e[1]!==i||e[2]!==s?(l=async()=>{re("agent_connect_action",{agent_id:n,action:"install_claude_code"});const m=oh(i),g=JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Claude Code"}},null,2),_=`claude mcp add-json "${m}" '${g.replace(/'/g,"'\\''")}' --scope user`;await navigator.clipboard.writeText(_),a(!0),he.success("Claude Code command copied to clipboard"),setTimeout(()=>a(!1),2e3)},e[0]=n,e[1]=i,e[2]=s,e[3]=l):l=e[3];const c=l;let d;e[4]!==o?(d=o?r.jsx(Mt,{size:20,className:"text-green-600"}):r.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude Code",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(55%) sepia(31%) saturate(1264%) hue-rotate(331deg) brightness(92%) contrast(86%)"}}),e[4]=o,e[5]=d):d=e[5];const u=o?"Copied!":"Install on Claude Code";let h;e[6]!==u?(h=r.jsx("span",{className:"text-xs font-medium",children:u}),e[6]=u,e[7]=h):h=e[7];let f;return e[8]!==c||e[9]!==d||e[10]!==h?(f=r.jsxs(oe,{type:"button",variant:"outline",onClick:c,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[d,h]}),e[8]=c,e[9]=d,e[10]=h,e[11]=f):f=e[11],f}function a2({virtualMcp:t}){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),[i,n]=j.useState(null),[o,a]=j.useState(!1),[l,c]=j.useState(!1),d=t.id,u=t.title||`agent-${d.slice(0,8)}`,h=i?`bunx @decocms/typegen@latest --mcp ${d} --key ${i} --output client.ts`:`bunx @decocms/typegen@latest --mcp ${d} --key <api-key> --output client.ts`,f=async()=>{a(!0);try{const g=(await s.callTool({name:"API_KEY_CREATE",arguments:{name:`typegen-${u}`,permissions:{[d]:["*"]}}})).structuredContent?.key;if(!g)throw new Error("No key in response");n(g),re("agent_typegen_key_generated",{agent_id:d})}catch{re("agent_typegen_key_failed",{agent_id:d}),he.error("Failed to generate API key")}finally{a(!1)}},m=async()=>{re("agent_connect_action",{agent_id:d,action:"typegen_copy_command",has_api_key:!!i}),await navigator.clipboard.writeText(h),c(!0),he.success("Command copied to clipboard"),setTimeout(()=>c(!1),2e3)};return r.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex flex-col gap-0.5",children:[r.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Generate typed client"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Introspects this agent and writes a typed"," ",r.jsx("code",{className:"font-mono",children:"client.ts"})," you can import directly."]})]}),!i&&r.jsxs(oe,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:f,disabled:o,children:[o?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(Cg,{size:14}),r.jsx("span",{children:o?"Generating…":"Generate API key"})]})]}),i&&r.jsx("p",{className:"rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-700",children:"Store this key securely — it won't be shown again."}),r.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Generate client"}),r.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx("code",{className:"min-w-0 flex-1 break-all font-mono text-xs text-muted-foreground",children:h}),r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:m,children:l?r.jsx(Mt,{size:12,className:"text-green-600"}):r.jsx(Si,{size:12})})]})}),r.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Runtime variables"}),r.jsx(l2,{apiKey:i,agentId:d})]})}function l2(t){const e=B.c(21),{apiKey:s,agentId:i}=t,[n,o]=j.useState(!1),a=window.location.origin,l=s?`MESH_API_KEY=${s}`:"MESH_API_KEY=<api-key>",c=`MESH_BASE_URL=${a}`,d=`${l}
|
|
549
|
-
${c}`;let u;e[0]!==i||e[1]!==s||e[2]!==d?(u=async()=>{re("agent_connect_action",{agent_id:i,action:"typegen_copy_env",has_api_key:!!s}),await navigator.clipboard.writeText(d),o(!0),setTimeout(()=>o(!1),2e3)},e[0]=i,e[1]=s,e[2]=d,e[3]=u):u=e[3];const h=u,f=!s;let m;e[4]!==f?(m=Y({"opacity-50":f}),e[4]=f,e[5]=m):m=e[5];let p;e[6]!==l||e[7]!==m?(p=r.jsx("span",{className:m,children:l}),e[6]=l,e[7]=m,e[8]=p):p=e[8];let g,_;e[9]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx("br",{}),_=r.jsx("span",{children:c}),e[9]=g,e[10]=_):(g=e[9],_=e[10]);let v;e[11]!==p?(v=r.jsxs("code",{className:"min-w-0 flex-1 font-mono text-xs text-muted-foreground",children:[p,g,_]}),e[11]=p,e[12]=v):v=e[12];let x;e[13]!==n?(x=n?r.jsx(Mt,{size:12,className:"text-green-600"}):r.jsx(Si,{size:12}),e[13]=n,e[14]=x):x=e[14];let b;e[15]!==h||e[16]!==x?(b=r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:h,children:x}),e[15]=h,e[16]=x,e[17]=b):b=e[17];let y;return e[18]!==v||e[19]!==b?(y=r.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:r.jsxs("div",{className:"flex items-start gap-2",children:[v,b]})}),e[18]=v,e[19]=b,e[20]=y):y=e[20],y}function c2(t){const e=B.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx(j.Suspense,{fallback:i,children:r.jsx(a2,{virtualMcp:s})}),e[1]=s,e[2]=n):n=e[2],n}function d2(t){const e=B.c(37),{open:s,onOpenChange:i,virtualMcp:n}=t,o=`/mcp/virtual-mcp/${n.id}`;let a;e[0]!==o?(a=new URL(o,window.location.origin),e[0]=o,e[1]=a):a=e[1];const l=a;let c;e[2]!==n.id||e[3]!==n.title?(c=n.title||`agent-${n.id?.slice(0,8)??"default"}`,e[2]=n.id,e[3]=n.title,e[4]=c):c=e[4];const d=c,u=ms();let h;e[5]!==n.id||e[6]!==l.href?(h=r.jsx(r2,{url:l.href,agentId:n.id}),e[5]=n.id,e[6]=l.href,e[7]=h):h=e[7];let f,m;e[8]!==d||e[9]!==n.id||e[10]!==l.href?(f=r.jsx(n2,{url:l.href,serverName:d,agentId:n.id}),m=r.jsx(o2,{url:l.href,serverName:d,agentId:n.id}),e[8]=d,e[9]=n.id,e[10]=l.href,e[11]=f,e[12]=m):(f=e[11],m=e[12]);let p;e[13]!==h||e[14]!==f||e[15]!==m?(p=r.jsx("div",{className:"flex flex-col gap-3 pt-2",children:r.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[h,f,m]})}),e[13]=h,e[14]=f,e[15]=m,e[16]=p):p=e[16];let g;e[17]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx("div",{className:"border-t border-border"}),e[17]=g):g=e[17];let _;e[18]!==n?(_=r.jsx(c2,{virtualMcp:n}),e[18]=n,e[19]=_):_=e[19];let v;e[20]!==p||e[21]!==_?(v=r.jsxs("div",{className:"flex flex-col gap-6",children:[p,g,_]}),e[20]=p,e[21]=_,e[22]=v):v=e[22];const x=v;if(u){let C;e[23]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(si,{className:"mt-4 mb-4 text-base font-semibold",children:"Connect"}),e[23]=C):C=e[23];let S;e[24]!==x?(S=r.jsx(ii,{children:r.jsxs("div",{className:"flex-1 overflow-y-auto px-4 pb-6 [touch-action:pan-y]",children:[C,x]})}),e[24]=x,e[25]=S):S=e[25];let w;return e[26]!==i||e[27]!==s||e[28]!==S?(w=r.jsx(ri,{open:s,onOpenChange:i,children:S}),e[26]=i,e[27]=s,e[28]=S,e[29]=w):w=e[29],w}let b;e[30]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Gt,{children:r.jsx(qt,{children:"Connect"})}),e[30]=b):b=e[30];let y;e[31]!==x?(y=r.jsxs(Ot,{className:"max-h-[80vh] overflow-y-auto sm:max-w-2xl",children:[b,x]}),e[31]=x,e[32]=y):y=e[32];let V;return e[33]!==i||e[34]!==s||e[35]!==y?(V=r.jsx(Bt,{open:s,onOpenChange:i,children:y}),e[33]=i,e[34]=s,e[35]=y,e[36]=V):V=e[36],V}function h2(t,e){switch(e.type){case"SET_SHARE_DIALOG_OPEN":return{...t,shareDialogOpen:e.payload};case"SET_ADD_DIALOG_OPEN":return{...t,addDialogOpen:e.payload};case"OPEN_SETTINGS":return{...t,settingsDialogOpen:!0,settingsConnectionId:e.payload};case"CLOSE_SETTINGS":return{...t,settingsDialogOpen:!1,settingsConnectionId:null};default:return t}}function u2(t){const e=B.c(22),{connection_id:s,usedConnectionIds:i,onOpenSettings:n,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:c}=t,d=Ba(s),{org:u}=xe();if(!d)return null;let h;e[0]!==d?(h=nh(d),e[0]=d,e[1]=h):h=e[1];const f=h;let m;e[2]!==s?(m=r.jsx(g2,{connection_id:s}),e[2]=s,e[3]=m):m=e[3];let p;e[4]!==d.app_name||e[5]!==d.connection_type||e[6]!==d.description||e[7]!==d.icon||e[8]!==d.title||e[9]!==s||e[10]!==a||e[11]!==c||e[12]!==n||e[13]!==o||e[14]!==l||e[15]!==u.slug||e[16]!==f||e[17]!==i?(p=r.jsx(p2,{connection_id:s,connectionTitle:d.title,connectionDescription:d.description,connectionIcon:d.icon,connectionType:d.connection_type,slug:f,orgSlug:u.slug,appName:d.app_name,usedConnectionIds:i,onOpenSettings:n,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:c}),e[4]=d.app_name,e[5]=d.connection_type,e[6]=d.description,e[7]=d.icon,e[8]=d.title,e[9]=s,e[10]=a,e[11]=c,e[12]=n,e[13]=o,e[14]=l,e[15]=u.slug,e[16]=f,e[17]=i,e[18]=p):p=e[18];let g;return e[19]!==m||e[20]!==p?(g=r.jsx(j.Suspense,{fallback:m,children:p}),e[19]=m,e[20]=p,e[21]=g):g=e[21],g}const fc="__new_instance__";async function f2(t,e){const s=t?.idToken??null;if(s){const n=mc(s);if(n)return n}const i=t?.userinfoEndpoint??null;if(i)try{const n=await fetch(i,{headers:{Authorization:`Bearer ${e}`}});if(n.ok){const o=await n.json(),a=typeof o.email=="string"?o.email:typeof o.upn=="string"?o.upn:typeof o.preferred_username=="string"?o.preferred_username:null;if(a)return a}}catch{}return mc(e)}function mc(t){try{const e=t.split(".");if(e.length===3&&e[1]){const s=JSON.parse(atob(e[1].replace(/-/g,"+").replace(/_/g,"/")));if(typeof s.email=="string")return s.email;if(typeof s.upn=="string")return s.upn;if(typeof s.preferred_username=="string")return s.preferred_username}}catch{}return null}function m2(t){const e=B.c(23),{appName:s,connectionId:i,usedConnectionIds:n,onSwitchInstance:o,onNewInstance:a}=t;let l;e[0]!==s?(l={filters:[{column:"app_name",value:s}]},e[0]=s,e[1]=l):l=e[1];const c=yr(l);if(c.length<=1)return null;let d;e[2]!==i||e[3]!==a||e[4]!==o?(d=g=>{g===fc?a?.():o(i,g)},e[2]=i,e[3]=a,e[4]=o,e[5]=d):d=e[5];let u;e[6]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(Ms,{size:"sm",className:"w-auto text-xs gap-1 px-2 shadow-none",children:r.jsx(Ds,{})}),e[6]=u):u=e[6];let h;if(e[7]!==i||e[8]!==c||e[9]!==n){let g;e[11]!==i||e[12]!==n?(g=_=>r.jsx(Nt,{value:_.id,className:"text-xs",disabled:_.id!==i&&n.has(_.id),children:_.title},_.id),e[11]=i,e[12]=n,e[13]=g):g=e[13],h=c.map(g),e[7]=i,e[8]=c,e[9]=n,e[10]=h}else h=e[10];let f;e[14]!==a?(f=a&&r.jsx(Nt,{value:fc,className:"text-xs text-muted-foreground",children:"+ New instance"}),e[14]=a,e[15]=f):f=e[15];let m;e[16]!==h||e[17]!==f?(m=r.jsxs(Ts,{children:[h,f]}),e[16]=h,e[17]=f,e[18]=m):m=e[18];let p;return e[19]!==i||e[20]!==d||e[21]!==m?(p=r.jsxs(Rs,{value:i,onValueChange:d,children:[u,m]}),e[19]=i,e[20]=d,e[21]=m,e[22]=p):p=e[22],p}function p2(t){const e=B.c(55),{connection_id:s,connectionTitle:i,connectionDescription:n,connectionIcon:o,connectionType:a,slug:l,orgSlug:c,appName:d,usedConnectionIds:u,onOpenSettings:h,onRemove:f,onAuthenticate:m,onSwitchInstance:p,onNewInstance:g}=t;let _;e[0]!==s?(_={connectionId:s},e[0]=s,e[1]=_):_=e[1];const v=Ch(_),b=!(a==="VIRTUAL")&&v.supportsOAuth&&!v.isAuthenticated,y=b?"border-destructive/50 bg-destructive/5":"border-border";let V;e[2]!==y?(V=Y("rounded-xl border overflow-hidden transition-colors",y),e[2]=y,e[3]=V):V=e[3];let C;e[4]!==c||e[5]!==l?(C={org:c,appSlug:l},e[4]=c,e[5]=l,e[6]=C):C=e[6];let S;e[7]!==o||e[8]!==i?(S=r.jsx(ps,{icon:o,name:i,size:"sm",className:"shrink-0"}),e[7]=o,e[8]=i,e[9]=S):S=e[9];let w;e[10]!==i?(w=r.jsx("p",{className:"text-sm font-medium truncate",children:i}),e[10]=i,e[11]=w):w=e[11];let k;e[12]!==n||e[13]!==b?(k=b?r.jsx("span",{className:"text-xs text-destructive font-medium",children:"Needs authorization"}):n&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:n}),e[12]=n,e[13]=b,e[14]=k):k=e[14];let T;e[15]!==w||e[16]!==k?(T=r.jsxs("div",{className:"flex-1 min-w-0",children:[w,k]}),e[15]=w,e[16]=k,e[17]=T):T=e[17];let M;e[18]!==s||e[19]!==b||e[20]!==m?(M=b?r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 text-xs shrink-0",onClick:W=>{W.preventDefault(),W.stopPropagation(),m(s)},children:"Authorize"}):r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx("span",{className:"inline-flex items-center justify-center rounded-md h-7 w-7 hover:bg-accent text-muted-foreground shrink-0 transition-colors",children:r.jsx(kr,{size:16})})}),r.jsx(Ge,{side:"bottom",children:"Connection settings"})]}),e[18]=s,e[19]=b,e[20]=m,e[21]=M):M=e[21];let I;e[22]!==C||e[23]!==S||e[24]!==T||e[25]!==M?(I=r.jsxs(Cd,{to:"/$org/settings/connections/$appSlug",params:C,className:"flex items-center gap-3 px-4 py-3 cursor-pointer hover:bg-muted/50 transition-colors",children:[S,T,M]}),e[22]=C,e[23]=S,e[24]=T,e[25]=M,e[26]=I):I=e[26];let E;e[27]!==d||e[28]!==s||e[29]!==g||e[30]!==p||e[31]!==u?(E=d&&r.jsx(m2,{appName:d,connectionId:s,usedConnectionIds:u,onSwitchInstance:p,onNewInstance:g}),e[27]=d,e[28]=s,e[29]=g,e[30]=p,e[31]=u,e[32]=E):E=e[32];let N;e[33]===Symbol.for("react.memo_cache_sentinel")?(N=r.jsx(zd,{size:13}),e[33]=N):N=e[33];let A;e[34]!==h?(A=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:h,"aria-label":"Configure resources",children:N})}),e[34]=h,e[35]=A):A=e[35];let D;e[36]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(Ge,{side:"bottom",children:"Configure resources"}),e[36]=D):D=e[36];let L;e[37]!==A?(L=r.jsxs(Ye,{delayDuration:0,children:[A,D]}),e[37]=A,e[38]=L):L=e[38];let R;e[39]===Symbol.for("react.memo_cache_sentinel")?(R=r.jsx(Os,{size:13}),e[39]=R):R=e[39];let P;e[40]!==f?(P=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-destructive",onClick:f,"aria-label":"Remove connection",children:R})}),e[40]=f,e[41]=P):P=e[41];let O;e[42]===Symbol.for("react.memo_cache_sentinel")?(O=r.jsx(Ge,{side:"bottom",children:"Remove"}),e[42]=O):O=e[42];let z;e[43]!==P?(z=r.jsxs(Ye,{delayDuration:0,children:[P,O]}),e[43]=P,e[44]=z):z=e[44];let $;e[45]!==L||e[46]!==z?($=r.jsxs("div",{className:"flex items-center gap-0.5 ml-auto",children:[L,z]}),e[45]=L,e[46]=z,e[47]=$):$=e[47];let q;e[48]!==E||e[49]!==$?(q=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-2 border-t border-border bg-muted/25",children:[E,$]}),e[48]=E,e[49]=$,e[50]=q):q=e[50];let F;return e[51]!==I||e[52]!==q||e[53]!==V?(F=r.jsxs("div",{className:V,children:[I,q]}),e[51]=I,e[52]=q,e[53]=V,e[54]=F):F=e[54],F}function g2(t){const e=B.c(17),{connection_id:s}=t,i=Ba(s);if(!i){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx(Vu,{}),e[0]=h):h=e[0],h}let n;e[1]!==i.icon||e[2]!==i.title?(n=r.jsx(ps,{icon:i.icon,name:i.title,size:"sm",className:"shrink-0"}),e[1]=i.icon,e[2]=i.title,e[3]=n):n=e[3];let o;e[4]!==i.title?(o=r.jsx("p",{className:"text-sm font-medium truncate",children:i.title}),e[4]=i.title,e[5]=o):o=e[5];let a;e[6]!==i.description?(a=i.description&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:i.description}),e[6]=i.description,e[7]=a):a=e[7];let l;e[8]!==o||e[9]!==a?(l=r.jsxs("div",{className:"flex-1 min-w-0",children:[o,a]}),e[8]=o,e[9]=a,e[10]=l):l=e[10];let c;e[11]!==n||e[12]!==l?(c=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[n,l]}),e[11]=n,e[12]=l,e[13]=c):c=e[13];let d;e[14]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:r.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})}),e[14]=d):d=e[14];let u;return e[15]!==c?(u=r.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[c,d]}),e[15]=c,e[16]=u):u=e[16],u}function Vu(){const t=B.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"size-8 rounded-md bg-muted animate-pulse shrink-0"}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[e,r.jsxs("div",{className:"flex-1 space-y-1.5",children:[r.jsx("div",{className:"h-4 w-32 rounded bg-muted animate-pulse"}),r.jsx("div",{className:"h-3 w-48 rounded bg-muted animate-pulse"})]})]}),t[1]=s):s=t[1];let i;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[s,r.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:r.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})})]}),t[2]=i):i=t[2],i}function _2({virtualMcpId:t}){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),i=bt(),n=$t(t),o=(n?.connections??[]).map(P=>P.connection_id).sort(),{data:a}=ji({queryKey:Ze.projectConnectionDetails(t,o),enabled:o.length>0,queryFn:async()=>await Promise.all(o.map(async O=>{try{const z=await s.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:O}}),{item:$}=Jn(z),q=($?.tools??[]).filter(F=>!!Ip(F._meta)).map(F=>({name:F.name,description:F.description}));return{fetchOk:!0,id:O,title:$?.title??O,icon:$?.icon??null,uiTools:q}}catch{return{fetchOk:!1,id:O,title:O,icon:null,uiTools:[]}}}))}),l=(a??[]).filter(P=>P.uiTools.length>0),c=new Set(Nm),d=n?.metadata?.ui,u=d?.pinnedViews??[],h=d?.layout?.defaultMainView??null,f=d?.layout?.chatDefaultOpen??!1,m=!h||h.type==="chat"?"chat":h.type==="instructions"||h.type==="connections"||h.type==="layout"?"settings":c.has(h.type)?h.type:`${h.type}:${h.id??""}:${h.toolName??""}`,[p,g]=j.useState(u),[_,v]=j.useState(m),[x,b]=j.useState(f),[y,V]=j.useState(!1),C=P=>{const[O,z,$]=P.split(":");return O?O==="chat"?{type:O}:c.has(O)?{type:O}:O==="ext-apps"&&z?{type:"ext-apps",id:z,toolName:$||void 0}:null:null},S=j.useRef(!1);if(a&&a.length>0&&!S.current){S.current=!0;const P=new Set((a??[]).filter($=>$.fetchOk).map($=>$.id)),O=new Set(l.flatMap($=>$.uiTools.map(q=>`${$.id}:${q.name}`))),z=u.filter($=>!P.has($.connectionId)||O.has(`${$.connectionId}:${$.toolName}`));if(z.length!==u.length){g(z);let $=_;h?.type==="ext-apps"&&!z.some(q=>q.connectionId===h.id&&q.toolName===h.toolName)&&($="chat",v($)),s.callTool({name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",arguments:{virtualMcpId:t,pinnedViews:z,layout:{defaultMainView:C($),chatDefaultOpen:x}}}).then(q=>{Jn(q),i.invalidateQueries({predicate:F=>Array.isArray(F.queryKey)&&F.queryKey.includes("collection")&&F.queryKey.includes("VIRTUAL_MCP")})}).catch(()=>{g(u),v(m)})}}const w=(P,O,z)=>{V(!0),(async()=>{try{const q=await s.callTool({name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",arguments:{virtualMcpId:t,pinnedViews:P,layout:{defaultMainView:C(O),chatDefaultOpen:z??x}}});Jn(q),i.invalidateQueries({predicate:F=>Array.isArray(F.queryKey)&&F.queryKey.includes("collection")&&F.queryKey.includes("VIRTUAL_MCP")}),he.success("Layout updated")}catch(q){he.error("Failed to update layout: "+(q instanceof Error?q.message:"Unknown error"))}finally{V(!1)}})()},k=(P,O)=>{const z=p.some(F=>F.connectionId===P&&F.toolName===O);let $,q=_;if(z){$=p.filter(W=>!(W.connectionId===P&&W.toolName===O));const F=`ext-apps:${P}:${O}`;_===F&&(q="chat",v(q))}else $=[...p,{connectionId:P,toolName:O,label:ko(O),icon:null}];g($),w($,q)},T=(P,O,z)=>{g($=>$.map(q=>q.connectionId===P&&q.toolName===O?{...q,label:z}:q))},M=()=>{w(p,_)},I=(P,O,z)=>{g(q=>q.map(F=>F.connectionId===P&&F.toolName===O?{...F,icon:z}:F));const $=p.map(q=>q.connectionId===P&&q.toolName===O?{...q,icon:z}:q);w($,_)},E=P=>{v(P),w(p,P)},N=o.length===0,A=a&&l.length===0,D=!!bs(n),L=[{value:"chat",label:"Chat"},{value:"settings",label:"Settings"},{value:"automations",label:"Automations"}];D&&(L.push({value:"env",label:"Terminal"}),L.push({value:"preview",label:"Preview"}));for(const P of p)L.push({value:`ext-apps:${P.connectionId}:${P.toolName}`,label:P.label||P.toolName});const R=l.length>0||N||A;return r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("div",{className:"flex items-center justify-between gap-3",children:r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Layout"})}),r.jsxs(Vg,{className:"p-6 gap-5",children:[r.jsxs(Rl,{className:"p-0 space-y-5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Main view"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"What users see when they first open this agent."})]}),r.jsxs(Rs,{value:_,onValueChange:E,children:[r.jsx(Ms,{className:"w-44 h-8 text-sm capitalize shrink-0",children:r.jsx(Ds,{})}),r.jsx(Ts,{children:L.map(P=>r.jsx(Nt,{value:P.value,className:"capitalize",children:P.label},P.value))})]})]}),r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Show chat"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Display the chat panel alongside the main view."})]}),r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx("span",{className:"shrink-0",children:r.jsx(mn,{checked:_==="chat"?!0:x,disabled:_==="chat"||y,onCheckedChange:P=>{b(P),w(p,_,P)}})})}),_==="chat"&&r.jsx(Ge,{side:"top",children:"Chat is always shown when it is the default view"})]})]})]}),R&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"border-t border-border -mx-6"}),r.jsxs(Rl,{className:"p-0 space-y-3",children:[r.jsx("div",{className:"flex items-center justify-between gap-4",children:r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Pinned views"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Surface interactive tools as top-level tabs in the agent."})]})}),N&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"Add a connection above to configure pinned views."}),A&&!N&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"None of the connected servers expose interactive tools."}),l.length>0&&r.jsx("div",{className:"space-y-4 pt-1",children:l.map((P,O)=>r.jsxs("div",{children:[O>0&&r.jsx("div",{className:"border-t border-border -mx-6 mb-4"}),r.jsxs("div",{className:"flex items-center gap-2 mb-2.5",children:[r.jsx(ps,{icon:P.icon,name:P.title,size:"xs",className:"shrink-0"}),r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:P.title})]}),r.jsx("div",{className:"space-y-1.5",children:P.uiTools.map(z=>{const $=p.some(F=>F.connectionId===P.id&&F.toolName===z.name),q=p.find(F=>F.connectionId===P.id&&F.toolName===z.name);return r.jsxs("div",{className:Y("flex items-center justify-between gap-3 px-3 py-2 rounded-lg border transition-colors",$?"bg-accent/40 border-border":"bg-transparent border-border"),children:[r.jsxs("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[r.jsx(zy,{value:q?.icon??null,onChange:F=>I(P.id,z.name,F),disabled:!$||y}),r.jsx(at,{value:$&&q?q.label:ko(z.name),onChange:F=>T(P.id,z.name,F.target.value),onBlur:M,className:"h-7 text-sm w-40",disabled:!$||y,readOnly:!$})]}),r.jsx(mn,{checked:$,onCheckedChange:()=>k(P.id,z.name),disabled:y})]},z.name)})})]},P.id))})]})]})]})]})}function x2({virtualMcp:t,hideOwnTitle:e}){const{org:s}=xe(),i=Oa(),n=Mn(),o=bt(),a=Ae({connectionId:yt,orgId:s.id}),l=Ai({resolver:gr(s2),defaultValues:t}),c=l.watch("connections"),d=!!bs(t),[u,h]=j.useReducer(h2,{shareDialogOpen:!1,addDialogOpen:!1,settingsDialogOpen:!1,settingsConnectionId:null}),[f,m]=j.useState(!1),{createTaskWithMessage:p}=Lt(),{setChatMode:g}=$s(),{createNewTask:_}=xr(),v=()=>{const U=l.getValues("metadata.instructions");U?.trim()&&(T(),re("agent_instructions_improve_clicked",{agent_id:t.id,instructions_length:U.length}),g("plan"),p({virtualMcpId:Aa(s.id),message:{parts:[{type:"text",text:`/writing-prompts ${t.id}
|
|
548
|
+
`}]}}function Ws(t){return{type:"paragraph",content:t}}function Cs(t){return{type:"text",text:t}}function nv({agentId:t,title:e}){return{type:"mention",attrs:{id:t,name:e,char:"@",metadata:{agentId:t,title:e}}}}const qi="deco/site-diagnostics";function Zh(t){const e=B.c(15),{open:s,onOpenChange:i}=t,[n,o]=j.useState(null);let a;e[0]!==i?(a=()=>{o(null),i(!1)},e[0]=i,e[1]=a):a=e[1];const l=a,c=s&&n===null;let d;e[2]!==n||e[3]!==i?(d=p=>{!p&&n===null&&i(!1)},e[2]=n,e[3]=i,e[4]=d):d=e[4];let u;e[5]!==c||e[6]!==d?(u=r.jsx(hh,{open:c,onOpenChange:d,title:"Set up self-healing repo",hideAutoRespondCheckbox:!0,onImportComplete:o}),e[5]=c,e[6]=d,e[7]=u):u=e[7];const h=s&&n!==null;let f;e[8]!==l||e[9]!==n||e[10]!==h?(f=r.jsx(ov,{open:h,payload:n,onClose:l}),e[8]=l,e[9]=n,e[10]=h,e[11]=f):f=e[11];let m;return e[12]!==u||e[13]!==f?(m=r.jsxs(r.Fragment,{children:[u,f]}),e[12]=u,e[13]=f,e[14]=m):m=e[14],m}function ov(t){const e=B.c(66),{open:s,payload:i,onClose:n}=t,{org:o}=xe(),a=Sr(),l=Mn();let c;e[0]!==o.id?(c={connectionId:yt,orgId:o.id},e[0]=o.id,e[1]=c):c=e[1];const d=Ae(c),[u,h]=j.useState(""),[f,m]=j.useState(cv);let p;e[2]!==s?(p={enabled:s},e[2]=s,e[3]=p):p=e[3];const{data:g}=Wp(qi,p);let _;e[4]!==l||e[5]!==f||e[6]!==i||e[7]!==d||e[8]!==g||e[9]!==u?(_=async()=>{if(!i)throw new Error("No imported repo payload");const X=Zl(u);if(!X)throw new Error("Enter a valid https:// URL");const K=Oo.filter(J=>f[J.id]);if(K.length===0)return{succeeded:[],failed:[]};const G=await fv({selfClient:d,createConnection:l.create.mutateAsync,registry:g}),ie=[],te=[];for(const J of K)try{await mv({template:J,selfClient:d,siteDiagnosticsConnectionId:G,projectAgentId:i.virtualMcpId,owner:i.repo.owner,repo:i.repo.name,siteRootUrl:X}),ie.push(J.title)}catch(ae){const Z=ae;console.error(`Failed to set up ${J.title}:`,Z),te.push(J.title)}return{succeeded:ie,failed:te}},e[4]=l,e[5]=f,e[6]=i,e[7]=d,e[8]=g,e[9]=u,e[10]=_):_=e[10];let v;e[11]!==a||e[12]!==n||e[13]!==i?.virtualMcpId?(v=X=>{const{succeeded:K,failed:G}=X;K.length>0?he.success(`Self-healing repo ready — ${K.length} specialist${K.length>1?"s":""} set up`):G.length===0&&he.success("Repo imported. Add specialists later from automations."),G.length>0&&he.warning(`Could not set up: ${G.join(", ")}. You can add them later from the automations view.`);const ie=i?.virtualMcpId;n(),localStorage.setItem("mesh:sidebar-open",JSON.stringify(!1)),ie&&a(ie)},e[11]=a,e[12]=n,e[13]=i?.virtualMcpId,e[14]=v):v=e[14];let x;e[15]!==_||e[16]!==v?(x={mutationFn:_,onSuccess:v,onError:lv},e[15]=_,e[16]=v,e[17]=x):x=e[17];const b=Ni(x);let y;e[18]!==b.isPending||e[19]!==u?(y=Zl(u)!==null&&!b.isPending,e[18]=b.isPending,e[19]=u,e[20]=y):y=e[20];const V=y;let C;e[21]!==n||e[22]!==b.isPending?(C=X=>{!X&&!b.isPending&&n()},e[21]=n,e[22]=b.isPending,e[23]=C):C=e[23];let S;e[24]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Gt,{className:"h-12 border-b border-border px-4 flex flex-row items-center shrink-0 space-y-0",children:r.jsx(qt,{className:"text-sm font-medium text-foreground",children:"Add specialist monitors"})}),e[24]=S):S=e[24];let w;e[25]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx("p",{className:"text-sm text-muted-foreground",children:"Specialists run on a daily schedule. Your repo agent collects their findings and opens GitHub issues, then writes the fixes."}),e[25]=w):w=e[25];let k;e[26]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx("label",{htmlFor:"self-healing-site-url",className:"text-xs font-medium text-foreground",children:"Production URL"}),e[26]=k):k=e[26];let T;e[27]===Symbol.for("react.memo_cache_sentinel")?(T=X=>h(X.target.value),e[27]=T):T=e[27];let M;e[28]!==u?(M=r.jsx(at,{id:"self-healing-site-url",type:"url",placeholder:"https://example.com",value:u,onChange:T,autoFocus:!0}),e[28]=u,e[29]=M):M=e[29];let I;e[30]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx("p",{className:"text-xs text-muted-foreground",children:"The site the specialists will monitor."}),e[30]=I):I=e[30];let E;e[31]!==M?(E=r.jsxs("div",{className:"flex flex-col gap-1.5",children:[k,M,I]}),e[31]=M,e[32]=E):E=e[32];let N;e[33]!==f?(N=Oo.map(X=>r.jsx(dv,{template:X,enabled:f[X.id]??!1,onToggle:K=>m(G=>({...G,[X.id]:K}))},X.id)),e[33]=f,e[34]=N):N=e[34];let A,D;e[35]===Symbol.for("react.memo_cache_sentinel")?(A=sv.map(av),D=r.jsx(uv,{}),e[35]=A,e[36]=D):(A=e[35],D=e[36]);let L;e[37]!==N?(L=r.jsxs("div",{className:"flex flex-col gap-2",children:[N,A,D]}),e[37]=N,e[38]=L):L=e[38];let R;e[39]!==E||e[40]!==L?(R=r.jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 flex flex-col gap-4",children:[w,E,L]}),e[39]=E,e[40]=L,e[41]=R):R=e[41];let P;e[42]!==a||e[43]!==n||e[44]!==i?.virtualMcpId||e[45]!==b.isPending?(P=()=>{if(!b.isPending){const X=i?.virtualMcpId;n(),X&&a(X)}},e[42]=a,e[43]=n,e[44]=i?.virtualMcpId,e[45]=b.isPending,e[46]=P):P=e[46];let O;e[47]!==b.isPending||e[48]!==P?(O=r.jsx("button",{type:"button",onClick:P,disabled:b.isPending,className:"text-xs text-muted-foreground hover:text-foreground transition-colors disabled:opacity-50 cursor-pointer",children:"Skip for now"}),e[47]=b.isPending,e[48]=P,e[49]=O):O=e[49];let z;e[50]!==b?(z=()=>b.mutate(),e[50]=b,e[51]=z):z=e[51];const $=!V,q=b.isPending?"Setting up...":"Set up specialists";let F;e[52]!==z||e[53]!==$||e[54]!==q?(F=r.jsx(oe,{onClick:z,disabled:$,size:"sm",children:q}),e[52]=z,e[53]=$,e[54]=q,e[55]=F):F=e[55];let W;e[56]!==O||e[57]!==F?(W=r.jsxs("div",{className:"border-t border-border px-4 py-3 flex items-center justify-between gap-3 shrink-0",children:[O,F]}),e[56]=O,e[57]=F,e[58]=W):W=e[58];let H;e[59]!==R||e[60]!==W?(H=r.jsxs(Ot,{className:"sm:max-w-[560px] max-h-[85svh] p-0 gap-0 overflow-hidden flex flex-col",children:[S,R,W]}),e[59]=R,e[60]=W,e[61]=H):H=e[61];let U;return e[62]!==s||e[63]!==H||e[64]!==C?(U=r.jsx(Bt,{open:s,onOpenChange:C,children:H}),e[62]=s,e[63]=H,e[64]=C,e[65]=U):U=e[65],U}function av(t){return r.jsx(hv,{title:t.title,description:t.description,icon:t.icon},t.id)}function lv(t){he.error("Failed to set up specialists: "+(t instanceof Error?t.message:"Unknown error"))}function cv(){const t={};for(const e of Oo)t[e.id]=!0;return t}function dv(t){const e=B.c(20),{template:s,enabled:i,onToggle:n}=t,o=i?"bg-accent/30":"hover:bg-accent/30";let a;e[0]!==o?(a=Y("flex items-center gap-3 rounded-lg border border-border px-3 py-3 cursor-pointer transition-colors",o),e[0]=o,e[1]=a):a=e[1];let l;e[2]!==s.icon||e[3]!==s.title?(l=r.jsx(Qt,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[2]=s.icon,e[3]=s.title,e[4]=l):l=e[4];let c;e[5]!==s.title?(c=r.jsx("span",{className:"text-sm font-medium text-foreground leading-tight",children:s.title}),e[5]=s.title,e[6]=c):c=e[6];let d;e[7]!==s.description?(d=r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[7]=s.description,e[8]=d):d=e[8];let u;e[9]!==c||e[10]!==d?(u=r.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[c,d]}),e[9]=c,e[10]=d,e[11]=u):u=e[11];let h;e[12]!==i||e[13]!==n?(h=r.jsx(mn,{checked:i,onCheckedChange:n,className:"shrink-0"}),e[12]=i,e[13]=n,e[14]=h):h=e[14];let f;return e[15]!==a||e[16]!==l||e[17]!==u||e[18]!==h?(f=r.jsxs("label",{className:a,children:[l,u,h]}),e[15]=a,e[16]=l,e[17]=u,e[18]=h,e[19]=f):f=e[19],f}function hv(t){const e=B.c(14),{title:s,description:i,icon:n}=t;let o;e[0]!==n||e[1]!==s?(o=r.jsx(Qt,{icon:n,name:s,size:"sm",className:"shrink-0"}),e[0]=n,e[1]=s,e[2]=o):o=e[2];let a;e[3]!==s?(a=r.jsx("span",{className:"text-sm font-medium text-foreground leading-tight",children:s}),e[3]=s,e[4]=a):a=e[4];let l;e[5]!==i?(l=r.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:i}),e[5]=i,e[6]=l):l=e[6];let c;e[7]!==a||e[8]!==l?(c=r.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[a,l]}),e[7]=a,e[8]=l,e[9]=c):c=e[9];let d;e[10]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("span",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground shrink-0",children:"Coming soon"}),e[10]=d):d=e[10];let u;return e[11]!==o||e[12]!==c?(u=r.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-dashed border-border px-3 py-3 opacity-60",children:[o,c,d]}),e[11]=o,e[12]=c,e[13]=u):u=e[13],u}function uv(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center justify-center rounded-lg border border-dashed border-border px-3 py-3 text-xs text-muted-foreground",children:"More specialists coming soon"}),t[0]=e):e=t[0],e}function Zl(t){const e=t.trim();if(!e)return null;try{const s=new URL(e);return s.protocol!=="https:"&&s.protocol!=="http:"?null:s.origin+(s.pathname==="/"?"":s.pathname)}catch{return null}}async function fv({selfClient:t,createConnection:e,registry:s}){const n=(await t.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{where:{field:["app_id"],operator:"eq",value:qi},limit:1,offset:0}})).structuredContent?.items?.find(u=>u.app_id===qi);if(n)return n.id;const o=s?.server?.remotes?.[0]?.url;if(!o)throw new Error("Site Diagnostics MCP is not available in the registry right now.");const a=s?.title??s?.server?.title??s?.server?.name??"Site Diagnostics",l=s?.server?.icons?.[0]?.src??null,c=s?.server?.description??null;return(await e({title:a,description:c,icon:l,connection_type:"HTTP",connection_url:o,app_name:s?.server?.name??"site-diagnostics",app_id:qi,metadata:{type:"site-diagnostics",source:"store",registry_item_id:qi,verified:!0}})).id}async function mv({template:t,selfClient:e,siteDiagnosticsConnectionId:s,projectAgentId:i,owner:n,repo:o,siteRootUrl:a}){const l=`${o}: ${t.title}`,d=(await e.callTool({name:"AUTOMATION_LIST",arguments:{virtual_mcp_id:i}})).structuredContent?.automations?.find(h=>h.name===l);let u;if(!(d&&d.trigger_count>0)){if(d)u=d.id;else{const h=await pv({template:t,selfClient:e,siteDiagnosticsConnectionId:s}),f=iv({template:t,specialistAgentId:h,owner:n,repo:o,siteRootUrl:a}),m=jd(f),p=await e.callTool({name:"AUTOMATION_CREATE",arguments:{name:l,virtual_mcp_id:i,agent:{id:i},messages:m,active:!0}});u=(p.structuredContent??p).id}await e.callTool({name:"AUTOMATION_TRIGGER_ADD",arguments:{automation_id:u,type:"cron",cron_expression:t.cron}})}}async function pv({template:t,selfClient:e,siteDiagnosticsConnectionId:s}){const n=(await e.callTool({name:"COLLECTION_VIRTUAL_MCP_LIST",arguments:{where:{field:["metadata","specialistId"],operator:"eq",value:t.id},limit:1,offset:0}})).structuredContent?.items?.find(l=>l.metadata?.specialistId===t.id);if(n)return n.id;const o=await e.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:t.title,description:t.description,icon:t.icon,pinned:!1,metadata:{specialistId:t.id,instructions:t.instructions},connections:[{connection_id:s,selected_tools:t.siteDiagnosticsTools,selected_resources:null,selected_prompts:null}]}}});return(o.structuredContent??o).item.id}function gv(t){try{const e=localStorage.getItem(`mesh:chat:recent-agents:${t}`);return e?JSON.parse(e):[]}catch{return[]}}const _v=8;function ec(t){const e=B.c(21),{agent:s,onSpecialClick:i,tracking:n}=t,{org:o}=xe(),a=Oe();let l;e[0]!==s.id||e[1]!==s.title||e[2]!==a||e[3]!==i||e[4]!==o||e[5]!==n.action||e[6]!==n.template_id||e[7]!==n.tile_kind?(l=()=>{if(re("home_agent_tile_clicked",{template_id:n.template_id,agent_id:s.id,agent_title:s.title,tile_kind:n.tile_kind,action:n.action}),i)i();else{const g=crypto.randomUUID();a({to:"/$org/$taskId",params:{org:o.slug,taskId:g},search:{virtualmcpid:s.id}})}},e[0]=s.id,e[1]=s.title,e[2]=a,e[3]=i,e[4]=o,e[5]=n.action,e[6]=n.template_id,e[7]=n.tile_kind,e[8]=l):l=e[8];const c=l;let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group"),e[9]=d):d=e[9];const u=`Select agent ${s.title}`;let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx(Dn,{size:24}),e[10]=h):h=e[10];let f;e[11]!==s.icon||e[12]!==s.title?(f=r.jsx(ps,{icon:s.icon,name:s.title,size:"md",fallbackIcon:h,className:"transition-transform group-hover:scale-110"}),e[11]=s.icon,e[12]=s.title,e[13]=f):f=e[13];let m;e[14]!==s.title?(m=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight line-clamp-2 break-words w-full",children:s.title}),e[14]=s.title,e[15]=m):m=e[15];let p;return e[16]!==c||e[17]!==u||e[18]!==f||e[19]!==m?(p=r.jsxs("button",{type:"button",onClick:c,className:d,"aria-label":u,children:[f,m]}),e[16]=c,e[17]=u,e[18]=f,e[19]=m,e[20]=p):p=e[20],p}function xv(){const t=B.c(8),e=Oe(),{org:s}=xe();let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group"),t[0]=i):i=t[0];let n;t[1]!==e||t[2]!==s.slug?(n=()=>{re("home_see_all_agents_clicked"),e({to:"/$org/settings/agents",params:{org:s.slug}})},t[1]=e,t[2]=s.slug,t[3]=n):n=t[3];let o,a;t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"size-12 rounded-xl bg-accent flex items-center justify-center shrink-0 transition-transform group-hover:scale-110",children:r.jsx($a,{size:20,className:"text-foreground"})}),a=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight",children:"See all"}),t[4]=o,t[5]=a):(o=t[4],a=t[5]);let l;return t[6]!==n?(l=r.jsxs("button",{type:"button",className:i,"aria-label":"See all agents",onClick:n,children:[o,a]}),t[6]=n,t[7]=l):l=t[7],l}function vv(){const t=B.c(9);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={navigateOnCreate:!0},t[0]=e):e=t[0];const{createVirtualMCP:s,isCreating:i}=_h(e);let n;t[1]!==s?(n=()=>{re("home_create_agent_clicked"),s()},t[1]=s,t[2]=n):n=t[2];let o;t[3]===Symbol.for("react.memo_cache_sentinel")?(o=Y("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors","cursor-pointer","w-[100px] shrink-0","group","disabled:opacity-50 disabled:cursor-not-allowed"),t[3]=o):o=t[3];let a,l;t[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"size-12 rounded-xl bg-background border-2 border-dashed border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-110",children:r.jsx(Dt,{size:20,className:"text-muted-foreground"})}),l=r.jsx("p",{className:"text-xs sm:text-sm text-foreground text-center leading-tight",children:"Create agent"}),t[4]=a,t[5]=l):(a=t[4],l=t[5]);let c;return t[6]!==i||t[7]!==n?(c=r.jsxs("button",{type:"button",onClick:n,disabled:i,className:o,"aria-label":"Create agent",children:[a,l]}),t[6]=i,t[7]=n,t[8]=c):c=t[8],c}function Br(t,e,s){return t.find(i=>i.id!==null&&(i.metadata?.type===e||i.title===s))}function bv(){const t=B.c(52),e=Rn(),{locator:s}=xe(),i=Hp(),[n,o]=j.useState(!1),[a,l]=j.useState(!1),[c,d]=j.useState(!1),[u,h]=j.useState(!1),[f,m]=j.useState(!1),[p,g]=j.useState(!1),[_,v]=j.useState(!1),[x]=ei(),b=Sr();let y,V,C,S,w,k,T,M;if(t[0]!==s||t[1]!==b||t[2]!==i||t[3]!==x||t[4]!==e){const F=jt.find(Tv),W=jt.find(Iv),H=jt.find(Ev),U=jt.find(Av),X=jt.find(Nv),K=jt.find(jv),G=jt.find(kv);C=Br(e,W.id,W.title),y=Br(e,H.id,H.title),V=Br(e,U.id,U.title),S=Br(e,X.id,X.title);const ie=Z=>{if(Z===F.id)return{key:Z,kind:"template-recruit",templateId:"site-editor",agent:F,onClick:"import-deco"};if(Z===W.id)return C?{key:C.id,kind:"existing",templateId:"site-diagnostics",agent:C}:{key:Z,kind:"template-recruit",templateId:"site-diagnostics",agent:W,onClick:"diagnostics"};if(Z===H.id)return y?{key:y.id,kind:"existing",templateId:"ai-image",agent:y}:{key:Z,kind:"template-recruit",templateId:"ai-image",agent:H,onClick:"ai-image"};if(Z===X.id)return S?{key:S.id,kind:"existing",templateId:"lean-canvas",agent:S}:{key:Z,kind:"template-recruit",templateId:"lean-canvas",agent:X,onClick:"lean-canvas"};if(Z===K.id)return{key:Z,kind:"template-recruit",templateId:"studio-pack",agent:K,onClick:"studio-pack"};if(Z===G.id)return x.experimental_vibecode?{key:Z,kind:"template-recruit",templateId:"self-healing-storefront",agent:G,onClick:"self-healing"}:null;if(Z===U.id)return V?{key:V.id,kind:"existing",templateId:"ai-research",agent:V}:{key:Z,kind:"template-recruit",templateId:"ai-research",agent:U,onClick:"ai-research"};const de=e.find(fe=>fe.id!==null&&fe.id===Z&&!lr(fe.id));return de?{key:de.id,kind:"existing",templateId:null,agent:de}:null};let te;if(i?.ids)te=i.ids.map(ie).filter(Cv).slice(0,_v);else{const de=[F.id,G.id,W.id,H.id,U.id].map(ie).filter(Vv),fe=gv(s),ye=e.filter(wv).filter(ge=>ge.id!==C?.id&&ge.id!==y?.id&&ge.id!==V?.id).sort((ge,ce)=>{const ue=fe.indexOf(ge.id),be=fe.indexOf(ce.id);return ue!==-1&&be!==-1?ue-be:ue!==-1?-1:be!==-1?1:new Date(ce.updated_at).getTime()-new Date(ge.updated_at).getTime()}).slice(0,4).map(Sv);te=[...de,...ye]}w=te.some(yv);let J;t[13]!==b?(J=Z=>{if(Z.kind==="template-recruit"){const de={"import-deco":()=>o(!0),diagnostics:()=>l(!0),"ai-image":()=>d(!0),"ai-research":()=>h(!0),"lean-canvas":()=>m(!0),"studio-pack":()=>g(!0),"self-healing":()=>v(!0)}[Z.onClick];return r.jsx(ec,{agent:Z.agent,onSpecialClick:de,tracking:{template_id:Z.templateId,tile_kind:"template",action:"open_modal"}},Z.key)}return r.jsx(ec,{agent:Z.agent,onSpecialClick:()=>b(Z.agent.id),tracking:{template_id:Z.templateId,tile_kind:Z.templateId?"existing":"recent",action:"navigate"}},Z.key)},t[13]=b,t[14]=J):J=t[14];const ae=J;M="w-full max-md:overflow-x-auto max-md:[scrollbar-width:none] max-md:[&::-webkit-scrollbar]:hidden",k="flex flex-wrap justify-center gap-1.5 max-md:flex-nowrap max-md:justify-start md:max-h-52 md:overflow-hidden",T=te.map(ae),t[0]=s,t[1]=b,t[2]=i,t[3]=x,t[4]=e,t[5]=y,t[6]=V,t[7]=C,t[8]=S,t[9]=w,t[10]=k,t[11]=T,t[12]=M}else y=t[5],V=t[6],C=t[7],S=t[8],w=t[9],k=t[10],T=t[11],M=t[12];let I;t[15]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(vv,{}),t[15]=I):I=t[15];let E;t[16]!==w?(E=w&&r.jsx(xv,{}),t[16]=w,t[17]=E):E=t[17];let N;t[18]!==k||t[19]!==T||t[20]!==E?(N=r.jsxs("div",{className:k,children:[T,I,E]}),t[18]=k,t[19]=T,t[20]=E,t[21]=N):N=t[21];let A;t[22]!==M||t[23]!==N?(A=r.jsx("div",{className:M,children:N}),t[22]=M,t[23]=N,t[24]=A):A=t[24];let D;t[25]!==n?(D=r.jsx(fn,{open:n,onOpenChange:o}),t[25]=n,t[26]=D):D=t[26];let L;t[27]!==a||t[28]!==C?(L=r.jsx(uh,{open:a,onOpenChange:l,existingAgent:C}),t[27]=a,t[28]=C,t[29]=L):L=t[29];let R;t[30]!==c||t[31]!==y?(R=r.jsx(Jh,{open:c,onOpenChange:d,existingAgent:y}),t[30]=c,t[31]=y,t[32]=R):R=t[32];let P;t[33]!==u||t[34]!==V?(P=r.jsx(Qh,{open:u,onOpenChange:h,existingAgent:V}),t[33]=u,t[34]=V,t[35]=P):P=t[35];let O;t[36]!==S||t[37]!==f?(O=r.jsx(fh,{open:f,onOpenChange:m,existingAgent:S}),t[36]=S,t[37]=f,t[38]=O):O=t[38];let z;t[39]!==p?(z=r.jsx(mh,{open:p,onOpenChange:g}),t[39]=p,t[40]=z):z=t[40];let $;t[41]!==_?($=r.jsx(Zh,{open:_,onOpenChange:v}),t[41]=_,t[42]=$):$=t[42];let q;return t[43]!==P||t[44]!==O||t[45]!==z||t[46]!==$||t[47]!==A||t[48]!==D||t[49]!==L||t[50]!==R?(q=r.jsxs(r.Fragment,{children:[A,D,L,R,P,O,z,$]}),t[43]=P,t[44]=O,t[45]=z,t[46]=$,t[47]=A,t[48]=D,t[49]=L,t[50]=R,t[51]=q):q=t[51],q}function yv(t){return t.kind==="existing"&&t.templateId===null}function Sv(t){return{key:t.id,kind:"existing",templateId:null,agent:t}}function wv(t){return t.id!==null&&!lr(t.id)}function Vv(t){return t!==null}function Cv(t){return t!==null}function kv(t){return t.id==="self-healing-storefront"}function jv(t){return t.id==="studio-pack"}function Nv(t){return t.id==="lean-canvas"}function Av(t){return t.id==="ai-research"}function Ev(t){return t.id==="ai-image"}function Iv(t){return t.id==="site-diagnostics"}function Tv(t){return t.id==="site-editor"}function Rv(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"w-full max-md:overflow-x-auto max-md:[scrollbar-width:none] max-md:[&::-webkit-scrollbar]:hidden",children:r.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 max-md:flex-nowrap max-md:justify-start md:max-h-52 md:overflow-hidden",children:Array.from({length:7}).map(Mv)})}),t[0]=e):e=t[0],e}function Mv(t,e){return r.jsxs("div",{className:"flex flex-col items-center gap-3 p-2 w-[100px] shrink-0",children:[r.jsx(wi,{className:"size-12 rounded-xl shrink-0"}),r.jsx(wi,{className:"h-3 sm:h-4 w-full"})]},e)}function tc(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:r.jsx(Rv,{}),children:r.jsx(bv,{})}),t[0]=e):e=t[0],e}function Bi(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function sc(t){if(!t)return"—";const e=typeof t=="string"?new Date(t):t;return isNaN(e.getTime())?"—":e.toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})}function Dv(t){return t?t.replace(/-\d{8}(?:-[a-z0-9]+)*$/i,"").replace(/-/g," "):"—"}function Pv(t){const e=B.c(4),{items:s}=t;let i;e[0]!==s?(i=s.map(Lv),e[0]=s,e[1]=i):i=e[1];let n;return e[2]!==i?(n=r.jsx("div",{className:"grid grid-cols-2 gap-x-8 gap-y-6",children:i}),e[2]=i,e[3]=n):n=e[3],n}function Lv(t){return r.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[r.jsx("span",{className:"text-xs text-muted-foreground truncate",children:t.label}),r.jsx("span",{className:"text-sm text-foreground tabular-nums truncate",children:t.value})]},t.label)}function Ov(t){const e=B.c(30),{userTokens:s,assistantTokens:i,otherTokens:n}=t,o=s+i+n,a=o>0?s/o*100:0,l=o>0?i/o*100:0,c=o>0?n/o*100:0;let d;e[0]!==a?(d=a>0&&r.jsx("div",{className:"h-full bg-chart-1",style:{width:`${a}%`}}),e[0]=a,e[1]=d):d=e[1];let u;e[2]!==l?(u=l>0&&r.jsx("div",{className:"h-full bg-chart-2",style:{width:`${l}%`}}),e[2]=l,e[3]=u):u=e[3];let h;e[4]!==c?(h=c>0&&r.jsx("div",{className:"h-full bg-muted-foreground/30",style:{width:`${c}%`}}),e[4]=c,e[5]=h):h=e[5];let f;e[6]!==d||e[7]!==u||e[8]!==h?(f=r.jsxs("div",{className:"flex h-2 w-full overflow-hidden rounded-full bg-muted",children:[d,u,h]}),e[6]=d,e[7]=u,e[8]=h,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-1 shrink-0"}),e[10]=m):m=e[10];let p;e[11]!==a?(p=a.toFixed(1),e[11]=a,e[12]=p):p=e[12];let g;e[13]!==p?(g=r.jsxs("div",{className:"flex items-center gap-1.5",children:[m,r.jsxs("span",{className:"text-xs text-muted-foreground",children:["User ",p,"%"]})]}),e[13]=p,e[14]=g):g=e[14];let _;e[15]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-2 shrink-0"}),e[15]=_):_=e[15];let v;e[16]!==l?(v=l.toFixed(1),e[16]=l,e[17]=v):v=e[17];let x;e[18]!==v?(x=r.jsxs("div",{className:"flex items-center gap-1.5",children:[_,r.jsxs("span",{className:"text-xs text-muted-foreground",children:["Assistant ",v,"%"]})]}),e[18]=v,e[19]=x):x=e[19];let b;e[20]!==c||e[21]!==n?(b=n>0&&r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-muted-foreground/30 shrink-0"}),r.jsxs("span",{className:"text-xs text-muted-foreground",children:["Other ",c.toFixed(1),"%"]})]}),e[20]=c,e[21]=n,e[22]=b):b=e[22];let y;e[23]!==x||e[24]!==b||e[25]!==g?(y=r.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[g,x,b]}),e[23]=x,e[24]=b,e[25]=g,e[26]=y):y=e[26];let V;return e[27]!==y||e[28]!==f?(V=r.jsxs("div",{className:"flex flex-col gap-2",children:[f,y]}),e[27]=y,e[28]=f,e[29]=V):V=e[29],V}function Bv(t){const e=B.c(19),{part:s}=t,i=s.input?.agent_id,n=$t(i),o=n?.title??"Subtask",a=n?.icon??null,l=s.state==="input-streaming"||s.state==="input-available"||s.state==="output-available"&&s.preliminary===!0,c=s.state==="output-error",d=s.state==="approval-requested";let u;e[0]!==a||e[1]!==o?(u=r.jsx(ps,{icon:a,name:o,size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=a,e[1]=o,e[2]=u):u=e[2];const h=c?"text-destructive":"text-foreground";let f;e[3]!==h?(f=Y("shrink-0 font-medium",h),e[3]=h,e[4]=f):f=e[4];let m;e[5]!==o||e[6]!==f?(m=r.jsx("span",{className:f,children:o}),e[5]=o,e[6]=f,e[7]=m):m=e[7];let p;e[8]!==s.input?(p=s.input?.prompt&&r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"text-muted-foreground/50",children:"·"}),r.jsx("span",{className:"truncate text-muted-foreground",children:s.input.prompt})]}),e[8]=s.input,e[9]=p):p=e[9];let g;e[10]!==d||e[11]!==c||e[12]!==l?(g=r.jsx("span",{className:"ml-auto shrink-0",children:l?r.jsx(Ne,{size:12,className:"animate-spin text-muted-foreground"}):c?r.jsx(vp,{size:12,className:"text-destructive"}):d?r.jsx(Bs,{size:12,className:"text-warning"}):r.jsx(Kp,{size:12,className:"text-emerald-500"})}),e[10]=d,e[11]=c,e[12]=l,e[13]=g):g=e[13];let _;return e[14]!==u||e[15]!==m||e[16]!==p||e[17]!==g?(_=r.jsxs("div",{className:"flex items-center gap-2 text-xs min-w-0",children:[u,m,p,g]}),e[14]=u,e[15]=m,e[16]=p,e[17]=g,e[18]=_):_=e[18],_}function $v(t){const e=B.c(58),{onClose:s,back:i,className:n}=t,[o,a]=j.useState(null),{messages:l}=Ii(),{tasks:c,taskId:d}=Lt(),{selectedModel:u,selectedVirtualMcp:h}=$s();let f,m,p,g,_,v,x,b;if(e[0]!==i||e[1]!==n||e[2]!==l||e[3]!==s||e[4]!==o?.id||e[5]!==u||e[6]!==h?.title||e[7]!==d||e[8]!==c){b=Symbol.for("react.early_return_sentinel");e:{let C;e[17]!==d?(C=J=>J.id===d,e[17]=d,e[18]=C):C=e[18];const S=c.find(C),w=Nd(l),k=[...l].reverse().find(Yv),T=k?.metadata?.usage,M=k?.metadata?.modelLimits?.contextWindow??u?.limits?.contextWindow??null,I=T?.contextTokens??T?.totalTokens??0,E=M&&M>0?(I/M*100).toFixed(1):null,N=l;let A;e[19]!==N?(A=N.filter(Gv).reduce(qv,0),e[19]=N,e[20]=A):A=e[20];const D=A,L=l;let R;e[21]!==L?(R=L.filter(Kv).reduce(Wv,0),e[21]=L,e[22]=R):R=e[22];const P=R,O=Math.max(0,w.totalTokens-D-P),z=l[0],$=l.at(-1),q=z?.metadata?.created_at??S?.created_at,F=$?.metadata?.created_at??S?.updated_at,W=l.filter(Hv),H=l.flatMap(Fv),U=u?.modelId?Dv(u.modelId):"—",X=h?.title??"Decopilot",K=[{label:"Session",value:S?.title??"New chat"},{label:"Messages",value:W.length},{label:"Agent",value:X},{label:"Model",value:U},{label:"Context Limit",value:M?Bi(M):"—"},{label:"Session Tokens (billed)",value:w.totalTokens>0?Bi(w.totalTokens):"0"},{label:"Usage",value:E!==null?`${E}%`:"—"},{label:"Input Tokens",value:w.inputTokens>0?Bi(w.inputTokens):"0"},{label:"Output Tokens",value:w.outputTokens>0?Bi(w.outputTokens):"0"},{label:"Reasoning Tokens",value:w.reasoningTokens>0?Bi(w.reasoningTokens):"0"},{label:"Cost",value:w.cost>0?`$${w.cost<.001?w.cost.toFixed(6):w.cost.toFixed(4)}`:"$0.00"},{label:"Session Created",value:sc(q)},{label:"Last Activity",value:sc(F)}];if(!S&&W.length===0){let J;e[23]!==n?(J=Y("flex flex-col h-full w-full border-l border-border bg-background",n),e[23]=n,e[24]=J):J=e[24];let ae;e[25]===Symbol.for("react.memo_cache_sentinel")?(ae=r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[25]=ae):ae=e[25];let Z;e[26]!==i?(Z=i?r.jsx(Eo,{size:14,className:"text-muted-foreground"}):r.jsx(Os,{size:14,className:"text-muted-foreground"}),e[26]=i,e[27]=Z):Z=e[27];let de;e[28]!==s||e[29]!==Z?(de=r.jsxs("div",{className:"h-11 px-4 flex items-center justify-between shrink-0 border-b border-border/50",children:[ae,r.jsx("button",{type:"button",onClick:s,className:"flex size-6 items-center justify-center rounded hover:bg-accent transition-colors",children:Z})]}),e[28]=s,e[29]=Z,e[30]=de):de=e[30];let fe;e[31]===Symbol.for("react.memo_cache_sentinel")?(fe=r.jsx("div",{className:"flex-1 flex items-center justify-center px-4 text-center",children:r.jsx("p",{className:"text-xs text-muted-foreground",children:"Start a conversation to see context"})}),e[31]=fe):fe=e[31];let ye;e[32]!==J||e[33]!==de?(ye=r.jsxs("div",{className:J,children:[de,fe]}),e[32]=J,e[33]=de,e[34]=ye):ye=e[34],b=ye;break e}e[35]!==n?(v=Y("flex flex-col h-full w-full border-l border-border bg-background overflow-y-auto",n),e[35]=n,e[36]=v):v=e[36];let G;e[37]===Symbol.for("react.memo_cache_sentinel")?(G=r.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[37]=G):G=e[37];let ie;e[38]!==i?(ie=i?r.jsx(Eo,{size:14}):r.jsx(Os,{size:14}),e[38]=i,e[39]=ie):ie=e[39],e[40]!==s||e[41]!==ie?(x=r.jsxs("div",{className:"flex h-11 shrink-0 items-center justify-between border-b border-border/50 px-4",children:[G,r.jsx("button",{type:"button",onClick:s,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:ie})]}),e[40]=s,e[41]=ie,e[42]=x):x=e[42],f="flex flex-col gap-8 p-6",m=H.length>0&&r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"Subtasks"}),r.jsx("div",{className:"flex flex-col gap-1",children:H.map(zv)})]}),p=r.jsx(Pv,{items:K});let te;e[43]===Symbol.for("react.memo_cache_sentinel")?(te=r.jsx("span",{className:"text-xs text-muted-foreground",children:"Context Breakdown"}),e[43]=te):te=e[43],e[44]!==P||e[45]!==O||e[46]!==D?(g=r.jsxs("div",{className:"flex flex-col gap-3",children:[te,r.jsx(Ov,{userTokens:D,assistantTokens:P,otherTokens:O})]}),e[44]=P,e[45]=O,e[46]=D,e[47]=g):g=e[47],_=W.length>0&&r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"Raw messages"}),r.jsx("div",{className:"flex flex-col gap-1",children:W.map(J=>{const ae=J.metadata?.created_at,Z=o?.id===J.id;return r.jsxs("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[r.jsxs("button",{type:"button",onClick:()=>a(Z?null:J),className:"flex items-center justify-between gap-2 px-3 py-2 text-xs hover:bg-accent/50 w-full text-left cursor-pointer",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[r.jsx("span",{className:Y("shrink-0 font-medium",J.role==="user"?"text-chart-1":"text-chart-2"),children:J.role}),r.jsx("span",{className:"text-muted-foreground",children:"•"}),r.jsx("span",{className:"truncate text-muted-foreground font-mono",children:J.id})]}),ae&&r.jsx("span",{className:"shrink-0 text-muted-foreground tabular-nums",children:new Date(ae).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})})]}),Z&&r.jsx("pre",{className:"text-xs font-mono bg-muted px-3 py-2 overflow-auto whitespace-pre-wrap break-all border-t border-border/50 max-h-64",children:JSON.stringify(J,null,2)})]},J.id)})})]})}e[0]=i,e[1]=n,e[2]=l,e[3]=s,e[4]=o?.id,e[5]=u,e[6]=h?.title,e[7]=d,e[8]=c,e[9]=f,e[10]=m,e[11]=p,e[12]=g,e[13]=_,e[14]=v,e[15]=x,e[16]=b}else f=e[9],m=e[10],p=e[11],g=e[12],_=e[13],v=e[14],x=e[15],b=e[16];if(b!==Symbol.for("react.early_return_sentinel"))return b;let y;e[48]!==f||e[49]!==m||e[50]!==p||e[51]!==g||e[52]!==_?(y=r.jsxs("div",{className:f,children:[m,p,g,_]}),e[48]=f,e[49]=m,e[50]=p,e[51]=g,e[52]=_,e[53]=y):y=e[53];let V;return e[54]!==v||e[55]!==x||e[56]!==y?(V=r.jsxs("div",{className:v,children:[x,y]}),e[54]=v,e[55]=x,e[56]=y,e[57]=V):V=e[57],V}function zv(t,e){return r.jsx(Bv,{part:t},e)}function Fv(t){return(t.parts??[]).filter(Uv)}function Uv(t){return t.type==="tool-subtask"}function Hv(t){return t.role!=="system"}function Wv(t,e){const s=e.metadata?.usage;return t+(s?.outputTokens??0)}function Kv(t){return t.role==="assistant"}function qv(t,e){const s=e.metadata?.usage;return t+(s?.inputTokens??0)}function Gv(t){return t.role==="user"}function Yv(t){return t.role==="assistant"&&t.metadata?.usage}const ic=["amber","bold","bright","calm","crimson","coral","daring","deep","dusty","eager","faint","fierce","frozen","gentle","golden","grand","green","hollow","iron","ivory","keen","lasting","lunar","mellow","misty","noble","olive","pale","prime","quiet","rapid","rustic","serene","sharp","silver","sleek","solar","stark","still","swift","tawny","tender","thin","true","vast","velvet","warm","wild","young","zen"],rc=["anchor","birch","brook","cedar","cliff","cove","crane","dune","echo","ember","falcon","fern","flint","forge","frost","glade","grove","harbor","hawk","iris","jade","lark","maple","marsh","mesa","opal","orbit","peak","pine","plume","quartz","rapids","reef","ridge","river","sage","shore","slate","spruce","stone","summit","thorn","tide","trail","vale","wren","aspen","delta","crest","spark"];function Xv(){const t=ic[Math.floor(Math.random()*ic.length)],e=rc[Math.floor(Math.random()*rc.length)];return`deco/${t}-${e}`}function Jv(t){const e=t;if(e.structuredContent)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(s)try{return JSON.parse(s)}catch{return[]}return[]}function Qv(t){const e=B.c(25),{orgId:s,userId:i,connectionId:n,vmMap:o,owner:a,repo:l,enabled:c}=t,d=c===void 0?!0:c,u=n??null;let h;e[0]!==s||e[1]!==u?(h={connectionId:u,orgId:s},e[0]=s,e[1]=u,e[2]=h):h=e[2];const f=Ae(h);let m;e[3]!==a||e[4]!==l?(m={owner:a,repo:l},e[3]=a,e[4]=l,e[5]=m):m=e[5];const p=d&&!!n&&!!a&&!!l;let g;e[6]!==f||e[7]!==m||e[8]!==p?(g={client:f,toolName:"list_branches",toolArguments:m,enabled:p,staleTime:3e4,select:sb},e[6]=f,e[7]=m,e[8]=p,e[9]=g):g=e[9];const{data:_,isLoading:v,isError:x}=ni(g);let b,y;e[10]!==i||e[11]!==o?(y=new Set(Object.keys(o?.[i]??{})),b=[...y].sort().map(tb),e[10]=i,e[11]=o,e[12]=b,e[13]=y):(b=e[12],y=e[13]);const V=b;let C;if(e[14]!==_||e[15]!==y){const T=Array.isArray(_)?_:_?.branches??[];let M;e[17]!==y?(M=I=>!y.has(I.name),e[17]=y,e[18]=M):M=e[18],C=T.filter(eb).filter(M).map(Zv),e[14]=_,e[15]=y,e[16]=C}else C=e[16];const S=C,w=Array.isArray(_)?null:_?.default_branch??null;let k;return e[19]!==w||e[20]!==x||e[21]!==v||e[22]!==S||e[23]!==V?(k={yours:V,others:S,defaultBase:w,isLoading:v,isError:x},e[19]=w,e[20]=x,e[21]=v,e[22]=S,e[23]=V,e[24]=k):k=e[24],k}function Zv(t){return{name:t.name,source:"other",author:typeof t.commit?.author=="string"?t.commit.author:t.commit?.author?.login??null}}function eb(t){return typeof t.name=="string"}function tb(t){return{name:t,source:"yours"}}function sb(t){return Jv(t)}function ib(t){const e=B.c(41),{orgId:s,userId:i,connectionId:n,owner:o,repo:a,vmMap:l,value:c,onChange:d}=t,[u,h]=j.useState(!1);let f;e[0]!==n||e[1]!==u||e[2]!==s||e[3]!==o||e[4]!==a||e[5]!==i||e[6]!==l?(f={orgId:s,userId:i,connectionId:n,vmMap:l,owner:o,repo:a,enabled:u},e[0]=n,e[1]=u,e[2]=s,e[3]=o,e[4]=a,e[5]=i,e[6]=l,e[7]=f):f=e[7];const{yours:m,others:p,isLoading:g,isError:_}=Qv(f);let v;e[8]!==d?(v=A=>{d(A),h(!1)},e[8]=d,e[9]=v):v=e[9];const x=v,b=c??"Select branch…";let y;e[10]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(er,{className:"h-3.5 w-3.5"}),e[10]=y):y=e[10];let V;e[11]!==b?(V=r.jsx(zs,{asChild:!0,children:r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 font-mono text-xs",children:[y,r.jsx("span",{className:"max-w-[200px] truncate",children:b})]})}),e[11]=b,e[12]=V):V=e[12];let C;e[13]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(Yp,{placeholder:"Search branches…"}),e[13]=C):C=e[13];let S;e[14]!==x?(S=r.jsxs("div",{className:"flex items-center border-b pr-2 [&>[data-slot=command-input-wrapper]]:flex-1 [&>[data-slot=command-input-wrapper]]:border-b-0",children:[C,r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 shrink-0",onClick:()=>x(Xv()),children:"New"})]}),e[14]=x,e[15]=S):S=e[15];let w;e[16]!==_?(w=_&&r.jsx("div",{className:"p-3 text-xs text-muted-foreground",children:"Couldn't load branches from GitHub. You can still pick from your branches."}),e[16]=_,e[17]=w):w=e[17];let k;e[18]!==_||e[19]!==g||e[20]!==p.length||e[21]!==m.length?(k=!_&&!g&&m.length===0&&p.length===0&&r.jsx(qp,{children:"No branches found."}),e[18]=_,e[19]=g,e[20]=p.length,e[21]=m.length,e[22]=k):k=e[22];let T;e[23]!==x||e[24]!==m?(T=m.length>0&&r.jsx(Al,{heading:"Your branches",children:m.map(A=>r.jsxs(El,{value:A.name,onSelect:()=>x(A.name),children:[r.jsx(er,{className:"mr-2 h-4 w-4"}),r.jsx("span",{className:"flex-1 truncate",children:A.name})]},A.name))}),e[23]=x,e[24]=m,e[25]=T):T=e[25];let M;e[26]!==p||e[27]!==x?(M=p.length>0&&r.jsxs(r.Fragment,{children:[r.jsx(Gp,{}),r.jsx(Al,{heading:"Other branches in repo",children:p.map(A=>r.jsxs(El,{value:A.name,onSelect:()=>x(A.name),children:[r.jsx(er,{className:"mr-2 h-4 w-4"}),r.jsx("span",{className:"flex-1 truncate",children:A.name}),A.author&&r.jsxs("span",{className:"text-xs text-muted-foreground",children:["@",A.author]})]},A.name))})]}),e[26]=p,e[27]=x,e[28]=M):M=e[28];let I;e[29]!==M||e[30]!==w||e[31]!==k||e[32]!==T?(I=r.jsxs(Xp,{children:[w,k,T,M]}),e[29]=M,e[30]=w,e[31]=k,e[32]=T,e[33]=I):I=e[33];let E;e[34]!==I||e[35]!==S?(E=r.jsx(Fs,{className:"w-[min(420px,calc(100vw-2rem))] p-0",align:"start",children:r.jsxs(Jp,{children:[S,I]})}),e[34]=I,e[35]=S,e[36]=E):E=e[36];let N;return e[37]!==u||e[38]!==E||e[39]!==V?(N=r.jsxs(Us,{open:u,onOpenChange:h,children:[V,E]}),e[37]=u,e[38]=E,e[39]=V,e[40]=N):N=e[40],N}const rb=["radial-gradient(ellipse 25% 220% at -5% 120%, rgba(165,149,255,0.35) 0%, transparent 100%)","radial-gradient(ellipse 25% 220% at 105% -20%, rgba(208,236,26,0.32) 0%, transparent 100%)"].join(", "),nb="/decotexture.svg";function nc(t){const e=B.c(7),{onClick:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={backgroundImage:rb},e[0]=i):i=e[0];let n,o;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"relative shrink-0 p-1.5 bg-[var(--brand-green-light)] rounded-lg border border-border",children:r.jsx(ps,{icon:"/logos/deco%20logo.svg",name:"deco.cx",size:"xs",className:"border-0 rounded-none bg-transparent"})}),o=r.jsx("p",{className:"flex-1 relative text-sm font-medium text-foreground leading-none whitespace-nowrap",children:"Import your deco.cx site"}),e[1]=n,e[2]=o):(n=e[1],o=e[2]);let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("img",{src:nb,alt:"","aria-hidden":!0,className:"absolute pointer-events-none",style:{width:"274.5px",height:"272.25px",left:"calc(50% + 145.5px)",top:"calc(50% + 40px)",transform:"translate(-50%, -50%)"}}),e[3]=a):a=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("div",{className:"relative bg-background flex items-center justify-center size-8 rounded-md shrink-0",children:r.jsx(In,{size:16,className:"text-foreground transition-transform group-hover:translate-x-0.5"})}),e[4]=l):l=e[4];let c;return e[5]!==s?(c=r.jsxs("button",{type:"button",onClick:s,className:"w-full relative flex items-center gap-4 px-4 py-4 rounded-lg border border-border bg-background overflow-hidden transition-colors text-left cursor-pointer group",style:i,children:[n,o,a,l]}),e[5]=s,e[6]=c):c=e[6],c}function ob(){const t=B.c(5),{data:e}=dt.useSession();let s;t[0]!==e?.user?.email?(s=Ze.decoProfile(e?.user?.email),t[0]=e?.user?.email,t[1]=s):s=t[1];const i=!!e?.user?.email;let n;t[2]!==s||t[3]!==i?(n={queryKey:s,queryFn:ab,enabled:i,staleTime:3e5},t[2]=s,t[3]=i,t[4]=n):n=t[4];const{data:o}=ji(n);return o?.isDecoUser??!1}async function ab(){const t=await fetch("/api/deco-sites/profile");return t.ok?t.json():{isDecoUser:!1}}function lb(t){const e=B.c(56),{onOpenContextPanel:s}=t,{data:i}=dt.useSession(),[n,o]=j.useState(!1),a=ob(),l=ms(),{hasDecoKey:c,isZeroBalance:d,isInitialFreeCredit:u,balanceDollars:h,hasOnlyDecoProvider:f}=Pn();let m;e[0]!==i?.user?.name?(m=i?.user?.name?.split(" ")[0]||"there",e[0]=i?.user?.name,e[1]=m):m=e[1];const p=m,g=c&&u&&h!=null,_=c&&d&&f;if(l){let E;e[2]!==h||e[3]!==g?(E=g&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.CreditsEyebrow,{balanceDollars:h})}),e[2]=h,e[3]=g,e[4]=E):E=e[4];let N;e[5]!==_?(N=_&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.NoCreditsEyebrow,{})}),e[5]=_,e[6]=N):N=e[6];let A;e[7]!==p?(A=r.jsxs("p",{className:"text-3xl font-medium text-foreground text-center max-w-[280px]",children:["What's on your mind, ",p,"?"]}),e[7]=p,e[8]=A):A=e[8];let D;e[9]!==E||e[10]!==N||e[11]!==A?(D=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center w-full",children:[E,N,A]}),e[9]=E,e[10]=N,e[11]=A,e[12]=D):D=e[12];let L;e[13]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(tc,{}),e[13]=L):L=e[13];let R;e[14]!==s?(R=r.jsxs("div",{className:"w-full flex flex-col gap-4 pb-4",children:[L,r.jsx(Ee.Input,{onOpenContextPanel:s,showConnectionsBanner:!0})]}),e[14]=s,e[15]=R):R=e[15];let P;e[16]!==a?(P=a&&r.jsx("div",{className:"w-full",children:r.jsx(nc,{onClick:()=>o(!0)})}),e[16]=a,e[17]=P):P=e[17];let O;e[18]!==D||e[19]!==R||e[20]!==P?(O=r.jsxs("div",{className:"flex-1 relative flex flex-col items-center px-4",children:[D,R,P]}),e[18]=D,e[19]=R,e[20]=P,e[21]=O):O=e[21];let z;e[22]!==n?(z=r.jsx(fn,{open:n,onOpenChange:o}),e[22]=n,e[23]=z):z=e[23];let $;return e[24]!==z||e[25]!==O?($=r.jsxs(r.Fragment,{children:[O,z]}),e[24]=z,e[25]=O,e[26]=$):$=e[26],$}let v;e[27]!==h||e[28]!==g?(v=g&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.CreditsEyebrow,{balanceDollars:h})}),e[27]=h,e[28]=g,e[29]=v):v=e[29];let x;e[30]!==_?(x=_&&r.jsx("div",{className:"mb-4",children:r.jsx(Ee.NoCreditsEyebrow,{})}),e[30]=_,e[31]=x):x=e[31];let b;e[32]!==p?(b=r.jsxs("p",{className:"text-3xl font-medium text-foreground",children:["What's on your mind, ",p,"?"]}),e[32]=p,e[33]=b):b=e[33];let y;e[34]!==v||e[35]!==x||e[36]!==b?(y=r.jsxs("div",{className:"text-center mb-10",children:[v,x,b]}),e[34]=v,e[35]=x,e[36]=b,e[37]=y):y=e[37];let V;e[38]!==s?(V=r.jsx("div",{className:"w-full",children:r.jsx(Ee.Input,{onOpenContextPanel:s,showConnectionsBanner:!0})}),e[38]=s,e[39]=V):V=e[39];let C;e[40]!==y||e[41]!==V?(C=r.jsxs("div",{className:"flex flex-col items-center w-full max-w-[672px]",children:[y,V]}),e[40]=y,e[41]=V,e[42]=C):C=e[42];let S;e[43]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx("div",{className:"w-full mt-10 mx-auto",children:r.jsx(tc,{})}),e[43]=S):S=e[43];let w;e[44]!==C?(w=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center w-full",children:[C,S]}),e[44]=C,e[45]=w):w=e[45];let k;e[46]!==a?(k=a&&r.jsx("div",{className:"absolute bottom-6 left-0 right-0 px-10",children:r.jsx("div",{className:"w-full max-w-[500px] mx-auto",children:r.jsx(nc,{onClick:()=>o(!0)})})}),e[46]=a,e[47]=k):k=e[47];let T;e[48]!==k||e[49]!==w?(T=r.jsxs("div",{className:"flex-1 relative flex flex-col items-center px-10",children:[w,k]}),e[48]=k,e[49]=w,e[50]=T):T=e[50];let M;e[51]!==n?(M=r.jsx(fn,{open:n,onOpenChange:o}),e[51]=n,e[52]=M):M=e[52];let I;return e[53]!==T||e[54]!==M?(I=r.jsxs(r.Fragment,{children:[T,M]}),e[53]=T,e[54]=M,e[55]=I):I=e[55],I}function cb(){const t=B.c(26),{org:e}=xe(),{selectedVirtualMcp:s}=$s(),{data:i}=dt.useSession(),{currentBranch:n,setCurrentTaskBranch:o}=Lt();let a;t[0]!==e.id?(a=En(e.id),t[0]=e.id,t[1]=a):a=t[1];const c=s??a,d=$t(c.id),u=i?.user?.id??"",h=d?.metadata?.githubRepo??null,f=!!h?.connectionId&&!!u;let m;t[2]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx(Dn,{size:32}),t[2]=m):m=t[2];let p;t[3]!==c.icon||t[4]!==c.title?(p=r.jsx(ps,{icon:c.icon,name:c.title,size:"lg",fallbackIcon:m,className:"size-10 min-w-10 md:size-[60px]! md:min-w-[60px] rounded-xl md:rounded-[18px]!"}),t[3]=c.icon,t[4]=c.title,t[5]=p):p=t[5];let g;t[6]!==c.title?(g=r.jsx("h3",{className:"text-base md:text-xl font-medium text-foreground",children:c.title}),t[6]=c.title,t[7]=g):g=t[7];const _=c.description??"Ask anything about configuring model providers or using MCP Mesh.";let v;t[8]!==_?(v=r.jsx("div",{className:"text-muted-foreground text-center text-base max-w-md line-clamp-2",children:_}),t[8]=_,t[9]=v):v=t[9];let x;t[10]!==n||t[11]!==d?.metadata?.vmMap||t[12]!==h||t[13]!==e.id||t[14]!==o||t[15]!==f||t[16]!==u?(x=f&&r.jsx("div",{className:"mt-2",children:r.jsx(ib,{orgId:e.id,userId:u,connectionId:h.connectionId,owner:h.owner,repo:h.name,vmMap:d?.metadata?.vmMap,value:n??void 0,onChange:o})}),t[10]=n,t[11]=d?.metadata?.vmMap,t[12]=h,t[13]=e.id,t[14]=o,t[15]=f,t[16]=u,t[17]=x):x=t[17];let b;t[18]!==p||t[19]!==g||t[20]!==v||t[21]!==x?(b=r.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 md:gap-4 text-center",children:[p,g,v,x]}),t[18]=p,t[19]=g,t[20]=v,t[21]=x,t[22]=b):b=t[22];let y;t[23]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx("div",{className:"w-full max-w-3xl mx-auto",children:r.jsx(Ee.IceBreakers,{})}),t[23]=y):y=t[23];let V;return t[24]!==b?(V=r.jsxs("div",{className:"h-full w-full flex flex-col items-center justify-center gap-6 px-4",children:[b,y]}),t[24]=b,t[25]=V):V=t[25],V}function db(t){const e=B.c(27),{variant:s}=t,{org:i}=xe(),n=La(),{isChatEmpty:o}=Ii(),[a,l]=j.useState("chat"),c=Pn();if(n.length===0){let V;return e[0]===Symbol.for("react.memo_cache_sentinel")?(V=r.jsx(Ee,{className:"animate-in fade-in-0 duration-200",children:r.jsx(Ee.Main,{className:"flex flex-col items-center",children:r.jsx(Ee.EmptyState,{children:r.jsx(Ee.NoAiProviderEmptyState,{})})})}),e[0]=V):V=e[0],V}let d;e[1]!==c.hasDecoKey||e[2]!==c.hasOnlyDecoProvider||e[3]!==c.isLoading||e[4]!==c.isZeroBalance||e[5]!==o||e[6]!==i?(d=c.hasDecoKey&&c.isZeroBalance&&c.hasOnlyDecoProvider&&!c.isLoading&&o&&!T1(i.id),e[1]=c.hasDecoKey,e[2]=c.hasOnlyDecoProvider,e[3]=c.isLoading,e[4]=c.isZeroBalance,e[5]=o,e[6]=i,e[7]=d):d=e[7];const u=d;let h;e[8]!==u?(h=u&&r.jsx(Ee.CreditsEmptyState,{}),e[8]=u,e[9]=h):h=e[9];const f=a!=="chat"?"opacity-0 pointer-events-none":"opacity-100";let m;e[10]!==f?(m=Y("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",f),e[10]=f,e[11]=m):m=e[11];let p;e[12]!==o||e[13]!==s?(p=o?s==="home"?r.jsx(lb,{onOpenContextPanel:()=>l("context")}):r.jsxs(r.Fragment,{children:[r.jsx(Ee.Main,{children:r.jsx(cb,{})}),r.jsx(Ee.Footer,{children:r.jsx(Ee.Input,{onOpenContextPanel:()=>l("context")})})]}):r.jsxs(r.Fragment,{children:[r.jsx(Ee.Main,{children:r.jsx(Ee.Messages,{})}),r.jsx(Ee.Footer,{children:r.jsx(Ee.Input,{onOpenContextPanel:()=>l("context")})})]}),e[12]=o,e[13]=s,e[14]=p):p=e[14];let g;e[15]!==m||e[16]!==p?(g=r.jsx("div",{className:m,children:p}),e[15]=m,e[16]=p,e[17]=g):g=e[17];const _=a==="context"?"opacity-100":"opacity-0 pointer-events-none";let v;e[18]!==_?(v=Y("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",_),e[18]=_,e[19]=v):v=e[19];let x;e[20]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx($v,{back:!0,onClose:()=>l("chat")}),e[20]=x):x=e[20];let b;e[21]!==v?(b=r.jsx("div",{className:v,children:x}),e[21]=v,e[22]=b):b=e[22];let y;return e[23]!==b||e[24]!==h||e[25]!==g?(y=r.jsxs(Ee,{className:"relative overflow-hidden animate-in fade-in-0 duration-200",children:[h,g,b]}),e[23]=b,e[24]=h,e[25]=g,e[26]=y):y=e[26],y}function eu(t){const e=B.c(4),{variant:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Ee.Skeleton,{}),e[0]=i):i=e[0];let n;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(Ee.Skeleton,{}),e[1]=n):n=e[1];let o;return e[2]!==s?(o=r.jsx(ls,{fallback:i,children:r.jsx(j.Suspense,{fallback:n,children:r.jsx(db,{variant:s})})}),e[2]=s,e[3]=o):o=e[3],o}function hb(){const t=B.c(6),{org:e,locator:s}=xe(),i=bt();let n;t[0]!==s||t[1]!==i?(n=()=>{i.invalidateQueries({queryKey:Ze.tasksPrefix(s)})},t[0]=s,t[1]=i,t[2]=n):n=t[2];let o;t[3]!==e.id||t[4]!==n?(o={orgId:e.id,onTaskStatus:n},t[3]=e.id,t[4]=n,t[5]=o):o=t[5],Zp(o)}function ub(t){const e=B.c(8),{virtualMcpId:s,size:i,showAutomationBadge:n}=t,o=i===void 0?"sm":i;let a;e[0]!==o||e[1]!==s?(a=s?r.jsx(fb,{virtualMcpId:s,size:o}):r.jsx(Qt,{icon:null,name:"?",size:o}),e[0]=o,e[1]=s,e[2]=a):a=e[2];let l;e[3]!==n?(l=n&&r.jsx("span",{"aria-label":"Automation-triggered",className:"absolute -bottom-0.5 -right-0.5 flex size-4 items-center justify-center rounded-full bg-blue-500 border border-blue-600 text-white",children:r.jsx(Ci,{size:10,className:"text-white"})}),e[3]=n,e[4]=l):l=e[4];let c;return e[5]!==a||e[6]!==l?(c=r.jsxs("div",{className:"relative shrink-0",children:[a,l]}),e[5]=a,e[6]=l,e[7]=c):c=e[7],c}function fb(t){const e=B.c(6),{virtualMcpId:s,size:i}=t,n=$t(s);if(!n){let l;return e[0]!==i?(l=r.jsx(Qt,{icon:null,name:"?",size:i}),e[0]=i,e[1]=l):l=e[1],l}const o=n.icon??null;let a;return e[2]!==n.title||e[3]!==i||e[4]!==o?(a=r.jsx(Qt,{icon:o,name:n.title,size:i}),e[2]=n.title,e[3]=i,e[4]=o,e[5]=a):a=e[5],a}function bs(t){const e=t?.metadata?.githubRepo;return e?.connectionId&&t?.connections?.some(i=>i.connection_id===e.connectionId)?e:null}function mb(t){const e=B.c(42),{task:s,isActive:i,onClick:n,onArchive:o,showAutomationBadge:a}=t,l=Vm(s.status),c=l.icon,d=$t(s.virtual_mcp_id);let u;e[0]!==d?(u=bs(d),e[0]=d,e[1]=u):u=e[1];const h=u,f="button",m=0;let p;e[2]!==n?(p=O=>{O.target===O.currentTarget&&(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),n())},e[2]=n,e[3]=p):p=e[3];const g=i?"bg-accent":"hover:bg-accent/60";let _;e[4]!==g?(_=Y("group/row flex items-center gap-3 px-2 py-1.5 rounded-md cursor-pointer transition-colors",g),e[4]=g,e[5]=_):_=e[5];let v;e[6]!==a||e[7]!==s.virtual_mcp_id?(v=r.jsx(ub,{virtualMcpId:s.virtual_mcp_id,size:"xs",showAutomationBadge:a}),e[6]=a,e[7]=s.virtual_mcp_id,e[8]=v):v=e[8];const x=s.title||"Untitled task";let b;e[9]!==x?(b=r.jsx("div",{className:"text-sm text-foreground truncate",children:x}),e[9]=x,e[10]=b):b=e[10];let y;e[11]!==h||e[12]!==s.branch||e[13]!==s.updated_at?(y=s.updated_at&&r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground min-w-0",children:[s.branch?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"truncate font-mono",children:s.branch}),r.jsx("span",{className:"shrink-0",children:"·"})]}):h?r.jsxs(r.Fragment,{children:[r.jsxs("span",{className:"truncate",children:[h.owner,"/",h.name]}),r.jsx("span",{className:"shrink-0",children:"·"})]}):null,r.jsx("span",{className:"shrink-0",children:Cm(new Date(s.updated_at))})]}),e[11]=h,e[12]=s.branch,e[13]=s.updated_at,e[14]=y):y=e[14];let V;e[15]!==y||e[16]!==b?(V=r.jsxs("div",{className:"flex-1 min-w-0",children:[b,y]}),e[15]=y,e[16]=b,e[17]=V):V=e[17];const C="shrink-0 grid [grid-template-areas:'slot'] items-center justify-items-center",S="[grid-area:slot] flex size-7 items-center justify-center group-hover/row:invisible",w=l.label,k=14,T=Y(l.iconClassName,s.status==="in_progress"&&"animate-spin");let M;e[18]!==c||e[19]!==T?(M=r.jsx(c,{size:k,className:T}),e[18]=c,e[19]=T,e[20]=M):M=e[20];let I;e[21]!==l||e[22]!==M?(I=r.jsx("span",{className:S,"aria-label":w,children:M}),e[21]=l,e[22]=M,e[23]=I):I=e[23];let E;e[24]!==o?(E=O=>{O.stopPropagation(),o()},e[24]=o,e[25]=E):E=e[25];let N;e[26]===Symbol.for("react.memo_cache_sentinel")?(N=r.jsx(Zm,{size:14}),e[26]=N):N=e[26];let A;e[27]!==E?(A=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Archive task",onClick:E,className:"[grid-area:slot] invisible group-hover/row:visible flex size-7 items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-muted",children:N})}),e[27]=E,e[28]=A):A=e[28];let D;e[29]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(Ge,{side:"right",children:"Archive"}),e[29]=D):D=e[29];let L;e[30]!==A?(L=r.jsxs(Ye,{children:[A,D]}),e[30]=A,e[31]=L):L=e[31];let R;e[32]!==I||e[33]!==L?(R=r.jsxs("div",{className:C,children:[I,L]}),e[32]=I,e[33]=L,e[34]=R):R=e[34];let P;return e[35]!==n||e[36]!==V||e[37]!==R||e[38]!==p||e[39]!==_||e[40]!==v?(P=r.jsxs("div",{role:f,tabIndex:m,onClick:n,onKeyDown:p,className:_,children:[v,V,R]}),e[35]=n,e[36]=V,e[37]=R,e[38]=p,e[39]=_,e[40]=v,e[41]=P):P=e[41],P}const tu={all:"All tasks",manual:"Chats",automation:"Automation"},su={all:"All members",mine:"Mine only"};function pb(t){const e=B.c(57),{title:s,tasks:i,activeTaskId:n,onSelect:o,onArchive:a,onNew:l,showNewButton:c,showAutomationBadge:d,emptyLabel:u,currentUserId:h}=t,[f,m]=j.useState("all"),[p,g]=j.useState("mine");let _;e[0]!==h||e[1]!==p||e[2]!==i?(_=p==="mine"&&h?i.filter(W=>W.created_by===h):i,e[0]=h,e[1]=p,e[2]=i,e[3]=_):_=e[3];const v=_;let x;e[4]!==f||e[5]!==v?(x=f==="automation"?v.filter(vb):f==="manual"?v.filter(xb):v,e[4]=f,e[5]=v,e[6]=x):x=e[6];const b=x;let y;e[7]!==s?(y=r.jsx("span",{children:s}),e[7]=s,e[8]=y):y=e[8];let V;e[9]!==p?(V=r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Filter by member",className:"flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",children:p==="mine"?r.jsx(ep,{size:16}):r.jsx(Dn,{size:16})})}),e[9]=p,e[10]=V):V=e[10];let C;e[11]!==p?(C=W=>{const H=W;H!==p&&re("tasks_panel_member_filter_changed",{to_value:H}),g(H)},e[11]=p,e[12]=C):C=e[12];let S;e[13]===Symbol.for("react.memo_cache_sentinel")?(S=Object.keys(su),e[13]=S):S=e[13];let w;e[14]===Symbol.for("react.memo_cache_sentinel")?(w=S.map(_b),e[14]=w):w=e[14];let k;e[15]!==p||e[16]!==C?(k=r.jsx(hs,{align:"end",children:r.jsx(xl,{value:p,onValueChange:C,children:w})}),e[15]=p,e[16]=C,e[17]=k):k=e[17];let T;e[18]!==V||e[19]!==k?(T=r.jsxs(cs,{children:[V,k]}),e[18]=V,e[19]=k,e[20]=T):T=e[20];const M=f!=="all"&&"text-purple-500";let I;e[21]!==M?(I=Y("flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",M),e[21]=M,e[22]=I):I=e[22];let E;e[23]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsx(bp,{size:16}),e[23]=E):E=e[23];let N;e[24]!==I?(N=r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button","aria-label":"Filter tasks",className:I,children:E})}),e[24]=I,e[25]=N):N=e[25];let A;e[26]!==f?(A=W=>{const H=W;H!==f&&re("tasks_panel_filter_changed",{to_value:H}),m(H)},e[26]=f,e[27]=A):A=e[27];let D;e[28]===Symbol.for("react.memo_cache_sentinel")?(D=Object.keys(tu),e[28]=D):D=e[28];let L;e[29]===Symbol.for("react.memo_cache_sentinel")?(L=D.map(gb),e[29]=L):L=e[29];let R;e[30]!==f||e[31]!==A?(R=r.jsx(hs,{align:"end",children:r.jsx(xl,{value:f,onValueChange:A,children:L})}),e[30]=f,e[31]=A,e[32]=R):R=e[32];let P;e[33]!==N||e[34]!==R?(P=r.jsxs(cs,{children:[N,R]}),e[33]=N,e[34]=R,e[35]=P):P=e[35];let O;e[36]!==l||e[37]!==c||e[38]!==s?(O=c&&l&&r.jsx("button",{type:"button",onClick:()=>{re("tasks_panel_new_clicked"),l()},"aria-label":`New ${s.toLowerCase()}`,className:"flex size-8 items-center justify-center rounded-md hover:bg-muted hover:text-foreground",children:r.jsx(Ra,{size:16})}),e[36]=l,e[37]=c,e[38]=s,e[39]=O):O=e[39];let z;e[40]!==P||e[41]!==O||e[42]!==T?(z=r.jsxs("div",{className:"flex items-center gap-0.5",children:[T,P,O]}),e[40]=P,e[41]=O,e[42]=T,e[43]=z):z=e[43];let $;e[44]!==z||e[45]!==y?($=r.jsxs("div",{className:"pl-2 pr-1.5 h-7 flex items-center justify-between text-xs font-medium text-muted-foreground mb-1",children:[y,z]}),e[44]=z,e[45]=y,e[46]=$):$=e[46];let q;e[47]!==n||e[48]!==u||e[49]!==a||e[50]!==o||e[51]!==d||e[52]!==b?(q=b.length===0&&u?r.jsx("div",{className:"px-2 py-1.5 text-xs text-muted-foreground/70",children:u}):b.map(W=>r.jsx(mb,{task:W,isActive:n===W.id,onClick:()=>{n!==W.id&&re("tasks_panel_task_clicked",{thread_id:W.id,virtual_mcp_id:W.virtual_mcp_id??null,from_automation:!!W.fromAutomation}),o(W)},onArchive:()=>{re("tasks_panel_task_archived",{thread_id:W.id,virtual_mcp_id:W.virtual_mcp_id??null}),a(W)},showAutomationBadge:d||W.fromAutomation},W.id)),e[47]=n,e[48]=u,e[49]=a,e[50]=o,e[51]=d,e[52]=b,e[53]=q):q=e[53];let F;return e[54]!==$||e[55]!==q?(F=r.jsxs("div",{className:"flex flex-col gap-0.5 mt-1",children:[$,q]}),e[54]=$,e[55]=q,e[56]=F):F=e[56],F}function gb(t){return r.jsx(Ld,{value:t,children:tu[t]},t)}function _b(t){return r.jsx(Ld,{value:t,children:su[t]},t)}function xb(t){return!t.fromAutomation}function vb(t){return t.fromAutomation}function bb(){const t=B.c(22);hb();const{data:e}=dt.useSession(),s=e?.user?.id;let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={owner:"me",status:"open",hasTrigger:!1},t[0]=i):i=t[0];const{tasks:n}=Co(i);let o;t[1]===Symbol.for("react.memo_cache_sentinel")?(o={owner:"all",status:"open",hasTrigger:!0},t[1]=o):o=t[1];const{tasks:a}=Co(o),{setTaskId:l,createNewTask:c}=xr();let d;t[2]===Symbol.for("react.memo_cache_sentinel")?(d={strict:!1},t[2]=d):d=t[2];const u=_r(d),{locator:h,org:f}=xe(),m=bt();let p;t[3]!==f.id?(p={connectionId:yt,orgId:f.id},t[3]=f.id,t[4]=p):p=t[4];const g=Ae(p),_=u.taskId??null;let v;t[5]!==a||t[6]!==n?(v=[...n,...a.map(Sb)].sort(yb),t[5]=a,t[6]=n,t[7]=v):v=t[7];const x=v;let b;t[8]!==g||t[9]!==h||t[10]!==m?(b=async S=>{try{await pm(g,S.id,{hidden:!0}),m.invalidateQueries({queryKey:Ze.tasksPrefix(h)})}catch(w){const T=w;he.error(`Failed to archive task: ${T.message}`)}},t[8]=g,t[9]=h,t[10]=m,t[11]=b):b=t[11];const y=b;if(x.length===0){let S;return t[12]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx("div",{className:"h-full flex items-center justify-center p-4",children:r.jsx(Vi,{image:r.jsx(tp,{size:48,className:"text-muted-foreground"}),title:"No tasks yet",description:"Start a conversation to create your first task."})}),t[12]=S):S=t[12],S}let V;t[13]!==l?(V=S=>l(S.id,S.virtual_mcp_id),t[13]=l,t[14]=V):V=t[14];let C;return t[15]!==_||t[16]!==x||t[17]!==c||t[18]!==s||t[19]!==y||t[20]!==V?(C=r.jsx("div",{className:"flex flex-col h-full min-h-0 overflow-y-auto p-2 gap-3",children:r.jsx(pb,{title:"Tasks",tasks:x,activeTaskId:_,onSelect:V,onArchive:y,onNew:c,showNewButton:!0,currentUserId:s})}),t[15]=_,t[16]=x,t[17]=c,t[18]=s,t[19]=y,t[20]=V,t[21]=C):C=t[21],C}function yb(t,e){return(e.updated_at??"").localeCompare(t.updated_at??"")}function Sb(t){return{...t,fromAutomation:!0}}function wb(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex flex-col h-full p-2 gap-1.5",children:Array.from({length:6}).map(Vb)}),t[0]=e):e=t[0],e}function Vb(t,e){return r.jsx("div",{className:"h-10 rounded-md bg-muted/60 animate-pulse"},e)}function iu(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(Ee.Skeleton,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(ls,{fallback:e,children:r.jsx(j.Suspense,{fallback:r.jsx(wb,{}),children:r.jsx(bb,{})})}),t[1]=s):s=t[1],s}function ru(){const t=B.c(77),{org:e}=xe(),s=Oe(),i=yd(),{setTasksOpen:n,openTab:o}=xr(),a=e.slug,l=xe().project;let c;t[0]===Symbol.for("react.memo_cache_sentinel")?(c={strict:!1},t[0]=c):c=t[0];const d=_r(c);let u;t[1]===Symbol.for("react.memo_cache_sentinel")?(u={strict:!1},t[1]=u):u=t[1];const h=ti(u),f=i.location.pathname;let m;t[2]!==l.enabledPlugins?(m=l.enabledPlugins??[],t[2]=l.enabledPlugins,t[3]=m):m=t[3];const p=m;let g;t[4]!==l.ui?(g=l.ui?.pinnedViews??[],t[4]=l.ui,t[5]=g):g=t[5];const _=g;let v,x,b,y;if(t[6]!==l.id||t[7]!==p||t[8]!==s||t[9]!==a||t[10]!==d.pluginId||t[11]!==d.taskId||t[12]!==h.virtualmcpid){let H;t[17]!==p?(H=ae=>p.includes(ae.pluginId),t[17]=p,t[18]=H):H=t[18];const U=Bf.filter(H),X=h.virtualmcpid??l.id;x=!!h.virtualmcpid;const K=d.taskId??"",G=d.pluginId;let ie;t[19]!==G?(ie=ae=>G===ae,t[19]=G,t[20]=ie):ie=t[20],v=ie;let te;t[21]!==K||t[22]!==s||t[23]!==a||t[24]!==X?(te=ae=>{const Z=K||crypto.randomUUID();s({to:"/$org/$taskId/$pluginId",params:{org:a,taskId:Z,pluginId:ae},search:de=>({...de,virtualmcpid:X})})},t[21]=K,t[22]=s,t[23]=a,t[24]=X,t[25]=te):te=t[25],b=te;let J;t[26]!==v||t[27]!==b?(J=ae=>({key:ae.pluginId,label:ae.label,icon:ae.icon,isActive:v(ae.pluginId),onClick:()=>b(ae.pluginId)}),t[26]=v,t[27]=b,t[28]=J):J=t[28],y=U.map(J),t[6]=l.id,t[7]=p,t[8]=s,t[9]=a,t[10]=d.pluginId,t[11]=d.taskId,t[12]=h.virtualmcpid,t[13]=v,t[14]=x,t[15]=b,t[16]=y}else v=t[13],x=t[14],b=t[15],y=t[16];const V=y;let C;if(t[29]!==p||t[30]!==v||t[31]!==b){let H;t[33]!==p?(H=K=>p.includes(K.pluginId),t[33]=p,t[34]=H):H=t[34];const U=$f.filter(H);let X;t[35]!==v||t[36]!==b?(X=K=>({type:"group",group:{id:`${K.pluginId}-${K.id}`,label:K.label,items:K.items.map((G,ie)=>({key:`${K.pluginId}-${K.id}-${ie}`,label:G.label,icon:G.icon,isActive:v(K.pluginId),onClick:()=>b(K.pluginId)})),defaultExpanded:K.defaultExpanded??!0}}),t[35]=v,t[36]=b,t[37]=X):X=t[37],C=U.map(X),t[29]=p,t[30]=v,t[31]=b,t[32]=C}else C=t[32];const S=C;let w;if(t[38]!==o||t[39]!==_){let H;t[41]!==o?(H=U=>{const X=vr(U.icon),K=X.type==="icon"?br(X.name):null;return{key:`app-${U.connectionId}-${U.toolName}`,label:U.label||U.toolName,icon:K?r.jsx(K,{size:16,className:"text-muted-foreground"}):X.type==="url"?r.jsx("img",{src:X.url,alt:"",className:"size-4 rounded"}):r.jsx(xh,{size:16,className:"text-muted-foreground"}),isActive:!1,onClick:()=>o(jo(U.connectionId,U.toolName))}},t[41]=o,t[42]=H):H=t[42],w=_.map(H),t[38]=o,t[39]=_,t[40]=w}else w=t[40];const k=w;let T;t[43]!==k?(T=k.length>0?{type:"group",group:{id:"apps",label:"Apps",items:k,defaultExpanded:!0}}:null,t[43]=k,t[44]=T):T=t[44];const M=T;let I;t[45]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(sp,{className:"size-4!"}),t[45]=I):I=t[45];const E=f===`/${a}`||f===`/${a}/`;let N;t[46]!==s||t[47]!==a||t[48]!==n?(N=()=>{n(!1),s({to:"/$org",params:{org:a}})},t[46]=s,t[47]=a,t[48]=n,t[49]=N):N=t[49];let A;t[50]!==N||t[51]!==E?(A={key:"home",label:"Home",icon:I,isActive:E,onClick:N},t[50]=N,t[51]=E,t[52]=A):A=t[52];const D=A;let L;t[53]!==p?(L=p.includes(zf),t[53]=p,t[54]=L):L=t[54];const R=L;let P;t[55]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(Ff,{className:"size-4!"}),t[55]=P):P=t[55];let O;t[56]!==a||t[57]!==f?(O=f.startsWith(`/${a}/settings/workflows`),t[56]=a,t[57]=f,t[58]=O):O=t[58];let z;t[59]!==s||t[60]!==a?(z=()=>s({to:"/$org/settings/workflows",params:{org:a}}),t[59]=s,t[60]=a,t[61]=z):z=t[61];let $;t[62]!==O||t[63]!==z?($={key:"workflows",label:"Workflows",icon:P,isActive:O,onClick:z},t[62]=O,t[63]=z,t[64]=$):$=t[64];const q=$;let F;if(t[65]!==D||t[66]!==x||t[67]!==R||t[68]!==q){const H=[D];x&&R&&H.push(q),F={type:"items",items:H},t[65]=D,t[66]=x,t[67]=R,t[68]=q,t[69]=F}else F=t[69];let W;if(t[70]!==M||t[71]!==S||t[72]!==V||t[73]!==F){if(W=[F],V.length>0){let H;t[75]!==V?(H={type:"items",items:V},t[75]=V,t[76]=H):H=t[76],W.push(H)}S.length>0&&W.push(...S),M&&W.push(M),t[70]=M,t[71]=S,t[72]=V,t[73]=F,t[74]=W}else W=t[74];return W}function nu(t){const e=B.c(3),{children:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex h-6 items-center",children:r.jsx("div",{className:"h-0.5 w-16 rounded-full bg-sidebar-foreground/15"})}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsxs(wr,{className:"pt-0 pr-0 pb-2 pl-0 mt-2",children:[i,r.jsx(Vr,{children:r.jsx(es,{className:"gap-0.5",children:s})})]}),e[1]=s,e[2]=n):n=e[2],n}function Cb(){const t=B.c(7),s=Sd().logo??wd,i=typeof s=="string"?s:s.light,n=typeof s=="string"?s:s.dark;let o;t[0]!==i?(o=r.jsx("img",{src:i,alt:"Logo",className:"size-6 object-contain dark:hidden"}),t[0]=i,t[1]=o):o=t[1];let a;t[2]!==n?(a=r.jsx("img",{src:n,alt:"Logo",className:"size-6 object-contain hidden dark:block"}),t[2]=n,t[3]=a):a=t[3];let l;return t[4]!==o||t[5]!==a?(l=r.jsx(yh,{className:"flex items-center justify-center shrink-0 px-2 pb-0",children:r.jsxs("div",{className:"flex w-full aspect-square items-center justify-center",children:[o,a]})}),t[4]=o,t[5]=a,t[6]=l):l=t[6],l}function ou(t){const e=B.c(15),{item:s}=t,{isMobile:i,setOpenMobile:n}=Cr();let o;e[0]!==i||e[1]!==s||e[2]!==n?(o=()=>{re("nav_item_clicked",{nav_key:s.key,nav_label:s.label,is_active:!!s.isActive,is_mobile:i}),s.onClick?.(),i&&n(!1)},e[0]=i,e[1]=s,e[2]=n,e[3]=o):o=e[3];const a=o,l=s.key,c=s.isActive&&"z-10";let d;e[4]!==c?(d=Y(c),e[4]=c,e[5]=d):d=e[5];let u;e[6]!==a||e[7]!==s.icon||e[8]!==s.isActive||e[9]!==s.label?(u=r.jsx(Zt,{onClick:a,isActive:s.isActive,tooltip:s.label,className:"bg-muted/75",children:s.icon}),e[6]=a,e[7]=s.icon,e[8]=s.isActive,e[9]=s.label,e[10]=u):u=e[10];let h;return e[11]!==s.key||e[12]!==d||e[13]!==u?(h=r.jsx(Pt,{className:d,children:u},l),e[11]=s.key,e[12]=d,e[13]=u,e[14]=h):h=e[14],h}function kb(t){const e=B.c(12),{section:s}=t;switch(s.type){case"divider":{let i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(vh,{className:"my-2"}),e[0]=i):i=e[0],i}case"spacer":{let i;return e[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex-1"}),e[1]=i):i=e[1],i}case"group":{const i=s.group.label,n=s.group.defaultExpanded;let o;e[2]!==s.group.items?(o=s.group.items.map(Nb),e[2]=s.group.items,e[3]=o):o=e[3];let a;return e[4]!==s.group.defaultExpanded||e[5]!==s.group.label||e[6]!==o?(a=r.jsx(nu,{label:i,defaultExpanded:n,children:o}),e[4]=s.group.defaultExpanded,e[5]=s.group.label,e[6]=o,e[7]=a):a=e[7],a}case"items":{let i;e[8]!==s.items?(i=s.items.map(jb),e[8]=s.items,e[9]=i):i=e[9];let n;return e[10]!==i?(n=r.jsx(wr,{className:"pt-0 pr-0 pb-0 pl-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-1.5",children:i})})}),e[10]=i,e[11]=n):n=e[11],n}}}function jb(t){return r.jsx(ou,{item:t},t.key)}function Nb(t){return r.jsx(ou,{item:t},t.key)}function Ab(t){const e=B.c(14),{sections:s,header:i,footer:n,additionalContent:o,variant:a,contentClassName:l}=t,c=a===void 0?"sidebar":a;let d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"h-10 shrink-0"}),children:r.jsx(Cb,{})}),e[0]=d):d=e[0];let u;e[1]!==l?(u=Y("flex flex-col flex-1 px-2 py-2 gap-0",l),e[1]=l,e[2]=u):u=e[2];let h;e[3]!==s?(h=s.map(Eb),e[3]=s,e[4]=h):h=e[4];let f;e[5]!==o||e[6]!==u||e[7]!==h?(f=r.jsxs(bh,{className:u,children:[h,o]}),e[5]=o,e[6]=u,e[7]=h,e[8]=f):f=e[8];let m;return e[9]!==n||e[10]!==i||e[11]!==f||e[12]!==c?(m=r.jsxs(eg,{variant:c,children:[d,i,f,n]}),e[9]=n,e[10]=i,e[11]=f,e[12]=c,e[13]=m):m=e[13],m}function Eb(t,e){return r.jsx(kb,{section:t},e)}function au(t){const e=B.c(2);let s;return e[0]!==t?(s=r.jsx(Ab,{...t}),e[0]=t,e[1]=s):s=e[1],s}au.Skeleton=function(){return r.jsx("div",{className:"flex flex-col gap-0.5",children:Array.from({length:8}).map((e,s)=>r.jsx("div",{className:"w-full h-8",children:r.jsx(wi,{className:"h-full bg-sidebar-accent rounded-md"})},s))})};function Ib(){const t=B.c(7),s=Sd().logo??wd,i=typeof s=="string"?s:s.light,n=typeof s=="string"?s:s.dark;let o;t[0]!==i?(o=r.jsx("img",{src:i,alt:"Logo",className:"size-6 object-contain dark:hidden"}),t[0]=i,t[1]=o):o=t[1];let a;t[2]!==n?(a=r.jsx("img",{src:n,alt:"Logo",className:"size-6 object-contain hidden dark:block"}),t[2]=n,t[3]=a):a=t[3];let l;return t[4]!==o||t[5]!==a?(l=r.jsx(yh,{className:"flex items-center justify-center shrink-0 px-2 pb-0",children:r.jsxs("div",{className:"flex w-full aspect-square items-center justify-center",children:[o,a]})}),t[4]=o,t[5]=a,t[6]=l):l=t[6],l}function oc(t){const e=B.c(15),{item:s,onClose:i}=t,n=s.isActive&&"z-10";let o;e[0]!==n?(o=Y(n),e[0]=n,e[1]=o):o=e[1];let a;e[2]!==s||e[3]!==i?(a=()=>{s.onClick?.(),i()},e[2]=s,e[3]=i,e[4]=a):a=e[4];let l;e[5]!==s.icon?(l=r.jsx("span",{className:"[&>svg]:size-8",children:s.icon}),e[5]=s.icon,e[6]=l):l=e[6];let c;e[7]!==s.isActive||e[8]!==s.label||e[9]!==a||e[10]!==l?(c=r.jsx(Zt,{onClick:a,isActive:s.isActive,tooltip:s.label,className:"bg-muted/75",children:l}),e[7]=s.isActive,e[8]=s.label,e[9]=a,e[10]=l,e[11]=c):c=e[11];let d;return e[12]!==o||e[13]!==c?(d=r.jsx(Pt,{className:o,children:c}),e[12]=o,e[13]=c,e[14]=d):d=e[14],d}function Tb(t){const e=B.c(18),{section:s,onClose:i}=t;switch(s.type){case"divider":{let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(vh,{className:"my-2"}),e[0]=n):n=e[0],n}case"spacer":{let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"flex-1"}),e[1]=n):n=e[1],n}case"group":{const n=s.group.label,o=s.group.defaultExpanded;let a;if(e[2]!==i||e[3]!==s.group.items){let c;e[5]!==i?(c=d=>r.jsx(oc,{item:d,onClose:i},d.key),e[5]=i,e[6]=c):c=e[6],a=s.group.items.map(c),e[2]=i,e[3]=s.group.items,e[4]=a}else a=e[4];let l;return e[7]!==s.group.defaultExpanded||e[8]!==s.group.label||e[9]!==a?(l=r.jsx(nu,{label:n,defaultExpanded:o,children:a}),e[7]=s.group.defaultExpanded,e[8]=s.group.label,e[9]=a,e[10]=l):l=e[10],l}case"items":{let n;if(e[11]!==i||e[12]!==s.items){let a;e[14]!==i?(a=l=>r.jsx(oc,{item:l,onClose:i},l.key),e[14]=i,e[15]=a):a=e[15],n=s.items.map(a),e[11]=i,e[12]=s.items,e[13]=n}else n=e[13];let o;return e[16]!==n?(o=r.jsx(wr,{className:"pt-0 pr-0 pb-0 pl-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-1.5",children:n})})}),e[16]=n,e[17]=o):o=e[17],o}}}function Rb(t){const e=B.c(12),{sections:s,onClose:i,footer:n,additionalContent:o}=t;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"h-10 shrink-0"}),children:r.jsx(Ib,{})}),e[0]=a):a=e[0];let l;if(e[1]!==i||e[2]!==s){let u;e[4]!==i?(u=(h,f)=>r.jsx(Tb,{section:h,onClose:i},f),e[4]=i,e[5]=u):u=e[5],l=s.map(u),e[1]=i,e[2]=s,e[3]=l}else l=e[3];let c;e[6]!==o||e[7]!==l?(c=r.jsxs(bh,{className:"flex flex-col flex-1 px-2 py-2 gap-0",children:[l,o]}),e[6]=o,e[7]=l,e[8]=c):c=e[8];let d;return e[9]!==n||e[10]!==c?(d=r.jsxs("div",{className:"bg-sidebar flex h-full w-full flex-col","data-sidebar":"sidebar",children:[a,c,n]}),e[9]=n,e[10]=c,e[11]=d):d=e[11],d}function lu(t){return t.toLowerCase().trim().replace(/[^a-z0-9\s_-]+/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Mb=as({name:pt().min(2,"Organization name is required")});function Db(t){const e=B.c(41),{open:s,onOpenChange:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={resolver:gr(Mb),defaultValues:{name:""}},e[0]=n):n=e[0];const o=Ai(n);let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a={mutationFn:Lb,onSuccess:Pb},e[1]=a):a=e[1];const l=Ni(a),c=l.error instanceof Error?l.error.message:l.error?"Failed to create organization.":null;let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Create a new organization"}),r.jsx(Wa,{children:"Set up a new organization to collaborate with others."})]}),e[2]=d):d=e[2];let u;if(e[3]!==l||e[4]!==o){let S;e[6]!==l?(S=w=>l.mutateAsync(w),e[6]=l,e[7]=S):S=e[7],u=o.handleSubmit(S),e[3]=l,e[4]=o,e[5]=u}else u=e[5];let h;e[8]!==o.formState.isSubmitting?(h=S=>{const{field:w}=S;return r.jsxs(_t,{children:[r.jsx(Ht,{children:"Organization Name"}),r.jsx(xt,{children:r.jsx(at,{...w,placeholder:"Acme Inc.",disabled:o.formState.isSubmitting})}),r.jsx(Gm,{children:"The name of your company or organization"}),w.value&&r.jsxs("div",{className:"text-xs text-muted-foreground mt-1",children:["Organization URL:"," ",r.jsxs("span",{className:"font-mono",children:[typeof window<"u"?globalThis.location.origin:"","/",lu(w.value)]})]}),r.jsx(vt,{})]})},e[8]=o.formState.isSubmitting,e[9]=h):h=e[9];let f;e[10]!==o.control||e[11]!==h?(f=r.jsx(gt,{control:o.control,name:"name",render:h}),e[10]=o.control,e[11]=h,e[12]=f):f=e[12];let m;e[13]!==c?(m=c&&r.jsx("div",{className:"text-destructive text-sm mt-2",children:c}),e[13]=c,e[14]=m):m=e[14];let p;e[15]!==l||e[16]!==o?(p=()=>{l.reset(),o.reset()},e[15]=l,e[16]=o,e[17]=p):p=e[17];let g;e[18]!==o.formState.isSubmitting||e[19]!==p?(g=r.jsx(za,{disabled:o.formState.isSubmitting,onClick:p,children:"Cancel"}),e[18]=o.formState.isSubmitting,e[19]=p,e[20]=g):g=e[20];const _=!o.formState.isValid||o.formState.isSubmitting;let v;e[21]!==o.formState.isSubmitting?(v=o.formState.isSubmitting?r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(ar,{size:"xs"})," Creating..."]}):"Create Organization",e[21]=o.formState.isSubmitting,e[22]=v):v=e[22];let x;e[23]!==_||e[24]!==v?(x=r.jsx(oe,{type:"submit",variant:"default",disabled:_,children:v}),e[23]=_,e[24]=v,e[25]=x):x=e[25];let b;e[26]!==x||e[27]!==g?(b=r.jsxs(Ka,{children:[g,x]}),e[26]=x,e[27]=g,e[28]=b):b=e[28];let y;e[29]!==b||e[30]!==u||e[31]!==f||e[32]!==m?(y=r.jsxs("form",{className:"space-y-6",onSubmit:u,autoComplete:"off",children:[f,m,b]}),e[29]=b,e[30]=u,e[31]=f,e[32]=m,e[33]=y):y=e[33];let V;e[34]!==o||e[35]!==y?(V=r.jsxs(Fa,{children:[d,r.jsx(yi,{...o,children:y})]}),e[34]=o,e[35]=y,e[36]=V):V=e[36];let C;return e[37]!==i||e[38]!==s||e[39]!==V?(C=r.jsx(qa,{open:s,onOpenChange:i,children:V}),e[37]=i,e[38]=s,e[39]=V,e[40]=C):C=e[40],C}function Pb(t){const{orgSlug:e}=t;window.location.href=`/${e}`}async function Lb(t){const e=lu(t.name);if(!e)throw new Error("Organization slug is invalid");const s=await dt.organization.create({name:t.name,slug:e});if(s?.error)throw new Error(s.error.message||"Failed to create organization");const i=s?.data?.slug??e;if(!i)throw new Error("Failed to create organization");return{orgSlug:i}}function Bo(t){let e=0;for(let i=0;i<t.length;i++)e=t.charCodeAt(i)+((e<<5)-e);const s=Math.abs(e)%360;return{backgroundColor:`hsl(${s} 55% 70%)`,color:`hsl(${s} 55% 20%)`}}function Ob(t){const e=B.c(13),{org:s,size:i}=t,n=i===void 0?"sm":i,o=n==="xs"?"size-5":"size-6",a=n==="xs"?"text-[9px]":"text-xs";let l;e[0]!==o?(l=Y(o,"shrink-0 rounded-md flex items-center justify-center border border-border/50 overflow-hidden"),e[0]=o,e[1]=l):l=e[1];let c;e[2]!==s.logo||e[3]!==s.name?(c=s.logo?void 0:Bo(s.name),e[2]=s.logo,e[3]=s.name,e[4]=c):c=e[4];let d;e[5]!==s.logo||e[6]!==s.name||e[7]!==a?(d=s.logo?r.jsx("img",{src:s.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:Y("font-semibold leading-none",a),children:s.name.slice(0,2).toUpperCase()}),e[5]=s.logo,e[6]=s.name,e[7]=a,e[8]=d):d=e[8];let u;return e[9]!==l||e[10]!==c||e[11]!==d?(u=r.jsx("div",{className:l,style:c,children:d}),e[9]=l,e[10]=c,e[11]=d,e[12]=u):u=e[12],u}function $r(t){const e=B.c(22),{item:s,onClose:i}=t;if(s.href){const c=s.external?"_blank":void 0,d=s.external?"noopener noreferrer":void 0;let u;e[0]!==s.icon?(u=r.jsx("span",{className:"shrink-0 text-muted-foreground",children:s.icon}),e[0]=s.icon,e[1]=u):u=e[1];let h;e[2]!==s.label?(h=r.jsx("span",{className:"flex-1",children:s.label}),e[2]=s.label,e[3]=h):h=e[3];let f;return e[4]!==s.href||e[5]!==i||e[6]!==c||e[7]!==d||e[8]!==u||e[9]!==h?(f=r.jsxs("a",{href:s.href,target:c,rel:d,className:"flex items-center gap-2.5 px-3 py-2 rounded-md text-sm text-left w-full transition-colors text-foreground/80 hover:bg-sidebar-accent hover:text-foreground",onClick:i,children:[u,h]}),e[4]=s.href,e[5]=i,e[6]=c,e[7]=d,e[8]=u,e[9]=h,e[10]=f):f=e[10],f}let n;e[11]!==s||e[12]!==i?(n=()=>{s.onClick?.(),i()},e[11]=s,e[12]=i,e[13]=n):n=e[13];let o;e[14]!==s.icon?(o=r.jsx("span",{className:"shrink-0 text-muted-foreground",children:s.icon}),e[14]=s.icon,e[15]=o):o=e[15];let a;e[16]!==s.label?(a=r.jsx("span",{className:"flex-1",children:s.label}),e[16]=s.label,e[17]=a):a=e[17];let l;return e[18]!==n||e[19]!==o||e[20]!==a?(l=r.jsxs("button",{type:"button",onClick:n,className:"flex items-center gap-2.5 px-3 py-2 rounded-md text-sm text-left w-full transition-colors text-foreground/80 hover:bg-sidebar-accent hover:text-foreground",children:[o,a]}),e[18]=n,e[19]=o,e[20]=a,e[21]=l):l=e[21],l}function ac(t){const e=B.c(16),{sortedOrgs:s,orgParam:i,onSelectOrg:n,onCreateOrg:o}=t;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("span",{className:"text-sm font-medium text-muted-foreground/60",children:"Your Organizations"}),e[0]=a):a=e[0];let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Dt,{size:16}),e[1]=l):l=e[1];let c;e[2]!==o?(c=r.jsxs("div",{className:"flex items-center justify-between px-4 py-3",children:[a,r.jsx("button",{type:"button",onClick:o,className:"flex items-center justify-center size-7 rounded-md text-muted-foreground hover:bg-accent/50 hover:text-foreground transition-colors",children:l})]}),e[2]=o,e[3]=c):c=e[3];let d;if(e[4]!==n||e[5]!==i||e[6]!==s){let f;e[8]!==n||e[9]!==i?(f=m=>r.jsxs("button",{type:"button",onClick:()=>n(m.slug),className:Y("flex items-center gap-3 px-3 py-2.5 rounded-md text-sm text-left w-full transition-colors",m.slug===i?"bg-accent text-accent-foreground":"text-foreground hover:bg-accent/50"),children:[r.jsx(Ob,{org:m,size:"sm"}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:"text-sm font-medium truncate",children:m.name}),r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:m.slug})]}),m.slug===i&&r.jsx(Mt,{size:14,className:"ml-auto text-muted-foreground shrink-0"})]},m.id),e[8]=n,e[9]=i,e[10]=f):f=e[10],d=s.map(f),e[4]=n,e[5]=i,e[6]=s,e[7]=d}else d=e[7];let u;e[11]!==d?(u=r.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto p-1.5 flex flex-col gap-1",children:d}),e[11]=d,e[12]=u):u=e[12];let h;return e[13]!==c||e[14]!==u?(h=r.jsxs(r.Fragment,{children:[c,u]}),e[13]=c,e[14]=u,e[15]=h):h=e[15],h}function lc(t){const e=B.c(142),{user:s,userImage:i,menuItems:n,signOutItem:o,themeOptions:a,preferences:l,setPreferences:c,sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f,close:m,isMobile:p}=t;if(p){const K=s?.name??"U";let G;e[0]!==K||e[1]!==i?(G=r.jsx(Il,{url:i,fallback:K,shape:"circle",size:"sm",className:"shrink-0"}),e[0]=K,e[1]=i,e[2]=G):G=e[2];const ie=s?.name??"User";let te;e[3]!==ie?(te=r.jsx("p",{className:"text-sm font-medium truncate",children:ie}),e[3]=ie,e[4]=te):te=e[4];const J=s?.email;let ae;e[5]!==J?(ae=r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:J}),e[5]=J,e[6]=ae):ae=e[6];let Z;e[7]!==te||e[8]!==ae?(Z=r.jsxs("div",{className:"flex-1 min-w-0",children:[te,ae]}),e[7]=te,e[8]=ae,e[9]=Z):Z=e[9];let de;e[10]!==s?(de=()=>{s?.id&&navigator.clipboard.writeText(s.id).then(Fb)},e[10]=s,e[11]=de):de=e[11];let fe;e[12]===Symbol.for("react.memo_cache_sentinel")?(fe=r.jsx(Si,{size:14}),e[12]=fe):fe=e[12];let ye;e[13]!==de?(ye=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",tabIndex:-1,onClick:de,className:"shrink-0 text-muted-foreground hover:text-foreground transition-colors",children:fe})}),e[13]=de,e[14]=ye):ye=e[14];let ge;e[15]===Symbol.for("react.memo_cache_sentinel")?(ge=r.jsx(Ge,{side:"right",children:r.jsx("p",{className:"text-xs",children:"Copy user ID"})}),e[15]=ge):ge=e[15];let ce;e[16]!==ye?(ce=r.jsx(bi,{delayDuration:300,children:r.jsxs(Ye,{children:[ye,ge]})}),e[16]=ye,e[17]=ce):ce=e[17];let ue;e[18]!==ce||e[19]!==G||e[20]!==Z?(ue=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-4 border-b border-border",children:[G,Z,ce]}),e[18]=ce,e[19]=G,e[20]=Z,e[21]=ue):ue=e[21];let be;e[22]!==f||e[23]!==h||e[24]!==u||e[25]!==d?(be=r.jsx("div",{className:"border-b border-border pb-2",children:r.jsx(ac,{sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f})}),e[22]=f,e[23]=h,e[24]=u,e[25]=d,e[26]=be):be=e[26];let pe;if(e[27]!==m||e[28]!==n){let De;e[30]!==m?(De=Yt=>r.jsx($r,{item:Yt,onClose:m},Yt.key),e[30]=m,e[31]=De):De=e[31],pe=n.map(De),e[27]=m,e[28]=n,e[29]=pe}else pe=e[29];let Ce;e[32]!==m||e[33]!==o?(Ce=r.jsx($r,{item:o,onClose:m}),e[32]=m,e[33]=o,e[34]=Ce):Ce=e[34];let Ie;e[35]!==pe||e[36]!==Ce?(Ie=r.jsxs("nav",{className:"flex flex-col px-2 pt-2 pb-2 gap-0.5",children:[pe,Ce]}),e[35]=pe,e[36]=Ce,e[37]=Ie):Ie=e[37];let ee;e[38]!==be||e[39]!==Ie?(ee=r.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto",children:[be,Ie]}),e[38]=be,e[39]=Ie,e[40]=ee):ee=e[40];let se;if(e[41]!==l.theme||e[42]!==c||e[43]!==a){let De;e[45]!==l.theme||e[46]!==c?(De=Yt=>{const{value:At,icon:Et,label:Ct}=Yt;return r.jsx("button",{type:"button","aria-label":Ct,onClick:()=>c(ws=>({...ws,theme:At})),className:Y("size-8 rounded-md flex items-center justify-center transition-colors",l.theme===At?"bg-sidebar-accent text-foreground":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground"),children:Et},At)},e[45]=l.theme,e[46]=c,e[47]=De):De=e[47],se=a.map(De),e[41]=l.theme,e[42]=c,e[43]=a,e[44]=se}else se=e[44];let Ve;e[48]!==se?(Ve=r.jsx("div",{className:"flex items-center gap-0.5",children:se}),e[48]=se,e[49]=Ve):Ve=e[49];const ze=l.enableSounds?"Disable sounds":"Enable sounds";let Fe;e[50]!==c?(Fe=()=>c(zb),e[50]=c,e[51]=Fe):Fe=e[51];const ft=l.enableSounds?"text-foreground hover:bg-sidebar-accent/50":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground";let He;e[52]!==ft?(He=Y("size-8 rounded-md flex items-center justify-center transition-colors",ft),e[52]=ft,e[53]=He):He=e[53];let tt;e[54]!==l.enableSounds?(tt=l.enableSounds?r.jsx(vl,{size:14}):r.jsx(bl,{size:14}),e[54]=l.enableSounds,e[55]=tt):tt=e[55];let ht;e[56]!==ze||e[57]!==Fe||e[58]!==He||e[59]!==tt?(ht=r.jsx("button",{type:"button","aria-label":ze,onClick:Fe,className:He,children:tt}),e[56]=ze,e[57]=Fe,e[58]=He,e[59]=tt,e[60]=ht):ht=e[60];let me;e[61]===Symbol.for("react.memo_cache_sentinel")?(me=r.jsxs("span",{className:"text-xs text-muted-foreground/60",children:["v","2.292.0"]}),e[61]=me):me=e[61];let ke;e[62]!==ht?(ke=r.jsxs("div",{className:"flex items-center gap-2",children:[ht,me]}),e[62]=ht,e[63]=ke):ke=e[63];let st;e[64]!==Ve||e[65]!==ke?(st=r.jsxs("div",{className:"flex items-center justify-between px-3 py-3 border-t border-border/50",children:[Ve,ke]}),e[64]=Ve,e[65]=ke,e[66]=st):st=e[66];let zt;return e[67]!==ue||e[68]!==ee||e[69]!==st?(zt=r.jsxs("div",{className:"flex flex-col h-full overflow-hidden",children:[ue,ee,st]}),e[67]=ue,e[68]=ee,e[69]=st,e[70]=zt):zt=e[70],zt}const g=s?.name??"U";let _;e[71]!==g||e[72]!==i?(_=r.jsx(Il,{url:i,fallback:g,shape:"circle",size:"sm",className:"shrink-0"}),e[71]=g,e[72]=i,e[73]=_):_=e[73];const v=s?.name??"User";let x;e[74]!==v?(x=r.jsx("p",{className:"text-sm font-medium truncate",children:v}),e[74]=v,e[75]=x):x=e[75];const b=s?.email;let y;e[76]!==b?(y=r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:b}),e[76]=b,e[77]=y):y=e[77];let V;e[78]!==x||e[79]!==y?(V=r.jsxs("div",{className:"flex-1 min-w-0",children:[x,y]}),e[78]=x,e[79]=y,e[80]=V):V=e[80];let C;e[81]!==s?(C=()=>{s?.id&&navigator.clipboard.writeText(s.id).then($b)},e[81]=s,e[82]=C):C=e[82];let S;e[83]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Si,{size:14}),e[83]=S):S=e[83];let w;e[84]!==C?(w=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",tabIndex:-1,onClick:C,className:"shrink-0 text-muted-foreground hover:text-foreground transition-colors",children:S})}),e[84]=C,e[85]=w):w=e[85];let k;e[86]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx(Ge,{side:"right",children:r.jsx("p",{className:"text-xs",children:"Copy user ID"})}),e[86]=k):k=e[86];let T;e[87]!==w?(T=r.jsx(bi,{delayDuration:300,children:r.jsxs(Ye,{children:[w,k]})}),e[87]=w,e[88]=T):T=e[88];let M;e[89]!==T||e[90]!==_||e[91]!==V?(M=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 mx-1 mt-1",children:[_,V,T]}),e[89]=T,e[90]=_,e[91]=V,e[92]=M):M=e[92];let I;if(e[93]!==m||e[94]!==n){let K;e[96]!==m?(K=G=>r.jsx($r,{item:G,onClose:m},G.key),e[96]=m,e[97]=K):K=e[97],I=n.map(K),e[93]=m,e[94]=n,e[95]=I}else I=e[95];let E;e[98]!==m||e[99]!==o?(E=r.jsx($r,{item:o,onClose:m}),e[98]=m,e[99]=o,e[100]=E):E=e[100];let N;e[101]!==I||e[102]!==E?(N=r.jsxs("nav",{className:"flex-1 flex flex-col px-2 pt-1 overflow-y-auto",children:[I,E]}),e[101]=I,e[102]=E,e[103]=N):N=e[103];let A;if(e[104]!==l.theme||e[105]!==c||e[106]!==a){let K;e[108]!==l.theme||e[109]!==c?(K=G=>{const{value:ie,icon:te,label:J}=G;return r.jsx("button",{type:"button","aria-label":J,onClick:()=>c(ae=>({...ae,theme:ie})),className:Y("size-7 rounded-md flex items-center justify-center transition-colors",l.theme===ie?"bg-sidebar-accent text-foreground":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground"),children:te},ie)},e[108]=l.theme,e[109]=c,e[110]=K):K=e[110],A=a.map(K),e[104]=l.theme,e[105]=c,e[106]=a,e[107]=A}else A=e[107];let D;e[111]!==A?(D=r.jsx("div",{className:"flex items-center gap-0.5",children:A}),e[111]=A,e[112]=D):D=e[112];const L=l.enableSounds?"Disable sounds":"Enable sounds";let R;e[113]!==c?(R=()=>c(Bb),e[113]=c,e[114]=R):R=e[114];const P=l.enableSounds?"text-foreground hover:bg-sidebar-accent/50":"text-muted-foreground hover:bg-sidebar-accent/50 hover:text-foreground";let O;e[115]!==P?(O=Y("size-7 rounded-md flex items-center justify-center transition-colors",P),e[115]=P,e[116]=O):O=e[116];let z;e[117]!==l.enableSounds?(z=l.enableSounds?r.jsx(vl,{size:14}):r.jsx(bl,{size:14}),e[117]=l.enableSounds,e[118]=z):z=e[118];let $;e[119]!==L||e[120]!==R||e[121]!==O||e[122]!==z?($=r.jsx("button",{type:"button","aria-label":L,onClick:R,className:O,children:z}),e[119]=L,e[120]=R,e[121]=O,e[122]=z,e[123]=$):$=e[123];let q;e[124]===Symbol.for("react.memo_cache_sentinel")?(q=r.jsxs("span",{className:"text-xs text-muted-foreground/60",children:["v","2.292.0"]}),e[124]=q):q=e[124];let F;e[125]!==$?(F=r.jsxs("div",{className:"flex items-center gap-2",children:[$,q]}),e[125]=$,e[126]=F):F=e[126];let W;e[127]!==D||e[128]!==F?(W=r.jsxs("div",{className:"flex items-center justify-between px-2 py-1.5 border-t border-border/50",children:[D,F]}),e[127]=D,e[128]=F,e[129]=W):W=e[129];let H;e[130]!==M||e[131]!==N||e[132]!==W?(H=r.jsxs("div",{className:"w-60 shrink-0 flex flex-col border-r border-border bg-sidebar/75",children:[M,N,W]}),e[130]=M,e[131]=N,e[132]=W,e[133]=H):H=e[133];let U;e[134]!==f||e[135]!==h||e[136]!==u||e[137]!==d?(U=r.jsx("div",{className:"flex-1 flex flex-col min-w-0 min-h-0 overflow-hidden",children:r.jsx(ac,{sortedOrgs:d,orgParam:u,onSelectOrg:h,onCreateOrg:f})}),e[134]=f,e[135]=h,e[136]=u,e[137]=d,e[138]=U):U=e[138];let X;return e[139]!==H||e[140]!==U?(X=r.jsxs("div",{className:"flex min-h-[380px] w-full overflow-hidden",children:[H,U]}),e[139]=H,e[140]=U,e[141]=X):X=e[141],X}function Bb(t){return{...t,enableSounds:!t.enableSounds}}function $b(){he.success("User ID copied")}function zb(t){return{...t,enableSounds:!t.enableSounds}}function Fb(){he.success("User ID copied")}function cu(){const t=B.c(50),{data:e}=dt.useSession(),{data:s}=dt.useListOrganizations(),i=Oe();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={from:"/shell/$org",shouldThrow:!1},t[0]=n):n=t[0];const a=Uf(n)?.params.org,[l,c]=ei(),d=ms(),[u,h]=j.useState(!1),[f,m]=j.useState(!1),p=e?.user,g=p?.image;let _;if(t[1]!==d||t[2]!==i||t[3]!==u||t[4]!==a||t[5]!==s||t[6]!==l||t[7]!==c||t[8]!==p||t[9]!==g){const b=s?.find(X=>X.slug===a);let y;if(t[11]!==a||t[12]!==s){let X;t[14]!==a?(X=(K,G)=>K.slug===a?-1:G.slug===a?1:K.name.localeCompare(G.name),t[14]=a,t[15]=X):X=t[15],y=[...s??[]].sort(X),t[11]=a,t[12]=s,t[13]=y}else y=t[13];const V=y;let C;t[16]!==i?(C=X=>{h(!1),i({to:"/$org",params:{org:X}})},t[16]=i,t[17]=C):C=t[17];const S=C;let w;t[18]===Symbol.for("react.memo_cache_sentinel")?(w=()=>h(!1),t[18]=w):w=t[18];const k=w;let T;t[19]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx(kr,{size:16}),t[19]=T):T=t[19];let M;t[20]!==i||t[21]!==a?(M={key:"preferences",label:"Preferences",icon:T,onClick:()=>{i({to:"/$org/settings/profile",params:{org:a??""}})}},t[20]=i,t[21]=a,t[22]=M):M=t[22];let I;t[23]===Symbol.for("react.memo_cache_sentinel")?(I={key:"terms",label:"Terms of Use",icon:r.jsx(ip,{size:16}),href:"https://www.decocms.com/terms-of-use",external:!0},t[23]=I):I=t[23];let E;t[24]===Symbol.for("react.memo_cache_sentinel")?(E={key:"privacy",label:"Privacy Policy",icon:r.jsx(dg,{size:16}),href:"https://www.decocms.com/privacy-policy",external:!0},t[24]=E):E=t[24];let N;t[25]===Symbol.for("react.memo_cache_sentinel")?(N={key:"github",label:"decocms/studio",icon:r.jsx(Hf,{className:"w-4 h-4"}),href:"https://github.com/decocms/studio",external:!0},t[25]=N):N=t[25];let A;t[26]===Symbol.for("react.memo_cache_sentinel")?(A={key:"community",label:"Community",icon:r.jsx(Dn,{size:16}),href:"https://decocms.com/discord",external:!0},t[26]=A):A=t[26];let D;t[27]===Symbol.for("react.memo_cache_sentinel")?(D={key:"homepage",label:"Homepage",icon:r.jsx(Qd,{size:16}),href:"https://decocms.com",external:!0},t[27]=D):D=t[27];let L;t[28]!==M?(L=[M,I,E,N,A,D],t[28]=M,t[29]=L):L=t[29];const R=L;let P;t[30]===Symbol.for("react.memo_cache_sentinel")?(P={key:"logout",label:"Sign out",icon:r.jsx(fp,{size:16}),onClick:Hb},t[30]=P):P=t[30];const O=P;let z;t[31]===Symbol.for("react.memo_cache_sentinel")?(z={value:"light",icon:r.jsx(ag,{size:14}),label:"Light theme"},t[31]=z):z=t[31];let $;t[32]===Symbol.for("react.memo_cache_sentinel")?($={value:"dark",icon:r.jsx(lg,{size:14}),label:"Dark theme"},t[32]=$):$=t[32];let q;t[33]===Symbol.for("react.memo_cache_sentinel")?(q=[z,$,{value:"system",icon:r.jsx(cg,{size:14}),label:"System theme"}],t[33]=q):q=t[33];const F=q;let W;t[34]===Symbol.for("react.memo_cache_sentinel")?(W=()=>{h(!1),m(!0)},t[34]=W):W=t[34];let H;t[35]!==S||t[36]!==d||t[37]!==R||t[38]!==a||t[39]!==l||t[40]!==c||t[41]!==V||t[42]!==p||t[43]!==g?(H={user:p,userImage:g,menuItems:R,signOutItem:O,themeOptions:F,preferences:l,setPreferences:c,sortedOrgs:V,orgParam:a,onSelectOrg:S,onCreateOrg:W,close:k,isMobile:d},t[35]=S,t[36]=d,t[37]=R,t[38]=a,t[39]=l,t[40]=c,t[41]=V,t[42]=p,t[43]=g,t[44]=H):H=t[44];const U=H;_=d?r.jsxs(ri,{open:u,onOpenChange:h,direction:"bottom",children:[r.jsxs("button",{type:"button",onClick:()=>h(!0),className:"flex items-center gap-3 w-full px-3 py-2.5 rounded-lg transition-colors text-sm text-sidebar-foreground/70 hover:bg-sidebar-accent hover:text-sidebar-foreground",children:[r.jsx("div",{className:"shrink-0 size-5 rounded-md flex items-center justify-center border border-border/50 overflow-hidden",style:b?.logo?void 0:Bo(b?.name??""),children:b?.logo?r.jsx("img",{src:b.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:"font-semibold leading-none text-[8px]",children:(b?.name??"?").slice(0,2).toUpperCase()})}),r.jsx("span",{className:"truncate",children:b?.name??"Account"})]}),r.jsxs(ii,{className:"h-[80dvh] p-0",children:[r.jsx(si,{className:"sr-only",children:"Account"}),r.jsx(lc,{...U})]})]}):r.jsxs(Us,{open:u,onOpenChange:h,children:[r.jsx(zs,{asChild:!0,children:r.jsx(Zt,{tooltip:b?.name??"Account",className:"rounded-md",children:r.jsx("div",{className:"shrink-0 size-6 rounded-md flex items-center justify-center border border-border/50 overflow-hidden",style:b?.logo?void 0:Bo(b?.name??""),children:b?.logo?r.jsx("img",{src:b.logo,alt:"",className:"size-full object-cover"}):r.jsx("span",{className:"font-semibold leading-none text-[9px]",children:(b?.name??"?").slice(0,2).toUpperCase()})})})}),r.jsx(Fs,{side:"right",align:"end",sideOffset:18,collisionPadding:16,className:"w-[520px] p-0 flex max-h-[520px]",onCloseAutoFocus:Ub,children:r.jsx(lc,{...U})})]}),t[1]=d,t[2]=i,t[3]=u,t[4]=a,t[5]=s,t[6]=l,t[7]=c,t[8]=p,t[9]=g,t[10]=_}else _=t[10];let v;t[45]!==f?(v=r.jsx(Db,{open:f,onOpenChange:m}),t[45]=f,t[46]=v):v=t[46];let x;return t[47]!==_||t[48]!==v?(x=r.jsxs(r.Fragment,{children:[_,v]}),t[47]=_,t[48]=v,t[49]=x):x=t[49],x}function Ub(t){return t.preventDefault()}function Hb(){re("signed_out",{source:"account_popover"}),dt.signOut()}function Wb({invitation:t}){const[e,s]=j.useState(!1),[i,n]=j.useState(!1),o=bt(),a=async()=>{s(!0);try{const c=await dt.organization.acceptInvitation({invitationId:t.id});if(c.error)he.error(c.error.message),s(!1);else{const d=await dt.organization.setActive({organizationId:t.organizationId});he.success("Invitation accepted!");const u=d?.data?.slug;window.location.href=u?`/${u}`:"/"}}catch{he.error("Failed to accept invitation"),s(!1)}},l=async()=>{n(!0);try{const c=await dt.organization.rejectInvitation({invitationId:t.id});c.error?(he.error(c.error.message),n(!1)):(he.success("Invitation declined"),o.invalidateQueries())}catch{he.error("Failed to decline invitation"),n(!1)}};return r.jsxs("div",{className:"flex items-center gap-3 px-5 py-4 border-b border-border last:border-0 hover:bg-muted/25 transition-colors",children:[r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:"text-xs text-muted-foreground",children:"You've been invited to join"}),r.jsx("p",{className:"text-sm font-medium truncate",children:t.organizationName??"Unknown organization"})]}),r.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[r.jsx(oe,{size:"icon",variant:"ghost",className:"size-7 text-green-600 hover:text-green-700 hover:bg-green-50 dark:hover:bg-green-950",onClick:a,disabled:e||i,"aria-label":"Accept invitation",children:r.jsx(Mt,{size:14})}),r.jsx(oe,{size:"icon",variant:"ghost",className:"size-7 text-muted-foreground hover:text-destructive hover:bg-destructive/10",onClick:l,disabled:e||i,"aria-label":"Decline invitation",children:r.jsx(Os,{size:14})})]})]})}function Kb(){const t=j.useContext(Wf),{data:e}=t.hooks.useListUserInvitations();return(e??[]).filter(i=>i.status==="pending"&&new Date(i.expiresAt)>new Date)}class qb extends j.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,s){}render(){return this.state.hasError?null:this.props.children}}function Gb(t){return t<=1?"text-destructive":t<=5?"text-amber-500 dark:text-amber-400":"text-foreground/70"}function Yb(){const t=B.c(19),e=Oe(),{org:s}=xe();let i;t[0]!==s.id?(i={connectionId:yt,orgId:s.id},t[0]=s.id,t[1]=i):i=t[1];const n=Ae(i);let o;t[2]===Symbol.for("react.memo_cache_sentinel")?(o={providerId:"deco"},t[2]=o):o=t[2];let a;t[3]!==n?(a={client:n,toolName:"AI_PROVIDER_CREDITS",toolArguments:o,staleTime:6e4,select:Xb},t[3]=n,t[4]=a):a=t[4];const{data:l,isPending:c,isError:d}=ni(a),u=l?.balanceCents!=null?l.balanceCents/100:null;let h;t[5]!==u||t[6]!==d||t[7]!==c?(h=c||d||u==null?"Credits":`Credits: $${u.toFixed(2)}`,t[5]=u,t[6]=d,t[7]=c,t[8]=h):h=t[8];const f=h;let m;t[9]!==u?(m=Y(u!=null&&Gb(u)),t[9]=u,t[10]=m):m=t[10];let p;t[11]!==e||t[12]!==s.slug?(p=()=>e({to:"/$org/settings/ai-providers",params:{org:s.slug}}),t[11]=e,t[12]=s.slug,t[13]=p):p=t[13];let g;t[14]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(Ta,{size:24}),t[14]=g):g=t[14];let _;return t[15]!==m||t[16]!==p||t[17]!==f?(_=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:f,className:m,onClick:p,children:g})})}),t[15]=m,t[16]=p,t[17]=f,t[18]=_):_=t[18],_}function Xb(t){return t.structuredContent}function Jb(){const t=B.c(1);if(!La().some(Qb))return null;let i;return t[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Yb,{}),t[0]=i):i=t[0],i}function Qb(t){return t.providerId==="deco"}function Zb(){const t=B.c(3),[e,s]=j.useState(!1);let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Connections",onClick:()=>{re("connections_dialog_opened",{source:"sidebar_footer",mode:"browse"}),s(!0)},children:r.jsx(mp,{size:24})})})}),t[0]=i):i=t[0];let n;return t[1]!==e?(n=r.jsxs(r.Fragment,{children:[i,r.jsx(Qa,{mode:"browse",open:e,onOpenChange:s,defaultTab:"all"})]}),t[1]=e,t[2]=n):n=t[2],n}function e0(){const t=B.c(11),e=Kb();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(yl,{size:24}),t[0]=s):s=t[0];let i;t[1]!==e.length?(i=e.length>0&&r.jsx("span",{className:"absolute top-1 right-1 size-2 rounded-full bg-red-500 pointer-events-none"}),t[1]=e.length,t[2]=i):i=t[2];let n;t[3]!==i?(n=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(zs,{asChild:!0,children:r.jsxs(Zt,{tooltip:"Inbox",className:"relative",children:[s,i]})})})}),t[3]=i,t[4]=n):n=t[4];let o;t[5]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"px-4 py-3 border-b border-border shrink-0",children:r.jsx("h3",{className:"text-sm font-medium",children:"Inbox"})}),t[5]=o):o=t[5];let a;t[6]!==e?(a=r.jsxs(Fs,{side:"right",align:"start",sideOffset:16,collisionPadding:16,className:"w-[min(400px,calc(100vw-2rem))] p-0 h-[min(650px,calc(100dvh-4rem))] flex flex-col",children:[o,e.length===0?r.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-2 px-6 text-center",children:[r.jsx(yl,{size:24,className:"text-muted-foreground/50"}),r.jsx("p",{className:"text-sm font-medium text-foreground",children:"No invites pending"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Organization invitations will appear here"})]}):r.jsx("div",{className:"overflow-y-auto flex-1",children:e.map(t0)})]}),t[6]=e,t[7]=a):a=t[7];let l;return t[8]!==n||t[9]!==a?(l=r.jsxs(Us,{children:[n,a]}),t[8]=n,t[9]=a,t[10]=l):l=t[10],l}function t0(t){return r.jsx(Wb,{invitation:t},t.id)}function s0(){const t=B.c(6),e=Oe(),{org:s}=xe();let i;t[0]!==e||t[1]!==s.slug?(i=()=>e({to:"/$org/settings",params:{org:s.slug}}),t[0]=e,t[1]=s.slug,t[2]=i):i=t[2];let n;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(kr,{size:24}),t[3]=n):n=t[3];let o;return t[4]!==i?(o=r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Settings",onClick:i,children:n})})}),t[4]=i,t[5]=o):o=t[5],o}function i0(){const t=B.c(5);let e,s,i,n;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(qb,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(Jb,{})})}),s=r.jsx(Zb,{}),i=r.jsx(e0,{}),n=r.jsx(s0,{}),t[0]=e,t[1]=s,t[2]=i,t[3]=n):(e=t[0],s=t[1],i=t[2],n=t[3]);let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(Sh,{className:"px-2 pb-3 gap-1",children:[e,s,i,n,r.jsx(es,{children:r.jsx(Pt,{children:r.jsx(cu,{})})})]}),t[4]=o):o=t[4],o}function r0(){const t=B.c(10),e=Oe(),{org:s}=xe(),{setOpenMobile:i}=Cr();let n;t[0]!==e||t[1]!==s.slug||t[2]!==i?(n=()=>{e({to:"/$org/settings",params:{org:s.slug}}),i(!1)},t[0]=e,t[1]=s.slug,t[2]=i,t[3]=n):n=t[3];let o;t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(kr,{}),t[4]=o):o=t[4];let a;t[5]!==n?(a=r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Settings",onClick:n,children:o})}),t[5]=n,t[6]=a):a=t[6];let l;t[7]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx(Pt,{children:r.jsx(cu,{})}),t[7]=l):l=t[7];let c;return t[8]!==a?(c=r.jsx(Sh,{children:r.jsxs(es,{children:[a,l]})}),t[8]=a,t[9]=c):c=t[9],c}var Za="ContextMenu",[n0]=em(Za,[Vd]),St=Vd(),[o0,du]=n0(Za),hu=t=>{const{__scopeContextMenu:e,children:s,onOpenChange:i,dir:n,modal:o=!0}=t,[a,l]=j.useState(!1),c=St(e),d=Kf(i),u=j.useCallback(h=>{l(h),d(h)},[d]);return r.jsx(o0,{scope:e,open:a,onOpenChange:u,modal:o,children:r.jsx(qf,{...c,dir:n,open:a,onOpenChange:u,modal:o,children:s})})};hu.displayName=Za;var uu="ContextMenuTrigger",fu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,disabled:i=!1,...n}=t,o=du(uu,s),a=St(s),l=j.useRef({x:0,y:0}),c=j.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...l.current})}),d=j.useRef(0),u=j.useCallback(()=>window.clearTimeout(d.current),[]),h=f=>{l.current={x:f.clientX,y:f.clientY},o.onOpenChange(!0)};return j.useEffect(()=>u,[u]),j.useEffect(()=>{i&&u()},[i,u]),r.jsxs(r.Fragment,{children:[r.jsx(Gf,{...a,virtualRef:c}),r.jsx(Yf.span,{"data-state":o.open?"open":"closed","data-disabled":i?"":void 0,...n,ref:e,style:{WebkitTouchCallout:"none",...t.style},onContextMenu:i?t.onContextMenu:Li(t.onContextMenu,f=>{u(),h(f),f.preventDefault()}),onPointerDown:i?t.onPointerDown:Li(t.onPointerDown,zr(f=>{u(),d.current=window.setTimeout(()=>h(f),700)})),onPointerMove:i?t.onPointerMove:Li(t.onPointerMove,zr(u)),onPointerCancel:i?t.onPointerCancel:Li(t.onPointerCancel,zr(u)),onPointerUp:i?t.onPointerUp:Li(t.onPointerUp,zr(u))})]})});fu.displayName=uu;var a0="ContextMenuPortal",mu=t=>{const{__scopeContextMenu:e,...s}=t,i=St(e);return r.jsx(Xf,{...i,...s})};mu.displayName=a0;var pu="ContextMenuContent",gu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=du(pu,s),o=St(s),a=j.useRef(!1);return r.jsx(Jf,{...o,...i,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:l=>{t.onCloseAutoFocus?.(l),!l.defaultPrevented&&a.current&&l.preventDefault(),a.current=!1},onInteractOutside:l=>{t.onInteractOutside?.(l),!l.defaultPrevented&&!n.modal&&(a.current=!0)},style:{...t.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});gu.displayName=pu;var l0="ContextMenuGroup",c0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(tm,{...n,...i,ref:e})});c0.displayName=l0;var d0="ContextMenuLabel",h0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(sm,{...n,...i,ref:e})});h0.displayName=d0;var u0="ContextMenuItem",_u=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(Qf,{...n,...i,ref:e})});_u.displayName=u0;var f0="ContextMenuCheckboxItem",m0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(im,{...n,...i,ref:e})});m0.displayName=f0;var p0="ContextMenuRadioGroup",g0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(rm,{...n,...i,ref:e})});g0.displayName=p0;var _0="ContextMenuRadioItem",x0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(nm,{...n,...i,ref:e})});x0.displayName=_0;var v0="ContextMenuItemIndicator",b0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(om,{...n,...i,ref:e})});b0.displayName=v0;var y0="ContextMenuSeparator",xu=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(Zf,{...n,...i,ref:e})});xu.displayName=y0;var S0="ContextMenuArrow",w0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(am,{...n,...i,ref:e})});w0.displayName=S0;var V0="ContextMenuSubTrigger",C0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(lm,{...n,...i,ref:e})});C0.displayName=V0;var k0="ContextMenuSubContent",j0=j.forwardRef((t,e)=>{const{__scopeContextMenu:s,...i}=t,n=St(s);return r.jsx(cm,{...n,...i,ref:e,style:{...t.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});j0.displayName=k0;function zr(t){return e=>e.pointerType!=="mouse"?t(e):void 0}var N0=hu,A0=fu,E0=mu,I0=gu,T0=_u,R0=xu;function M0(t){const e=B.c(4);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let i;return e[2]!==s?(i=r.jsx(N0,{"data-slot":"context-menu",...s}),e[2]=s,e[3]=i):i=e[3],i}function D0(t){const e=B.c(4);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let i;return e[2]!==s?(i=r.jsx(A0,{"data-slot":"context-menu-trigger",...s}),e[2]=s,e[3]=i):i=e[3],i}function P0(t){const e=B.c(8);let s,i;e[0]!==t?({className:s,...i}=t,e[0]=t,e[1]=s,e[2]=i):(s=e[1],i=e[2]);let n;e[3]!==s?(n=Y("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",s),e[3]=s,e[4]=n):n=e[4];let o;return e[5]!==i||e[6]!==n?(o=r.jsx(E0,{children:r.jsx(I0,{"data-slot":"context-menu-content",className:n,...i})}),e[5]=i,e[6]=n,e[7]=o):o=e[7],o}function cc(t){const e=B.c(12);let s,i,n,o;e[0]!==t?({className:s,inset:i,variant:o,...n}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=n,e[4]=o):(s=e[1],i=e[2],n=e[3],o=e[4]);const a=o===void 0?"default":o;let l;e[5]!==s?(l=Y("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),e[5]=s,e[6]=l):l=e[6];let c;return e[7]!==i||e[8]!==n||e[9]!==l||e[10]!==a?(c=r.jsx(T0,{"data-slot":"context-menu-item","data-inset":i,"data-variant":a,className:l,...n}),e[7]=i,e[8]=n,e[9]=l,e[10]=a,e[11]=c):c=e[11],c}function L0(t){const e=B.c(8);let s,i;e[0]!==t?({className:s,...i}=t,e[0]=t,e[1]=s,e[2]=i):(s=e[1],i=e[2]);let n;e[3]!==s?(n=Y("bg-border -mx-1 my-1 h-px",s),e[3]=s,e[4]=n):n=e[4];let o;return e[5]!==i||e[6]!==n?(o=r.jsx(R0,{"data-slot":"context-menu-separator",className:n,...i}),e[5]=i,e[6]=n,e[7]=o):o=e[7],o}function vu(t){const e=Oe(),s=bt(),i=Vh(),{locator:n}=xe(),o=_r({strict:!1}),a=ti({strict:!1});return async l=>{const c=crypto.randomUUID(),d=l===a.virtualmcpid?Dd(s,n,o.taskId??""):null;try{await i.create.mutateAsync({id:c,virtual_mcp_id:l,...d?{branch:d}:{}})}catch{}e({to:"/$org/$taskId",params:{org:t,taskId:c},search:{virtualmcpid:l}})}}function O0({agent:t,org:e,onUnpin:s,isDragging:i}){const n=Oe(),{isMobile:o,setOpenMobile:a}=Cr(),l=vu(e),d=yd({select:b=>b.location.pathname}).startsWith(`/${e}/${t.id}`),[u,h]=j.useState(null),f=j.useRef(null),m=j.useRef(null),p=j.useRef(!1);p.current=!!i,i&&(u||m.current)&&(m.current&&(clearTimeout(m.current),m.current=null),u&&h(null));const g=b=>{if(p.current)return;const y=b.currentTarget.getBoundingClientRect();m.current=setTimeout(()=>{p.current||h(y)},550)},_=b=>{m.current&&(clearTimeout(m.current),m.current=null),!(f.current&&b.relatedTarget instanceof Node&&f.current.contains(b.relatedTarget))&&h(null)},v=u?Math.round(u.height*.9):0,x=u?u.width+v:0;return r.jsx(M0,{children:r.jsxs(Pt,{className:Y(u&&"z-[55]"),children:[r.jsx(D0,{asChild:!0,children:r.jsx(Zt,{tooltip:u?void 0:t.title,isActive:d,onClick:()=>{re("sidebar_agent_pin_clicked",{agent_id:t.id,agent_title:t.title}),l(t.id),o&&a(!1)},onMouseEnter:g,onMouseLeave:_,children:r.jsx(Qt,{icon:t.icon,name:t.title,size:"xs",className:"w-full h-full [&_svg]:w-1/2 [&_svg]:h-1/2"})})}),r.jsxs(P0,{children:[r.jsxs(cc,{onClick:()=>{const b=crypto.randomUUID();n({to:"/$org/$taskId",params:{org:e,taskId:b},search:{virtualmcpid:t.id}})},children:[r.jsx(kr,{size:14}),"Settings"]}),r.jsx(L0,{}),r.jsxs(cc,{onClick:()=>{s(),d&&n({to:"/$org",params:{org:e}})},className:"",children:[r.jsx(Es,{size:14}),"Unpin"]})]}),u&&Ei.createPortal(r.jsx("button",{ref:f,type:"button",onMouseLeave:()=>h(null),onClick:b=>{b.stopPropagation(),h(null),s(),n({to:"/$org",params:{org:e}})},className:Y("flex items-center justify-center","bg-sidebar-accent text-muted-foreground","rounded-xl cursor-pointer","animate-in fade-in-0 slide-in-from-right-2","duration-150 [animation-timing-function:cubic-bezier(0.165,0.84,0.44,1)]","hover:text-foreground transition-colors"),style:{position:"fixed",top:u.top,left:u.left,height:u.height,width:x,paddingLeft:u.width,zIndex:50,boxShadow:"inset 0 0 0.5px 1px hsla(0, 0%, 100%, 0.075), 0 0 0 0.5px hsla(0, 0%, 0%, 0.12)"},children:r.jsx(Es,{size:14})}),document.body)]})})}function B0(t){const e=B.c(18);let s;e[0]!==t.agent.id?(s={id:t.agent.id},e[0]=t.agent.id,e[1]=s):s=e[1];const{attributes:i,listeners:n,setNodeRef:o,transform:a,transition:l,isDragging:c}=bg(s);let d;e[2]!==a?(d=yg.Transform.toString(a?{...a,x:0}:null),e[2]=a,e[3]=d):d=e[3];const u=c?.5:void 0,h=c?100:void 0;let f;e[4]!==d||e[5]!==u||e[6]!==h||e[7]!==l?(f={transform:d,transition:l,opacity:u,zIndex:h},e[4]=d,e[5]=u,e[6]=h,e[7]=l,e[8]=f):f=e[8];const m=f;let p;e[9]!==c||e[10]!==t?(p=r.jsx(O0,{...t,isDragging:c}),e[9]=c,e[10]=t,e[11]=p):p=e[11];let g;return e[12]!==i||e[13]!==n||e[14]!==o||e[15]!==m||e[16]!==p?(g=r.jsx("div",{ref:o,style:m,...i,...n,tabIndex:-1,className:"w-full",children:p}),e[12]=i,e[13]=n,e[14]=o,e[15]=m,e[16]=p,e[17]=g):g=e[17],g}function $0(t){const e=B.c(9),{agent:s,onClick:i}=t;let n;e[0]!==s.icon||e[1]!==s.title?(n=r.jsx(Qt,{icon:s.icon,name:s.title,size:"md",className:"transition-transform group-hover:scale-105"}),e[0]=s.icon,e[1]=s.title,e[2]=n):n=e[2];let o;e[3]!==s.title?(o=r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground line-clamp-2 w-full",children:s.title}),e[3]=s.title,e[4]=o):o=e[4];let a;return e[5]!==i||e[6]!==n||e[7]!==o?(a=r.jsxs("button",{type:"button",onClick:i,className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group",children:[n,o]}),e[5]=i,e[6]=n,e[7]=o,e[8]=a):a=e[8],a}function z0(t){const e=B.c(80),{onClose:s,onOpenImportDeco:i,onOpenGithubImport:n,onOpenSelfHealing:o,onOpenDiagnosticsModal:a,onOpenLeanCanvasModal:l,onOpenStudioPackModal:c,onOpenAiImageModal:d,onOpenAiResearchModal:u}=t,[h,f]=j.useState(""),m=Rn(),{org:p}=xe();let g;e[0]!==m?(g=m.filter(Y0).map(G0),e[0]=m,e[1]=g):g=e[1];const _=g,{pin:v,isPinned:x}=gh(p.id,_);let b;e[2]===Symbol.for("react.memo_cache_sentinel")?(b={navigateOnCreate:!0},e[2]=b):b=e[2];const{createVirtualMCP:y,isCreating:V}=_h(b),[C]=ei(),S=vu(p.slug),w=Sr();let k,T,M,I,E,N,A,D;if(e[3]!==m||e[4]!==y||e[5]!==V||e[6]!==x||e[7]!==w||e[8]!==S||e[9]!==s||e[10]!==d||e[11]!==u||e[12]!==a||e[13]!==n||e[14]!==i||e[15]!==l||e[16]!==o||e[17]!==c||e[18]!==v||e[19]!==C.experimental_vibecode||e[20]!==h){const q=h.toLowerCase();D=m.filter(q0).filter(se=>!h||se.title.toLowerCase().includes(q));let F;e[29]!==m?(F=m.some(K0),e[29]=m,e[30]=F):F=e[30];const W=F;k=jt.filter(se=>(!h||se.title.toLowerCase().includes(q))&&!(se.id==="studio-pack"&&W)&&!(se.id==="self-healing-storefront"&&!C.experimental_vibecode));let H;e[31]===Symbol.for("react.memo_cache_sentinel")?(H=jt.find(W0),e[31]=H):H=e[31];const U=H,X=U?m.find(se=>se.metadata?.type===U.id):void 0;let K;e[32]===Symbol.for("react.memo_cache_sentinel")?(K=jt.find(H0),e[32]=K):K=e[32];const G=K,ie=G?m.find(se=>se.metadata?.type===G.id):void 0;let te;e[33]===Symbol.for("react.memo_cache_sentinel")?(te=jt.find(U0),e[33]=te):te=e[33];const J=te,ae=J?m.find(se=>se.metadata?.type===J.id):void 0;let Z;e[34]===Symbol.for("react.memo_cache_sentinel")?(Z=jt.find(F0),e[34]=Z):Z=e[34];const de=Z,fe=de?m.find(se=>se.metadata?.type===de.id):void 0;let ye;e[35]!==x||e[36]!==S||e[37]!==s||e[38]!==v?(ye=se=>{x(se.id)||v(se.id),s(),f(""),S(se.id)},e[35]=x,e[36]=S,e[37]=s,e[38]=v,e[39]=ye):ye=e[39];const ge=ye,ce=se=>{s(),f(""),se==="self-healing-storefront"?o():se==="site-editor"?i():se==="site-diagnostics"?X?w(X.id):a():se==="lean-canvas"?ie?w(ie.id):l():se==="ai-image"?ae?w(ae.id):d():se==="ai-research"?fe?w(fe.id):u():se==="studio-pack"?c():S(se)};N="flex flex-col max-h-[min(640px,80dvh)]",e[40]!==h?(A=r.jsx(Sg,{value:h,onChange:f,placeholder:"Search agents..."}),e[40]=h,e[41]=A):A=e[41],T="overflow-y-auto flex-1 min-h-0 px-3 pb-3",e[42]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx("div",{className:"px-1 pt-3 pb-2",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Agents"})}),e[42]=M):M=e[42];let ue;e[43]!==y||e[44]!==s?(ue=async()=>{re("agent_create_new_clicked",{source:"browse_popover"}),await y(),s()},e[43]=y,e[44]=s,e[45]=ue):ue=e[45];let be,pe;e[46]===Symbol.for("react.memo_cache_sentinel")?(be=r.jsx("div",{className:"w-12 h-12 rounded-xl border-2 border-dashed border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-105",children:r.jsx(Dt,{size:16,className:"text-muted-foreground"})}),pe=r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground",children:"Create new"}),e[46]=be,e[47]=pe):(be=e[46],pe=e[47]);let Ce;e[48]!==V||e[49]!==ue?(Ce=r.jsxs("button",{type:"button",disabled:V,onClick:ue,className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group disabled:opacity-50 disabled:cursor-not-allowed",children:[be,pe]}),e[48]=V,e[49]=ue,e[50]=Ce):Ce=e[50];let Ie;e[51]!==s||e[52]!==n||e[53]!==C.experimental_vibecode?(Ie=C.experimental_vibecode&&r.jsxs("button",{type:"button",onClick:()=>{re("agent_import_clicked",{source:"github"}),n(),s()},className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group",children:[r.jsx("div",{className:"w-12 h-12 rounded-xl border-2 border-border flex items-center justify-center shrink-0 transition-transform group-hover:scale-105",children:r.jsx(ph,{className:"size-5 text-muted-foreground"})}),r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground",children:"Import GitHub"})]}),e[51]=s,e[52]=n,e[53]=C.experimental_vibecode,e[54]=Ie):Ie=e[54];let ee;e[55]!==ge?(ee=se=>r.jsx($0,{agent:se,onClick:()=>ge(se)},se.id),e[55]=ge,e[56]=ee):ee=e[56],I=r.jsxs("div",{className:"grid grid-cols-3 gap-1",children:[Ce,Ie,D.map(ee)]}),E=k.length>0&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"px-1 pt-4 pb-2",children:r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Agent templates"})}),r.jsx("div",{className:"grid grid-cols-3 gap-1",children:k.map(se=>r.jsxs("button",{type:"button",onClick:()=>{re("agent_template_clicked",{template_id:se.id,template_title:se.title}),ce(se.id)},className:"flex flex-col items-center gap-2 p-3 rounded-xl transition-colors hover:bg-accent cursor-pointer group disabled:opacity-50 disabled:cursor-not-allowed",children:[r.jsx(Qt,{icon:se.icon,name:se.title,size:"md",className:"transition-transform group-hover:scale-105"}),r.jsx("span",{className:"text-xs leading-tight text-center text-muted-foreground group-hover:text-foreground line-clamp-2 w-full",children:se.title})]},se.id))})]}),e[3]=m,e[4]=y,e[5]=V,e[6]=x,e[7]=w,e[8]=S,e[9]=s,e[10]=d,e[11]=u,e[12]=a,e[13]=n,e[14]=i,e[15]=l,e[16]=o,e[17]=c,e[18]=v,e[19]=C.experimental_vibecode,e[20]=h,e[21]=k,e[22]=T,e[23]=M,e[24]=I,e[25]=E,e[26]=N,e[27]=A,e[28]=D}else k=e[21],T=e[22],M=e[23],I=e[24],E=e[25],N=e[26],A=e[27],D=e[28];let L;e[57]!==k||e[58]!==V||e[59]!==h||e[60]!==D.length?(L=D.length===0&&k.length===0&&!V&&r.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:h?"No agents found":"No agents yet"}),e[57]=k,e[58]=V,e[59]=h,e[60]=D.length,e[61]=L):L=e[61];let R;e[62]!==T||e[63]!==M||e[64]!==I||e[65]!==E||e[66]!==L?(R=r.jsxs("div",{className:T,children:[M,I,E,L]}),e[62]=T,e[63]=M,e[64]=I,e[65]=E,e[66]=L,e[67]=R):R=e[67];let P;e[68]!==p.slug?(P={org:p.slug},e[68]=p.slug,e[69]=P):P=e[69];let O;e[70]!==s?(O=()=>s(),e[70]=s,e[71]=O):O=e[71];let z;e[72]!==P||e[73]!==O?(z=r.jsx("div",{className:"border-t border-border px-3 py-2.5",children:r.jsx(Cd,{to:"/$org/settings/agents",params:P,onClick:O,className:"text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center justify-center",children:"See all agents"})}),e[72]=P,e[73]=O,e[74]=z):z=e[74];let $;return e[75]!==R||e[76]!==z||e[77]!==N||e[78]!==A?($=r.jsxs("div",{className:N,children:[A,R,z]}),e[75]=R,e[76]=z,e[77]=N,e[78]=A,e[79]=$):$=e[79],$}function F0(t){return t.id==="ai-research"}function U0(t){return t.id==="ai-image"}function H0(t){return t.id==="lean-canvas"}function W0(t){return t.id==="site-diagnostics"}function K0(t){return Km(t.id)}function q0(t){return!lr(t.id)}function G0(t){return t.id}function Y0(t){return t.pinned}function X0(){const t=B.c(36),[e,s]=j.useState(!1),[i,n]=j.useState(!1),[o,a]=j.useState(!1),[l,c]=j.useState(!1),[d,u]=j.useState(!1),[h,f]=j.useState(!1),[m,p]=j.useState(!1),[g,_]=j.useState(!1),[v,x]=j.useState(!1),b=ms(),{setOpenMobile:y}=Cr();let V;t[0]!==b||t[1]!==y?(V=()=>{s(!1),b&&y(!1)},t[0]=b,t[1]=y,t[2]=V):V=t[2];const C=V;let S;t[3]!==C||t[4]!==e?(S=e&&r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex items-center justify-center py-8",children:r.jsx(wi,{className:"h-4 w-24"})}),children:r.jsx(z0,{onClose:C,onOpenImportDeco:()=>n(!0),onOpenGithubImport:()=>{a(!0),C()},onOpenSelfHealing:()=>{c(!0),C()},onOpenDiagnosticsModal:()=>u(!0),onOpenLeanCanvasModal:()=>f(!0),onOpenStudioPackModal:()=>p(!0),onOpenAiImageModal:()=>_(!0),onOpenAiResearchModal:()=>x(!0)})}),t[3]=C,t[4]=e,t[5]=S):S=t[5];const w=S;let k;t[6]!==b||t[7]!==e||t[8]!==w?(k=b?r.jsxs(r.Fragment,{children:[r.jsx(Pt,{children:r.jsx(Zt,{tooltip:"Browse agents",className:"bg-muted/75 hover:bg-sidebar-accent",onClick:()=>{re("agent_browser_opened",{surface:"mobile_drawer"}),s(!0)},children:r.jsx(Dt,{className:"!opacity-100"})})}),r.jsx(ri,{open:e,onOpenChange:s,direction:"bottom",children:r.jsxs(ii,{className:"max-h-[85dvh] p-0",children:[r.jsx(si,{className:"sr-only",children:"Browse agents"}),w]})})]}):r.jsxs(Us,{open:e,onOpenChange:P=>{P&&!e&&re("agent_browser_opened",{surface:"desktop_popover"}),s(P)},children:[r.jsx(Pt,{children:r.jsx(zs,{asChild:!0,children:r.jsx(Zt,{tooltip:"Browse agents",className:"bg-muted/75 hover:bg-sidebar-accent",children:r.jsx(Dt,{className:"!opacity-100"})})})}),r.jsx(Fs,{className:"w-[380px] p-0 overflow-hidden",side:"right",align:"start",children:w})]}),t[6]=b,t[7]=e,t[8]=w,t[9]=k):k=t[9];let T;t[10]!==i?(T=r.jsx(fn,{open:i,onOpenChange:n}),t[10]=i,t[11]=T):T=t[11];let M;t[12]!==o?(M=r.jsx(hh,{open:o,onOpenChange:a}),t[12]=o,t[13]=M):M=t[13];let I;t[14]!==l?(I=r.jsx(Zh,{open:l,onOpenChange:c}),t[14]=l,t[15]=I):I=t[15];let E;t[16]!==d?(E=r.jsx(uh,{open:d,onOpenChange:u}),t[16]=d,t[17]=E):E=t[17];let N;t[18]!==h?(N=r.jsx(fh,{open:h,onOpenChange:f}),t[18]=h,t[19]=N):N=t[19];let A;t[20]!==m?(A=r.jsx(mh,{open:m,onOpenChange:p}),t[20]=m,t[21]=A):A=t[21];let D;t[22]!==g?(D=r.jsx(Jh,{open:g,onOpenChange:_}),t[22]=g,t[23]=D):D=t[23];let L;t[24]!==v?(L=r.jsx(Qh,{open:v,onOpenChange:x}),t[24]=v,t[25]=L):L=t[25];let R;return t[26]!==L||t[27]!==k||t[28]!==T||t[29]!==M||t[30]!==I||t[31]!==E||t[32]!==N||t[33]!==A||t[34]!==D?(R=r.jsxs(r.Fragment,{children:[k,T,M,I,E,N,A,D,L]}),t[26]=L,t[27]=k,t[28]=T,t[29]=M,t[30]=I,t[31]=E,t[32]=N,t[33]=A,t[34]=D,t[35]=R):R=t[35],R}function J0(){const t=B.c(34),e=Rn(),{org:s}=xe();let i;t[0]!==e?(i=e.filter(ty).map(ey),t[0]=e,t[1]=i):i=t[1];const n=i,{pinnedIds:o,unpin:a,reorder:l}=gh(s.id,n),c=new Map(e.map(Z0)),d=o.map(R=>c.get(R)).filter(Q0);let u;t[2]===Symbol.for("react.memo_cache_sentinel")?(u={activationConstraint:{distance:5}},t[2]=u):u=t[2];let h;t[3]===Symbol.for("react.memo_cache_sentinel")?(h={coordinateGetter:xg},t[3]=h):h=t[3];const f=hg(Tl(fg,u),Tl(ug,h));let m;t[4]!==o||t[5]!==l?(m=R=>{const{active:P,over:O}=R;if(!O||P.id===O.id)return;const z=o.indexOf(P.id),$=o.indexOf(O.id);z===-1||$===-1||l(vg([...o],z,$))},t[4]=o,t[5]=l,t[6]=m):m=t[6];const p=m,g=wr,_="py-0 px-0 mt-2 flex-1 min-h-0";let v;t[7]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"h-px bg-border mx-2 mb-2"}),t[7]=v):v=t[7];const x=Vr,b="flex flex-1 min-h-0 flex-col overflow-y-auto [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden",y=es,V="gap-2";let C;t[8]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(X0,{}),t[8]=C):C=t[8];const S=gg,w=_g,k=mg,T=pg;let M;t[9]!==s.slug||t[10]!==a?(M=R=>r.jsx(B0,{agent:R,org:s.slug,onUnpin:()=>a(R.id)},R.id),t[9]=s.slug,t[10]=a,t[11]=M):M=t[11];const I=d.map(M);let E;t[12]!==k||t[13]!==o||t[14]!==T||t[15]!==I?(E=r.jsx(k,{items:o,strategy:T,children:I}),t[12]=k,t[13]=o,t[14]=T,t[15]=I,t[16]=E):E=t[16];let N;t[17]!==S||t[18]!==p||t[19]!==f||t[20]!==E||t[21]!==w?(N=r.jsx(S,{sensors:f,collisionDetection:w,onDragEnd:p,children:E}),t[17]=S,t[18]=p,t[19]=f,t[20]=E,t[21]=w,t[22]=N):N=t[22];let A;t[23]!==y||t[24]!==N||t[25]!==C?(A=r.jsxs(y,{className:V,children:[C,N]}),t[23]=y,t[24]=N,t[25]=C,t[26]=A):A=t[26];let D;t[27]!==x||t[28]!==A?(D=r.jsx(x,{className:b,children:A}),t[27]=x,t[28]=A,t[29]=D):D=t[29];let L;return t[30]!==g||t[31]!==D||t[32]!==v?(L=r.jsxs(g,{className:_,children:[v,D]}),t[30]=g,t[31]=D,t[32]=v,t[33]=L):L=t[33],L}function Q0(t){return!!t}function Z0(t){return[t.id,t]}function ey(t){return t.id}function ty(t){return t.pinned}function bu(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:r.jsx(wr,{className:"py-0 px-0",children:r.jsx(Vr,{children:r.jsx(es,{className:"gap-2",children:r.jsx(Pt,{children:r.jsxs("div",{className:"flex items-center gap-2 px-2 py-2",children:[r.jsx(wi,{className:"h-4 w-4 rounded"}),r.jsx(wi,{className:"h-4 flex-1"})]})})})})}),children:r.jsx(J0,{})}),t[0]=e):e=t[0],e}function sy(){const t=B.c(4),e=ru();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(i0,{}),t[0]=s):s=t[0];let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(ls,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(bu,{})})}),t[1]=i):i=t[1];let n;return t[2]!==e?(n=r.jsx(au,{sections:e,footer:s,additionalContent:i}),t[2]=e,t[3]=n):n=t[3],n}function iy(t){const e=B.c(5),{onClose:s}=t,i=ru();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(r0,{}),e[0]=n):n=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(ls,{children:r.jsx(j.Suspense,{fallback:null,children:r.jsx(bu,{})})}),e[1]=o):o=e[1];let a;return e[2]!==s||e[3]!==i?(a=r.jsx(Rb,{sections:i,onClose:s,footer:n,additionalContent:o}),e[2]=s,e[3]=i,e[4]=a):a=e[4],a}async function ry(t,e,s){const i=await t.callTool({name:e,arguments:s});if(i.isError){const n=i.content?.[0]?.text??`Tool ${e} failed without a message`;throw new Error(n)}return i}const yu=["VM_START"],Fr=new Map,ny=t=>`${t.virtualMcpId}::${t.branch??""}`;function el(t){const e=bt();return Ni({mutationKey:yu,mutationFn:async s=>{const i=ny(s),n=Fr.get(i);if(n)return n;const o=(async()=>(await ry(t,"VM_START",s)).structuredContent)();Fr.set(i,o);try{return await o}finally{Fr.get(i)===o&&Fr.delete(i)}},onSuccess:()=>{Xr(e)}})}function oy(t,e){const s=B.c(3);let i;return s[0]!==e||s[1]!==t?(i={mutationKey:yu,predicate:o=>{if(!t)return!1;const a=o.state.variables;return!a||a.virtualMcpId!==t?!1:(a.branch??"")===(e??"")}},s[0]=e,s[1]=t,s[2]=i):i=s[2],Dg(i)>0}function ay(t,e){return t===1?!0:t===0?!1:e}function ly(t){const e=t.entityMetadata?.defaultMainView??null,s=e==null||e.type==="chat",i=t.mainParamPresent?t.mainParamValue!=="0":!s,n=s?!0:t.entityMetadata?.chatDefaultOpen??!1;return{mainOpen:i,chatOpen:n}}function dc(t,e){return t&&e?{chat:45,main:55}:t&&!e?{chat:100,main:0}:!t&&e?{chat:0,main:100}:{chat:0,main:0}}function cy(t,e){return t===1?!0:t===0?!1:e}function dy(t,e){const s=Oe(),i=ti({strict:!1}),n=_r({strict:!1}),o=bt(),a=Vh(),{locator:l}=xe(),{virtualMcpId:c,orgSlug:d,isAgentRoute:u}=e,h=ly({entityMetadata:t,mainParamPresent:i.main!==void 0,mainParamValue:i.main}),f=cy(i.chat,h.chatOpen),m=h.mainOpen,p=j.useRef(crypto.randomUUID()),g=n.taskId??p.current,_="/$org/$taskId",v=T=>({org:d,taskId:T}),x=u?{virtualmcpid:c}:{},b=(T,M)=>{s({to:_,params:v(g),search:I=>({...I,...T}),replace:M?.replace??!1})},y=(T,M)=>{s({to:_,params:v(T),search:I=>{const E={};return M?E.virtualmcpid=M:u&&(E.virtualmcpid=c),I.tasks&&(E.tasks=I.tasks),E}})},V=()=>{m?b({main:"0"},{replace:!0}):b({main:km(t)},{replace:!0})},C=()=>{b({chat:f?0:1},{replace:!0})},S=()=>{f||b({chat:1},{replace:!0})},w=async()=>{const T=crypto.randomUUID(),M=Dd(o,l,g);try{await a.create.mutateAsync({id:T,virtual_mcp_id:c,...M?{branch:M}:{}})}catch{}s({to:_,params:v(T),search:I=>{const E={...x,chat:1};return I.tasks&&(E.tasks=I.tasks),E}})},k=T=>{b({main:T},{replace:!0})};return{taskId:g,mainOpen:m,chatOpen:f,mainParam:i.main,setTaskId:y,toggleMain:V,toggleChat:C,openChat:S,createNewTask:w,openTab:k}}const tl=j.createContext(null);function hy(t){const e=B.c(15),{children:s}=t,i=Oe();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},e[0]=n):n=e[0];const o=ti(n);let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a={owner:"all",status:"open"},e[1]=a):a=e[1];const{tasks:l}=Co(a);let c;e[2]!==o.tasks||e[3]!==l.length?(c=()=>ay(o.tasks,l.length>0),e[2]=o.tasks,e[3]=l.length,e[4]=c):c=e[4];const[d,u]=j.useState(c);let h,f;e[5]!==i||e[6]!==d?(h=()=>{i({search:(v=>({...v,tasks:d?1:0})),replace:!0})},f=[d,i],e[5]=i,e[6]=d,e[7]=h,e[8]=f):(h=e[7],f=e[8]),j.useEffect(h,f);let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=()=>u(uy),e[9]=m):m=e[9];const p=m;let g;e[10]!==d?(g={tasksOpen:d,toggleTasks:p},e[10]=d,e[11]=g):g=e[11];let _;return e[12]!==s||e[13]!==g?(_=r.jsx(tl.Provider,{value:g,children:s}),e[12]=s,e[13]=g,e[14]=_):_=e[14],_}function uy(t){return!t}function Su(){const t=j.useContext(tl);if(!t)throw new Error("useTasksPanelState must be used inside <TasksPanelStateProvider>");return t}function fy(){return j.useContext(tl)}const wu=j.createContext(null);function Hs(){const t=j.use(wu);if(!t)throw new Error("Toolbar.* must be used inside <Toolbar>");return t}function Re(t){const e=B.c(10),{children:s}=t,[i,n]=j.useState(null),[o,a]=j.useState(null),[l,c]=j.useState(null),[d,u]=j.useState(null);let h;e[0]!==l||e[1]!==d||e[2]!==o||e[3]!==i?(h={togglesEl:i,setTogglesEl:n,tabsEl:o,setTabsEl:a,centerEl:l,setCenterEl:c,rightEl:d,setRightEl:u},e[0]=l,e[1]=d,e[2]=o,e[3]=i,e[4]=h):h=e[4];let f;e[5]!==s?(f=r.jsx("div",{className:"flex flex-col h-full min-h-0",children:s}),e[5]=s,e[6]=f):f=e[6];let m;return e[7]!==h||e[8]!==f?(m=r.jsx(wu,{value:h,children:f}),e[7]=h,e[8]=f,e[9]=m):m=e[9],m}function my(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"shrink-0 grid grid-cols-3 items-center pl-1 pr-2 pt-0.25 h-12",children:s}),e[0]=s,e[1]=i):i=e[1],i}function py(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"flex items-center gap-0.5 min-w-0 justify-self-start",children:s}),e[0]=s,e[1]=i):i=e[1],i}function gy(t){const e=B.c(2),{children:s}=t;let i;return e[0]!==s?(i=r.jsx("div",{className:"flex items-center justify-end gap-0.5 min-w-0 justify-self-end",children:s}),e[0]=s,e[1]=i):i=e[1],i}function _y(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("button",{type:"button",onClick:vy,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground transition-colors",title:"Go back",children:r.jsx(Eo,{size:16})}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs(r.Fragment,{children:[e,r.jsx("button",{type:"button",onClick:xy,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground transition-colors",title:"Go forward",children:r.jsx($a,{size:16})})]}),t[1]=s):s=t[1],s}function xy(){return window.history.forward()}function vy(){return window.history.back()}function by(){const t=B.c(2),{setCenterEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"min-w-0 flex items-center justify-center gap-2"}),t[0]=e,t[1]=s):s=t[1],s}function yy(t){const e=B.c(3),{children:s}=t,{centerEl:i}=Hs();if(!i)return null;let n;return e[0]!==i||e[1]!==s?(n=Ei.createPortal(s,i),e[0]=i,e[1]=s,e[2]=n):n=e[2],n}function Sy(){const t=B.c(2),{setTabsEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"shrink-0 flex items-center overflow-x-auto"}),t[0]=e,t[1]=s):s=t[1],s}function wy(t){const e=B.c(3),{children:s}=t,{tabsEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}function Vy(){const t=B.c(2),{setTogglesEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"flex items-center gap-0.5 shrink-0 ml-0.5"}),t[0]=e,t[1]=s):s=t[1],s}function Cy(t){const e=B.c(3),{children:s}=t,{togglesEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}function ky(){const t=B.c(2),{setRightEl:e}=Hs();let s;return t[0]!==e?(s=r.jsx("div",{ref:e,className:"flex items-center justify-end gap-0.5 shrink-0"}),t[0]=e,t[1]=s):s=t[1],s}function jy(t){const e=B.c(3),{children:s}=t,{rightEl:i}=Hs();if(!i)return null;let n;return e[0]!==s||e[1]!==i?(n=Ei.createPortal(s,i),e[0]=s,e[1]=i,e[2]=n):n=e[2],n}Re.Header=my;Re.LeftColumn=py;Re.RightColumn=gy;Re.Nav=_y;Re.CenterSlot=by;Re.Center=yy;Re.TabsSlot=Sy;Re.Tabs=wy;Re.TogglesSlot=Vy;Re.Toggles=Cy;Re.RightSlot=ky;Re.Right=jy;const Ny=280;function Ay(){const t=B.c(2),{tasksOpen:e}=Su();if(!e)return null;let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={width:`${Ny}px`},t[0]=s):s=t[0];let i;return t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("aside",{className:"shrink-0 h-full bg-sidebar pb-1",style:s,children:r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:r.jsx(iu,{})})})}),t[1]=i):i=t[1],i}function Ey(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(j.Suspense,{fallback:null,children:r.jsx(Ay,{})}),t[0]=e):e=t[0],e}const Iy={settings:rp,automations:Fd,env:Ia,preview:Qd,git:er};function hc(t){const e=vr(t);if(e.type==="icon"){const s=br(e.name);return s?{kind:"component",Component:s}:null}return e.type==="url"?{kind:"url",src:e.url}:null}function io(t){if(t.kind==="system")return{kind:"component",Component:Iy[t.tabId]};const e=hc(t.iconUrl);if(e)return e;if(!t.appId)return{kind:"fallback"};const s=t.connections.find(n=>n.id===t.appId);if(!s)return{kind:"fallback"};const i=hc(s.icon);return i||{kind:"fallback"}}function Ty(t){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),{data:i}=bd({queryKey:Ze.threadMetadata(t),queryFn:async()=>{if(!s||!t)return null;try{const n=await s.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}});return(n.structuredContent??n).item?.metadata??null}catch{return null}},staleTime:3e4});return i}function Vu(t){const e=B.c(8),s=Oe();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},e[0]=i):i=e[0];const n=ti(i),o=$t(t.virtualMcpId),a=Ty(t.taskId),{currentBranch:l}=Lt(),c=o?.metadata?.ui??null,d=c?.layout??null,u=d?.tabs??[],h=c?.pinnedViews??[],f=a?.expanded_tools??[],m=!!(o&&bs(o));let p;e[1]===Symbol.for("react.memo_cache_sentinel")?(p={includeVirtual:!0},e[1]=p):p=e[1];const g=yr(p),{activeTab:_,mainOpen:v}=jm({mainParam:n.main,metadata:d?{defaultMainView:d.defaultMainView??null,tabs:u.map(Ry)}:null}),x=Ad(_),b=[];m&&(b.push({id:"preview",title:"Preview"}),b.push({id:"env",title:"Terminal"}),b.push({id:"git",title:l??"git"})),b.push({id:"settings",title:"Settings"}),b.push({id:"automations",title:"Automations"});const y=new Map;for(const k of f){const T=jo(k.appId,k.toolName);y.set(T,{id:T,title:k.toolName,appId:k.appId,iconKey:k.toolName})}for(const k of h){const T=jo(k.connectionId,k.toolName);y.set(T,{id:T,title:k.label||k.toolName,appId:k.connectionId,iconKey:k.toolName,iconUrl:k.icon??null})}let V;e[2]!==g?(V=k=>({id:k.id,title:k.title,kind:"agent",icon:io({tabId:k.id,kind:"agent",appId:k.view.appId,connections:g})}),e[2]=g,e[3]=V):V=e[3];const C=[...u.map(V),...Array.from(y.values()).map(k=>({id:k.id,title:k.title,kind:"expanded",icon:io({tabId:k.iconKey,kind:"expanded",appId:k.appId,iconUrl:k.iconUrl,connections:g})})),...b.map(k=>({id:k.id,title:k.title,kind:"system",icon:io({tabId:k.id,kind:"system",connections:g})}))];let S;return e[4]!==_||e[5]!==v||e[6]!==s?(S=k=>{const T=Nm({clickedId:k,activeTab:_,mainOpen:v});s({to:".",search:M=>({...M,main:T}),replace:!0})},e[4]=_,e[5]=v,e[6]=s,e[7]=S):S=e[7],{activeTab:_,mainOpen:v,setActiveTab:S,systemTabs:b,layoutTabs:u,expandedTools:f,automationTabParsed:x,tabs:C}}function Ry(t){return{id:t.id}}function My(t){const e=B.c(84),{value:s,onChange:i,onColorChange:n,name:o,size:a,className:l,avatarClassName:c,showHoverOverlay:d,disabled:u}=t,h=a===void 0?"lg":a,f=d===void 0?!0:d,m=u===void 0?!1:u,[p,g]=j.useState(!1),[_,v]=j.useState("icons"),[x,b]=j.useState(""),[y,V]=j.useState("blue");let C;e[0]!==s?(C=vr(s),e[0]=s,e[1]=C):C=e[1];const S=C,w=S.type==="icon"||S.type==="url"&&S.color?S.color:y;let k;e[2]!==i||e[3]!==w?(k=pe=>{i(Yn(pe,w))},e[2]=i,e[3]=w,e[4]=k):k=e[4];const T=k;let M;e[5]!==i||e[6]!==n||e[7]!==S.name||e[8]!==S.type||e[9]!==S.url?(M=pe=>{V(pe),n?.(pe),S.type==="icon"?i(Yn(S.name,pe)):S.type==="url"&&i(Sl(S.url,pe))},e[5]=i,e[6]=n,e[7]=S.name,e[8]=S.type,e[9]=S.url,e[10]=M):M=e[10];const I=M;let E;e[11]!==i||e[12]!==w?(E=pe=>{i(Sl(pe,w)),g(!1)},e[11]=i,e[12]=w,e[13]=E):E=e[13];const N=E;let A;e[14]!==i||e[15]!==w?(A=()=>{const pe=Ma(),Ce=pe[Math.floor(Math.random()*pe.length)];i(Yn(Ce,w))},e[14]=i,e[15]=w,e[16]=A):A=e[16];const D=A;let L,R,P,O,z,$,q,F;if(e[17]!==l||e[18]!==m||e[19]!==p||e[20]!==h){const pe={xs:"rounded-md",sm:"rounded-lg","sm+":"rounded-xl",md:"rounded-xl",lg:"rounded-2xl",xl:"rounded-2xl"};R=Us,$=m?!1:p,q=g,L=zs,z=!0,F="button",P=m,O=Y("relative group overflow-hidden",m?"cursor-default opacity-50":"cursor-pointer",pe[h],l),e[17]=l,e[18]=m,e[19]=p,e[20]=h,e[21]=L,e[22]=R,e[23]=P,e[24]=O,e[25]=z,e[26]=$,e[27]=q,e[28]=F}else L=e[21],R=e[22],P=e[23],O=e[24],z=e[25],$=e[26],q=e[27],F=e[28];let W;e[29]!==c||e[30]!==o||e[31]!==h||e[32]!==s?(W=r.jsx(Qt,{icon:s,name:o,size:h,className:c}),e[29]=c,e[30]=o,e[31]=h,e[32]=s,e[33]=W):W=e[33];let H;e[34]!==m||e[35]!==f?(H=f&&!m&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity",children:r.jsx(Ra,{size:16,className:"text-white"})}),e[34]=m,e[35]=f,e[36]=H):H=e[36];let U;e[37]!==P||e[38]!==O||e[39]!==W||e[40]!==H||e[41]!==F?(U=r.jsxs("button",{type:F,disabled:P,className:O,children:[W,H]}),e[37]=P,e[38]=O,e[39]=W,e[40]=H,e[41]=F,e[42]=U):U=e[42];let X;e[43]!==L||e[44]!==z||e[45]!==U?(X=r.jsx(L,{asChild:z,children:U}),e[43]=L,e[44]=z,e[45]=U,e[46]=X):X=e[46];let K;e[47]!==o||e[48]!==s?(K=r.jsx("div",{className:"flex items-center justify-center py-4",children:r.jsx(Qt,{icon:s,name:o,size:"xl"})}),e[47]=o,e[48]=s,e[49]=K):K=e[49];let G;e[50]===Symbol.for("react.memo_cache_sentinel")?(G=()=>v("icons"),e[50]=G):G=e[50];const ie=_==="icons"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let te;e[51]!==ie?(te=Y("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",ie),e[51]=ie,e[52]=te):te=e[52];let J;e[53]!==te?(J=r.jsx("button",{type:"button",onClick:G,className:te,children:"Icons"}),e[53]=te,e[54]=J):J=e[54];let ae;e[55]===Symbol.for("react.memo_cache_sentinel")?(ae=()=>v("upload"),e[55]=ae):ae=e[55];const Z=_==="upload"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let de;e[56]!==Z?(de=Y("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",Z),e[56]=Z,e[57]=de):de=e[57];let fe;e[58]!==de?(fe=r.jsx("button",{type:"button",onClick:ae,className:de,children:"Upload"}),e[58]=de,e[59]=fe):fe=e[59];let ye;e[60]===Symbol.for("react.memo_cache_sentinel")?(ye=r.jsx("div",{className:"flex-1"}),e[60]=ye):ye=e[60];let ge;e[61]!==J||e[62]!==fe?(ge=r.jsxs("div",{className:"flex items-center border-b border-border px-3",children:[J,fe,ye]}),e[61]=J,e[62]=fe,e[63]=ge):ge=e[63];let ce;e[64]!==I||e[65]!==D||e[66]!==T||e[67]!==N||e[68]!==S.name||e[69]!==S.type||e[70]!==x||e[71]!==w||e[72]!==_?(ce=_==="icons"?r.jsx(Oy,{search:x,onSearchChange:b,selectedColor:w,onColorChange:I,onSelectIcon:T,onRandom:D,currentIconName:S.type==="icon"?S.name:null}):r.jsx(By,{onUpload:N}),e[64]=I,e[65]=D,e[66]=T,e[67]=N,e[68]=S.name,e[69]=S.type,e[70]=x,e[71]=w,e[72]=_,e[73]=ce):ce=e[73];let ue;e[74]!==K||e[75]!==ge||e[76]!==ce?(ue=r.jsx(Fs,{align:"start",className:"w-80 p-0",onOpenAutoFocus:Dy,children:r.jsxs("div",{className:"flex flex-col",children:[K,ge,ce]})}),e[74]=K,e[75]=ge,e[76]=ce,e[77]=ue):ue=e[77];let be;return e[78]!==R||e[79]!==$||e[80]!==q||e[81]!==X||e[82]!==ue?(be=r.jsxs(R,{open:$,onOpenChange:q,children:[X,ue]}),e[78]=R,e[79]=$,e[80]=q,e[81]=X,e[82]=ue,e[83]=be):be=e[83],be}function Dy(t){return t.preventDefault()}function Py(t){const e=B.c(27),{selectedColor:s,onColorChange:i}=t,[n,o]=j.useState(!1);let a,l,c,d,u,h,f;if(e[0]!==n||e[1]!==s){const x=Ud(s);l=Us,h=n,f=o,a=zs,u=!0,c="button",d=Y("h-6 w-6 rounded-full shrink-0 ring-2 ring-offset-2 ring-offset-background transition-all cursor-pointer hover:scale-110",x.dot,"ring-foreground/20"),e[0]=n,e[1]=s,e[2]=a,e[3]=l,e[4]=c,e[5]=d,e[6]=u,e[7]=h,e[8]=f}else a=e[2],l=e[3],c=e[4],d=e[5],u=e[6],h=e[7],f=e[8];let m;e[9]!==c||e[10]!==d?(m=r.jsx("button",{type:c,className:d,title:"Change color"}),e[9]=c,e[10]=d,e[11]=m):m=e[11];let p;e[12]!==a||e[13]!==u||e[14]!==m?(p=r.jsx(a,{asChild:u,children:m}),e[12]=a,e[13]=u,e[14]=m,e[15]=p):p=e[15];let g;e[16]!==i||e[17]!==s?(g=op.map(x=>r.jsx("button",{type:"button",onClick:()=>{i(x.name),o(!1)},className:Y("h-5 w-5 rounded-full transition-all shrink-0 cursor-pointer",x.dot,s===x.name?"ring-2 ring-offset-1 ring-offset-background ring-foreground/30 scale-110":"hover:scale-110"),title:x.name},x.name)),e[16]=i,e[17]=s,e[18]=g):g=e[18];let _;e[19]!==g?(_=r.jsx(Fs,{align:"start",side:"right",sideOffset:8,className:"w-auto p-2",onOpenAutoFocus:Ly,children:r.jsx("div",{className:"grid grid-cols-4 gap-1",children:g})}),e[19]=g,e[20]=_):_=e[20];let v;return e[21]!==l||e[22]!==h||e[23]!==f||e[24]!==p||e[25]!==_?(v=r.jsxs(l,{open:h,onOpenChange:f,children:[p,_]}),e[21]=l,e[22]=h,e[23]=f,e[24]=p,e[25]=_,e[26]=v):v=e[26],v}function Ly(t){return t.preventDefault()}function Oy(t){const e=B.c(44),{search:s,onSearchChange:i,selectedColor:n,onColorChange:o,onSelectIcon:a,onRandom:l,currentIconName:c}=t;let d,u,h,f,m,p,g;if(e[0]!==c||e[1]!==o||e[2]!==l||e[3]!==i||e[4]!==a||e[5]!==s||e[6]!==n){const y=Ma(),V=Ud(n);u=s.trim()?y.filter(I=>{const E=Ao(I),N=s.toLowerCase();return E.includes(N)||I.toLowerCase().includes(N)}):y,p="flex flex-col";let C;e[14]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(jh,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[14]=C):C=e[14];let S;e[15]!==i?(S=I=>i(I.target.value),e[15]=i,e[16]=S):S=e[16];let w;e[17]!==s||e[18]!==S?(w=r.jsxs("div",{className:"relative flex-1",children:[C,r.jsx(at,{value:s,onChange:S,placeholder:"Filter...",className:"h-8 text-xs pl-7"})]}),e[17]=s,e[18]=S,e[19]=w):w=e[19];let k;e[20]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx(np,{size:14,className:"text-muted-foreground"}),e[20]=k):k=e[20];let T;e[21]!==l?(T=r.jsx("button",{type:"button",onClick:l,className:"h-8 w-8 flex items-center justify-center rounded-md border border-border hover:bg-accent transition-colors shrink-0",title:"Random icon",children:k}),e[21]=l,e[22]=T):T=e[22];let M;e[23]!==o||e[24]!==n?(M=r.jsx(Py,{selectedColor:n,onColorChange:o}),e[23]=o,e[24]=n,e[25]=M):M=e[25],e[26]!==T||e[27]!==M||e[28]!==w?(g=r.jsxs("div",{className:"flex items-center gap-2 px-3 py-2",children:[w,T,M]}),e[26]=T,e[27]=M,e[28]=w,e[29]=g):g=e[29],d=Ed,m="h-56",h="grid grid-cols-9 gap-0.5 px-2 pb-2",f=u.map(I=>{const E=br(I);return E?r.jsx("button",{type:"button",onClick:()=>a(I),className:Y("h-8 w-8 flex items-center justify-center rounded-md transition-colors cursor-pointer",c===I?Y(V.bg,V.text):Y(V.text,"hover:bg-accent")),title:I,children:r.jsx(E,{size:18})},I):null}),e[0]=c,e[1]=o,e[2]=l,e[3]=i,e[4]=a,e[5]=s,e[6]=n,e[7]=d,e[8]=u,e[9]=h,e[10]=f,e[11]=m,e[12]=p,e[13]=g}else d=e[7],u=e[8],h=e[9],f=e[10],m=e[11],p=e[12],g=e[13];let _;e[30]!==h||e[31]!==f?(_=r.jsx("div",{className:h,children:f}),e[30]=h,e[31]=f,e[32]=_):_=e[32];let v;e[33]!==u.length?(v=u.length===0&&r.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No icons found"}),e[33]=u.length,e[34]=v):v=e[34];let x;e[35]!==d||e[36]!==m||e[37]!==_||e[38]!==v?(x=r.jsxs(d,{className:m,children:[_,v]}),e[35]=d,e[36]=m,e[37]=_,e[38]=v,e[39]=x):x=e[39];let b;return e[40]!==p||e[41]!==g||e[42]!==x?(b=r.jsxs("div",{className:p,children:[g,x]}),e[40]=p,e[41]=g,e[42]=x,e[43]=b):b=e[43],b}function By(t){const e=B.c(27),{onUpload:s}=t,i=j.useRef(null);let n;e[0]!==s?(n=C=>{const S=C.target.files?.[0];if(!S)return;if(S.size>2097152){he.error("Image must be smaller than 2MB"),C.target.value="";return}const w=new FileReader;w.onerror=()=>{he.error("Failed to read image file"),i.current&&(i.current.value="")},w.onloadend=()=>{w.readyState===FileReader.DONE&&w.result&&s(w.result),i.current&&(i.current.value="")},w.readAsDataURL(S)},e[0]=s,e[1]=n):n=e[1];const o=n,[a,l]=j.useState("");let c;e[2]!==s||e[3]!==a?(c=()=>{const C=a.trim();C&&(s(C),l(""))},e[2]=s,e[3]=a,e[4]=c):c=e[4];const d=c;let u;e[5]!==o?(u=r.jsx("input",{type:"file",ref:i,className:"hidden",accept:"image/*",onChange:o}),e[5]=o,e[6]=u):u=e[6];let h;e[7]===Symbol.for("react.memo_cache_sentinel")?(h=()=>i.current?.click(),e[7]=h):h=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsxs("button",{type:"button",onClick:h,className:"h-24 rounded-lg border-2 border-dashed border-border hover:border-foreground/50 hover:bg-accent/50 transition-colors flex flex-col items-center justify-center gap-2 text-muted-foreground hover:text-foreground",children:[r.jsx(Jd,{size:20}),r.jsx("span",{className:"text-xs",children:"Click to upload an image (max 2MB)"})]}),e[8]=f):f=e[8];let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-xs text-muted-foreground",children:"or"}),r.jsx("div",{className:"flex-1 h-px bg-border"})]}),e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=C=>l(C.target.value),e[10]=p):p=e[10];let g;e[11]!==d?(g=C=>{C.key==="Enter"&&(C.preventDefault(),d())},e[11]=d,e[12]=g):g=e[12];let _;e[13]!==a||e[14]!==g?(_=r.jsx(at,{value:a,onChange:p,placeholder:"Paste image URL...",className:"h-8 text-xs flex-1",onKeyDown:g}),e[13]=a,e[14]=g,e[15]=_):_=e[15];let v;e[16]!==a?(v=a.trim(),e[16]=a,e[17]=v):v=e[17];const x=!v;let b;e[18]!==d||e[19]!==x?(b=r.jsx(oe,{variant:"outline",size:"sm",className:"h-8 px-3 text-xs shrink-0",onClick:d,disabled:x,children:"Apply"}),e[18]=d,e[19]=x,e[20]=b):b=e[20];let y;e[21]!==b||e[22]!==_?(y=r.jsxs("div",{className:"flex items-center gap-1.5",children:[_,b]}),e[21]=b,e[22]=_,e[23]=y):y=e[23];let V;return e[24]!==y||e[25]!==u?(V=r.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[u,f,m,y]}),e[24]=y,e[25]=u,e[26]=V):V=e[26],V}function $y(t){const e=B.c(5),{value:s}=t;let i;if(e[0]!==s){i=Symbol.for("react.early_return_sentinel");e:{const o=vr(s);if(o.type==="icon"){const a=br(o.name);if(a){let l;e[2]!==a?(l=r.jsx(a,{size:16,className:"text-muted-foreground"}),e[2]=a,e[3]=l):l=e[3],i=l;break e}}}e[0]=s,e[1]=i}else i=e[1];if(i!==Symbol.for("react.early_return_sentinel"))return i;let n;return e[4]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(xh,{size:16,className:"text-muted-foreground"}),e[4]=n):n=e[4],n}function zy(t){const e=B.c(66),{value:s,onChange:i,className:n,disabled:o}=t,[a,l]=j.useState(!1),[c,d]=j.useState("");let u;e[0]!==s?(u=vr(s),e[0]=s,e[1]=u):u=e[1];const h=u,f=h.type==="icon"?h.name:null;let m,p,g,_,v,x,b,y,V,C,S,w,k,T,M;if(e[2]!==n||e[3]!==f||e[4]!==o||e[5]!==i||e[6]!==a||e[7]!==c||e[8]!==s){const R=Ma();_=c.trim()?R.filter(W=>{const H=c.toLowerCase();return Ao(W).includes(H)||W.toLowerCase().includes(H)}):R,g=Us,v=o?!1:a,x=l;const P=o?"cursor-default opacity-50":"cursor-pointer hover:bg-accent";let O;e[24]!==n||e[25]!==P?(O=Y("size-7 shrink-0 rounded-md transition-colors flex items-center justify-center",P,n),e[24]=n,e[25]=P,e[26]=O):O=e[26];let z;e[27]!==s?(z=r.jsx($y,{value:s}),e[27]=s,e[28]=z):z=e[28],e[29]!==o||e[30]!==O||e[31]!==z?(b=r.jsx(zs,{asChild:!0,children:r.jsx("button",{type:"button",disabled:o,className:O,children:z})}),e[29]=o,e[30]=O,e[31]=z,e[32]=b):b=e[32],p=Fs,k="start",T="w-64 p-0",M=Fy,S="flex flex-col";let $;e[33]===Symbol.for("react.memo_cache_sentinel")?($=r.jsx(jh,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[33]=$):$=e[33];let q;e[34]===Symbol.for("react.memo_cache_sentinel")?(q=W=>d(W.target.value),e[34]=q):q=e[34],e[35]!==c?(w=r.jsx("div",{className:"px-2 py-2",children:r.jsxs("div",{className:"relative",children:[$,r.jsx(at,{value:c,onChange:q,placeholder:"Filter...",className:"h-7 text-xs pl-7"})]})}),e[35]=c,e[36]=w):w=e[36],m=Ed,C="h-48",y="grid grid-cols-8 gap-0.5 px-2 pb-2";let F;e[37]!==f||e[38]!==i?(F=W=>{const H=br(W);return H?r.jsx("button",{type:"button",onClick:()=>{i(`icon://${W}`),l(!1)},className:Y("h-7 w-7 flex items-center justify-center rounded-md transition-colors cursor-pointer",f===W?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"),title:Ao(W),children:r.jsx(H,{size:16})},W):null},e[37]=f,e[38]=i,e[39]=F):F=e[39],V=_.map(F),e[2]=n,e[3]=f,e[4]=o,e[5]=i,e[6]=a,e[7]=c,e[8]=s,e[9]=m,e[10]=p,e[11]=g,e[12]=_,e[13]=v,e[14]=x,e[15]=b,e[16]=y,e[17]=V,e[18]=C,e[19]=S,e[20]=w,e[21]=k,e[22]=T,e[23]=M}else m=e[9],p=e[10],g=e[11],_=e[12],v=e[13],x=e[14],b=e[15],y=e[16],V=e[17],C=e[18],S=e[19],w=e[20],k=e[21],T=e[22],M=e[23];let I;e[40]!==y||e[41]!==V?(I=r.jsx("div",{className:y,children:V}),e[40]=y,e[41]=V,e[42]=I):I=e[42];let E;e[43]!==_.length?(E=_.length===0&&r.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:"No icons found"}),e[43]=_.length,e[44]=E):E=e[44];let N;e[45]!==m||e[46]!==I||e[47]!==E||e[48]!==C?(N=r.jsxs(m,{className:C,children:[I,E]}),e[45]=m,e[46]=I,e[47]=E,e[48]=C,e[49]=N):N=e[49];let A;e[50]!==N||e[51]!==S||e[52]!==w?(A=r.jsxs("div",{className:S,children:[w,N]}),e[50]=N,e[51]=S,e[52]=w,e[53]=A):A=e[53];let D;e[54]!==p||e[55]!==A||e[56]!==k||e[57]!==T||e[58]!==M?(D=r.jsx(p,{align:k,className:T,onOpenAutoFocus:M,children:A}),e[54]=p,e[55]=A,e[56]=k,e[57]=T,e[58]=M,e[59]=D):D=e[59];let L;return e[60]!==g||e[61]!==v||e[62]!==x||e[63]!==b||e[64]!==D?(L=r.jsxs(g,{open:v,onOpenChange:x,children:[b,D]}),e[60]=g,e[61]=v,e[62]=x,e[63]=b,e[64]=D,e[65]=L):L=e[65],L}function Fy(t){return t.preventDefault()}function rn(){const t=B.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"flex items-center justify-center h-32",children:r.jsx(Ne,{className:"animate-spin text-muted-foreground",size:24})}),t[0]=e):e=t[0],e}function ro(t){return({error:e})=>e?.message?.includes("Method not found")||e?.code===-32601?r.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:r.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:t})}):r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center h-full p-6 text-center space-y-4",children:[r.jsx("div",{className:"bg-destructive/10 p-3 rounded-full",children:r.jsx(wa,{className:"h-6 w-6 text-destructive"})}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("h3",{className:"text-lg font-medium",children:"Something went wrong"}),r.jsx("p",{className:"text-sm text-muted-foreground max-w-xs mx-auto",children:e?.message?e.message.length>200?`${e.message.slice(0,200)}...`:e.message:"An unexpected error occurred"})]})]})}function Uy(t){const e=B.c(23),{item:s,isSelected:i,onToggle:n,disabled:o}=t,a=o?"cursor-not-allowed opacity-50":"cursor-pointer",l=i?"bg-accent/25":"hover:bg-muted/50";let c;e[0]!==a||e[1]!==l?(c=Y("flex items-start gap-3 p-4 rounded-lg transition-colors",a,l),e[0]=a,e[1]=l,e[2]=c):c=e[2];let d;e[3]!==s.name?(d=r.jsx("p",{className:"text-sm font-medium leading-none truncate",children:s.name}),e[3]=s.name,e[4]=d):d=e[4];let u;e[5]!==s.tags?(u=s.tags&&r.jsx("span",{className:"shrink-0",children:s.tags}),e[5]=s.tags,e[6]=u):u=e[6];let h;e[7]!==d||e[8]!==u?(h=r.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[d,u]}),e[7]=d,e[8]=u,e[9]=h):h=e[9];let f;e[10]!==s.description?(f=s.description&&r.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[10]=s.description,e[11]=f):f=e[11];let m;e[12]!==h||e[13]!==f?(m=r.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[h,f]}),e[12]=h,e[13]=f,e[14]=m):m=e[14];let p;e[15]!==o||e[16]!==i||e[17]!==n?(p=r.jsx(jg,{checked:i,onCheckedChange:n,disabled:o,className:"mt-0.5"}),e[15]=o,e[16]=i,e[17]=n,e[18]=p):p=e[18];let g;return e[19]!==c||e[20]!==m||e[21]!==p?(g=r.jsxs("label",{className:c,children:[m,p]}),e[19]=c,e[20]=m,e[21]=p,e[22]=g):g=e[22],g}function sl(t){const e=B.c(13),{items:s,selections:i,onToggle:n,emptyMessage:o,disabled:a}=t;let l,c,d;if(e[0]!==a||e[1]!==o||e[2]!==s||e[3]!==n||e[4]!==i){d=Symbol.for("react.early_return_sentinel");e:{const h=s.map(Hy);if(s.length===0){let f;e[8]!==o?(f=r.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:r.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:o})}),e[8]=o,e[9]=f):f=e[9],d=f;break e}l="flex-1 overflow-auto px-4 py-3 space-y-1",c=s.map(f=>r.jsx(Uy,{item:f,isSelected:i===null||i?.includes(f.id),onToggle:()=>n(f.id,h),disabled:a},f.id))}e[0]=a,e[1]=o,e[2]=s,e[3]=n,e[4]=i,e[5]=l,e[6]=c,e[7]=d}else l=e[5],c=e[6],d=e[7];if(d!==Symbol.for("react.early_return_sentinel"))return d;let u;return e[10]!==l||e[11]!==c?(u=r.jsx("div",{className:l,children:c}),e[10]=l,e[11]=c,e[12]=u):u=e[12],u}function Hy(t){return t.id}function Wy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Qp(d);let h;e[5]!==u.tools?(h=u.tools.map(Ky),e[5]=u.tools,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No tools available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Ky(t){return{id:t.name,name:t.name,description:t.description,tags:r.jsx(Vg,{annotations:t.annotations,_meta:t._meta})}}function qy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Ip(d);let h;e[5]!==u.resources?(h=u.resources.map(Gy),e[5]=u.resources,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No resources available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Gy(t){return{id:t.name||t.uri,name:t.name||t.uri,description:t.description}}function Yy(t){const e=B.c(12),{connectionId:s,selections:i,onToggle:n,disabled:o}=t,{org:a}=xe();let l;e[0]!==s||e[1]!==a.id?(l={connectionId:s,orgId:a.id},e[0]=s,e[1]=a.id,e[2]=l):l=e[2];const c=Ae(l);let d;e[3]!==c?(d={client:c},e[3]=c,e[4]=d):d=e[4];const{data:u}=Td(d);let h;e[5]!==u.prompts?(h=u.prompts.map(Xy),e[5]=u.prompts,e[6]=h):h=e[6];const f=h;let m;return e[7]!==o||e[8]!==f||e[9]!==n||e[10]!==i?(m=r.jsx(sl,{items:f,selections:i,onToggle:n,emptyMessage:"No prompts available",disabled:o}),e[7]=o,e[8]=f,e[9]=n,e[10]=i,e[11]=m):m=e[11],m}function Xy(t){return{id:t.name,name:t.name,description:t.description}}function Jy(t){const e=B.c(54),{currentConnection:s,activeTab:i,selectedId:n,formData:o,toggleTool:a,toggleResource:l,togglePrompt:c,toggleAllTools:d,toggleAllResources:u,toggleAllPrompts:h,onTabChange:f}=t,m=o[n],p=i==="tools"?m?.tools===null:i==="resources"?m?.resources===null:m?.prompts===null;let g;e[0]!==i||e[1]!==n||e[2]!==h||e[3]!==u||e[4]!==d?(g=()=>{i==="tools"?d(n):i==="resources"?u(n):h(n)},e[0]=i,e[1]=n,e[2]=h,e[3]=u,e[4]=d,e[5]=g):g=e[5];const _=g;let v;e[6]!==s.icon||e[7]!==s.title?(v=r.jsx(ps,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[6]=s.icon,e[7]=s.title,e[8]=v):v=e[8];let x;e[9]!==s.title?(x=r.jsx("h2",{className:"text-base font-semibold truncate",children:s.title}),e[9]=s.title,e[10]=x):x=e[10];let b;e[11]!==s.description?(b=s.description&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s.description}),e[11]=s.description,e[12]=b):b=e[12];let y;e[13]!==x||e[14]!==b?(y=r.jsxs("div",{className:"flex-1 min-w-0",children:[x,b]}),e[13]=x,e[14]=b,e[15]=y):y=e[15];let V;e[16]!==v||e[17]!==y?(V=r.jsx("div",{className:"px-6 pt-5 pb-4 shrink-0",children:r.jsxs("div",{className:"flex items-center gap-3",children:[v,y]})}),e[16]=v,e[17]=y,e[18]=V):V=e[18];let C;e[19]===Symbol.for("react.memo_cache_sentinel")?(C=[{id:"tools",label:"Tools"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[19]=C):C=e[19];let S;e[20]!==f?(S=L=>f(L),e[20]=f,e[21]=S):S=e[21];let w;e[22]!==i||e[23]!==S?(w=r.jsx(ch,{tabs:C,activeTab:i,onTabChange:S}),e[22]=i,e[23]=S,e[24]=w):w=e[24];const k=p?"Deselect all":"Select all";let T;e[25]!==_||e[26]!==k?(T=r.jsx("button",{type:"button",onClick:_,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:k}),e[25]=_,e[26]=k,e[27]=T):T=e[27];let M;e[28]!==T||e[29]!==w?(M=r.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-t border-border shrink-0",children:[w,T]}),e[28]=T,e[29]=w,e[30]=M):M=e[30];let I;e[31]!==i||e[32]!==o||e[33]!==n||e[34]!==a?(I=i==="tools"&&r.jsx(ls,{fallback:ro("Tools not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(Wy,{connectionId:n,selections:o[n]?o[n].tools:[],onToggle:(L,R)=>a(n,L,R)})})}),e[31]=i,e[32]=o,e[33]=n,e[34]=a,e[35]=I):I=e[35];let E;e[36]!==i||e[37]!==o||e[38]!==n||e[39]!==l?(E=i==="resources"&&r.jsx(ls,{fallback:ro("Resources not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(qy,{connectionId:n,selections:o[n]?o[n].resources:[],onToggle:(L,R)=>l(n,L,R)})})}),e[36]=i,e[37]=o,e[38]=n,e[39]=l,e[40]=E):E=e[40];let N;e[41]!==i||e[42]!==o||e[43]!==n||e[44]!==c?(N=i==="prompts"&&r.jsx(ls,{fallback:ro("Prompts not supported by this server"),children:r.jsx(j.Suspense,{fallback:r.jsx(rn,{}),children:r.jsx(Yy,{connectionId:n,selections:o[n]?o[n].prompts:[],onToggle:(L,R)=>c(n,L,R)})})}),e[41]=i,e[42]=o,e[43]=n,e[44]=c,e[45]=N):N=e[45];let A;e[46]!==I||e[47]!==E||e[48]!==N?(A=r.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[I,E,N]}),e[46]=I,e[47]=E,e[48]=N,e[49]=A):A=e[49];let D;return e[50]!==M||e[51]!==A||e[52]!==V?(D=r.jsxs(r.Fragment,{children:[V,M,A]}),e[50]=M,e[51]=A,e[52]=V,e[53]=D):D=e[53],D}function Qy(t){const e=B.c(11),{connectionId:s,onAuthenticate:i,children:n}=t;let o;e[0]!==s?(o={connectionId:s},e[0]=s,e[1]=o):o=e[1];const a=kh(o);if(a.supportsOAuth&&!a.isAuthenticated){let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center justify-center size-12 rounded-full bg-muted",children:r.jsx(ap,{size:22,className:"text-muted-foreground"})}),e[2]=d):d=e[2];let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsxs("div",{className:"space-y-1",children:[r.jsx("p",{className:"text-sm font-medium",children:"Authorization required"}),r.jsx("p",{className:"text-xs text-muted-foreground max-w-xs",children:"This connection needs to be authorized before you can configure its tools and resources."})]}),e[3]=u):u=e[3];let h;e[4]!==s||e[5]!==i?(h=i&&r.jsx(oe,{variant:"outline",size:"sm",onClick:()=>i(s),children:"Authorize"}),e[4]=s,e[5]=i,e[6]=h):h=e[6];let f;return e[7]!==h?(f=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 p-8 text-center",children:[d,u,h]}),e[7]=h,e[8]=f):f=e[8],f}let c;return e[9]!==n?(c=r.jsx(r.Fragment,{children:n}),e[9]=n,e[10]=c):c=e[10],c}function Zy(t){const e={};for(const s of t)e[s.connection_id]={tools:s.selected_tools,resources:s.selected_resources??null,prompts:s.selected_prompts??null};return e}function uc(t){return Object.entries(t).map(([e,s])=>({connection_id:e,selected_tools:s.tools,selected_resources:s.resources,selected_prompts:s.prompts}))}function e2(t,e){return e.type==="SET_ACTIVE_TAB"?{...t,activeTab:e.payload}:t}function t2(t){const e=B.c(49),{open:s,onOpenChange:i,selectedId:n,form:o,connections:a,onAuthenticate:l}=t;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c={activeTab:"tools"},e[0]=c):c=e[0];const[d,u]=j.useReducer(e2,c),h=Ba(n??"");let f;e[1]!==a?(f=a??[],e[1]=a,e[2]=f):f=e[2];let m;e[3]!==f?(m=Zy(f),e[3]=f,e[4]=m):m=e[4];const p=m;let g;e[5]!==o||e[6]!==p?(g=($,q,F,W)=>{const H=p[$]?.[q];let U;H===null?U=W.filter(K=>K!==F):H?.includes(F)?U=H.filter(K=>K!==F):(U=[...H??[],F],U.length===W.length&&(U=null));const X={...p};X[$]?X[$]={...X[$]}:X[$]={tools:null,resources:null,prompts:null},X[$][q]=U,o.setValue("connections",uc(X),{shouldDirty:!0,shouldTouch:!0})},e[5]=o,e[6]=p,e[7]=g):g=e[7];const _=g;let v;e[8]!==o||e[9]!==p?(v=($,q)=>{const W=p[$]?.[q]===null?[]:null,H={...p};H[$]?H[$]={...H[$]}:H[$]={tools:null,resources:null,prompts:null},H[$][q]=W,o.setValue("connections",uc(H),{shouldDirty:!0,shouldTouch:!0})},e[8]=o,e[9]=p,e[10]=v):v=e[10];const x=v;let b;e[11]!==_?(b=($,q,F)=>_($,"tools",q,F),e[11]=_,e[12]=b):b=e[12];const y=b;let V;e[13]!==_?(V=($,q,F)=>_($,"resources",q,F),e[13]=_,e[14]=V):V=e[14];const C=V;let S;e[15]!==_?(S=($,q,F)=>_($,"prompts",q,F),e[15]=_,e[16]=S):S=e[16];const w=S;let k;e[17]!==x?(k=$=>x($,"tools"),e[17]=x,e[18]=k):k=e[18];const T=k;let M;e[19]!==x?(M=$=>x($,"resources"),e[19]=x,e[20]=M):M=e[20];const I=M;let E;e[21]!==x?(E=$=>x($,"prompts"),e[21]=x,e[22]=E):E=e[22];const N=E;if(!n||!h)return null;let A;e[23]===Symbol.for("react.memo_cache_sentinel")?(A=r.jsx(rn,{}),e[23]=A):A=e[23];let D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=$=>u({type:"SET_ACTIVE_TAB",payload:$}),e[24]=D):D=e[24];let L;e[25]!==h||e[26]!==d.activeTab||e[27]!==p||e[28]!==n||e[29]!==N||e[30]!==I||e[31]!==T||e[32]!==w||e[33]!==C||e[34]!==y?(L=r.jsx(Jy,{currentConnection:h,activeTab:d.activeTab,selectedId:n,formData:p,toggleTool:y,toggleResource:C,togglePrompt:w,toggleAllTools:T,toggleAllResources:I,toggleAllPrompts:N,onTabChange:D},n),e[25]=h,e[26]=d.activeTab,e[27]=p,e[28]=n,e[29]=N,e[30]=I,e[31]=T,e[32]=w,e[33]=C,e[34]=y,e[35]=L):L=e[35];let R;e[36]!==l||e[37]!==n||e[38]!==L?(R=r.jsx(j.Suspense,{fallback:A,children:r.jsx(Qy,{connectionId:n,onAuthenticate:l,children:L})}),e[36]=l,e[37]=n,e[38]=L,e[39]=R):R=e[39];let P;e[40]!==i?(P=r.jsx(Na,{className:"px-6 py-4 border-t border-border shrink-0",children:r.jsx(oe,{variant:"outline",onClick:()=>i(!1),children:"Done"})}),e[40]=i,e[41]=P):P=e[41];let O;e[42]!==R||e[43]!==P?(O=r.jsxs(Ot,{className:"sm:max-w-2xl h-[75vh] max-h-[75vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[R,P]}),e[42]=R,e[43]=P,e[44]=O):O=e[44];let z;return e[45]!==i||e[46]!==s||e[47]!==O?(z=r.jsx(Bt,{open:s,onOpenChange:i,children:O}),e[45]=i,e[46]=s,e[47]=O,e[48]=z):z=e[48],z}const no={tools:null,resources:null,prompts:null},s2=dm.pick({status:!0,title:!0,description:!0,icon:!0,metadata:!0,connections:!0});function i2(t){const s=new TextEncoder().encode(t),i=Array.from(s,n=>String.fromCharCode(n)).join("");return btoa(i)}function r2(t){const e=B.c(11),{url:s,agentId:i}=t,[n,o]=j.useState(!1);let a;e[0]!==i||e[1]!==s?(a=async()=>{re("agent_connect_action",{agent_id:i,action:"copy_url"}),await navigator.clipboard.writeText(s),o(!0),he.success("Agent URL copied to clipboard"),setTimeout(()=>o(!1),2e3)},e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a;let c;e[3]!==n?(c=n?r.jsx(Mt,{size:20,className:"text-green-600"}):r.jsx(Si,{size:20}),e[3]=n,e[4]=c):c=e[4];const d=n?"Copied!":"Copy URL";let u;e[5]!==d?(u=r.jsx("span",{className:"text-xs font-medium",children:d}),e[5]=d,e[6]=u):u=e[6];let h;return e[7]!==l||e[8]!==c||e[9]!==u?(h=r.jsxs(oe,{type:"button",variant:"outline",onClick:l,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[c,u]}),e[7]=l,e[8]=c,e[9]=u,e[10]=h):h=e[10],h}function n2(t){const e=B.c(8),{url:s,serverName:i,agentId:n}=t;let o;e[0]!==n||e[1]!==i||e[2]!==s?(o=()=>{re("agent_connect_action",{agent_id:n,action:"install_cursor"});const u=oh(i),f=i2(JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Cursor"}},null,2)),m=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(u)}&config=${encodeURIComponent(f)}`;window.open(m,"_blank"),he.success("Opening Cursor...")},e[0]=n,e[1]=i,e[2]=s,e[3]=o):o=e[3];const a=o;let l,c;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(11%) sepia(8%) saturate(785%) hue-rotate(1deg) brightness(95%) contrast(89%)"}}),c=r.jsx("span",{className:"text-xs font-medium",children:"Install on Cursor"}),e[4]=l,e[5]=c):(l=e[4],c=e[5]);let d;return e[6]!==a?(d=r.jsxs(oe,{type:"button",variant:"outline",onClick:a,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[l,c]}),e[6]=a,e[7]=d):d=e[7],d}function o2(t){const e=B.c(12),{url:s,serverName:i,agentId:n}=t,[o,a]=j.useState(!1);let l;e[0]!==n||e[1]!==i||e[2]!==s?(l=async()=>{re("agent_connect_action",{agent_id:n,action:"install_claude_code"});const m=oh(i),g=JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Claude Code"}},null,2),_=`claude mcp add-json "${m}" '${g.replace(/'/g,"'\\''")}' --scope user`;await navigator.clipboard.writeText(_),a(!0),he.success("Claude Code command copied to clipboard"),setTimeout(()=>a(!1),2e3)},e[0]=n,e[1]=i,e[2]=s,e[3]=l):l=e[3];const c=l;let d;e[4]!==o?(d=o?r.jsx(Mt,{size:20,className:"text-green-600"}):r.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude Code",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(55%) sepia(31%) saturate(1264%) hue-rotate(331deg) brightness(92%) contrast(86%)"}}),e[4]=o,e[5]=d):d=e[5];const u=o?"Copied!":"Install on Claude Code";let h;e[6]!==u?(h=r.jsx("span",{className:"text-xs font-medium",children:u}),e[6]=u,e[7]=h):h=e[7];let f;return e[8]!==c||e[9]!==d||e[10]!==h?(f=r.jsxs(oe,{type:"button",variant:"outline",onClick:c,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[d,h]}),e[8]=c,e[9]=d,e[10]=h,e[11]=f):f=e[11],f}function a2({virtualMcp:t}){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),[i,n]=j.useState(null),[o,a]=j.useState(!1),[l,c]=j.useState(!1),d=t.id,u=t.title||`agent-${d.slice(0,8)}`,h=i?`bunx @decocms/typegen@latest --mcp ${d} --key ${i} --output client.ts`:`bunx @decocms/typegen@latest --mcp ${d} --key <api-key> --output client.ts`,f=async()=>{a(!0);try{const g=(await s.callTool({name:"API_KEY_CREATE",arguments:{name:`typegen-${u}`,permissions:{[d]:["*"]}}})).structuredContent?.key;if(!g)throw new Error("No key in response");n(g),re("agent_typegen_key_generated",{agent_id:d})}catch{re("agent_typegen_key_failed",{agent_id:d}),he.error("Failed to generate API key")}finally{a(!1)}},m=async()=>{re("agent_connect_action",{agent_id:d,action:"typegen_copy_command",has_api_key:!!i}),await navigator.clipboard.writeText(h),c(!0),he.success("Command copied to clipboard"),setTimeout(()=>c(!1),2e3)};return r.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex flex-col gap-0.5",children:[r.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Generate typed client"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Introspects this agent and writes a typed"," ",r.jsx("code",{className:"font-mono",children:"client.ts"})," you can import directly."]})]}),!i&&r.jsxs(oe,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:f,disabled:o,children:[o?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(kg,{size:14}),r.jsx("span",{children:o?"Generating…":"Generate API key"})]})]}),i&&r.jsx("p",{className:"rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-700",children:"Store this key securely — it won't be shown again."}),r.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Generate client"}),r.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx("code",{className:"min-w-0 flex-1 break-all font-mono text-xs text-muted-foreground",children:h}),r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:m,children:l?r.jsx(Mt,{size:12,className:"text-green-600"}):r.jsx(Si,{size:12})})]})}),r.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Runtime variables"}),r.jsx(l2,{apiKey:i,agentId:d})]})}function l2(t){const e=B.c(21),{apiKey:s,agentId:i}=t,[n,o]=j.useState(!1),a=window.location.origin,l=s?`MESH_API_KEY=${s}`:"MESH_API_KEY=<api-key>",c=`MESH_BASE_URL=${a}`,d=`${l}
|
|
549
|
+
${c}`;let u;e[0]!==i||e[1]!==s||e[2]!==d?(u=async()=>{re("agent_connect_action",{agent_id:i,action:"typegen_copy_env",has_api_key:!!s}),await navigator.clipboard.writeText(d),o(!0),setTimeout(()=>o(!1),2e3)},e[0]=i,e[1]=s,e[2]=d,e[3]=u):u=e[3];const h=u,f=!s;let m;e[4]!==f?(m=Y({"opacity-50":f}),e[4]=f,e[5]=m):m=e[5];let p;e[6]!==l||e[7]!==m?(p=r.jsx("span",{className:m,children:l}),e[6]=l,e[7]=m,e[8]=p):p=e[8];let g,_;e[9]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx("br",{}),_=r.jsx("span",{children:c}),e[9]=g,e[10]=_):(g=e[9],_=e[10]);let v;e[11]!==p?(v=r.jsxs("code",{className:"min-w-0 flex-1 font-mono text-xs text-muted-foreground",children:[p,g,_]}),e[11]=p,e[12]=v):v=e[12];let x;e[13]!==n?(x=n?r.jsx(Mt,{size:12,className:"text-green-600"}):r.jsx(Si,{size:12}),e[13]=n,e[14]=x):x=e[14];let b;e[15]!==h||e[16]!==x?(b=r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:h,children:x}),e[15]=h,e[16]=x,e[17]=b):b=e[17];let y;return e[18]!==v||e[19]!==b?(y=r.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:r.jsxs("div",{className:"flex items-start gap-2",children:[v,b]})}),e[18]=v,e[19]=b,e[20]=y):y=e[20],y}function c2(t){const e=B.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx(j.Suspense,{fallback:i,children:r.jsx(a2,{virtualMcp:s})}),e[1]=s,e[2]=n):n=e[2],n}function d2(t){const e=B.c(37),{open:s,onOpenChange:i,virtualMcp:n}=t,o=`/mcp/virtual-mcp/${n.id}`;let a;e[0]!==o?(a=new URL(o,window.location.origin),e[0]=o,e[1]=a):a=e[1];const l=a;let c;e[2]!==n.id||e[3]!==n.title?(c=n.title||`agent-${n.id?.slice(0,8)??"default"}`,e[2]=n.id,e[3]=n.title,e[4]=c):c=e[4];const d=c,u=ms();let h;e[5]!==n.id||e[6]!==l.href?(h=r.jsx(r2,{url:l.href,agentId:n.id}),e[5]=n.id,e[6]=l.href,e[7]=h):h=e[7];let f,m;e[8]!==d||e[9]!==n.id||e[10]!==l.href?(f=r.jsx(n2,{url:l.href,serverName:d,agentId:n.id}),m=r.jsx(o2,{url:l.href,serverName:d,agentId:n.id}),e[8]=d,e[9]=n.id,e[10]=l.href,e[11]=f,e[12]=m):(f=e[11],m=e[12]);let p;e[13]!==h||e[14]!==f||e[15]!==m?(p=r.jsx("div",{className:"flex flex-col gap-3 pt-2",children:r.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[h,f,m]})}),e[13]=h,e[14]=f,e[15]=m,e[16]=p):p=e[16];let g;e[17]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx("div",{className:"border-t border-border"}),e[17]=g):g=e[17];let _;e[18]!==n?(_=r.jsx(c2,{virtualMcp:n}),e[18]=n,e[19]=_):_=e[19];let v;e[20]!==p||e[21]!==_?(v=r.jsxs("div",{className:"flex flex-col gap-6",children:[p,g,_]}),e[20]=p,e[21]=_,e[22]=v):v=e[22];const x=v;if(u){let C;e[23]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsx(si,{className:"mt-4 mb-4 text-base font-semibold",children:"Connect"}),e[23]=C):C=e[23];let S;e[24]!==x?(S=r.jsx(ii,{children:r.jsxs("div",{className:"flex-1 overflow-y-auto px-4 pb-6 [touch-action:pan-y]",children:[C,x]})}),e[24]=x,e[25]=S):S=e[25];let w;return e[26]!==i||e[27]!==s||e[28]!==S?(w=r.jsx(ri,{open:s,onOpenChange:i,children:S}),e[26]=i,e[27]=s,e[28]=S,e[29]=w):w=e[29],w}let b;e[30]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Gt,{children:r.jsx(qt,{children:"Connect"})}),e[30]=b):b=e[30];let y;e[31]!==x?(y=r.jsxs(Ot,{className:"max-h-[80vh] overflow-y-auto sm:max-w-2xl",children:[b,x]}),e[31]=x,e[32]=y):y=e[32];let V;return e[33]!==i||e[34]!==s||e[35]!==y?(V=r.jsx(Bt,{open:s,onOpenChange:i,children:y}),e[33]=i,e[34]=s,e[35]=y,e[36]=V):V=e[36],V}function h2(t,e){switch(e.type){case"SET_SHARE_DIALOG_OPEN":return{...t,shareDialogOpen:e.payload};case"SET_ADD_DIALOG_OPEN":return{...t,addDialogOpen:e.payload};case"OPEN_SETTINGS":return{...t,settingsDialogOpen:!0,settingsConnectionId:e.payload};case"CLOSE_SETTINGS":return{...t,settingsDialogOpen:!1,settingsConnectionId:null};default:return t}}function u2(t){const e=B.c(22),{connection_id:s,usedConnectionIds:i,onOpenSettings:n,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:c}=t,d=Ba(s),{org:u}=xe();if(!d)return null;let h;e[0]!==d?(h=nh(d),e[0]=d,e[1]=h):h=e[1];const f=h;let m;e[2]!==s?(m=r.jsx(g2,{connection_id:s}),e[2]=s,e[3]=m):m=e[3];let p;e[4]!==d.app_name||e[5]!==d.connection_type||e[6]!==d.description||e[7]!==d.icon||e[8]!==d.title||e[9]!==s||e[10]!==a||e[11]!==c||e[12]!==n||e[13]!==o||e[14]!==l||e[15]!==u.slug||e[16]!==f||e[17]!==i?(p=r.jsx(p2,{connection_id:s,connectionTitle:d.title,connectionDescription:d.description,connectionIcon:d.icon,connectionType:d.connection_type,slug:f,orgSlug:u.slug,appName:d.app_name,usedConnectionIds:i,onOpenSettings:n,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:c}),e[4]=d.app_name,e[5]=d.connection_type,e[6]=d.description,e[7]=d.icon,e[8]=d.title,e[9]=s,e[10]=a,e[11]=c,e[12]=n,e[13]=o,e[14]=l,e[15]=u.slug,e[16]=f,e[17]=i,e[18]=p):p=e[18];let g;return e[19]!==m||e[20]!==p?(g=r.jsx(j.Suspense,{fallback:m,children:p}),e[19]=m,e[20]=p,e[21]=g):g=e[21],g}const fc="__new_instance__";async function f2(t,e){const s=t?.idToken??null;if(s){const n=mc(s);if(n)return n}const i=t?.userinfoEndpoint??null;if(i)try{const n=await fetch(i,{headers:{Authorization:`Bearer ${e}`}});if(n.ok){const o=await n.json(),a=typeof o.email=="string"?o.email:typeof o.upn=="string"?o.upn:typeof o.preferred_username=="string"?o.preferred_username:null;if(a)return a}}catch{}return mc(e)}function mc(t){try{const e=t.split(".");if(e.length===3&&e[1]){const s=JSON.parse(atob(e[1].replace(/-/g,"+").replace(/_/g,"/")));if(typeof s.email=="string")return s.email;if(typeof s.upn=="string")return s.upn;if(typeof s.preferred_username=="string")return s.preferred_username}}catch{}return null}function m2(t){const e=B.c(23),{appName:s,connectionId:i,usedConnectionIds:n,onSwitchInstance:o,onNewInstance:a}=t;let l;e[0]!==s?(l={filters:[{column:"app_name",value:s}]},e[0]=s,e[1]=l):l=e[1];const c=yr(l);if(c.length<=1)return null;let d;e[2]!==i||e[3]!==a||e[4]!==o?(d=g=>{g===fc?a?.():o(i,g)},e[2]=i,e[3]=a,e[4]=o,e[5]=d):d=e[5];let u;e[6]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(Ms,{size:"sm",className:"w-auto text-xs gap-1 px-2 shadow-none",children:r.jsx(Ds,{})}),e[6]=u):u=e[6];let h;if(e[7]!==i||e[8]!==c||e[9]!==n){let g;e[11]!==i||e[12]!==n?(g=_=>r.jsx(Nt,{value:_.id,className:"text-xs",disabled:_.id!==i&&n.has(_.id),children:_.title},_.id),e[11]=i,e[12]=n,e[13]=g):g=e[13],h=c.map(g),e[7]=i,e[8]=c,e[9]=n,e[10]=h}else h=e[10];let f;e[14]!==a?(f=a&&r.jsx(Nt,{value:fc,className:"text-xs text-muted-foreground",children:"+ New instance"}),e[14]=a,e[15]=f):f=e[15];let m;e[16]!==h||e[17]!==f?(m=r.jsxs(Ts,{children:[h,f]}),e[16]=h,e[17]=f,e[18]=m):m=e[18];let p;return e[19]!==i||e[20]!==d||e[21]!==m?(p=r.jsxs(Rs,{value:i,onValueChange:d,children:[u,m]}),e[19]=i,e[20]=d,e[21]=m,e[22]=p):p=e[22],p}function p2(t){const e=B.c(55),{connection_id:s,connectionTitle:i,connectionDescription:n,connectionIcon:o,connectionType:a,slug:l,orgSlug:c,appName:d,usedConnectionIds:u,onOpenSettings:h,onRemove:f,onAuthenticate:m,onSwitchInstance:p,onNewInstance:g}=t;let _;e[0]!==s?(_={connectionId:s},e[0]=s,e[1]=_):_=e[1];const v=kh(_),b=!(a==="VIRTUAL")&&v.supportsOAuth&&!v.isAuthenticated,y=b?"border-destructive/50 bg-destructive/5":"border-border";let V;e[2]!==y?(V=Y("rounded-xl border overflow-hidden transition-colors",y),e[2]=y,e[3]=V):V=e[3];let C;e[4]!==c||e[5]!==l?(C={org:c,appSlug:l},e[4]=c,e[5]=l,e[6]=C):C=e[6];let S;e[7]!==o||e[8]!==i?(S=r.jsx(ps,{icon:o,name:i,size:"sm",className:"shrink-0"}),e[7]=o,e[8]=i,e[9]=S):S=e[9];let w;e[10]!==i?(w=r.jsx("p",{className:"text-sm font-medium truncate",children:i}),e[10]=i,e[11]=w):w=e[11];let k;e[12]!==n||e[13]!==b?(k=b?r.jsx("span",{className:"text-xs text-destructive font-medium",children:"Needs authorization"}):n&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:n}),e[12]=n,e[13]=b,e[14]=k):k=e[14];let T;e[15]!==w||e[16]!==k?(T=r.jsxs("div",{className:"flex-1 min-w-0",children:[w,k]}),e[15]=w,e[16]=k,e[17]=T):T=e[17];let M;e[18]!==s||e[19]!==b||e[20]!==m?(M=b?r.jsx(oe,{variant:"outline",size:"sm",className:"h-7 text-xs shrink-0",onClick:W=>{W.preventDefault(),W.stopPropagation(),m(s)},children:"Authorize"}):r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx("span",{className:"inline-flex items-center justify-center rounded-md h-7 w-7 hover:bg-accent text-muted-foreground shrink-0 transition-colors",children:r.jsx(kr,{size:16})})}),r.jsx(Ge,{side:"bottom",children:"Connection settings"})]}),e[18]=s,e[19]=b,e[20]=m,e[21]=M):M=e[21];let I;e[22]!==C||e[23]!==S||e[24]!==T||e[25]!==M?(I=r.jsxs(Cd,{to:"/$org/settings/connections/$appSlug",params:C,className:"flex items-center gap-3 px-4 py-3 cursor-pointer hover:bg-muted/50 transition-colors",children:[S,T,M]}),e[22]=C,e[23]=S,e[24]=T,e[25]=M,e[26]=I):I=e[26];let E;e[27]!==d||e[28]!==s||e[29]!==g||e[30]!==p||e[31]!==u?(E=d&&r.jsx(m2,{appName:d,connectionId:s,usedConnectionIds:u,onSwitchInstance:p,onNewInstance:g}),e[27]=d,e[28]=s,e[29]=g,e[30]=p,e[31]=u,e[32]=E):E=e[32];let N;e[33]===Symbol.for("react.memo_cache_sentinel")?(N=r.jsx(zd,{size:13}),e[33]=N):N=e[33];let A;e[34]!==h?(A=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:h,"aria-label":"Configure resources",children:N})}),e[34]=h,e[35]=A):A=e[35];let D;e[36]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(Ge,{side:"bottom",children:"Configure resources"}),e[36]=D):D=e[36];let L;e[37]!==A?(L=r.jsxs(Ye,{delayDuration:0,children:[A,D]}),e[37]=A,e[38]=L):L=e[38];let R;e[39]===Symbol.for("react.memo_cache_sentinel")?(R=r.jsx(Os,{size:13}),e[39]=R):R=e[39];let P;e[40]!==f?(P=r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-destructive",onClick:f,"aria-label":"Remove connection",children:R})}),e[40]=f,e[41]=P):P=e[41];let O;e[42]===Symbol.for("react.memo_cache_sentinel")?(O=r.jsx(Ge,{side:"bottom",children:"Remove"}),e[42]=O):O=e[42];let z;e[43]!==P?(z=r.jsxs(Ye,{delayDuration:0,children:[P,O]}),e[43]=P,e[44]=z):z=e[44];let $;e[45]!==L||e[46]!==z?($=r.jsxs("div",{className:"flex items-center gap-0.5 ml-auto",children:[L,z]}),e[45]=L,e[46]=z,e[47]=$):$=e[47];let q;e[48]!==E||e[49]!==$?(q=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-2 border-t border-border bg-muted/25",children:[E,$]}),e[48]=E,e[49]=$,e[50]=q):q=e[50];let F;return e[51]!==I||e[52]!==q||e[53]!==V?(F=r.jsxs("div",{className:V,children:[I,q]}),e[51]=I,e[52]=q,e[53]=V,e[54]=F):F=e[54],F}function g2(t){const e=B.c(17),{connection_id:s}=t,i=Ba(s);if(!i){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsx(Cu,{}),e[0]=h):h=e[0],h}let n;e[1]!==i.icon||e[2]!==i.title?(n=r.jsx(ps,{icon:i.icon,name:i.title,size:"sm",className:"shrink-0"}),e[1]=i.icon,e[2]=i.title,e[3]=n):n=e[3];let o;e[4]!==i.title?(o=r.jsx("p",{className:"text-sm font-medium truncate",children:i.title}),e[4]=i.title,e[5]=o):o=e[5];let a;e[6]!==i.description?(a=i.description&&r.jsx("p",{className:"text-xs text-muted-foreground truncate",children:i.description}),e[6]=i.description,e[7]=a):a=e[7];let l;e[8]!==o||e[9]!==a?(l=r.jsxs("div",{className:"flex-1 min-w-0",children:[o,a]}),e[8]=o,e[9]=a,e[10]=l):l=e[10];let c;e[11]!==n||e[12]!==l?(c=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[n,l]}),e[11]=n,e[12]=l,e[13]=c):c=e[13];let d;e[14]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:r.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})}),e[14]=d):d=e[14];let u;return e[15]!==c?(u=r.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[c,d]}),e[15]=c,e[16]=u):u=e[16],u}function Cu(){const t=B.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx("div",{className:"size-8 rounded-md bg-muted animate-pulse shrink-0"}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[e,r.jsxs("div",{className:"flex-1 space-y-1.5",children:[r.jsx("div",{className:"h-4 w-32 rounded bg-muted animate-pulse"}),r.jsx("div",{className:"h-3 w-48 rounded bg-muted animate-pulse"})]})]}),t[1]=s):s=t[1];let i;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[s,r.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:r.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})})]}),t[2]=i):i=t[2],i}function _2({virtualMcpId:t}){const{org:e}=xe(),s=Ae({connectionId:yt,orgId:e.id}),i=bt(),n=$t(t),o=(n?.connections??[]).map(P=>P.connection_id).sort(),{data:a}=ji({queryKey:Ze.projectConnectionDetails(t,o),enabled:o.length>0,queryFn:async()=>await Promise.all(o.map(async O=>{try{const z=await s.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:O}}),{item:$}=Jn(z),q=($?.tools??[]).filter(F=>!!Tp(F._meta)).map(F=>({name:F.name,description:F.description}));return{fetchOk:!0,id:O,title:$?.title??O,icon:$?.icon??null,uiTools:q}}catch{return{fetchOk:!1,id:O,title:O,icon:null,uiTools:[]}}}))}),l=(a??[]).filter(P=>P.uiTools.length>0),c=new Set(Am),d=n?.metadata?.ui,u=d?.pinnedViews??[],h=d?.layout?.defaultMainView??null,f=d?.layout?.chatDefaultOpen??!1,m=!h||h.type==="chat"?"chat":h.type==="instructions"||h.type==="connections"||h.type==="layout"?"settings":c.has(h.type)?h.type:`${h.type}:${h.id??""}:${h.toolName??""}`,[p,g]=j.useState(u),[_,v]=j.useState(m),[x,b]=j.useState(f),[y,V]=j.useState(!1),C=P=>{const[O,z,$]=P.split(":");return O?O==="chat"?{type:O}:c.has(O)?{type:O}:O==="ext-apps"&&z?{type:"ext-apps",id:z,toolName:$||void 0}:null:null},S=j.useRef(!1);if(a&&a.length>0&&!S.current){S.current=!0;const P=new Set((a??[]).filter($=>$.fetchOk).map($=>$.id)),O=new Set(l.flatMap($=>$.uiTools.map(q=>`${$.id}:${q.name}`))),z=u.filter($=>!P.has($.connectionId)||O.has(`${$.connectionId}:${$.toolName}`));if(z.length!==u.length){g(z);let $=_;h?.type==="ext-apps"&&!z.some(q=>q.connectionId===h.id&&q.toolName===h.toolName)&&($="chat",v($)),s.callTool({name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",arguments:{virtualMcpId:t,pinnedViews:z,layout:{defaultMainView:C($),chatDefaultOpen:x}}}).then(q=>{Jn(q),i.invalidateQueries({predicate:F=>Array.isArray(F.queryKey)&&F.queryKey.includes("collection")&&F.queryKey.includes("VIRTUAL_MCP")})}).catch(()=>{g(u),v(m)})}}const w=(P,O,z)=>{V(!0),(async()=>{try{const q=await s.callTool({name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",arguments:{virtualMcpId:t,pinnedViews:P,layout:{defaultMainView:C(O),chatDefaultOpen:z??x}}});Jn(q),i.invalidateQueries({predicate:F=>Array.isArray(F.queryKey)&&F.queryKey.includes("collection")&&F.queryKey.includes("VIRTUAL_MCP")}),he.success("Layout updated")}catch(q){he.error("Failed to update layout: "+(q instanceof Error?q.message:"Unknown error"))}finally{V(!1)}})()},k=(P,O)=>{const z=p.some(F=>F.connectionId===P&&F.toolName===O);let $,q=_;if(z){$=p.filter(W=>!(W.connectionId===P&&W.toolName===O));const F=`ext-apps:${P}:${O}`;_===F&&(q="chat",v(q))}else $=[...p,{connectionId:P,toolName:O,label:ko(O),icon:null}];g($),w($,q)},T=(P,O,z)=>{g($=>$.map(q=>q.connectionId===P&&q.toolName===O?{...q,label:z}:q))},M=()=>{w(p,_)},I=(P,O,z)=>{g(q=>q.map(F=>F.connectionId===P&&F.toolName===O?{...F,icon:z}:F));const $=p.map(q=>q.connectionId===P&&q.toolName===O?{...q,icon:z}:q);w($,_)},E=P=>{v(P),w(p,P)},N=o.length===0,A=a&&l.length===0,D=!!bs(n),L=[{value:"chat",label:"Chat"},{value:"settings",label:"Settings"},{value:"automations",label:"Automations"}];D&&(L.push({value:"env",label:"Terminal"}),L.push({value:"preview",label:"Preview"}));for(const P of p)L.push({value:`ext-apps:${P.connectionId}:${P.toolName}`,label:P.label||P.toolName});const R=l.length>0||N||A;return r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx("div",{className:"flex items-center justify-between gap-3",children:r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Layout"})}),r.jsxs(Cg,{className:"p-6 gap-5",children:[r.jsxs(Rl,{className:"p-0 space-y-5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Main view"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"What users see when they first open this agent."})]}),r.jsxs(Rs,{value:_,onValueChange:E,children:[r.jsx(Ms,{className:"w-44 h-8 text-sm capitalize shrink-0",children:r.jsx(Ds,{})}),r.jsx(Ts,{children:L.map(P=>r.jsx(Nt,{value:P.value,className:"capitalize",children:P.label},P.value))})]})]}),r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Show chat"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Display the chat panel alongside the main view."})]}),r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx("span",{className:"shrink-0",children:r.jsx(mn,{checked:_==="chat"?!0:x,disabled:_==="chat"||y,onCheckedChange:P=>{b(P),w(p,_,P)}})})}),_==="chat"&&r.jsx(Ge,{side:"top",children:"Chat is always shown when it is the default view"})]})]})]}),R&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"border-t border-border -mx-6"}),r.jsxs(Rl,{className:"p-0 space-y-3",children:[r.jsx("div",{className:"flex items-center justify-between gap-4",children:r.jsxs("div",{className:"space-y-0.5 min-w-0",children:[r.jsx(ir,{className:"font-normal text-foreground",children:"Pinned views"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Surface interactive tools as top-level tabs in the agent."})]})}),N&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"Add a connection above to configure pinned views."}),A&&!N&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"None of the connected servers expose interactive tools."}),l.length>0&&r.jsx("div",{className:"space-y-4 pt-1",children:l.map((P,O)=>r.jsxs("div",{children:[O>0&&r.jsx("div",{className:"border-t border-border -mx-6 mb-4"}),r.jsxs("div",{className:"flex items-center gap-2 mb-2.5",children:[r.jsx(ps,{icon:P.icon,name:P.title,size:"xs",className:"shrink-0"}),r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:P.title})]}),r.jsx("div",{className:"space-y-1.5",children:P.uiTools.map(z=>{const $=p.some(F=>F.connectionId===P.id&&F.toolName===z.name),q=p.find(F=>F.connectionId===P.id&&F.toolName===z.name);return r.jsxs("div",{className:Y("flex items-center justify-between gap-3 px-3 py-2 rounded-lg border transition-colors",$?"bg-accent/40 border-border":"bg-transparent border-border"),children:[r.jsxs("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[r.jsx(zy,{value:q?.icon??null,onChange:F=>I(P.id,z.name,F),disabled:!$||y}),r.jsx(at,{value:$&&q?q.label:ko(z.name),onChange:F=>T(P.id,z.name,F.target.value),onBlur:M,className:"h-7 text-sm w-40",disabled:!$||y,readOnly:!$})]}),r.jsx(mn,{checked:$,onCheckedChange:()=>k(P.id,z.name),disabled:y})]},z.name)})})]},P.id))})]})]})]})]})}function x2({virtualMcp:t,hideOwnTitle:e}){const{org:s}=xe(),i=Oa(),n=Mn(),o=bt(),a=Ae({connectionId:yt,orgId:s.id}),l=Ai({resolver:gr(s2),defaultValues:t}),c=l.watch("connections"),d=!!bs(t),[u,h]=j.useReducer(h2,{shareDialogOpen:!1,addDialogOpen:!1,settingsDialogOpen:!1,settingsConnectionId:null}),[f,m]=j.useState(!1),{createTaskWithMessage:p}=Lt(),{setChatMode:g}=$s(),{createNewTask:_}=xr(),v=()=>{const U=l.getValues("metadata.instructions");U?.trim()&&(T(),re("agent_instructions_improve_clicked",{agent_id:t.id,instructions_length:U.length}),g("plan"),p({virtualMcpId:Aa(s.id),message:{parts:[{type:"text",text:`/writing-prompts ${t.id}
|
|
550
550
|
|
|
551
551
|
<instructions>
|
|
552
552
|
${U}
|
|
@@ -577,7 +577,7 @@ Define step-by-step how the agent should handle requests.
|
|
|
577
577
|
4. Ask for confirmation before making any changes.
|
|
578
578
|
</workflows>`,K=U.trim()?`${U}
|
|
579
579
|
|
|
580
|
-
${X}`:X;l.setValue("metadata.instructions",K,{shouldDirty:!0})},$=new Set(c.map(U=>U.connection_id)),q=Oe(),[F,W]=j.useState(!1),H=async()=>{T();try{await i.delete.mutateAsync(t.id),re("agent_deleted",{agent_id:t.id,source:"agent_detail"}),he.success(`Deleted "${t.title}"`),q({to:"/$org",params:{org:s.slug}})}catch{}};return r.jsxs(Jt,{children:[r.jsx(Jt.Content,{children:r.jsx(Jt.Body,{children:r.jsxs("div",{className:"flex flex-col gap-10",children:[!e&&r.jsx(Jt.Title,{actions:r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(oe,{variant:"outline",size:"sm",onClick:x,children:[r.jsx(tn,{size:14,className:"!size-[14px]"}),"Test Agent"]}),r.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive",onClick:()=>W(!0),children:r.jsx(Ro,{size:14})})]}),children:"Settings"}),r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(pi,{name:"icon",control:l.control,render:({field:U})=>r.jsx(My,{value:U.value??null,onChange:X=>{U.onChange(X),M()},onColorChange:X=>{l.setValue("metadata.ui.themeColor",X,{shouldDirty:!0}),M()},name:l.watch("title")||"Agent",size:"md",className:"shrink-0",avatarClassName:"[&_svg]:w-1/2 [&_svg]:h-1/2",disabled:d})}),r.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[r.jsx(pi,{name:"title",control:l.control,render:({field:U})=>r.jsx("input",{...U,type:"text",value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Agent name",className:"text-lg font-medium leading-tight text-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})}),r.jsx(pi,{name:"description",control:l.control,render:({field:U})=>r.jsx("input",{...U,type:"text",value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Add a description...",className:"text-sm text-muted-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})})]}),r.jsxs(oe,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>{re("agent_connect_modal_opened",{agent_id:t.id}),h({type:"SET_SHARE_DIALOG_OPEN",payload:!0})},children:[r.jsxs("span",{className:"flex items-center -space-x-1.5 mr-0.5",children:[r.jsx("span",{className:"inline-flex items-center justify-center size-4 rounded-full bg-black ring-1 ring-white/20 shrink-0",children:r.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"size-2.5 brightness-0 invert"})}),r.jsx("span",{className:"relative z-10 inline-flex items-center justify-center size-4 rounded-full ring-1 ring-background shrink-0",style:{backgroundColor:"#D97757"},children:r.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude",className:"size-2.5 brightness-0 invert"})})]}),"Connect"]})]}),r.jsxs("section",{className:"flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Connections"}),c.length>0&&r.jsxs(oe,{variant:"outline",size:"sm",onClick:N,children:[r.jsx(Dt,{size:14}),"Add connection"]})]}),r.jsx("div",{className:"flex flex-col gap-2",children:c.length===0?r.jsxs("button",{type:"button",onClick:N,className:"flex items-center gap-3 px-3 py-2.5 rounded-lg border border-dashed border-border hover:bg-accent/50 transition-colors w-full text-left cursor-pointer",children:[r.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:r.jsx(Dt,{size:16})}),r.jsx("span",{className:"text-sm text-muted-foreground",children:"No connections yet. Add one to get started."})]}):c.map(U=>r.jsx(ls,{fallback:()=>null,children:r.jsx(j.Suspense,{fallback:r.jsx(Vu,{}),children:r.jsx(u2,{connection_id:U.connection_id,usedConnectionIds:$,onOpenSettings:()=>P(U.connection_id),onRemove:()=>D(U.connection_id),onAuthenticate:O,onSwitchInstance:L,onNewInstance:()=>R(U.connection_id)})})},U.connection_id))})]}),r.jsxs("section",{className:"flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Instructions"}),!d&&r.jsxs("div",{className:"flex items-center gap-2",children:[!l.watch("metadata.instructions")?.trim()&&r.jsx(oe,{variant:"outline",size:"sm",onClick:z,children:"+ Prompt template"}),r.jsxs(oe,{variant:"outline",size:"sm",disabled:!l.watch("metadata.instructions")?.trim(),onClick:v,children:[r.jsx(Da,{size:13}),"Improve"]})]})]}),r.jsx(pi,{name:"metadata.instructions",control:l.control,render:({field:U})=>r.jsxs("div",{className:"relative rounded-xl card-shadow bg-card focus-within:ring-1 focus-within:ring-ring",children:[r.jsx(To,{...U,value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"min-h-[200px] max-h-[360px] overflow-auto resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed border-0 shadow-none px-4 py-3 pr-11 focus-visible:ring-0 focus-visible:ring-offset-0 bg-transparent",style:{boxShadow:"none"}}),r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"absolute top-2 right-2 h-7 w-7 text-muted-foreground",onClick:()=>m(!0),"aria-label":"Open fullscreen editor",children:r.jsx(ap,{size:14})})}),r.jsx(Ge,{side:"left",children:"Fullscreen"})]})]})})]}),r.jsx(_2,{virtualMcpId:t.id}),r.jsxs("section",{className:"flex items-center justify-between border-t border-border pt-6",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-sm font-medium",children:"Delete agent"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:"Permanently delete this agent and all its data."})]}),r.jsxs(oe,{variant:"outline",size:"sm",className:"text-destructive border-destructive/40 hover:bg-destructive/10 hover:text-destructive shrink-0",onClick:()=>W(!0),children:[r.jsx(Ro,{size:14}),"Delete agent"]})]})]})})}),r.jsx(qa,{open:F,onOpenChange:W,children:r.jsxs(Fa,{children:[r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Delete Agent?"}),r.jsxs(Wa,{children:["This action cannot be undone. This will permanently delete"," ",r.jsx("span",{className:"font-medium text-foreground",children:t.title}),"."]})]}),r.jsxs(Ka,{children:[r.jsx(za,{children:"Cancel"}),r.jsx(wh,{onClick:H,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),r.jsx(Qa,{open:u.addDialogOpen,onOpenChange:U=>h({type:"SET_ADD_DIALOG_OPEN",payload:U}),agentId:t.id,addedConnectionIds:$,onAdd:A}),r.jsx(t2,{open:u.settingsDialogOpen,onOpenChange:U=>{U||h({type:"CLOSE_SETTINGS"})},selectedId:u.settingsConnectionId,form:l,connections:c,onAuthenticate:O}),r.jsx(d2,{open:u.shareDialogOpen,onOpenChange:U=>h({type:"SET_SHARE_DIALOG_OPEN",payload:U}),virtualMcp:t}),r.jsx(Bt,{open:f,onOpenChange:m,children:r.jsxs(Ot,{className:"w-[90vw] sm:max-w-6xl h-[85vh] flex flex-col p-0 gap-0",children:[r.jsx(Gt,{className:"px-6 pt-6 pb-3 border-b border-border shrink-0",children:r.jsx(qt,{children:"Instructions"})}),r.jsx("div",{className:"flex-1 min-h-0 p-6",children:r.jsx(pi,{name:"metadata.instructions",control:l.control,render:({field:U})=>r.jsx(To,{...U,value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"w-full h-full resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed rounded-xl card-shadow px-4 py-3 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0 bg-card border-0",style:{boxShadow:"none"}})})})]})})]})}function v2(t){const e=B.c(9),{virtualMcpId:s,hideOwnTitle:i}=t,n=Oe(),{org:o}=xe(),a=$t(s);if(!a){let d;return e[0]!==n||e[1]!==o.slug?(d=r.jsx("div",{className:"flex h-full w-full bg-background",children:r.jsx(Vi,{title:"Space not found",description:"This space may have been deleted or you may not have access.",actions:r.jsx(oe,{variant:"outline",onClick:()=>n({to:"/$org",params:{org:o.slug}}),children:"Back to spaces"})})}),e[0]=n,e[1]=o.slug,e[2]=d):d=e[2],d}let l;e[3]!==a?(l=bs(a)?.connectionId??"",e[3]=a,e[4]=l):l=e[4];let c;return e[5]!==i||e[6]!==l||e[7]!==a?(c=r.jsx(x2,{virtualMcp:a,hideOwnTitle:i},l),e[5]=i,e[6]=l,e[7]=a,e[8]=c):c=e[8],c}function pc(t){const e=B.c(2),{virtualMcpId:s}=t;let i;return e[0]!==s?(i=r.jsx(v2,{virtualMcpId:s,hideOwnTitle:!0}),e[0]=s,e[1]=i):i=e[1],i}const b2={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function ur(t){return t?t.replace(/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,(e,s)=>{if(s.startsWith("#x")||s.startsWith("#X")){const i=Number.parseInt(s.slice(2),16);return Number.isFinite(i)?String.fromCodePoint(i):e}if(s.startsWith("#")){const i=Number.parseInt(s.slice(1),10);return Number.isFinite(i)?String.fromCodePoint(i):e}return b2[s]??e}):""}function Nr(t){if(!t||typeof t!="object")return null;const e=t;if(e.structuredContent!==void 0)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(!s)return null;try{return JSON.parse(s)}catch{return null}}const On=6e4,Bn=3e4;function Cu(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.branch?`${t.owner}:${t.branch}`:void 0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={owner:t.owner,repo:t.repo,state:"all",head:n,perPage:1},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.branch;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"list_pull_requests",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:y2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function y2(t){const e=Nr(t);if(!e||!Array.isArray(e)||e.length===0)return null;const s=e[0],i=s.base,n=s.head,o=s.user;return{number:s.number??0,title:s.title??"",body:s.body??"",state:s.state==="closed"?"closed":"open",merged:s.merged_at!=null,mergedAt:s.merged_at??null,base:i?.ref??"main",head:n?.ref??"",headSha:n?.sha??"",htmlUrl:s.html_url??"",author:o?.login??""}}function ku(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_files",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:S2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function S2(t){const e=Nr(t);return Array.isArray(e)?e.map(w2):[]}function w2(t){const e=Number(t.additions??0),s=Number(t.changes??e),i=Number(t.deletions??Math.max(0,s-e));return{filename:String(t.filename??""),status:t.status??"modified",additions:e,deletions:i,blobUrl:typeof t.blob_url=="string"?t.blob_url:null}}function ju(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_check_runs",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:V2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function V2(t){const e=Nr(t);return(Array.isArray(e)?e:e?.check_runs??[]).map(C2)}function C2(t){const e=t.started_at,s=t.completed_at,i=e&&s?new Date(s).getTime()-new Date(e).getTime():null;return{id:String(t.id??""),name:String(t.name??""),status:t.status??"completed",conclusion:t.conclusion??null,htmlUrl:String(t.html_url??""),durationMs:i}}function k2(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_comments",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:j2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function j2(t){const e=Nr(t);return Array.isArray(e)?e.map(N2):[]}function N2(t){const e=t.user;return{id:Number(t.id??0),author:e?.login??"",body:String(t.body??""),createdAt:String(t.created_at??""),htmlUrl:String(t.html_url??"")}}function A2(t){const e=B.c(27),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const c=ku(l);if(c.isLoading){let x;return e[6]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading files…"}),e[6]=x):x=e[6],x}if(c.isError){let x;return e[7]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load file list."}),e[7]=x):x=e[7],x}let d;e[8]!==c.data?(d=c.data??[],e[8]=c.data,e[9]=d):d=e[9];const u=d;if(u.length===0){let x;return e[10]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-muted-foreground",children:"No files changed."}),e[10]=x):x=e[10],x}const h=u.length===1?"":"s",f=`${s.htmlUrl}/files`;let m;e[11]!==f?(m=r.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"underline hover:text-foreground",children:"View diffs on GitHub"}),e[11]=f,e[12]=m):m=e[12];let p;e[13]!==u.length||e[14]!==h||e[15]!==m?(p=r.jsxs("div",{className:"pb-2 text-xs text-muted-foreground",children:[u.length," file",h," changed ·"," ",m]}),e[13]=u.length,e[14]=h,e[15]=m,e[16]=p):p=e[16];let g;if(e[17]!==u||e[18]!==s.htmlUrl){let x;e[20]!==s.htmlUrl?(x=b=>r.jsx("li",{children:r.jsxs("a",{href:b.blobUrl??`${s.htmlUrl}/files`,target:"_blank",rel:"noreferrer",className:"flex items-center justify-between rounded px-2 py-1 font-mono text-xs hover:bg-muted",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(E2,{status:b.status}),r.jsx("span",{className:"truncate",children:b.filename})]}),r.jsxs("span",{className:"flex shrink-0 items-center gap-2 tabular-nums",children:[r.jsxs("span",{children:[r.jsxs("span",{className:"text-success",children:["+",b.additions]})," ",r.jsxs("span",{className:"text-destructive",children:["−",b.deletions]})]}),r.jsx(oi,{className:"h-3 w-3 text-muted-foreground"})]})]})},b.filename),e[20]=s.htmlUrl,e[21]=x):x=e[21],g=u.map(x),e[17]=u,e[18]=s.htmlUrl,e[19]=g}else g=e[19];let _;e[22]!==g?(_=r.jsx("ul",{className:"space-y-0.5",children:g}),e[22]=g,e[23]=_):_=e[23];let v;return e[24]!==p||e[25]!==_?(v=r.jsxs("div",{className:"flex flex-col gap-1",children:[p,_]}),e[24]=p,e[25]=_,e[26]=v):v=e[26],v}function E2(t){const e=B.c(2),{status:s}=t,i=s==="added"?"A":s==="removed"?"D":s==="renamed"?"R":s==="copied"?"C":"M";let n;return e[0]!==i?(n=r.jsx("span",{className:"inline-flex h-4 w-4 items-center justify-center rounded bg-muted text-[10px] font-bold text-muted-foreground",children:i}),e[0]=i,e[1]=n):n=e[1],n}const gs="The user clicked this action deliberately — execute directly. Do not call user_ask unless you hit an actual problem outside the scope of this intent (missing auth, unresolvable conflict, a check with multiple plausible fixes).";function I2(t){return`Commit every pending change in the working tree with a concise conventional-commit message summarizing the diff, then push to \`origin/${t.branch}\`. If local commits are ahead of the remote, push those in the same invocation. ${gs}`}function T2(t){return`Open a pull request for \`${t.branch}\` against its base. Write a clear title and a summary of the changes so far. ${gs}`}function R2(t){return`Reopen PR #${t.prNumber}. ${gs}`}function M2(t){return`Rebase \`${t.branch}\` on the latest base and force-push with --force-with-lease. ${gs}`}function D2(t){return`Re-run the \`${t.checkName}\` check on PR #${t.prNumber}. If an empty commit is needed to retrigger CI, create and push one. ${gs}`}function P2(t){const e=(t.failingChecks??[]).map(s=>`\`${s}\``).join(", ");return`PR #${t.prNumber} has failing checks: ${e}. For each: read the logs, diagnose the root cause, apply the smallest fix that makes it pass, commit, and push. ${gs}`}function L2(t){return`Mark PR #${t.prNumber} ready for review. ${gs}`}function O2(t){return`Read the unresolved review threads on PR #${t.prNumber}. For each thread: understand the reviewer's ask, apply the needed changes, commit, push, reply explaining what changed, and resolve the thread. If a comment is a question that doesn't need a code change, reply with the answer and resolve. ${gs}`}function B2(t){return`Review PR #${t.prNumber}. Read the full diff, analyze every changed file for correctness, security, code quality, and alignment with the repo's patterns. Post specific line-level review comments on concerns, then submit an overall review (approve / request changes / comment) with a concise summary. Do not modify the code — this is a read-and-comment pass. ${gs}`}function $2(t){return`Squash-merge PR #${t.prNumber} into its base. ${gs}`}function z2(t){const e=B.c(23),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe(),l=Cn();let c;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(c={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=c):c=e[5];const d=ju(c);let u;e[6]!==l||e[7]!==s.number?(u=_=>l.sendMessage({parts:[{type:"text",text:D2({prNumber:s.number,checkName:_})}]}),e[6]=l,e[7]=s.number,e[8]=u):u=e[8];const h=u;if(d.isLoading){let _;return e[9]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading checks…"}),e[9]=_):_=e[9],_}if(d.isError){let _;return e[10]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load check runs."}),e[10]=_):_=e[10],_}let f;e[11]!==d.data?(f=d.data??[],e[11]=d.data,e[12]=f):f=e[12];const m=f;if(m.length===0){let _;return e[13]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-muted-foreground",children:"No check runs on the PR head commit."}),e[13]=_):_=e[13],_}let p;if(e[14]!==l||e[15]!==m||e[16]!==h){let _;e[18]!==l||e[19]!==h?(_=v=>r.jsxs("li",{className:"flex items-center justify-between gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(F2,{check:v}),r.jsx("span",{className:"truncate",children:v.name}),v.durationMs!=null&&r.jsx("span",{className:"text-xs text-muted-foreground",children:U2(v.durationMs)})]}),r.jsxs("span",{className:"flex shrink-0 items-center gap-1",children:[v.htmlUrl&&r.jsx("a",{href:v.htmlUrl,target:"_blank",rel:"noreferrer",className:"inline-flex h-7 items-center justify-center rounded px-2 text-xs text-muted-foreground hover:bg-background",title:"View run",children:r.jsx(oi,{className:"h-3.5 w-3.5"})}),v.conclusion==="failure"&&r.jsx(oe,{size:"sm",variant:"ghost",disabled:l.isStreaming,onClick:()=>h(v.name),children:"Re-run"})]})]},v.id),e[18]=l,e[19]=h,e[20]=_):_=e[20],p=m.map(_),e[14]=l,e[15]=m,e[16]=h,e[17]=p}else p=e[17];let g;return e[21]!==p?(g=r.jsx("ul",{className:"flex flex-col gap-0.5",children:p}),e[21]=p,e[22]=g):g=e[22],g}function F2(t){const e=B.c(5),{check:s}=t;if(s.status!=="completed"){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-muted-foreground","aria-label":"In progress",children:"○"}),e[0]=o):o=e[0],o}if(s.conclusion==="success"){let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-success","aria-label":"Success",children:"✓"}),e[1]=o):o=e[1],o}if(s.conclusion==="failure"){let o;return e[2]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-destructive","aria-label":"Failure",children:"✗"}),e[2]=o):o=e[2],o}const i=s.conclusion??"—";let n;return e[3]!==i?(n=r.jsx("span",{className:"text-muted-foreground","aria-label":i,children:"—"}),e[3]=i,e[4]=n):n=e[4],n}function U2(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.round(e/60)}m`}function H2(t){const e=B.c(10),{comments:s,isLoading:i,isError:n}=t;if(i||n||!s||s.length===0)return null;const o=s.length===1?"":"s";let a;e[0]!==s.length||e[1]!==o?(a=r.jsxs(Vp,{className:"py-3 text-sm font-medium",children:[s.length," comment",o]}),e[0]=s.length,e[1]=o,e[2]=a):a=e[2];let l;e[3]!==s?(l=s.map(W2),e[3]=s,e[4]=l):l=e[4];let c;e[5]!==l?(c=r.jsx(Cp,{className:"space-y-3 pb-3",children:l}),e[5]=l,e[6]=c):c=e[6];let d;return e[7]!==a||e[8]!==c?(d=r.jsx(kp,{type:"single",collapsible:!0,className:"border-t border-border",children:r.jsxs(jp,{value:"comments",className:"border-b-0",children:[a,c]})}),e[7]=a,e[8]=c,e[9]=d):d=e[9],d}function W2(t){return r.jsxs("div",{className:"rounded-md border border-border p-3",children:[r.jsxs("div",{className:"mb-1 text-xs text-muted-foreground",children:["@",t.author," · ",K2(t.createdAt)]}),r.jsx(ja,{id:`pr-comment-${t.id}`,text:ur(t.body)})]},t.id)}function K2(t){if(!t)return"";const e=new Date(t).getTime();if(!Number.isFinite(e))return"";const s=Date.now()-e;if(s<0)return"just now";const i=Math.floor(s/864e5);if(i>0)return`${i}d ago`;const n=Math.floor(s/36e5);if(n>0)return`${n}h ago`;const o=Math.floor(s/6e4);return`${Math.max(1,o)}m ago`}function q2(t){const e=B.c(18),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const c=k2(l);let d;e[6]!==s.body||e[7]!==s.number?(d=s.body&&r.jsx("div",{className:"text-sm",children:r.jsx(ja,{id:`pr-body-${s.number}`,text:ur(s.body)})}),e[6]=s.body,e[7]=s.number,e[8]=d):d=e[8];let u;e[9]!==c.data?(u=c.data??[],e[9]=c.data,e[10]=u):u=e[10];let h;e[11]!==c.isError||e[12]!==c.isLoading||e[13]!==u?(h=r.jsx(H2,{comments:u,isLoading:c.isLoading,isError:c.isError}),e[11]=c.isError,e[12]=c.isLoading,e[13]=u,e[14]=h):h=e[14];let f;return e[15]!==d||e[16]!==h?(f=r.jsxs("div",{className:"space-y-8",children:[d,h]}),e[15]=d,e[16]=h,e[17]=f):f=e[17],f}function G2(t){const e=B.c(26),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const d=ku(l).data?.length,[u,h]=j.useState("description"),f=j.useRef({description:null,changes:null,checks:null}),[m,p]=j.useState(null),g=w=>k=>{if(f.current[w]=k,k&&w===u){const T=k.offsetLeft,M=k.offsetWidth;(m===null||T!==m.left||M!==m.width)&&p({left:T,width:M})}},_=w=>{const k=w;h(k);const T=f.current[k];T&&p({left:T.offsetLeft,width:T.offsetWidth})},v=Gn,x=g("checks");let b;e[6]!==v||e[7]!==x?(b=r.jsx(v,{ref:x,variant:"underline",value:"checks",className:"pb-3 data-[state=active]:border-transparent",children:"Checks"}),e[6]=v,e[7]=x,e[8]=b):b=e[8];let y;e[9]!==m?(y=m&&r.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute bottom-[-1px] h-0.5 bg-primary transition-[left,width] duration-200 ease-out",style:{left:m.left,width:m.width}}),e[9]=m,e[10]=y):y=e[10];let V;e[11]!==i||e[12]!==n||e[13]!==s||e[14]!==o?(V=r.jsx(Jr,{value:"description",className:"mt-6",children:r.jsx(q2,{pr:s,connectionId:i,owner:n,repo:o})}),e[11]=i,e[12]=n,e[13]=s,e[14]=o,e[15]=V):V=e[15];let C;e[16]!==i||e[17]!==n||e[18]!==s||e[19]!==o?(C=r.jsx(Jr,{value:"changes",className:"mt-6",children:r.jsx(A2,{pr:s,connectionId:i,owner:n,repo:o})}),e[16]=i,e[17]=n,e[18]=s,e[19]=o,e[20]=C):C=e[20];let S;return e[21]!==i||e[22]!==n||e[23]!==s||e[24]!==o?(S=r.jsx(Jr,{value:"checks",className:"mt-6",children:r.jsx(z2,{pr:s,connectionId:i,owner:n,repo:o})}),e[21]=i,e[22]=n,e[23]=s,e[24]=o,e[25]=S):S=e[25],r.jsxs(Rd,{value:u,onValueChange:_,variant:"underline",children:[r.jsxs(Km,{variant:"underline",className:"relative h-auto p-0",children:[r.jsx(Gn,{ref:g("description"),variant:"underline",value:"description",className:"pb-3 data-[state=active]:border-transparent",children:"Description"}),r.jsxs(Gn,{ref:g("changes"),variant:"underline",value:"changes",className:"pb-3 data-[state=active]:border-transparent",children:["Changes",d!==void 0?` ${d}`:""]}),b,y]}),V,C,S]})}function Y2(t){const e=B.c(5),{pr:s}=t,i=`Open PR #${s.number} on GitHub`;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(oi,{className:"h-4 w-4 text-muted-foreground"}),e[0]=n):n=e[0];let o;return e[1]!==s.htmlUrl||e[2]!==s.number||e[3]!==i?(o=r.jsx("div",{className:"flex h-12 items-center border-b border-border px-4 shrink-0",children:r.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":i,className:"inline-flex items-center gap-1.5 text-base font-medium text-foreground hover:underline",children:["PR #",s.number,n]})}),e[1]=s.htmlUrl,e[2]=s.number,e[3]=i,e[4]=o):o=e[4],o}function X2(t){const e=B.c(23),{pr:s}=t;let i;e[0]!==s.title?(i=ur(s.title),e[0]=s.title,e[1]=i):i=e[1];let n;e[2]!==i?(n=r.jsx("h1",{className:"text-2xl font-semibold",children:i}),e[2]=i,e[3]=n):n=e[3];const o=`Open PR #${s.number} on GitHub`;let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(oi,{className:"h-3.5 w-3.5"}),e[4]=a):a=e[4];let l;e[5]!==s.htmlUrl||e[6]!==s.number||e[7]!==o?(l=r.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":o,className:"inline-flex items-center gap-1 hover:text-foreground",children:["PR #",s.number,a]}),e[5]=s.htmlUrl,e[6]=s.number,e[7]=o,e[8]=l):l=e[8];let c;e[9]!==s.author?(c=s.author&&r.jsxs(r.Fragment,{children:["@",s.author," · "]}),e[9]=s.author,e[10]=c):c=e[10];let d;e[11]!==s.base?(d=r.jsx("span",{className:"font-mono text-xs",children:s.base}),e[11]=s.base,e[12]=d):d=e[12];let u;e[13]!==s.head?(u=r.jsx("span",{className:"font-mono text-xs",children:s.head}),e[13]=s.head,e[14]=u):u=e[14];let h;e[15]!==l||e[16]!==c||e[17]!==d||e[18]!==u?(h=r.jsxs("div",{className:"text-sm text-muted-foreground",children:[l," · ",c,d," ← ",u]}),e[15]=l,e[16]=c,e[17]=d,e[18]=u,e[19]=h):h=e[19];let f;return e[20]!==n||e[21]!==h?(f=r.jsxs("div",{className:"space-y-2",children:[n,h]}),e[20]=n,e[21]=h,e[22]=f):f=e[22],f}function J2(t){const e=B.c(8),{virtualMcpId:s}=t,{org:i}=xe(),n=$t(s),{currentBranch:o}=Lt(),a=n?.metadata?.githubRepo??null;if(!a?.connectionId){let c;return e[0]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"flex h-full items-center justify-center p-8 text-sm text-muted-foreground",children:"This virtualmcp is not linked to a GitHub repository."}),e[0]=c):c=e[0],c}if(!o){let c;return e[1]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-8 text-sm",children:[r.jsx(er,{className:"h-6 w-6 text-muted-foreground"}),r.jsx("div",{className:"text-muted-foreground",children:"No branch selected."}),r.jsx("div",{className:"text-xs text-muted-foreground",children:"Pick a branch from the dropdown in the header to see PR status."})]}),e[1]=c):c=e[1],c}let l;return e[2]!==o||e[3]!==a.connectionId||e[4]!==a.name||e[5]!==a.owner||e[6]!==i.id?(l=r.jsx(Q2,{orgId:i.id,connectionId:a.connectionId,owner:a.owner,repo:a.name,branch:o}),e[2]=o,e[3]=a.connectionId,e[4]=a.name,e[5]=a.owner,e[6]=i.id,e[7]=l):l=e[7],l}function Q2(t){const e=B.c(49),{orgId:s,connectionId:i,owner:n,repo:o,branch:a}=t;let l;e[0]!==a||e[1]!==i||e[2]!==s||e[3]!==n||e[4]!==o?(l={orgId:s,connectionId:i,owner:n,repo:o,branch:a},e[0]=a,e[1]=i,e[2]=s,e[3]=n,e[4]=o,e[5]=l):l=e[5];const{data:c,isLoading:d,isError:u}=Cu(l),h=Z2;if(d){let v;return e[6]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"Loading PR state…"}),e[6]=v):v=e[6],v}if(u){let v;return e[7]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"p-4 text-sm text-destructive",children:"Couldn't load PR state. The GitHub connection may be broken."}),e[7]=v):v=e[7],v}const f=`https://github.com/${n}/${o}/tree/${a}`;if(c&&c.state==="closed"){let v;e[8]!==c?(v=r.jsx(Y2,{pr:c}),e[8]=c,e[9]=v):v=e[9];const x=c.merged?"✓ Merged":"✗ Closed";let b;e[10]!==c.mergedAt?(b=c.mergedAt&&r.jsxs(r.Fragment,{children:[" · ",new Date(c.mergedAt).toLocaleDateString()]}),e[10]=c.mergedAt,e[11]=b):b=e[11];let y;e[12]!==c.author?(y=c.author&&r.jsxs(r.Fragment,{children:[" · by @",c.author]}),e[12]=c.author,e[13]=y):y=e[13];let V;e[14]!==c.base||e[15]!==x||e[16]!==b||e[17]!==y?(V=r.jsxs("div",{className:"text-sm text-success",children:[x," into ",c.base,b,y]}),e[14]=c.base,e[15]=x,e[16]=b,e[17]=y,e[18]=V):V=e[18];let C;e[19]!==c.title?(C=ur(c.title),e[19]=c.title,e[20]=C):C=e[20];let S;e[21]!==C?(S=r.jsx("h1",{className:"text-lg font-semibold",children:C}),e[21]=C,e[22]=S):S=e[22];let w;e[23]!==c.body||e[24]!==c.number?(w=c.body&&r.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-3 text-sm",children:r.jsx(ja,{id:`pr-body-${c.number}`,text:ur(c.body)})}),e[23]=c.body,e[24]=c.number,e[25]=w):w=e[25];let k;e[26]!==V||e[27]!==S||e[28]!==w?(k=r.jsxs("div",{className:"flex flex-col gap-4 p-4 overflow-auto",children:[V,S,w]}),e[26]=V,e[27]=S,e[28]=w,e[29]=k):k=e[29];let T;return e[30]!==v||e[31]!==k?(T=r.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[v,k]}),e[30]=v,e[31]=k,e[32]=T):T=e[32],T}if(c&&c.state==="open"){let v;e[33]!==c?(v=r.jsx(X2,{pr:c}),e[33]=c,e[34]=v):v=e[34];let x;e[35]!==i||e[36]!==n||e[37]!==c||e[38]!==o?(x=r.jsx("div",{className:"mt-8",children:r.jsx(G2,{pr:c,connectionId:i,owner:n,repo:o})}),e[35]=i,e[36]=n,e[37]=c,e[38]=o,e[39]=x):x=e[39];let b;return e[40]!==v||e[41]!==x?(b=r.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:r.jsx("div",{className:"flex-1 overflow-auto",children:r.jsxs("div",{className:"mx-auto w-full max-w-[1200px] px-4 pt-8 pb-6 md:px-10 md:pt-12 md:pb-10",children:[v,x]})})}),e[40]=v,e[41]=x,e[42]=b):b=e[42],b}let m;e[43]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-4 text-sm",children:`This branch doesn't have an open pull request. Click "Submit for review" in the header to open one; the agent will draft the title and summary from the current state of the branch.`}),e[43]=m):m=e[43];let p;e[44]!==f?(p=()=>h(f),e[44]=f,e[45]=p):p=e[45];let g;e[46]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(oi,{className:"mr-1.5 h-4 w-4"}),e[46]=g):g=e[46];let _;return e[47]!==p?(_=r.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[m,r.jsx("div",{className:"flex items-center gap-2",children:r.jsxs(oe,{size:"sm",variant:"outline",onClick:p,children:[g,"Open branch on GitHub"]})})]}),e[47]=p,e[48]=_):_=e[48],_}function Z2(t){window.open(t,"_blank","noopener,noreferrer")}const oo="env";function eS(){const t=B.c(13),e=Oe();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={strict:!1},t[0]=s):s=t[0];const n=ti(s).main===oo;let o;t[1]!==e?(o=f=>{e({search:(m=>({...m,main:f})),replace:!0})},t[1]=e,t[2]=o):o=t[2];const a=o;let l;t[3]!==n||t[4]!==a?(l=()=>{a(n?"0":oo)},t[3]=n,t[4]=a,t[5]=l):l=t[5];const c=l;let d;t[6]!==n||t[7]!==a?(d=()=>{n||a(oo)},t[6]=n,t[7]=a,t[8]=d):d=t[8];const u=d;let h;return t[9]!==n||t[10]!==u||t[11]!==c?(h={envOpen:n,toggleEnv:c,openEnv:u},t[9]=n,t[10]=u,t[11]=c,t[12]=h):h=t[12],h}const tS=as({tag:pt(),id:pt(),classes:pt(),text:pt(),html:pt(),manifestKey:pt().nullable(),componentName:pt().nullable(),parents:pt(),url:pt(),path:pt(),viewport:as({width:Pr(),height:Pr()}),position:as({x:Pr(),y:Pr()})}),sS=`(function() {
|
|
580
|
+
${X}`:X;l.setValue("metadata.instructions",K,{shouldDirty:!0})},$=new Set(c.map(U=>U.connection_id)),q=Oe(),[F,W]=j.useState(!1),H=async()=>{T();try{await i.delete.mutateAsync(t.id),re("agent_deleted",{agent_id:t.id,source:"agent_detail"}),he.success(`Deleted "${t.title}"`),q({to:"/$org",params:{org:s.slug}})}catch{}};return r.jsxs(Jt,{children:[r.jsx(Jt.Content,{children:r.jsx(Jt.Body,{children:r.jsxs("div",{className:"flex flex-col gap-10",children:[!e&&r.jsx(Jt.Title,{actions:r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(oe,{variant:"outline",size:"sm",onClick:x,children:[r.jsx(tn,{size:14,className:"!size-[14px]"}),"Test Agent"]}),r.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive",onClick:()=>W(!0),children:r.jsx(Ro,{size:14})})]}),children:"Settings"}),r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(pi,{name:"icon",control:l.control,render:({field:U})=>r.jsx(My,{value:U.value??null,onChange:X=>{U.onChange(X),M()},onColorChange:X=>{l.setValue("metadata.ui.themeColor",X,{shouldDirty:!0}),M()},name:l.watch("title")||"Agent",size:"md",className:"shrink-0",avatarClassName:"[&_svg]:w-1/2 [&_svg]:h-1/2",disabled:d})}),r.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[r.jsx(pi,{name:"title",control:l.control,render:({field:U})=>r.jsx("input",{...U,type:"text",value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Agent name",className:"text-lg font-medium leading-tight text-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})}),r.jsx(pi,{name:"description",control:l.control,render:({field:U})=>r.jsx("input",{...U,type:"text",value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Add a description...",className:"text-sm text-muted-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})})]}),r.jsxs(oe,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>{re("agent_connect_modal_opened",{agent_id:t.id}),h({type:"SET_SHARE_DIALOG_OPEN",payload:!0})},children:[r.jsxs("span",{className:"flex items-center -space-x-1.5 mr-0.5",children:[r.jsx("span",{className:"inline-flex items-center justify-center size-4 rounded-full bg-black ring-1 ring-white/20 shrink-0",children:r.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"size-2.5 brightness-0 invert"})}),r.jsx("span",{className:"relative z-10 inline-flex items-center justify-center size-4 rounded-full ring-1 ring-background shrink-0",style:{backgroundColor:"#D97757"},children:r.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude",className:"size-2.5 brightness-0 invert"})})]}),"Connect"]})]}),r.jsxs("div",{className:"flex items-center gap-2 -mt-6 text-muted-foreground",children:[r.jsx(Ch,{id:t.created_by,size:"2xs",className:"text-sm text-muted-foreground"}),r.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),r.jsx("span",{className:"text-sm",children:new Date(t.created_at).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})})]}),r.jsxs("section",{className:"flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Connections"}),c.length>0&&r.jsxs(oe,{variant:"outline",size:"sm",onClick:N,children:[r.jsx(Dt,{size:14}),"Add connection"]})]}),r.jsx("div",{className:"flex flex-col gap-2",children:c.length===0?r.jsxs("button",{type:"button",onClick:N,className:"flex items-center gap-3 px-3 py-2.5 rounded-lg border border-dashed border-border hover:bg-accent/50 transition-colors w-full text-left cursor-pointer",children:[r.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:r.jsx(Dt,{size:16})}),r.jsx("span",{className:"text-sm text-muted-foreground",children:"No connections yet. Add one to get started."})]}):c.map(U=>r.jsx(ls,{fallback:()=>null,children:r.jsx(j.Suspense,{fallback:r.jsx(Cu,{}),children:r.jsx(u2,{connection_id:U.connection_id,usedConnectionIds:$,onOpenSettings:()=>P(U.connection_id),onRemove:()=>D(U.connection_id),onAuthenticate:O,onSwitchInstance:L,onNewInstance:()=>R(U.connection_id)})})},U.connection_id))})]}),r.jsxs("section",{className:"flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Instructions"}),!d&&r.jsxs("div",{className:"flex items-center gap-2",children:[!l.watch("metadata.instructions")?.trim()&&r.jsx(oe,{variant:"outline",size:"sm",onClick:z,children:"+ Prompt template"}),r.jsxs(oe,{variant:"outline",size:"sm",disabled:!l.watch("metadata.instructions")?.trim(),onClick:v,children:[r.jsx(Da,{size:13}),"Improve"]})]})]}),r.jsx(pi,{name:"metadata.instructions",control:l.control,render:({field:U})=>r.jsxs("div",{className:"relative rounded-xl card-shadow bg-card focus-within:ring-1 focus-within:ring-ring",children:[r.jsx(To,{...U,value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"min-h-[200px] max-h-[360px] overflow-auto resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed border-0 shadow-none px-4 py-3 pr-11 focus-visible:ring-0 focus-visible:ring-offset-0 bg-transparent",style:{boxShadow:"none"}}),r.jsxs(Ye,{delayDuration:0,children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"absolute top-2 right-2 h-7 w-7 text-muted-foreground",onClick:()=>m(!0),"aria-label":"Open fullscreen editor",children:r.jsx(lp,{size:14})})}),r.jsx(Ge,{side:"left",children:"Fullscreen"})]})]})})]}),r.jsx(_2,{virtualMcpId:t.id}),r.jsxs("section",{className:"flex items-center justify-between border-t border-border pt-6",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-sm font-medium",children:"Delete agent"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:"Permanently delete this agent and all its data."})]}),r.jsxs(oe,{variant:"outline",size:"sm",className:"text-destructive border-destructive/40 hover:bg-destructive/10 hover:text-destructive shrink-0",onClick:()=>W(!0),children:[r.jsx(Ro,{size:14}),"Delete agent"]})]})]})})}),r.jsx(qa,{open:F,onOpenChange:W,children:r.jsxs(Fa,{children:[r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Delete Agent?"}),r.jsxs(Wa,{children:["This action cannot be undone. This will permanently delete"," ",r.jsx("span",{className:"font-medium text-foreground",children:t.title}),"."]})]}),r.jsxs(Ka,{children:[r.jsx(za,{children:"Cancel"}),r.jsx(wh,{onClick:H,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),r.jsx(Qa,{open:u.addDialogOpen,onOpenChange:U=>h({type:"SET_ADD_DIALOG_OPEN",payload:U}),agentId:t.id,addedConnectionIds:$,onAdd:A}),r.jsx(t2,{open:u.settingsDialogOpen,onOpenChange:U=>{U||h({type:"CLOSE_SETTINGS"})},selectedId:u.settingsConnectionId,form:l,connections:c,onAuthenticate:O}),r.jsx(d2,{open:u.shareDialogOpen,onOpenChange:U=>h({type:"SET_SHARE_DIALOG_OPEN",payload:U}),virtualMcp:t}),r.jsx(Bt,{open:f,onOpenChange:m,children:r.jsxs(Ot,{className:"w-[90vw] sm:max-w-6xl h-[85vh] flex flex-col p-0 gap-0",children:[r.jsx(Gt,{className:"px-6 pt-6 pb-3 border-b border-border shrink-0",children:r.jsx(qt,{children:"Instructions"})}),r.jsx("div",{className:"flex-1 min-h-0 p-6",children:r.jsx(pi,{name:"metadata.instructions",control:l.control,render:({field:U})=>r.jsx(To,{...U,value:U.value??"",onBlur:()=>{U.onBlur(),M()},disabled:d,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"w-full h-full resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed rounded-xl card-shadow px-4 py-3 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0 bg-card border-0",style:{boxShadow:"none"}})})})]})})]})}function v2(t){const e=B.c(9),{virtualMcpId:s,hideOwnTitle:i}=t,n=Oe(),{org:o}=xe(),a=$t(s);if(!a){let d;return e[0]!==n||e[1]!==o.slug?(d=r.jsx("div",{className:"flex h-full w-full bg-background",children:r.jsx(Vi,{title:"Space not found",description:"This space may have been deleted or you may not have access.",actions:r.jsx(oe,{variant:"outline",onClick:()=>n({to:"/$org",params:{org:o.slug}}),children:"Back to spaces"})})}),e[0]=n,e[1]=o.slug,e[2]=d):d=e[2],d}let l;e[3]!==a?(l=bs(a)?.connectionId??"",e[3]=a,e[4]=l):l=e[4];let c;return e[5]!==i||e[6]!==l||e[7]!==a?(c=r.jsx(x2,{virtualMcp:a,hideOwnTitle:i},l),e[5]=i,e[6]=l,e[7]=a,e[8]=c):c=e[8],c}function pc(t){const e=B.c(2),{virtualMcpId:s}=t;let i;return e[0]!==s?(i=r.jsx(v2,{virtualMcpId:s,hideOwnTitle:!0}),e[0]=s,e[1]=i):i=e[1],i}const b2={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function ur(t){return t?t.replace(/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,(e,s)=>{if(s.startsWith("#x")||s.startsWith("#X")){const i=Number.parseInt(s.slice(2),16);return Number.isFinite(i)?String.fromCodePoint(i):e}if(s.startsWith("#")){const i=Number.parseInt(s.slice(1),10);return Number.isFinite(i)?String.fromCodePoint(i):e}return b2[s]??e}):""}function Nr(t){if(!t||typeof t!="object")return null;const e=t;if(e.structuredContent!==void 0)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(!s)return null;try{return JSON.parse(s)}catch{return null}}const On=6e4,Bn=3e4;function ku(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.branch?`${t.owner}:${t.branch}`:void 0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={owner:t.owner,repo:t.repo,state:"all",head:n,perPage:1},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.branch;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"list_pull_requests",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:y2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function y2(t){const e=Nr(t);if(!e||!Array.isArray(e)||e.length===0)return null;const s=e[0],i=s.base,n=s.head,o=s.user;return{number:s.number??0,title:s.title??"",body:s.body??"",state:s.state==="closed"?"closed":"open",merged:s.merged_at!=null,mergedAt:s.merged_at??null,base:i?.ref??"main",head:n?.ref??"",headSha:n?.sha??"",htmlUrl:s.html_url??"",author:o?.login??""}}function ju(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_files",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:S2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function S2(t){const e=Nr(t);return Array.isArray(e)?e.map(w2):[]}function w2(t){const e=Number(t.additions??0),s=Number(t.changes??e),i=Number(t.deletions??Math.max(0,s-e));return{filename:String(t.filename??""),status:t.status??"modified",additions:e,deletions:i,blobUrl:typeof t.blob_url=="string"?t.blob_url:null}}function Nu(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_check_runs",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:V2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function V2(t){const e=Nr(t);return(Array.isArray(e)?e:e?.check_runs??[]).map(C2)}function C2(t){const e=t.started_at,s=t.completed_at,i=e&&s?new Date(s).getTime()-new Date(e).getTime():null;return{id:String(t.id??""),name:String(t.name??""),status:t.status??"completed",conclusion:t.conclusion??null,htmlUrl:String(t.html_url??""),durationMs:i}}function k2(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get_comments",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:On,refetchIntervalInBackground:!1,staleTime:Bn,select:j2},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function j2(t){const e=Nr(t);return Array.isArray(e)?e.map(N2):[]}function N2(t){const e=t.user;return{id:Number(t.id??0),author:e?.login??"",body:String(t.body??""),createdAt:String(t.created_at??""),htmlUrl:String(t.html_url??"")}}function A2(t){const e=B.c(27),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const c=ju(l);if(c.isLoading){let x;return e[6]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading files…"}),e[6]=x):x=e[6],x}if(c.isError){let x;return e[7]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load file list."}),e[7]=x):x=e[7],x}let d;e[8]!==c.data?(d=c.data??[],e[8]=c.data,e[9]=d):d=e[9];const u=d;if(u.length===0){let x;return e[10]===Symbol.for("react.memo_cache_sentinel")?(x=r.jsx("div",{className:"text-sm text-muted-foreground",children:"No files changed."}),e[10]=x):x=e[10],x}const h=u.length===1?"":"s",f=`${s.htmlUrl}/files`;let m;e[11]!==f?(m=r.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"underline hover:text-foreground",children:"View diffs on GitHub"}),e[11]=f,e[12]=m):m=e[12];let p;e[13]!==u.length||e[14]!==h||e[15]!==m?(p=r.jsxs("div",{className:"pb-2 text-xs text-muted-foreground",children:[u.length," file",h," changed ·"," ",m]}),e[13]=u.length,e[14]=h,e[15]=m,e[16]=p):p=e[16];let g;if(e[17]!==u||e[18]!==s.htmlUrl){let x;e[20]!==s.htmlUrl?(x=b=>r.jsx("li",{children:r.jsxs("a",{href:b.blobUrl??`${s.htmlUrl}/files`,target:"_blank",rel:"noreferrer",className:"flex items-center justify-between rounded px-2 py-1 font-mono text-xs hover:bg-muted",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(E2,{status:b.status}),r.jsx("span",{className:"truncate",children:b.filename})]}),r.jsxs("span",{className:"flex shrink-0 items-center gap-2 tabular-nums",children:[r.jsxs("span",{children:[r.jsxs("span",{className:"text-success",children:["+",b.additions]})," ",r.jsxs("span",{className:"text-destructive",children:["−",b.deletions]})]}),r.jsx(oi,{className:"h-3 w-3 text-muted-foreground"})]})]})},b.filename),e[20]=s.htmlUrl,e[21]=x):x=e[21],g=u.map(x),e[17]=u,e[18]=s.htmlUrl,e[19]=g}else g=e[19];let _;e[22]!==g?(_=r.jsx("ul",{className:"space-y-0.5",children:g}),e[22]=g,e[23]=_):_=e[23];let v;return e[24]!==p||e[25]!==_?(v=r.jsxs("div",{className:"flex flex-col gap-1",children:[p,_]}),e[24]=p,e[25]=_,e[26]=v):v=e[26],v}function E2(t){const e=B.c(2),{status:s}=t,i=s==="added"?"A":s==="removed"?"D":s==="renamed"?"R":s==="copied"?"C":"M";let n;return e[0]!==i?(n=r.jsx("span",{className:"inline-flex h-4 w-4 items-center justify-center rounded bg-muted text-[10px] font-bold text-muted-foreground",children:i}),e[0]=i,e[1]=n):n=e[1],n}const gs="The user clicked this action deliberately — execute directly. Do not call user_ask unless you hit an actual problem outside the scope of this intent (missing auth, unresolvable conflict, a check with multiple plausible fixes).";function I2(t){return`Commit every pending change in the working tree with a concise conventional-commit message summarizing the diff, then push to \`origin/${t.branch}\`. If local commits are ahead of the remote, push those in the same invocation. ${gs}`}function T2(t){return`Open a pull request for \`${t.branch}\` against its base. Write a clear title and a summary of the changes so far. ${gs}`}function R2(t){return`Reopen PR #${t.prNumber}. ${gs}`}function M2(t){return`Rebase \`${t.branch}\` on the latest base and force-push with --force-with-lease. ${gs}`}function D2(t){return`Re-run the \`${t.checkName}\` check on PR #${t.prNumber}. If an empty commit is needed to retrigger CI, create and push one. ${gs}`}function P2(t){const e=(t.failingChecks??[]).map(s=>`\`${s}\``).join(", ");return`PR #${t.prNumber} has failing checks: ${e}. For each: read the logs, diagnose the root cause, apply the smallest fix that makes it pass, commit, and push. ${gs}`}function L2(t){return`Mark PR #${t.prNumber} ready for review. ${gs}`}function O2(t){return`Read the unresolved review threads on PR #${t.prNumber}. For each thread: understand the reviewer's ask, apply the needed changes, commit, push, reply explaining what changed, and resolve the thread. If a comment is a question that doesn't need a code change, reply with the answer and resolve. ${gs}`}function B2(t){return`Review PR #${t.prNumber}. Read the full diff, analyze every changed file for correctness, security, code quality, and alignment with the repo's patterns. Post specific line-level review comments on concerns, then submit an overall review (approve / request changes / comment) with a concise summary. Do not modify the code — this is a read-and-comment pass. ${gs}`}function $2(t){return`Squash-merge PR #${t.prNumber} into its base. ${gs}`}function z2(t){const e=B.c(23),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe(),l=Cn();let c;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(c={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=c):c=e[5];const d=Nu(c);let u;e[6]!==l||e[7]!==s.number?(u=_=>l.sendMessage({parts:[{type:"text",text:D2({prNumber:s.number,checkName:_})}]}),e[6]=l,e[7]=s.number,e[8]=u):u=e[8];const h=u;if(d.isLoading){let _;return e[9]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading checks…"}),e[9]=_):_=e[9],_}if(d.isError){let _;return e[10]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load check runs."}),e[10]=_):_=e[10],_}let f;e[11]!==d.data?(f=d.data??[],e[11]=d.data,e[12]=f):f=e[12];const m=f;if(m.length===0){let _;return e[13]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"text-sm text-muted-foreground",children:"No check runs on the PR head commit."}),e[13]=_):_=e[13],_}let p;if(e[14]!==l||e[15]!==m||e[16]!==h){let _;e[18]!==l||e[19]!==h?(_=v=>r.jsxs("li",{className:"flex items-center justify-between gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(F2,{check:v}),r.jsx("span",{className:"truncate",children:v.name}),v.durationMs!=null&&r.jsx("span",{className:"text-xs text-muted-foreground",children:U2(v.durationMs)})]}),r.jsxs("span",{className:"flex shrink-0 items-center gap-1",children:[v.htmlUrl&&r.jsx("a",{href:v.htmlUrl,target:"_blank",rel:"noreferrer",className:"inline-flex h-7 items-center justify-center rounded px-2 text-xs text-muted-foreground hover:bg-background",title:"View run",children:r.jsx(oi,{className:"h-3.5 w-3.5"})}),v.conclusion==="failure"&&r.jsx(oe,{size:"sm",variant:"ghost",disabled:l.isStreaming,onClick:()=>h(v.name),children:"Re-run"})]})]},v.id),e[18]=l,e[19]=h,e[20]=_):_=e[20],p=m.map(_),e[14]=l,e[15]=m,e[16]=h,e[17]=p}else p=e[17];let g;return e[21]!==p?(g=r.jsx("ul",{className:"flex flex-col gap-0.5",children:p}),e[21]=p,e[22]=g):g=e[22],g}function F2(t){const e=B.c(5),{check:s}=t;if(s.status!=="completed"){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-muted-foreground","aria-label":"In progress",children:"○"}),e[0]=o):o=e[0],o}if(s.conclusion==="success"){let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-success","aria-label":"Success",children:"✓"}),e[1]=o):o=e[1],o}if(s.conclusion==="failure"){let o;return e[2]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("span",{className:"text-destructive","aria-label":"Failure",children:"✗"}),e[2]=o):o=e[2],o}const i=s.conclusion??"—";let n;return e[3]!==i?(n=r.jsx("span",{className:"text-muted-foreground","aria-label":i,children:"—"}),e[3]=i,e[4]=n):n=e[4],n}function U2(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.round(e/60)}m`}function H2(t){const e=B.c(10),{comments:s,isLoading:i,isError:n}=t;if(i||n||!s||s.length===0)return null;const o=s.length===1?"":"s";let a;e[0]!==s.length||e[1]!==o?(a=r.jsxs(Cp,{className:"py-3 text-sm font-medium",children:[s.length," comment",o]}),e[0]=s.length,e[1]=o,e[2]=a):a=e[2];let l;e[3]!==s?(l=s.map(W2),e[3]=s,e[4]=l):l=e[4];let c;e[5]!==l?(c=r.jsx(kp,{className:"space-y-3 pb-3",children:l}),e[5]=l,e[6]=c):c=e[6];let d;return e[7]!==a||e[8]!==c?(d=r.jsx(jp,{type:"single",collapsible:!0,className:"border-t border-border",children:r.jsxs(Np,{value:"comments",className:"border-b-0",children:[a,c]})}),e[7]=a,e[8]=c,e[9]=d):d=e[9],d}function W2(t){return r.jsxs("div",{className:"rounded-md border border-border p-3",children:[r.jsxs("div",{className:"mb-1 text-xs text-muted-foreground",children:["@",t.author," · ",K2(t.createdAt)]}),r.jsx(ja,{id:`pr-comment-${t.id}`,text:ur(t.body)})]},t.id)}function K2(t){if(!t)return"";const e=new Date(t).getTime();if(!Number.isFinite(e))return"";const s=Date.now()-e;if(s<0)return"just now";const i=Math.floor(s/864e5);if(i>0)return`${i}d ago`;const n=Math.floor(s/36e5);if(n>0)return`${n}h ago`;const o=Math.floor(s/6e4);return`${Math.max(1,o)}m ago`}function q2(t){const e=B.c(18),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const c=k2(l);let d;e[6]!==s.body||e[7]!==s.number?(d=s.body&&r.jsx("div",{className:"text-sm",children:r.jsx(ja,{id:`pr-body-${s.number}`,text:ur(s.body)})}),e[6]=s.body,e[7]=s.number,e[8]=d):d=e[8];let u;e[9]!==c.data?(u=c.data??[],e[9]=c.data,e[10]=u):u=e[10];let h;e[11]!==c.isError||e[12]!==c.isLoading||e[13]!==u?(h=r.jsx(H2,{comments:u,isLoading:c.isLoading,isError:c.isError}),e[11]=c.isError,e[12]=c.isLoading,e[13]=u,e[14]=h):h=e[14];let f;return e[15]!==d||e[16]!==h?(f=r.jsxs("div",{className:"space-y-8",children:[d,h]}),e[15]=d,e[16]=h,e[17]=f):f=e[17],f}function G2(t){const e=B.c(26),{pr:s,connectionId:i,owner:n,repo:o}=t,{org:a}=xe();let l;e[0]!==i||e[1]!==a.id||e[2]!==n||e[3]!==s.number||e[4]!==o?(l={orgId:a.id,connectionId:i,owner:n,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=n,e[3]=s.number,e[4]=o,e[5]=l):l=e[5];const d=ju(l).data?.length,[u,h]=j.useState("description"),f=j.useRef({description:null,changes:null,checks:null}),[m,p]=j.useState(null),g=w=>k=>{if(f.current[w]=k,k&&w===u){const T=k.offsetLeft,M=k.offsetWidth;(m===null||T!==m.left||M!==m.width)&&p({left:T,width:M})}},_=w=>{const k=w;h(k);const T=f.current[k];T&&p({left:T.offsetLeft,width:T.offsetWidth})},v=Gn,x=g("checks");let b;e[6]!==v||e[7]!==x?(b=r.jsx(v,{ref:x,variant:"underline",value:"checks",className:"pb-3 data-[state=active]:border-transparent",children:"Checks"}),e[6]=v,e[7]=x,e[8]=b):b=e[8];let y;e[9]!==m?(y=m&&r.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute bottom-[-1px] h-0.5 bg-primary transition-[left,width] duration-200 ease-out",style:{left:m.left,width:m.width}}),e[9]=m,e[10]=y):y=e[10];let V;e[11]!==i||e[12]!==n||e[13]!==s||e[14]!==o?(V=r.jsx(Jr,{value:"description",className:"mt-6",children:r.jsx(q2,{pr:s,connectionId:i,owner:n,repo:o})}),e[11]=i,e[12]=n,e[13]=s,e[14]=o,e[15]=V):V=e[15];let C;e[16]!==i||e[17]!==n||e[18]!==s||e[19]!==o?(C=r.jsx(Jr,{value:"changes",className:"mt-6",children:r.jsx(A2,{pr:s,connectionId:i,owner:n,repo:o})}),e[16]=i,e[17]=n,e[18]=s,e[19]=o,e[20]=C):C=e[20];let S;return e[21]!==i||e[22]!==n||e[23]!==s||e[24]!==o?(S=r.jsx(Jr,{value:"checks",className:"mt-6",children:r.jsx(z2,{pr:s,connectionId:i,owner:n,repo:o})}),e[21]=i,e[22]=n,e[23]=s,e[24]=o,e[25]=S):S=e[25],r.jsxs(Rd,{value:u,onValueChange:_,variant:"underline",children:[r.jsxs(qm,{variant:"underline",className:"relative h-auto p-0",children:[r.jsx(Gn,{ref:g("description"),variant:"underline",value:"description",className:"pb-3 data-[state=active]:border-transparent",children:"Description"}),r.jsxs(Gn,{ref:g("changes"),variant:"underline",value:"changes",className:"pb-3 data-[state=active]:border-transparent",children:["Changes",d!==void 0?` ${d}`:""]}),b,y]}),V,C,S]})}function Y2(t){const e=B.c(5),{pr:s}=t,i=`Open PR #${s.number} on GitHub`;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx(oi,{className:"h-4 w-4 text-muted-foreground"}),e[0]=n):n=e[0];let o;return e[1]!==s.htmlUrl||e[2]!==s.number||e[3]!==i?(o=r.jsx("div",{className:"flex h-12 items-center border-b border-border px-4 shrink-0",children:r.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":i,className:"inline-flex items-center gap-1.5 text-base font-medium text-foreground hover:underline",children:["PR #",s.number,n]})}),e[1]=s.htmlUrl,e[2]=s.number,e[3]=i,e[4]=o):o=e[4],o}function X2(t){const e=B.c(23),{pr:s}=t;let i;e[0]!==s.title?(i=ur(s.title),e[0]=s.title,e[1]=i):i=e[1];let n;e[2]!==i?(n=r.jsx("h1",{className:"text-2xl font-semibold",children:i}),e[2]=i,e[3]=n):n=e[3];const o=`Open PR #${s.number} on GitHub`;let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(oi,{className:"h-3.5 w-3.5"}),e[4]=a):a=e[4];let l;e[5]!==s.htmlUrl||e[6]!==s.number||e[7]!==o?(l=r.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":o,className:"inline-flex items-center gap-1 hover:text-foreground",children:["PR #",s.number,a]}),e[5]=s.htmlUrl,e[6]=s.number,e[7]=o,e[8]=l):l=e[8];let c;e[9]!==s.author?(c=s.author&&r.jsxs(r.Fragment,{children:["@",s.author," · "]}),e[9]=s.author,e[10]=c):c=e[10];let d;e[11]!==s.base?(d=r.jsx("span",{className:"font-mono text-xs",children:s.base}),e[11]=s.base,e[12]=d):d=e[12];let u;e[13]!==s.head?(u=r.jsx("span",{className:"font-mono text-xs",children:s.head}),e[13]=s.head,e[14]=u):u=e[14];let h;e[15]!==l||e[16]!==c||e[17]!==d||e[18]!==u?(h=r.jsxs("div",{className:"text-sm text-muted-foreground",children:[l," · ",c,d," ← ",u]}),e[15]=l,e[16]=c,e[17]=d,e[18]=u,e[19]=h):h=e[19];let f;return e[20]!==n||e[21]!==h?(f=r.jsxs("div",{className:"space-y-2",children:[n,h]}),e[20]=n,e[21]=h,e[22]=f):f=e[22],f}function J2(t){const e=B.c(8),{virtualMcpId:s}=t,{org:i}=xe(),n=$t(s),{currentBranch:o}=Lt(),a=n?.metadata?.githubRepo??null;if(!a?.connectionId){let c;return e[0]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"flex h-full items-center justify-center p-8 text-sm text-muted-foreground",children:"This virtualmcp is not linked to a GitHub repository."}),e[0]=c):c=e[0],c}if(!o){let c;return e[1]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-8 text-sm",children:[r.jsx(er,{className:"h-6 w-6 text-muted-foreground"}),r.jsx("div",{className:"text-muted-foreground",children:"No branch selected."}),r.jsx("div",{className:"text-xs text-muted-foreground",children:"Pick a branch from the dropdown in the header to see PR status."})]}),e[1]=c):c=e[1],c}let l;return e[2]!==o||e[3]!==a.connectionId||e[4]!==a.name||e[5]!==a.owner||e[6]!==i.id?(l=r.jsx(Q2,{orgId:i.id,connectionId:a.connectionId,owner:a.owner,repo:a.name,branch:o}),e[2]=o,e[3]=a.connectionId,e[4]=a.name,e[5]=a.owner,e[6]=i.id,e[7]=l):l=e[7],l}function Q2(t){const e=B.c(49),{orgId:s,connectionId:i,owner:n,repo:o,branch:a}=t;let l;e[0]!==a||e[1]!==i||e[2]!==s||e[3]!==n||e[4]!==o?(l={orgId:s,connectionId:i,owner:n,repo:o,branch:a},e[0]=a,e[1]=i,e[2]=s,e[3]=n,e[4]=o,e[5]=l):l=e[5];const{data:c,isLoading:d,isError:u}=ku(l),h=Z2;if(d){let v;return e[6]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"Loading PR state…"}),e[6]=v):v=e[6],v}if(u){let v;return e[7]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx("div",{className:"p-4 text-sm text-destructive",children:"Couldn't load PR state. The GitHub connection may be broken."}),e[7]=v):v=e[7],v}const f=`https://github.com/${n}/${o}/tree/${a}`;if(c&&c.state==="closed"){let v;e[8]!==c?(v=r.jsx(Y2,{pr:c}),e[8]=c,e[9]=v):v=e[9];const x=c.merged?"✓ Merged":"✗ Closed";let b;e[10]!==c.mergedAt?(b=c.mergedAt&&r.jsxs(r.Fragment,{children:[" · ",new Date(c.mergedAt).toLocaleDateString()]}),e[10]=c.mergedAt,e[11]=b):b=e[11];let y;e[12]!==c.author?(y=c.author&&r.jsxs(r.Fragment,{children:[" · by @",c.author]}),e[12]=c.author,e[13]=y):y=e[13];let V;e[14]!==c.base||e[15]!==x||e[16]!==b||e[17]!==y?(V=r.jsxs("div",{className:"text-sm text-success",children:[x," into ",c.base,b,y]}),e[14]=c.base,e[15]=x,e[16]=b,e[17]=y,e[18]=V):V=e[18];let C;e[19]!==c.title?(C=ur(c.title),e[19]=c.title,e[20]=C):C=e[20];let S;e[21]!==C?(S=r.jsx("h1",{className:"text-lg font-semibold",children:C}),e[21]=C,e[22]=S):S=e[22];let w;e[23]!==c.body||e[24]!==c.number?(w=c.body&&r.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-3 text-sm",children:r.jsx(ja,{id:`pr-body-${c.number}`,text:ur(c.body)})}),e[23]=c.body,e[24]=c.number,e[25]=w):w=e[25];let k;e[26]!==V||e[27]!==S||e[28]!==w?(k=r.jsxs("div",{className:"flex flex-col gap-4 p-4 overflow-auto",children:[V,S,w]}),e[26]=V,e[27]=S,e[28]=w,e[29]=k):k=e[29];let T;return e[30]!==v||e[31]!==k?(T=r.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[v,k]}),e[30]=v,e[31]=k,e[32]=T):T=e[32],T}if(c&&c.state==="open"){let v;e[33]!==c?(v=r.jsx(X2,{pr:c}),e[33]=c,e[34]=v):v=e[34];let x;e[35]!==i||e[36]!==n||e[37]!==c||e[38]!==o?(x=r.jsx("div",{className:"mt-8",children:r.jsx(G2,{pr:c,connectionId:i,owner:n,repo:o})}),e[35]=i,e[36]=n,e[37]=c,e[38]=o,e[39]=x):x=e[39];let b;return e[40]!==v||e[41]!==x?(b=r.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:r.jsx("div",{className:"flex-1 overflow-auto",children:r.jsxs("div",{className:"mx-auto w-full max-w-[1200px] px-4 pt-8 pb-6 md:px-10 md:pt-12 md:pb-10",children:[v,x]})})}),e[40]=v,e[41]=x,e[42]=b):b=e[42],b}let m;e[43]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-4 text-sm",children:`This branch doesn't have an open pull request. Click "Submit for review" in the header to open one; the agent will draft the title and summary from the current state of the branch.`}),e[43]=m):m=e[43];let p;e[44]!==f?(p=()=>h(f),e[44]=f,e[45]=p):p=e[45];let g;e[46]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(oi,{className:"mr-1.5 h-4 w-4"}),e[46]=g):g=e[46];let _;return e[47]!==p?(_=r.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[m,r.jsx("div",{className:"flex items-center gap-2",children:r.jsxs(oe,{size:"sm",variant:"outline",onClick:p,children:[g,"Open branch on GitHub"]})})]}),e[47]=p,e[48]=_):_=e[48],_}function Z2(t){window.open(t,"_blank","noopener,noreferrer")}const oo="env";function eS(){const t=B.c(13),e=Oe();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={strict:!1},t[0]=s):s=t[0];const n=ti(s).main===oo;let o;t[1]!==e?(o=f=>{e({search:(m=>({...m,main:f})),replace:!0})},t[1]=e,t[2]=o):o=t[2];const a=o;let l;t[3]!==n||t[4]!==a?(l=()=>{a(n?"0":oo)},t[3]=n,t[4]=a,t[5]=l):l=t[5];const c=l;let d;t[6]!==n||t[7]!==a?(d=()=>{n||a(oo)},t[6]=n,t[7]=a,t[8]=d):d=t[8];const u=d;let h;return t[9]!==n||t[10]!==u||t[11]!==c?(h={envOpen:n,toggleEnv:c,openEnv:u},t[9]=n,t[10]=u,t[11]=c,t[12]=h):h=t[12],h}const tS=as({tag:pt(),id:pt(),classes:pt(),text:pt(),html:pt(),manifestKey:pt().nullable(),componentName:pt().nullable(),parents:pt(),url:pt(),path:pt(),viewport:as({width:Pr(),height:Pr()}),position:as({x:Pr(),y:Pr()})}),sS=`(function() {
|
|
581
581
|
if (window.__visualEditorActive) return;
|
|
582
582
|
window.__visualEditorActive = true;
|
|
583
583
|
|
|
@@ -700,8 +700,8 @@ ${X}`:X;l.setValue("metadata.instructions",K,{shouldDirty:!0})},$=new Set(c.map(
|
|
|
700
700
|
}
|
|
701
701
|
});
|
|
702
702
|
})();`;function ui(t){return t.replace(/[`*_]/g,"\\$&")}function iS(t,e){const s=[`The user selected an element on the live preview and asked: **"${ui(e.trim())}"**`,"","For text content changes, locate the correct source file and apply the change.","For code and CSS changes, understand which component the user is referring to and apply changes to the correct component.",""];t.manifestKey&&s.push(`**Section source file:** \`${ui(t.manifestKey)}\``,"");const i=`<${t.tag}${t.classes?` class="${ui(t.classes)}"`:""}>`;s.push(`**Clicked element:** \`${i}\``),t.parents&&s.push(`**DOM breadcrumb:** ${ui(t.parents)} > ${t.tag}`),t.text&&s.push(`**Text content:** "${ui(t.text)}"`),t.componentName&&s.push(`**Component name:** ${ui(t.componentName)}`);const n=t.html.replace(/```/g,"`` `");return s.push("","**HTML snippet:**","```html",n,"```"),s.push("","Please read the source file, locate the element, and apply the requested change."),s.join(`
|
|
703
|
-
`)}function rS(t,e,s=320,i=44,n=12){const{x:o,y:a}=t,{width:l,height:c}=e,d=Math.max(n,Math.min(o-s/2,l-s-n)),h=a/c>.68?Math.max(n,a-i-18):Math.min(a+18,c-i-n);return{leftPct:d/l*100,topPct:h/c*100}}function nS(t){const e=B.c(32),{element:s,onDismiss:i}=t,[n,o]=j.useState(""),a=j.useRef(null),{sendMessage:l}=Cn(),{setChatOpen:c}=xr();let d;e[0]!==s||e[1]!==n||e[2]!==i||e[3]!==l||e[4]!==c?(d=()=>{if(!n.trim())return;const T=iS(s,n);c(!0),l({parts:[{type:"text",text:T}]}),i()},e[0]=s,e[1]=n,e[2]=i,e[3]=l,e[4]=c,e[5]=d):d=e[5];const u=d;let h;e[6]!==s.position||e[7]!==s.viewport?(h=rS(s.position,s.viewport),e[6]=s.position,e[7]=s.viewport,e[8]=h):h=e[8];const f=h,m=`${f.leftPct}%`,p=`${f.topPct}%`;let g;e[9]!==m||e[10]!==p?(g={left:m,top:p,width:"320px"},e[9]=m,e[10]=p,e[11]=g):g=e[11];let _;e[12]!==u?(_=T=>{T.preventDefault(),u()},e[12]=u,e[13]=_):_=e[13];let v;e[14]===Symbol.for("react.memo_cache_sentinel")?(v=T=>o(T.target.value),e[14]=v):v=e[14];let x;e[15]!==i?(x=T=>{T.key==="Escape"&&i()},e[15]=i,e[16]=x):x=e[16];let b;e[17]!==n||e[18]!==x?(b=r.jsx("input",{ref:a,autoFocus:!0,type:"text",value:n,onChange:v,onKeyDown:x,placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"}),e[17]=n,e[18]=x,e[19]=b):b=e[19];let y;e[20]!==n?(y=n.trim(),e[20]=n,e[21]=y):y=e[21];const V=!y;let C;e[22]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[r.jsx("title",{children:"Send"}),r.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e[22]=C):C=e[22];let S;e[23]!==V?(S=r.jsx("button",{type:"submit",disabled:V,className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity disabled:opacity-30",title:"Send",children:C}),e[23]=V,e[24]=S):S=e[24];let w;e[25]!==S||e[26]!==_||e[27]!==b?(w=r.jsxs("form",{className:"pointer-events-auto flex w-full items-center gap-1.5 rounded-xl border border-border bg-background/95 px-3 py-1.5 shadow-lg backdrop-blur",onSubmit:_,children:[b,S]}),e[25]=S,e[26]=_,e[27]=b,e[28]=w):w=e[28];let k;return e[29]!==w||e[30]!==g?(k=r.jsx("div",{className:"absolute z-30 pointer-events-none",style:g,children:w}),e[29]=w,e[30]=g,e[31]=k):k=e[31],k}const oS={status:{ready:!1,htmlSupport:!1},suspended:!1,notFound:!1,scripts:[],activeProcesses:[],branchStatus:null,getBuffer:()=>"",hasData:()=>!1,subscribeChunks:()=>()=>{},subscribeReload:()=>()=>{}},
|
|
704
|
-
`);x(O).append(z);for(const $ of _.current)try{$(O,z)}catch{}p($=>$+1)}else if(R.type==="status")i({ready:!!P.ready,htmlSupport:!!P.htmlSupport});else if(R.type==="scripts")d(P.scripts??[]);else if(R.type==="processes")h(P.active??[]);else if(R.type==="reload")for(const O of v.current)try{O()}catch{}else R.type==="branch-status"&&m({branch:String(P.branch??""),base:String(P.base??"main"),workingTreeDirty:!!P.workingTreeDirty,unpushed:Number(P.unpushed??0),aheadOfBase:Number(P.aheadOfBase??0),behindBase:Number(P.behindBase??0),headSha:String(P.headSha??"")})}catch{}};function D(){if(!V){T=new EventSource(y),T.onopen=()=>{S=0,N(),o(!1)},T.onerror=()=>{if(T?.readyState===EventSource.CLOSED){if(E(),C){L();return}C=!0,I().then(R=>{if(!V){if(R){l(!0);return}L()}})}};for(const R of hS)T.addEventListener(R,A)}}function L(){if(V||w)return;const R=Math.min(cS*2**S,dS);S++,w=setTimeout(()=>{w=null,!V&&(T?.close(),D())},R)}return D(),()=>{V=!0,M.abort(),T?.close(),w&&clearTimeout(w),N()}},[t]);const b={status:s,suspended:n,notFound:a,scripts:c,activeProcesses:u,branchStatus:f,getBuffer:y=>g.current.get(y)?.get()??"",hasData:y=>(g.current.get(y)?.get().length??0)>0,subscribeChunks:y=>(_.current.add(y),()=>{_.current.delete(y)}),subscribeReload:y=>(v.current.add(y),()=>{v.current.delete(y)})};return r.jsx(
|
|
703
|
+
`)}function rS(t,e,s=320,i=44,n=12){const{x:o,y:a}=t,{width:l,height:c}=e,d=Math.max(n,Math.min(o-s/2,l-s-n)),h=a/c>.68?Math.max(n,a-i-18):Math.min(a+18,c-i-n);return{leftPct:d/l*100,topPct:h/c*100}}function nS(t){const e=B.c(32),{element:s,onDismiss:i}=t,[n,o]=j.useState(""),a=j.useRef(null),{sendMessage:l}=Cn(),{setChatOpen:c}=xr();let d;e[0]!==s||e[1]!==n||e[2]!==i||e[3]!==l||e[4]!==c?(d=()=>{if(!n.trim())return;const T=iS(s,n);c(!0),l({parts:[{type:"text",text:T}]}),i()},e[0]=s,e[1]=n,e[2]=i,e[3]=l,e[4]=c,e[5]=d):d=e[5];const u=d;let h;e[6]!==s.position||e[7]!==s.viewport?(h=rS(s.position,s.viewport),e[6]=s.position,e[7]=s.viewport,e[8]=h):h=e[8];const f=h,m=`${f.leftPct}%`,p=`${f.topPct}%`;let g;e[9]!==m||e[10]!==p?(g={left:m,top:p,width:"320px"},e[9]=m,e[10]=p,e[11]=g):g=e[11];let _;e[12]!==u?(_=T=>{T.preventDefault(),u()},e[12]=u,e[13]=_):_=e[13];let v;e[14]===Symbol.for("react.memo_cache_sentinel")?(v=T=>o(T.target.value),e[14]=v):v=e[14];let x;e[15]!==i?(x=T=>{T.key==="Escape"&&i()},e[15]=i,e[16]=x):x=e[16];let b;e[17]!==n||e[18]!==x?(b=r.jsx("input",{ref:a,autoFocus:!0,type:"text",value:n,onChange:v,onKeyDown:x,placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"}),e[17]=n,e[18]=x,e[19]=b):b=e[19];let y;e[20]!==n?(y=n.trim(),e[20]=n,e[21]=y):y=e[21];const V=!y;let C;e[22]===Symbol.for("react.memo_cache_sentinel")?(C=r.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[r.jsx("title",{children:"Send"}),r.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e[22]=C):C=e[22];let S;e[23]!==V?(S=r.jsx("button",{type:"submit",disabled:V,className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity disabled:opacity-30",title:"Send",children:C}),e[23]=V,e[24]=S):S=e[24];let w;e[25]!==S||e[26]!==_||e[27]!==b?(w=r.jsxs("form",{className:"pointer-events-auto flex w-full items-center gap-1.5 rounded-xl border border-border bg-background/95 px-3 py-1.5 shadow-lg backdrop-blur",onSubmit:_,children:[b,S]}),e[25]=S,e[26]=_,e[27]=b,e[28]=w):w=e[28];let k;return e[29]!==w||e[30]!==g?(k=r.jsx("div",{className:"absolute z-30 pointer-events-none",style:g,children:w}),e[29]=w,e[30]=g,e[31]=k):k=e[31],k}const oS={status:{ready:!1,htmlSupport:!1},suspended:!1,notFound:!1,scripts:[],activeProcesses:[],branchStatus:null,getBuffer:()=>"",hasData:()=>!1,subscribeChunks:()=>()=>{},subscribeReload:()=>()=>{}},Au=j.createContext(oS),gc=16384;class aS{data="";append(e){this.data+=e,this.data.length>gc&&(this.data=this.data.slice(this.data.length-gc))}get(){return this.data}clear(){this.data=""}}const lS=6e4,cS=1e3,dS=3e4,hS=["log","status","scripts","processes","reload","branch-status"];function uS({daemonBaseUrl:t,children:e}){const[s,i]=j.useState({ready:!1,htmlSupport:!1}),[n,o]=j.useState(!1),[a,l]=j.useState(!1),[c,d]=j.useState([]),[u,h]=j.useState([]),[f,m]=j.useState(null),[,p]=j.useState(0),g=j.useRef(new Map),_=j.useRef(new Set),v=j.useRef(new Set),x=y=>{let V=g.current.get(y);return V||(V=new aS,g.current.set(y,V)),V};j.useEffect(()=>{if(i({ready:!1,htmlSupport:!1}),o(!1),l(!1),d([]),h([]),m(null),g.current.clear(),!t)return;const y=`${t}/_decopilot_vm/events`;let V=!1,C=!1,S=0,w=null,k=null,T=null;const M=new AbortController;async function I(){try{const R=await fetch(y,{method:"GET",headers:{Accept:"text/event-stream"},cache:"no-store",signal:M.signal});if(R.body)try{await R.body.cancel()}catch{}return R.status===404}catch{return!1}}const E=()=>{k||(k=setTimeout(()=>{o(!0)},lS))},N=()=>{k&&(clearTimeout(k),k=null)},A=R=>{try{const P=JSON.parse(R.data);if(R.type==="log"&&typeof P.data=="string"){const O=P.source,z=P.data.replace(/\r?\n/g,`\r
|
|
704
|
+
`);x(O).append(z);for(const $ of _.current)try{$(O,z)}catch{}p($=>$+1)}else if(R.type==="status")i({ready:!!P.ready,htmlSupport:!!P.htmlSupport});else if(R.type==="scripts")d(P.scripts??[]);else if(R.type==="processes")h(P.active??[]);else if(R.type==="reload")for(const O of v.current)try{O()}catch{}else R.type==="branch-status"&&m({branch:String(P.branch??""),base:String(P.base??"main"),workingTreeDirty:!!P.workingTreeDirty,unpushed:Number(P.unpushed??0),aheadOfBase:Number(P.aheadOfBase??0),behindBase:Number(P.behindBase??0),headSha:String(P.headSha??"")})}catch{}};function D(){if(!V){T=new EventSource(y),T.onopen=()=>{S=0,N(),o(!1)},T.onerror=()=>{if(T?.readyState===EventSource.CLOSED){if(E(),C){L();return}C=!0,I().then(R=>{if(!V){if(R){l(!0);return}L()}})}};for(const R of hS)T.addEventListener(R,A)}}function L(){if(V||w)return;const R=Math.min(cS*2**S,dS);S++,w=setTimeout(()=>{w=null,!V&&(T?.close(),D())},R)}return D(),()=>{V=!0,M.abort(),T?.close(),w&&clearTimeout(w),N()}},[t]);const b={status:s,suspended:n,notFound:a,scripts:c,activeProcesses:u,branchStatus:f,getBuffer:y=>g.current.get(y)?.get()??"",hasData:y=>(g.current.get(y)?.get().length??0)>0,subscribeChunks:y=>(_.current.add(y),()=>{_.current.delete(y)}),subscribeReload:y=>(v.current.add(y),()=>{v.current.delete(y)})};return r.jsx(Au,{value:b,children:e})}function Ti(){return j.use(Au)}function fS(t){const{subscribeChunks:e}=Ti(),s=j.useRef(t);s.current=t,j.useEffect(()=>e((o,a)=>{s.current?.(o,a)}),[e])}function mS(t){const{subscribeReload:e}=Ti(),s=j.useRef(t);s.current=t,j.useEffect(()=>e(()=>{s.current?.()}),[e])}function Eu(t){const e=B.c(5),{onResume:s,label:i}=t,n=i===void 0?"Resume Server":i;let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("p",{className:"text-sm text-muted-foreground",children:"VM suspended due to inactivity."}),e[0]=o):o=e[0];let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(Hd,{size:14}),e[1]=a):a=e[1];let l;return e[2]!==n||e[3]!==s?(l=r.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full gap-4",children:[o,r.jsxs(oe,{onClick:s,children:[a,n]})]}),e[2]=n,e[3]=s,e[4]=l):l=e[4],l}const ao=[{key:"sandbox",label:"Setting up your workspace"},{key:"setup",label:"Installing packages"},{key:"server",label:"Starting your preview"}],ns="bg-foreground/[0.05]",Xt="bg-foreground/[0.09]",pS=Array.from({length:35},()=>Math.random()*1.8),gS=Array.from({length:35},()=>Math.random()<.4);function _S(t,e,s){return s.length>0?2:t||e.length>0?1:0}function xS(t){return t.replace(/\u001b\[[0-9;?]*[a-zA-Z]/g,"")}function vS(t,e){const s=[...e,"setup"];for(const i of s){const n=t(i);if(!n)continue;const o=xS(n).split(/\r\n|\r|\n/);for(let a=o.length-1;a>=0;a--){const l=o[a]?.trim();if(l)return l}}return null}function bS(t){const e=B.c(37),{hasSetupData:s,scripts:i,activeProcesses:n,onViewLogs:o}=t;let a;e[0]!==n||e[1]!==s||e[2]!==i?(a=_S(s,i,n),e[0]=n,e[1]=s,e[2]=i,e[3]=a):a=e[3];const l=a,c=ao[l]?.label??ao[0].label,{getBuffer:d}=Ti();let u;e[4]!==n||e[5]!==d?(u=vS(d,n),e[4]=n,e[5]=d,e[6]=u):u=e[6];const h=u;let f;e[7]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsx(Em,{}),e[7]=f):f=e[7];const m=ao[l]?.key??"sandbox";let p;e[8]!==c||e[9]!==m?(p=r.jsxs("div",{className:"flex items-center gap-2 rounded-full border border-foreground/10 bg-background px-3.5 py-1.5 shadow-[0_4px_20px_-4px_rgb(0_0_0_/_0.12)]",children:[f,r.jsxs("span",{className:"text-[13px] font-medium text-foreground/85 animate-in fade-in duration-500",children:[c,"…"]},m)]}),e[8]=c,e[9]=m,e[10]=p):p=e[10];let g;e[11]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(yS,{}),e[11]=g):g=e[11];let _;e[12]!==l?(_=r.jsx(lo,{phase:0,current:l,children:g}),e[12]=l,e[13]=_):_=e[13];let v;e[14]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx(SS,{}),e[14]=v):v=e[14];let x;e[15]!==l?(x=r.jsx(lo,{phase:1,current:l,children:v}),e[15]=l,e[16]=x):x=e[16];let b;e[17]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(VS,{}),e[17]=b):b=e[17];let y;e[18]!==l?(y=r.jsx(lo,{phase:2,current:l,children:b}),e[18]=l,e[19]=y):y=e[19];let V;e[20]!==y||e[21]!==_||e[22]!==x?(V=r.jsxs("div",{className:"relative w-[min(78%,560px)] aspect-[4/3]",children:[_,x,y]}),e[20]=y,e[21]=_,e[22]=x,e[23]=V):V=e[23];let C;e[24]!==h?(C=h&&r.jsx("span",{className:"block w-full max-w-[440px] truncate text-center text-xs font-mono text-muted-foreground/45 animate-in fade-in duration-300",children:h},h),e[24]=h,e[25]=C):C=e[25];let S;e[26]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Ia,{size:11}),e[26]=S):S=e[26];let w;e[27]!==o?(w=r.jsxs("button",{type:"button",onClick:o,className:"flex items-center gap-1.5 text-xs text-muted-foreground/50 hover:text-muted-foreground transition-colors duration-200",children:[S,"View logs"]}),e[27]=o,e[28]=w):w=e[28];let k;e[29]!==C||e[30]!==w?(k=r.jsxs("div",{className:"absolute bottom-5 left-1/2 -translate-x-1/2 flex flex-col items-center gap-1 max-w-[80%] min-w-0",children:[C,w]}),e[29]=C,e[30]=w,e[31]=k):k=e[31];let T;e[32]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx("style",{children:`
|
|
705
705
|
@keyframes vm-pulse-soft {
|
|
706
706
|
0%, 100% { opacity: 0.25; }
|
|
707
707
|
50% { opacity: 1; }
|
|
@@ -710,26 +710,26 @@ ${X}`:X;l.setValue("metadata.instructions",K,{shouldDirty:!0})},$=new Set(c.map(
|
|
|
710
710
|
0%, 100% { opacity: 0.5; }
|
|
711
711
|
50% { opacity: 1; }
|
|
712
712
|
}
|
|
713
|
-
`}),e[32]=T):T=e[32];let M;return e[33]!==V||e[34]!==k||e[35]!==p?(M=r.jsxs("div",{className:"relative flex flex-col items-center justify-center w-full h-full overflow-hidden select-none gap-8",children:[p,V,k,T]}),e[33]=V,e[34]=k,e[35]=p,e[36]=M):M=e[36],M}function lo(t){const e=B.c(10),{phase:s,current:i,children:n}=t,o=s-i,a=o<0,l=o===0,c=a?90:o*-22,d=a?.94:1-Math.max(o,0)*.04,u=a?0:l?1:o===1?.8:.55,h=a?10:30-o,f=!l;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=Y("absolute inset-0 rounded-xl border border-foreground/10 bg-background shadow-[0_20px_60px_-20px_rgb(0_0_0_/_0.35)] overflow-hidden transition-all ease-[cubic-bezier(0.22,1,0.36,1)]"),e[0]=m):m=e[0];const p=`translateY(${c}px) scale(${d})`,g=l?"auto":"none";let _;e[1]!==u||e[2]!==p||e[3]!==g||e[4]!==h?(_={transform:p,opacity:u,zIndex:h,transitionDuration:"1000ms",pointerEvents:g},e[1]=u,e[2]=p,e[3]=g,e[4]=h,e[5]=_):_=e[5];let v;return e[6]!==n||e[7]!==f||e[8]!==_?(v=r.jsx("div",{"aria-hidden":f,className:m,style:_,children:n}),e[6]=n,e[7]=f,e[8]=_,e[9]=v):v=e[9],v}function il(t){const e=B.c(7),{showUrl:s}=t,i=s===void 0?!1:s;let n,o,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),o=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),a=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),e[0]=n,e[1]=o,e[2]=a):(n=e[0],o=e[1],a=e[2]);let l;e[3]!==i?(l=i&&r.jsx("div",{className:Y("ml-3 h-3.5 flex-1 max-w-[220px] rounded-sm",ns)}),e[3]=i,e[4]=l):l=e[4];let c;return e[5]!==l?(c=r.jsxs("div",{className:"h-7 flex items-center gap-1.5 px-3 shrink-0",children:[n,o,a,l]}),e[5]=l,e[6]=c):c=e[6],c}function yS(){const t=B.c(5);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:Y("w-[18%] rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out infinite"}}),t[1]=s):s=t[1];let i;t[2]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"h-[42%] shrink-0 rounded-md bg-chart-3/[0.12]",style:{animation:"vm-breathe 3s ease-in-out 0.4s infinite"}}),t[2]=i):i=t[2];let n;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"col-span-3 rounded-md bg-chart-3/[0.12]",style:{animation:"vm-breathe 3s ease-in-out 0.8s infinite"}}),t[3]=n):n=t[3];let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsxs("div",{className:"flex flex-1 min-h-0 gap-1.5 p-3",children:[s,r.jsxs("div",{className:"flex-1 flex flex-col gap-1.5 min-w-0",children:[i,r.jsxs("div",{className:"flex-1 grid grid-cols-5 gap-1.5 min-h-0",children:[n,r.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-1.5",children:[r.jsx("div",{className:Y("rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out 1.2s infinite"}}),r.jsx("div",{className:Y("rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out 1.6s infinite"}})]})]})]})]})]}),t[4]=o):o=t[4],o}function SS(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsx("div",{className:"relative flex-1 flex items-center justify-center px-8 py-5",children:r.jsx("div",{className:"grid gap-2 w-full",style:{gridTemplateColumns:"repeat(7, minmax(0, 1fr))"},children:pS.map(wS)})})]}),t[1]=s):s=t[1],s}function wS(t,e){return r.jsx("div",{className:Y("aspect-square rounded-md",gS[e]?"bg-chart-2/70":Xt),style:{animation:`vm-pulse-soft 2.2s ease-in-out ${t}s infinite`}},e)}function VS(){const t=B.c(11);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{showUrl:!0}),t[0]=e):e=t[0];let s,i,n,o,a;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:"h-5 rounded-md mb-2 bg-chart-1/[0.10]"}),i=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[70%]",Xt)}),n=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[55%]",Xt)}),o=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[80%]",Xt)}),a=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[50%]",Xt)}),t[1]=s,t[2]=i,t[3]=n,t[4]=o,t[5]=a):(s=t[1],i=t[2],n=t[3],o=t[4],a=t[5]);let l;t[6]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsxs("div",{className:"w-[18%] p-2.5 flex flex-col gap-1.5 shrink-0 bg-chart-1/[0.05]",children:[s,i,n,o,a,r.jsx("div",{className:"mt-auto",children:r.jsx("div",{className:Y("h-4 rounded-md",Xt)})})]}),t[6]=l):l=t[6];let c;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"relative h-[42%] shrink-0 overflow-hidden bg-chart-1/[0.10]",children:r.jsxs("div",{className:"absolute bottom-3 left-3 right-3 space-y-1.5",children:[r.jsx("div",{className:"h-3 rounded-sm w-[35%] bg-chart-1/[0.15]"}),r.jsx("div",{className:Y("h-1.5 rounded-sm w-[55%]",ns)})]})}),t[7]=c):c=t[7];let d;t[8]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsxs("div",{className:"flex gap-1.5 shrink-0",children:[r.jsx("div",{className:"h-4 w-12 rounded-full bg-chart-1/[0.12]"}),r.jsx("div",{className:Y("h-4 w-10 rounded-full",ns)}),r.jsx("div",{className:Y("h-4 w-14 rounded-full",ns)})]}),t[8]=d):d=t[8];let u;t[9]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsxs("div",{className:Y("col-span-3 rounded-md flex flex-col justify-end p-2 gap-1",ns),children:[r.jsx("div",{className:Y("h-1.5 w-[50%] rounded-sm",Xt)}),r.jsx("div",{className:Y("h-1 w-[75%] rounded-sm",Xt)})]}),t[9]=u):u=t[9];let h;return t[10]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsxs("div",{className:"flex flex-1 min-h-0",children:[l,r.jsxs("div",{className:"flex-1 min-w-0 flex flex-col",children:[c,r.jsxs("div",{className:"flex-1 p-3 flex flex-col gap-2.5 min-h-0",children:[d,r.jsxs("div",{className:"flex-1 grid grid-cols-5 gap-2 min-h-0",children:[u,r.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-2",children:[r.jsx("div",{className:Y("rounded-md",ns)}),r.jsx("div",{className:Y("rounded-md",ns)})]})]})]})]})]})]}),t[10]=h):h=t[10],h}function Eu(t){const e=B.c(21),{errorMsg:s,onRetry:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsxs("div",{className:"absolute top-8 left-1/2 -translate-x-1/2 z-20 flex items-center gap-2 rounded-full border border-destructive/30 bg-background/80 px-3.5 py-1.5 shadow-[0_4px_20px_-4px_rgb(0_0_0_/_0.12)] backdrop-blur-md",children:[r.jsx(Bs,{size:13,className:"text-destructive/80"}),r.jsx("span",{className:"text-[13px] font-medium text-destructive/90",children:"Failed to start"})]}),e[0]=n):n=e[0];let o,a;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"absolute left-[8%] right-[8%] -top-5 h-full rounded-xl border border-foreground/[0.05] bg-foreground/[0.015]"}),a=r.jsx("div",{className:"absolute left-[4%] right-[4%] -top-2.5 h-full rounded-xl border border-foreground/[0.07] bg-foreground/[0.025]"}),e[1]=o,e[2]=a):(o=e[1],a=e[2]);let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsxs("div",{className:"h-7 border-b border-foreground/[0.08] bg-foreground/[0.015] flex items-center gap-1.5 px-3",children:[r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"ml-3 h-3.5 flex-1 max-w-[240px] rounded-sm bg-foreground/[0.04]"})]}),e[3]=l):l=e[3];let c;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(Bs,{size:14,className:"text-destructive/80 mt-0.5 shrink-0"}),e[4]=c):c=e[4];let d;e[5]!==s?(d=r.jsxs("div",{className:"flex items-start gap-2",children:[c,r.jsx("p",{className:"text-xs text-destructive/80 line-clamp-5 break-all leading-relaxed font-mono",children:s})]}),e[5]=s,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(kd,{size:12}),e[7]=u):u=e[7];let h;e[8]!==i?(h=r.jsxs(oe,{variant:"outline",size:"sm",onClick:i,children:[u,"Retry"]}),e[8]=i,e[9]=h):h=e[9];let f;e[10]!==s?(f=()=>navigator.clipboard.writeText(s).then(CS),e[10]=s,e[11]=f):f=e[11];let m;e[12]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx(Si,{size:10}),e[12]=m):m=e[12];let p;e[13]!==f?(p=r.jsxs("button",{type:"button",onClick:f,className:"flex items-center gap-1 text-[11px] text-muted-foreground/60 hover:text-muted-foreground transition-colors duration-200",children:[m,"Copy error"]}),e[13]=f,e[14]=p):p=e[14];let g;e[15]!==p||e[16]!==h?(g=r.jsxs("div",{className:"flex items-center gap-2",children:[h,p]}),e[15]=p,e[16]=h,e[17]=g):g=e[17];let _;return e[18]!==g||e[19]!==d?(_=r.jsxs("div",{className:"relative flex flex-col items-center justify-center w-full h-full overflow-hidden select-none",children:[n,r.jsxs("div",{className:"relative w-[min(78%,560px)] aspect-[4/3] mt-6 opacity-60",children:[o,a,r.jsxs("div",{className:"relative w-full h-full rounded-xl border border-foreground/10 bg-background shadow-[0_20px_60px_-20px_rgb(0_0_0_/_0.35)] overflow-hidden",children:[l,r.jsx("div",{className:"flex items-center justify-center p-6 h-[calc(100%-1.75rem)]",children:r.jsxs("div",{className:"w-full max-w-sm rounded-lg border border-destructive/20 bg-destructive/[0.03] p-4 space-y-3",children:[d,g]})})]})]})]}),e[18]=g,e[19]=d,e[20]=_):_=e[20],_}function CS(){he.success("Error copied to clipboard")}const kS=[{value:"preview",icon:r.jsx(Kd,{size:14}),tooltip:"Interactive"},{value:"visual",icon:r.jsx(qd,{size:14}),tooltip:"Visual Editor"}];function jS(){const t=ml(),{data:e}=dt.useSession(),{openEnv:s}=eS(),{taskId:i,currentBranch:n,setCurrentTaskBranch:o}=Lt(),[a,l]=j.useState("preview"),[c,d]=j.useState(null),u=j.useRef(null),h=e?.user?.id,f=t?.entity?.metadata,m=h&&n?f?.vmMap?.[h]?.[n]:void 0,p=m?.previewUrl??null,g=Ti();mS(()=>{const F=u.current;F&&(F.src=F.src)});const _=g.status.htmlSupport,v=g.suspended,x=j.useRef({url:"",at:0,ready:!1});p&&x.current.url!==p&&(x.current={url:p,at:m?.createdAt??Date.now(),ready:!1}),p&&g.status.ready&&!x.current.ready&&(x.current.ready=!0);const b=!!p&&!x.current.ready&&!v,y=j.useRef(0),V=t?.entity?.id??null,C=Ae({connectionId:yt,orgId:t?.entity?.organization_id??""}),S=el(C),w=S.error?.message??null;S.isPending?y.current||(y.current=Date.now()):p&&(y.current=0);const k=S.isPending&&!p&&!v,T=j.useRef(null),M=j.useRef(null),I=F=>{if(!V)return;const W={virtualMcpId:V};n&&(W.branch=n),S.mutate(W,{onSuccess:H=>{H?.branch&&!n&&o(H.branch)},onError:H=>{console.error(`[preview] ${F} VM_START failed`,H)}})},E=j.useRef(I);E.current=I,i&&m&&T.current!==i&&(T.current=i);const N=!!i&&!!V&&!!h&&!!n&&!m&&!w&&!S.isPending&&T.current!==i;j.useEffect(()=>{!N||!i||(T.current=i,E.current("auto-start"))},[N,i]);const A=g.notFound?m?.vmId??null:null;j.useEffect(()=>{!A||!V||w||S.isPending||M.current!==A&&(M.current=A,E.current("self-heal"))},[A,V,w,S.isPending]);const D=()=>{T.current=null,M.current=null,S.reset(),E.current("auto-start")};j.useEffect(()=>{if(!p)return;let F;try{F=new URL(p,window.location.href).origin}catch{return}const W=H=>{if(H.origin!==F||H.data?.type!=="visual-editor::element-clicked")return;const U=tS.safeParse(H.data.payload);U.success&&d(U.data)};return window.addEventListener("message",W),()=>window.removeEventListener("message",W)},[p]);const L=()=>{const F=u.current?.contentWindow;F&&F.postMessage({type:"visual-editor::activate",script:sS},"*")},R=()=>{const F=u.current?.contentWindow;F&&F.postMessage({type:"visual-editor::deactivate"},"*")},P=F=>{l(F),d(null),F==="visual"?L():R()},O=()=>{if(!u.current)return;const F=u.current;F.src=F.src},z=()=>{if(!u.current||!p)return;const F=p.includes("?")?"&":"?";u.current.src=`${p}${F}_r=${Date.now()}`},$=()=>{const F=u.current?.contentWindow?.location?.href??p;F&&navigator.clipboard.writeText(F)},q=(()=>{if(!p)return"No server running";try{const F=new URL(p);return`${F.host}${F.pathname==="/"?"":F.pathname}`}catch{return p}})();return r.jsxs("div",{className:"flex flex-col w-full h-full",children:[p&&r.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-4 border-b border-border/60 px-3 md:px-4",children:[_&&r.jsx(jg,{value:a,onValueChange:P,options:kS,size:"sm",className:"shrink-0 bg-foreground/[0.045]"}),r.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-0.5",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>u.current?.contentWindow?.history.back(),children:r.jsx(Pa,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Back"})]}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>u.current?.contentWindow?.history.forward(),children:r.jsx(In,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Forward"})]}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:O,children:r.jsx(kd,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Refresh"})]}),r.jsx("div",{className:"flex h-8 min-w-0 flex-1 items-center rounded-md bg-background px-2 transition-colors duration-200 hover:bg-accent",children:r.jsx("span",{className:"min-w-0 flex-1 truncate text-[12px] text-foreground/88",children:q})})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>window.open(p,"_blank","noopener"),children:r.jsx(oi,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Open in new tab"})]}),r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",children:r.jsx(Wd,{size:14})})}),r.jsxs(hs,{align:"end",children:[r.jsx(Qe,{onClick:z,children:"Hard Reload"}),r.jsx(Qe,{onClick:$,children:"Copy Current URL"})]})]})]})]}),r.jsxs("div",{className:"flex-1 relative overflow-hidden",children:[!p&&!k&&!w&&r.jsxs("div",{className:"absolute inset-0 z-30 flex flex-col items-center justify-center gap-4 bg-background",children:[r.jsx(Kd,{size:48,className:"text-muted-foreground/40"}),r.jsx("h3",{className:"text-lg font-medium",children:"Preview"}),r.jsx("p",{className:"text-sm text-muted-foreground text-center max-w-sm",children:"Start the development server to see a live preview"}),r.jsxs(oe,{onClick:s,children:[r.jsx(Hd,{size:14}),"Start Server"]})]}),w&&r.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center bg-background",children:r.jsx(Eu,{errorMsg:w,onRetry:D})}),!w&&v&&r.jsx("div",{className:"absolute inset-0 z-30 bg-background/80 backdrop-blur-sm",children:r.jsx(Au,{onResume:s})}),!w&&(b||k)&&r.jsx("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-background",children:r.jsx(bS,{since:b?x.current.at:y.current,hasSetupData:g.hasData("setup"),scripts:g.scripts,activeProcesses:g.activeProcesses,onViewLogs:s})}),a==="visual"&&!c&&r.jsxs("div",{className:"absolute top-2 left-1/2 -translate-x-1/2 z-20 flex items-center gap-1.5 rounded-full border border-violet-400/40 bg-violet-500/90 px-3 py-1 text-xs font-medium text-white shadow-md backdrop-blur-sm pointer-events-none select-none",children:[r.jsx(qd,{size:12}),"Click any element to ask the AI"]}),a==="visual"&&c&&r.jsx(nS,{element:c,onDismiss:()=>d(null)}),p&&!b&&r.jsx("iframe",{ref:u,src:p,className:"w-full h-full border-0",title:"Dev Server Preview",onLoad:()=>{re("vm_preview_loaded",{view_mode:a,vm_id:m?.vmId??null}),a==="visual"&&L()}},p)]})]})}function NS(t){const e=B.c(2),{virtualMcpId:s}=t,i=$t(s);if(!(i?bs(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[r.jsx(Bs,{size:24,className:"text-muted-foreground/60"}),r.jsx("div",{children:"No repository connected."}),r.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Preview."})]}),e[0]=a):a=e[0],a}let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(jS,{}),e[1]=o):o=e[1],o}var Iu=Object.defineProperty,AS=Object.getOwnPropertyDescriptor,ES=(t,e)=>{for(var s in e)Iu(t,s,{get:e[s],enumerable:!0})},$e=(t,e,s,i)=>{for(var n=i>1?void 0:i?AS(e,s):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(n=(i?a(e,s,n):a(n))||n);return i&&n&&Iu(e,s,n),n},le=(t,e)=>(s,i)=>e(s,i,t),_c="Terminal input",$o={get:()=>_c,set:t=>_c=t},xc="Too much output to announce, navigate to rows manually to read",zo={get:()=>xc,set:t=>xc=t};function IS(t){return t.replace(/\r?\n/g,"\r")}function TS(t,e){return e?"\x1B[200~"+t+"\x1B[201~":t}function RS(t,e){t.clipboardData&&t.clipboardData.setData("text/plain",e.selectionText),t.preventDefault()}function MS(t,e,s,i){if(t.stopPropagation(),t.clipboardData){let n=t.clipboardData.getData("text/plain");Tu(n,e,s,i)}}function Tu(t,e,s,i){t=IS(t),t=TS(t,s.decPrivateModes.bracketedPasteMode&&i.rawOptions.ignoreBracketedPasteMode!==!0),s.triggerDataEvent(t,!0),e.value=""}function Ru(t,e,s){let i=s.getBoundingClientRect(),n=t.clientX-i.left-10,o=t.clientY-i.top-10;e.style.width="20px",e.style.height="20px",e.style.left=`${n}px`,e.style.top=`${o}px`,e.style.zIndex="1000",e.focus()}function vc(t,e,s,i,n){Ru(t,e,s),n&&i.rightClickSelect(t),e.value=i.selectionText,e.select()}function As(t){return t>65535?(t-=65536,String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)}function $n(t,e=0,s=t.length){let i="";for(let n=e;n<s;++n){let o=t[n];o>65535?(o-=65536,i+=String.fromCharCode((o>>10)+55296)+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i}var DS=class{constructor(){this._interim=0}clear(){this._interim=0}decode(t,e){let s=t.length;if(!s)return 0;let i=0,n=0;if(this._interim){let o=t.charCodeAt(n++);56320<=o&&o<=57343?e[i++]=(this._interim-55296)*1024+o-56320+65536:(e[i++]=this._interim,e[i++]=o),this._interim=0}for(let o=n;o<s;++o){let a=t.charCodeAt(o);if(55296<=a&&a<=56319){if(++o>=s)return this._interim=a,i;let l=t.charCodeAt(o);56320<=l&&l<=57343?e[i++]=(a-55296)*1024+l-56320+65536:(e[i++]=a,e[i++]=l);continue}a!==65279&&(e[i++]=a)}return i}},PS=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(t,e){let s=t.length;if(!s)return 0;let i=0,n,o,a,l,c=0,d=0;if(this.interim[0]){let f=!1,m=this.interim[0];m&=(m&224)===192?31:(m&240)===224?15:7;let p=0,g;for(;(g=this.interim[++p]&63)&&p<4;)m<<=6,m|=g;let _=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,v=_-p;for(;d<v;){if(d>=s)return 0;if(g=t[d++],(g&192)!==128){d--,f=!0;break}else this.interim[p++]=g,m<<=6,m|=g&63}f||(_===2?m<128?d--:e[i++]=m:_===3?m<2048||m>=55296&&m<=57343||m===65279||(e[i++]=m):m<65536||m>1114111||(e[i++]=m)),this.interim.fill(0)}let u=s-4,h=d;for(;h<s;){for(;h<u&&!((n=t[h])&128)&&!((o=t[h+1])&128)&&!((a=t[h+2])&128)&&!((l=t[h+3])&128);)e[i++]=n,e[i++]=o,e[i++]=a,e[i++]=l,h+=4;if(n=t[h++],n<128)e[i++]=n;else if((n&224)===192){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(c=(n&31)<<6|o&63,c<128){h--;continue}e[i++]=c}else if((n&240)===224){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,i;if(a=t[h++],(a&192)!==128){h--;continue}if(c=(n&15)<<12|(o&63)<<6|a&63,c<2048||c>=55296&&c<=57343||c===65279)continue;e[i++]=c}else if((n&248)===240){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,i;if(a=t[h++],(a&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,this.interim[2]=a,i;if(l=t[h++],(l&192)!==128){h--;continue}if(c=(n&7)<<18|(o&63)<<12|(a&63)<<6|l&63,c<65536||c>1114111)continue;e[i++]=c}}return i}},Mu="",Is=" ",Ar=class Du{constructor(){this.fg=0,this.bg=0,this.extended=new vn}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let e=new Du;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},vn=class Pu{constructor(e=0,s=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=s}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new Pu(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Kt=class Lu extends Ar{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new vn,this.combinedData=""}static fromCharData(e){let s=new Lu;return s.setFromCharData(e),s}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?As(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let s=!1;if(e[1].length>2)s=!0;else if(e[1].length===2){let i=e[1].charCodeAt(0);if(55296<=i&&i<=56319){let n=e[1].charCodeAt(1);56320<=n&&n<=57343?this.content=(i-55296)*1024+n-56320+65536|e[2]<<22:s=!0}else s=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;s&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},bc="di$target",Fo="di$dependencies",co=new Map;function LS(t){return t[Fo]||[]}function lt(t){if(co.has(t))return co.get(t);let e=function(s,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");OS(e,s,n)};return e._id=t,co.set(t,e),e}function OS(t,e,s){e[bc]===e?e[Fo].push({id:t,index:s}):(e[Fo]=[{id:t,index:s}],e[bc]=e)}var wt=lt("BufferService"),Ou=lt("CoreMouseService"),ai=lt("CoreService"),BS=lt("CharsetService"),rl=lt("InstantiationService"),Bu=lt("LogService"),Vt=lt("OptionsService"),$u=lt("OscLinkService"),$S=lt("UnicodeService"),Er=lt("DecorationService"),Uo=class{constructor(t,e,s){this._bufferService=t,this._optionsService=e,this._oscLinkService=s}provideLinks(t,e){let s=this._bufferService.buffer.lines.get(t-1);if(!s){e(void 0);return}let i=[],n=this._optionsService.rawOptions.linkHandler,o=new Kt,a=s.getTrimmedLength(),l=-1,c=-1,d=!1;for(let u=0;u<a;u++)if(!(c===-1&&!s.hasContent(u))){if(s.loadCell(u,o),o.hasExtendedAttrs()&&o.extended.urlId)if(c===-1){c=u,l=o.extended.urlId;continue}else d=o.extended.urlId!==l;else c!==-1&&(d=!0);if(d||c!==-1&&u===a-1){let h=this._oscLinkService.getLinkData(l)?.uri;if(h){let f={start:{x:c+1,y:t},end:{x:u+(!d&&u===a-1?1:0),y:t}},m=!1;if(!n?.allowNonHttpProtocols)try{let p=new URL(h);["http:","https:"].includes(p.protocol)||(m=!0)}catch{m=!0}m||i.push({text:h,range:f,activate:(p,g)=>n?n.activate(p,g,f):zS(p,g),hover:(p,g)=>n?.hover?.(p,g,f),leave:(p,g)=>n?.leave?.(p,g,f)})}d=!1,o.hasExtendedAttrs()&&o.extended.urlId?(c=u,l=o.extended.urlId):(c=-1,l=-1)}}e(i)}};Uo=$e([le(0,wt),le(1,Vt),le(2,$u)],Uo);function zS(t,e){if(confirm(`Do you want to navigate to ${e}?
|
|
713
|
+
`}),e[32]=T):T=e[32];let M;return e[33]!==V||e[34]!==k||e[35]!==p?(M=r.jsxs("div",{className:"relative flex flex-col items-center justify-center w-full h-full overflow-hidden select-none gap-8",children:[p,V,k,T]}),e[33]=V,e[34]=k,e[35]=p,e[36]=M):M=e[36],M}function lo(t){const e=B.c(10),{phase:s,current:i,children:n}=t,o=s-i,a=o<0,l=o===0,c=a?90:o*-22,d=a?.94:1-Math.max(o,0)*.04,u=a?0:l?1:o===1?.8:.55,h=a?10:30-o,f=!l;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=Y("absolute inset-0 rounded-xl border border-foreground/10 bg-background shadow-[0_20px_60px_-20px_rgb(0_0_0_/_0.35)] overflow-hidden transition-all ease-[cubic-bezier(0.22,1,0.36,1)]"),e[0]=m):m=e[0];const p=`translateY(${c}px) scale(${d})`,g=l?"auto":"none";let _;e[1]!==u||e[2]!==p||e[3]!==g||e[4]!==h?(_={transform:p,opacity:u,zIndex:h,transitionDuration:"1000ms",pointerEvents:g},e[1]=u,e[2]=p,e[3]=g,e[4]=h,e[5]=_):_=e[5];let v;return e[6]!==n||e[7]!==f||e[8]!==_?(v=r.jsx("div",{"aria-hidden":f,className:m,style:_,children:n}),e[6]=n,e[7]=f,e[8]=_,e[9]=v):v=e[9],v}function il(t){const e=B.c(7),{showUrl:s}=t,i=s===void 0?!1:s;let n,o,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),o=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),a=r.jsx("div",{className:Y("w-2.5 h-2.5 rounded-full",Xt)}),e[0]=n,e[1]=o,e[2]=a):(n=e[0],o=e[1],a=e[2]);let l;e[3]!==i?(l=i&&r.jsx("div",{className:Y("ml-3 h-3.5 flex-1 max-w-[220px] rounded-sm",ns)}),e[3]=i,e[4]=l):l=e[4];let c;return e[5]!==l?(c=r.jsxs("div",{className:"h-7 flex items-center gap-1.5 px-3 shrink-0",children:[n,o,a,l]}),e[5]=l,e[6]=c):c=e[6],c}function yS(){const t=B.c(5);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:Y("w-[18%] rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out infinite"}}),t[1]=s):s=t[1];let i;t[2]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"h-[42%] shrink-0 rounded-md bg-chart-3/[0.12]",style:{animation:"vm-breathe 3s ease-in-out 0.4s infinite"}}),t[2]=i):i=t[2];let n;t[3]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsx("div",{className:"col-span-3 rounded-md bg-chart-3/[0.12]",style:{animation:"vm-breathe 3s ease-in-out 0.8s infinite"}}),t[3]=n):n=t[3];let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsxs("div",{className:"flex flex-1 min-h-0 gap-1.5 p-3",children:[s,r.jsxs("div",{className:"flex-1 flex flex-col gap-1.5 min-w-0",children:[i,r.jsxs("div",{className:"flex-1 grid grid-cols-5 gap-1.5 min-h-0",children:[n,r.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-1.5",children:[r.jsx("div",{className:Y("rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out 1.2s infinite"}}),r.jsx("div",{className:Y("rounded-md",ns),style:{animation:"vm-breathe 3s ease-in-out 1.6s infinite"}})]})]})]})]})]}),t[4]=o):o=t[4],o}function SS(){const t=B.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsx("div",{className:"relative flex-1 flex items-center justify-center px-8 py-5",children:r.jsx("div",{className:"grid gap-2 w-full",style:{gridTemplateColumns:"repeat(7, minmax(0, 1fr))"},children:pS.map(wS)})})]}),t[1]=s):s=t[1],s}function wS(t,e){return r.jsx("div",{className:Y("aspect-square rounded-md",gS[e]?"bg-chart-2/70":Xt),style:{animation:`vm-pulse-soft 2.2s ease-in-out ${t}s infinite`}},e)}function VS(){const t=B.c(11);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(il,{showUrl:!0}),t[0]=e):e=t[0];let s,i,n,o,a;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:"h-5 rounded-md mb-2 bg-chart-1/[0.10]"}),i=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[70%]",Xt)}),n=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[55%]",Xt)}),o=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[80%]",Xt)}),a=r.jsx("div",{className:Y("h-1.5 rounded-sm w-[50%]",Xt)}),t[1]=s,t[2]=i,t[3]=n,t[4]=o,t[5]=a):(s=t[1],i=t[2],n=t[3],o=t[4],a=t[5]);let l;t[6]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsxs("div",{className:"w-[18%] p-2.5 flex flex-col gap-1.5 shrink-0 bg-chart-1/[0.05]",children:[s,i,n,o,a,r.jsx("div",{className:"mt-auto",children:r.jsx("div",{className:Y("h-4 rounded-md",Xt)})})]}),t[6]=l):l=t[6];let c;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"relative h-[42%] shrink-0 overflow-hidden bg-chart-1/[0.10]",children:r.jsxs("div",{className:"absolute bottom-3 left-3 right-3 space-y-1.5",children:[r.jsx("div",{className:"h-3 rounded-sm w-[35%] bg-chart-1/[0.15]"}),r.jsx("div",{className:Y("h-1.5 rounded-sm w-[55%]",ns)})]})}),t[7]=c):c=t[7];let d;t[8]===Symbol.for("react.memo_cache_sentinel")?(d=r.jsxs("div",{className:"flex gap-1.5 shrink-0",children:[r.jsx("div",{className:"h-4 w-12 rounded-full bg-chart-1/[0.12]"}),r.jsx("div",{className:Y("h-4 w-10 rounded-full",ns)}),r.jsx("div",{className:Y("h-4 w-14 rounded-full",ns)})]}),t[8]=d):d=t[8];let u;t[9]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsxs("div",{className:Y("col-span-3 rounded-md flex flex-col justify-end p-2 gap-1",ns),children:[r.jsx("div",{className:Y("h-1.5 w-[50%] rounded-sm",Xt)}),r.jsx("div",{className:Y("h-1 w-[75%] rounded-sm",Xt)})]}),t[9]=u):u=t[9];let h;return t[10]===Symbol.for("react.memo_cache_sentinel")?(h=r.jsxs("div",{className:"flex h-full flex-col",children:[e,r.jsxs("div",{className:"flex flex-1 min-h-0",children:[l,r.jsxs("div",{className:"flex-1 min-w-0 flex flex-col",children:[c,r.jsxs("div",{className:"flex-1 p-3 flex flex-col gap-2.5 min-h-0",children:[d,r.jsxs("div",{className:"flex-1 grid grid-cols-5 gap-2 min-h-0",children:[u,r.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-2",children:[r.jsx("div",{className:Y("rounded-md",ns)}),r.jsx("div",{className:Y("rounded-md",ns)})]})]})]})]})]})]}),t[10]=h):h=t[10],h}function Iu(t){const e=B.c(21),{errorMsg:s,onRetry:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=r.jsxs("div",{className:"absolute top-8 left-1/2 -translate-x-1/2 z-20 flex items-center gap-2 rounded-full border border-destructive/30 bg-background/80 px-3.5 py-1.5 shadow-[0_4px_20px_-4px_rgb(0_0_0_/_0.12)] backdrop-blur-md",children:[r.jsx(Bs,{size:13,className:"text-destructive/80"}),r.jsx("span",{className:"text-[13px] font-medium text-destructive/90",children:"Failed to start"})]}),e[0]=n):n=e[0];let o,a;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"absolute left-[8%] right-[8%] -top-5 h-full rounded-xl border border-foreground/[0.05] bg-foreground/[0.015]"}),a=r.jsx("div",{className:"absolute left-[4%] right-[4%] -top-2.5 h-full rounded-xl border border-foreground/[0.07] bg-foreground/[0.025]"}),e[1]=o,e[2]=a):(o=e[1],a=e[2]);let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=r.jsxs("div",{className:"h-7 border-b border-foreground/[0.08] bg-foreground/[0.015] flex items-center gap-1.5 px-3",children:[r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-foreground/10"}),r.jsx("div",{className:"ml-3 h-3.5 flex-1 max-w-[240px] rounded-sm bg-foreground/[0.04]"})]}),e[3]=l):l=e[3];let c;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(Bs,{size:14,className:"text-destructive/80 mt-0.5 shrink-0"}),e[4]=c):c=e[4];let d;e[5]!==s?(d=r.jsxs("div",{className:"flex items-start gap-2",children:[c,r.jsx("p",{className:"text-xs text-destructive/80 line-clamp-5 break-all leading-relaxed font-mono",children:s})]}),e[5]=s,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(kd,{size:12}),e[7]=u):u=e[7];let h;e[8]!==i?(h=r.jsxs(oe,{variant:"outline",size:"sm",onClick:i,children:[u,"Retry"]}),e[8]=i,e[9]=h):h=e[9];let f;e[10]!==s?(f=()=>navigator.clipboard.writeText(s).then(CS),e[10]=s,e[11]=f):f=e[11];let m;e[12]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx(Si,{size:10}),e[12]=m):m=e[12];let p;e[13]!==f?(p=r.jsxs("button",{type:"button",onClick:f,className:"flex items-center gap-1 text-[11px] text-muted-foreground/60 hover:text-muted-foreground transition-colors duration-200",children:[m,"Copy error"]}),e[13]=f,e[14]=p):p=e[14];let g;e[15]!==p||e[16]!==h?(g=r.jsxs("div",{className:"flex items-center gap-2",children:[h,p]}),e[15]=p,e[16]=h,e[17]=g):g=e[17];let _;return e[18]!==g||e[19]!==d?(_=r.jsxs("div",{className:"relative flex flex-col items-center justify-center w-full h-full overflow-hidden select-none",children:[n,r.jsxs("div",{className:"relative w-[min(78%,560px)] aspect-[4/3] mt-6 opacity-60",children:[o,a,r.jsxs("div",{className:"relative w-full h-full rounded-xl border border-foreground/10 bg-background shadow-[0_20px_60px_-20px_rgb(0_0_0_/_0.35)] overflow-hidden",children:[l,r.jsx("div",{className:"flex items-center justify-center p-6 h-[calc(100%-1.75rem)]",children:r.jsxs("div",{className:"w-full max-w-sm rounded-lg border border-destructive/20 bg-destructive/[0.03] p-4 space-y-3",children:[d,g]})})]})]})]}),e[18]=g,e[19]=d,e[20]=_):_=e[20],_}function CS(){he.success("Error copied to clipboard")}const kS=[{value:"preview",icon:r.jsx(Kd,{size:14}),tooltip:"Interactive"},{value:"visual",icon:r.jsx(qd,{size:14}),tooltip:"Visual Editor"}];function jS(){const t=ml(),{data:e}=dt.useSession(),{openEnv:s}=eS(),{taskId:i,currentBranch:n,setCurrentTaskBranch:o}=Lt(),[a,l]=j.useState("preview"),[c,d]=j.useState(null),u=j.useRef(null),h=e?.user?.id,f=t?.entity?.metadata,m=h&&n?f?.vmMap?.[h]?.[n]:void 0,p=m?.previewUrl??null,g=Ti();mS(()=>{const F=u.current;F&&(F.src=F.src)});const _=g.status.htmlSupport,v=g.suspended,x=j.useRef({url:"",at:0,ready:!1});p&&x.current.url!==p&&(x.current={url:p,at:m?.createdAt??Date.now(),ready:!1}),p&&g.status.ready&&!x.current.ready&&(x.current.ready=!0);const b=!!p&&!x.current.ready&&!v,y=j.useRef(0),V=t?.entity?.id??null,C=Ae({connectionId:yt,orgId:t?.entity?.organization_id??""}),S=el(C),w=S.error?.message??null;S.isPending?y.current||(y.current=Date.now()):p&&(y.current=0);const k=S.isPending&&!p&&!v,T=j.useRef(null),M=j.useRef(null),I=F=>{if(!V)return;const W={virtualMcpId:V};n&&(W.branch=n),S.mutate(W,{onSuccess:H=>{H?.branch&&!n&&o(H.branch)},onError:H=>{console.error(`[preview] ${F} VM_START failed`,H)}})},E=j.useRef(I);E.current=I,i&&m&&T.current!==i&&(T.current=i);const N=!!i&&!!V&&!!h&&!!n&&!m&&!w&&!S.isPending&&T.current!==i;j.useEffect(()=>{!N||!i||(T.current=i,E.current("auto-start"))},[N,i]);const A=g.notFound?m?.vmId??null:null;j.useEffect(()=>{!A||!V||w||S.isPending||M.current!==A&&(M.current=A,E.current("self-heal"))},[A,V,w,S.isPending]);const D=()=>{T.current=null,M.current=null,S.reset(),E.current("auto-start")};j.useEffect(()=>{if(!p)return;let F;try{F=new URL(p,window.location.href).origin}catch{return}const W=H=>{if(H.origin!==F||H.data?.type!=="visual-editor::element-clicked")return;const U=tS.safeParse(H.data.payload);U.success&&d(U.data)};return window.addEventListener("message",W),()=>window.removeEventListener("message",W)},[p]);const L=()=>{const F=u.current?.contentWindow;F&&F.postMessage({type:"visual-editor::activate",script:sS},"*")},R=()=>{const F=u.current?.contentWindow;F&&F.postMessage({type:"visual-editor::deactivate"},"*")},P=F=>{l(F),d(null),F==="visual"?L():R()},O=()=>{if(!u.current)return;const F=u.current;F.src=F.src},z=()=>{if(!u.current||!p)return;const F=p.includes("?")?"&":"?";u.current.src=`${p}${F}_r=${Date.now()}`},$=()=>{const F=u.current?.contentWindow?.location?.href??p;F&&navigator.clipboard.writeText(F)},q=(()=>{if(!p)return"No server running";try{const F=new URL(p);return`${F.host}${F.pathname==="/"?"":F.pathname}`}catch{return p}})();return r.jsxs("div",{className:"flex flex-col w-full h-full",children:[p&&r.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-4 border-b border-border/60 px-3 md:px-4",children:[_&&r.jsx(Ng,{value:a,onValueChange:P,options:kS,size:"sm",className:"shrink-0 bg-foreground/[0.045]"}),r.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-0.5",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>u.current?.contentWindow?.history.back(),children:r.jsx(Pa,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Back"})]}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>u.current?.contentWindow?.history.forward(),children:r.jsx(In,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Forward"})]}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:O,children:r.jsx(kd,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Refresh"})]}),r.jsx("div",{className:"flex h-8 min-w-0 flex-1 items-center rounded-md bg-background px-2 transition-colors duration-200 hover:bg-accent",children:r.jsx("span",{className:"min-w-0 flex-1 truncate text-[12px] text-foreground/88",children:q})})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>window.open(p,"_blank","noopener"),children:r.jsx(oi,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"Open in new tab"})]}),r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx(oe,{variant:"ghost",size:"icon",children:r.jsx(Wd,{size:14})})}),r.jsxs(hs,{align:"end",children:[r.jsx(Qe,{onClick:z,children:"Hard Reload"}),r.jsx(Qe,{onClick:$,children:"Copy Current URL"})]})]})]})]}),r.jsxs("div",{className:"flex-1 relative overflow-hidden",children:[!p&&!k&&!w&&r.jsxs("div",{className:"absolute inset-0 z-30 flex flex-col items-center justify-center gap-4 bg-background",children:[r.jsx(Kd,{size:48,className:"text-muted-foreground/40"}),r.jsx("h3",{className:"text-lg font-medium",children:"Preview"}),r.jsx("p",{className:"text-sm text-muted-foreground text-center max-w-sm",children:"Start the development server to see a live preview"}),r.jsxs(oe,{onClick:s,children:[r.jsx(Hd,{size:14}),"Start Server"]})]}),w&&r.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center bg-background",children:r.jsx(Iu,{errorMsg:w,onRetry:D})}),!w&&v&&r.jsx("div",{className:"absolute inset-0 z-30 bg-background/80 backdrop-blur-sm",children:r.jsx(Eu,{onResume:s})}),!w&&(b||k)&&r.jsx("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-background",children:r.jsx(bS,{since:b?x.current.at:y.current,hasSetupData:g.hasData("setup"),scripts:g.scripts,activeProcesses:g.activeProcesses,onViewLogs:s})}),a==="visual"&&!c&&r.jsxs("div",{className:"absolute top-2 left-1/2 -translate-x-1/2 z-20 flex items-center gap-1.5 rounded-full border border-violet-400/40 bg-violet-500/90 px-3 py-1 text-xs font-medium text-white shadow-md backdrop-blur-sm pointer-events-none select-none",children:[r.jsx(qd,{size:12}),"Click any element to ask the AI"]}),a==="visual"&&c&&r.jsx(nS,{element:c,onDismiss:()=>d(null)}),p&&!b&&r.jsx("iframe",{ref:u,src:p,className:"w-full h-full border-0",title:"Dev Server Preview",onLoad:()=>{re("vm_preview_loaded",{view_mode:a,vm_id:m?.vmId??null}),a==="visual"&&L()}},p)]})]})}function NS(t){const e=B.c(2),{virtualMcpId:s}=t,i=$t(s);if(!(i?bs(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[r.jsx(Bs,{size:24,className:"text-muted-foreground/60"}),r.jsx("div",{children:"No repository connected."}),r.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Preview."})]}),e[0]=a):a=e[0],a}let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(jS,{}),e[1]=o):o=e[1],o}var Tu=Object.defineProperty,AS=Object.getOwnPropertyDescriptor,ES=(t,e)=>{for(var s in e)Tu(t,s,{get:e[s],enumerable:!0})},$e=(t,e,s,i)=>{for(var n=i>1?void 0:i?AS(e,s):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(n=(i?a(e,s,n):a(n))||n);return i&&n&&Tu(e,s,n),n},le=(t,e)=>(s,i)=>e(s,i,t),_c="Terminal input",$o={get:()=>_c,set:t=>_c=t},xc="Too much output to announce, navigate to rows manually to read",zo={get:()=>xc,set:t=>xc=t};function IS(t){return t.replace(/\r?\n/g,"\r")}function TS(t,e){return e?"\x1B[200~"+t+"\x1B[201~":t}function RS(t,e){t.clipboardData&&t.clipboardData.setData("text/plain",e.selectionText),t.preventDefault()}function MS(t,e,s,i){if(t.stopPropagation(),t.clipboardData){let n=t.clipboardData.getData("text/plain");Ru(n,e,s,i)}}function Ru(t,e,s,i){t=IS(t),t=TS(t,s.decPrivateModes.bracketedPasteMode&&i.rawOptions.ignoreBracketedPasteMode!==!0),s.triggerDataEvent(t,!0),e.value=""}function Mu(t,e,s){let i=s.getBoundingClientRect(),n=t.clientX-i.left-10,o=t.clientY-i.top-10;e.style.width="20px",e.style.height="20px",e.style.left=`${n}px`,e.style.top=`${o}px`,e.style.zIndex="1000",e.focus()}function vc(t,e,s,i,n){Mu(t,e,s),n&&i.rightClickSelect(t),e.value=i.selectionText,e.select()}function As(t){return t>65535?(t-=65536,String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)}function $n(t,e=0,s=t.length){let i="";for(let n=e;n<s;++n){let o=t[n];o>65535?(o-=65536,i+=String.fromCharCode((o>>10)+55296)+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i}var DS=class{constructor(){this._interim=0}clear(){this._interim=0}decode(t,e){let s=t.length;if(!s)return 0;let i=0,n=0;if(this._interim){let o=t.charCodeAt(n++);56320<=o&&o<=57343?e[i++]=(this._interim-55296)*1024+o-56320+65536:(e[i++]=this._interim,e[i++]=o),this._interim=0}for(let o=n;o<s;++o){let a=t.charCodeAt(o);if(55296<=a&&a<=56319){if(++o>=s)return this._interim=a,i;let l=t.charCodeAt(o);56320<=l&&l<=57343?e[i++]=(a-55296)*1024+l-56320+65536:(e[i++]=a,e[i++]=l);continue}a!==65279&&(e[i++]=a)}return i}},PS=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(t,e){let s=t.length;if(!s)return 0;let i=0,n,o,a,l,c=0,d=0;if(this.interim[0]){let f=!1,m=this.interim[0];m&=(m&224)===192?31:(m&240)===224?15:7;let p=0,g;for(;(g=this.interim[++p]&63)&&p<4;)m<<=6,m|=g;let _=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,v=_-p;for(;d<v;){if(d>=s)return 0;if(g=t[d++],(g&192)!==128){d--,f=!0;break}else this.interim[p++]=g,m<<=6,m|=g&63}f||(_===2?m<128?d--:e[i++]=m:_===3?m<2048||m>=55296&&m<=57343||m===65279||(e[i++]=m):m<65536||m>1114111||(e[i++]=m)),this.interim.fill(0)}let u=s-4,h=d;for(;h<s;){for(;h<u&&!((n=t[h])&128)&&!((o=t[h+1])&128)&&!((a=t[h+2])&128)&&!((l=t[h+3])&128);)e[i++]=n,e[i++]=o,e[i++]=a,e[i++]=l,h+=4;if(n=t[h++],n<128)e[i++]=n;else if((n&224)===192){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(c=(n&31)<<6|o&63,c<128){h--;continue}e[i++]=c}else if((n&240)===224){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,i;if(a=t[h++],(a&192)!==128){h--;continue}if(c=(n&15)<<12|(o&63)<<6|a&63,c<2048||c>=55296&&c<=57343||c===65279)continue;e[i++]=c}else if((n&248)===240){if(h>=s)return this.interim[0]=n,i;if(o=t[h++],(o&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,i;if(a=t[h++],(a&192)!==128){h--;continue}if(h>=s)return this.interim[0]=n,this.interim[1]=o,this.interim[2]=a,i;if(l=t[h++],(l&192)!==128){h--;continue}if(c=(n&7)<<18|(o&63)<<12|(a&63)<<6|l&63,c<65536||c>1114111)continue;e[i++]=c}}return i}},Du="",Is=" ",Ar=class Pu{constructor(){this.fg=0,this.bg=0,this.extended=new vn}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let e=new Pu;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},vn=class Lu{constructor(e=0,s=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=s}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new Lu(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Kt=class Ou extends Ar{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new vn,this.combinedData=""}static fromCharData(e){let s=new Ou;return s.setFromCharData(e),s}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?As(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let s=!1;if(e[1].length>2)s=!0;else if(e[1].length===2){let i=e[1].charCodeAt(0);if(55296<=i&&i<=56319){let n=e[1].charCodeAt(1);56320<=n&&n<=57343?this.content=(i-55296)*1024+n-56320+65536|e[2]<<22:s=!0}else s=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;s&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},bc="di$target",Fo="di$dependencies",co=new Map;function LS(t){return t[Fo]||[]}function lt(t){if(co.has(t))return co.get(t);let e=function(s,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");OS(e,s,n)};return e._id=t,co.set(t,e),e}function OS(t,e,s){e[bc]===e?e[Fo].push({id:t,index:s}):(e[Fo]=[{id:t,index:s}],e[bc]=e)}var wt=lt("BufferService"),Bu=lt("CoreMouseService"),ai=lt("CoreService"),BS=lt("CharsetService"),rl=lt("InstantiationService"),$u=lt("LogService"),Vt=lt("OptionsService"),zu=lt("OscLinkService"),$S=lt("UnicodeService"),Er=lt("DecorationService"),Uo=class{constructor(t,e,s){this._bufferService=t,this._optionsService=e,this._oscLinkService=s}provideLinks(t,e){let s=this._bufferService.buffer.lines.get(t-1);if(!s){e(void 0);return}let i=[],n=this._optionsService.rawOptions.linkHandler,o=new Kt,a=s.getTrimmedLength(),l=-1,c=-1,d=!1;for(let u=0;u<a;u++)if(!(c===-1&&!s.hasContent(u))){if(s.loadCell(u,o),o.hasExtendedAttrs()&&o.extended.urlId)if(c===-1){c=u,l=o.extended.urlId;continue}else d=o.extended.urlId!==l;else c!==-1&&(d=!0);if(d||c!==-1&&u===a-1){let h=this._oscLinkService.getLinkData(l)?.uri;if(h){let f={start:{x:c+1,y:t},end:{x:u+(!d&&u===a-1?1:0),y:t}},m=!1;if(!n?.allowNonHttpProtocols)try{let p=new URL(h);["http:","https:"].includes(p.protocol)||(m=!0)}catch{m=!0}m||i.push({text:h,range:f,activate:(p,g)=>n?n.activate(p,g,f):zS(p,g),hover:(p,g)=>n?.hover?.(p,g,f),leave:(p,g)=>n?.leave?.(p,g,f)})}d=!1,o.hasExtendedAttrs()&&o.extended.urlId?(c=u,l=o.extended.urlId):(c=-1,l=-1)}}e(i)}};Uo=$e([le(0,wt),le(1,Vt),le(2,zu)],Uo);function zS(t,e){if(confirm(`Do you want to navigate to ${e}?
|
|
714
714
|
|
|
715
|
-
WARNING: This link could potentially be dangerous`)){let s=window.open();if(s){try{s.opener=null}catch{}s.location.href=e}else console.warn("Opening link blocked as opener could not be cleared")}}var zn=lt("CharSizeService"),ys=lt("CoreBrowserService"),nl=lt("MouseService"),Ss=lt("RenderService"),FS=lt("SelectionService"),
|
|
715
|
+
WARNING: This link could potentially be dangerous`)){let s=window.open();if(s){try{s.opener=null}catch{}s.location.href=e}else console.warn("Opening link blocked as opener could not be cleared")}}var zn=lt("CharSizeService"),ys=lt("CoreBrowserService"),nl=lt("MouseService"),Ss=lt("RenderService"),FS=lt("SelectionService"),Fu=lt("CharacterJoinerService"),Ri=lt("ThemeService"),Uu=lt("LinkProviderService"),US=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(t){setTimeout(()=>{throw t.stack?yc.isErrorNoTelemetry(t)?new yc(t.message+`
|
|
716
716
|
|
|
717
717
|
`+t.stack):new Error(t.message+`
|
|
718
718
|
|
|
719
|
-
`+t.stack):t},0)}}addListener(t){return this.listeners.push(t),()=>{this._removeListener(t)}}emit(t){this.listeners.forEach(e=>{e(t)})}_removeListener(t){this.listeners.splice(this.listeners.indexOf(t),1)}setUnexpectedErrorHandler(t){this.unexpectedErrorHandler=t}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}},HS=new US;function nn(t){WS(t)||HS.onUnexpectedError(t)}var Ho="Canceled";function WS(t){return t instanceof KS?!0:t instanceof Error&&t.name===Ho&&t.message===Ho}var KS=class extends Error{constructor(){super(Ho),this.name=this.message}};function qS(t){return new Error(`Illegal argument: ${t}`)}var yc=class Wo extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof Wo)return e;let s=new Wo;return s.message=e.message,s.stack=e.stack,s}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}},Ko=class Uu extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,Uu.prototype)}};function It(t,e=0){return t[t.length-(1+e)]}var GS;(t=>{function e(o){return o<0}t.isLessThan=e;function s(o){return o<=0}t.isLessThanOrEqual=s;function i(o){return o>0}t.isGreaterThan=i;function n(o){return o===0}t.isNeitherLessOrGreaterThan=n,t.greaterThan=1,t.lessThan=-1,t.neitherLessOrGreaterThan=0})(GS||={});function YS(t,e){let s=this,i=!1,n;return function(){return i||(i=!0,e||(n=t.apply(s,arguments))),n}}var Hu;(t=>{function e(y){return y&&typeof y=="object"&&typeof y[Symbol.iterator]=="function"}t.is=e;let s=Object.freeze([]);function i(){return s}t.empty=i;function*n(y){yield y}t.single=n;function o(y){return e(y)?y:n(y)}t.wrap=o;function a(y){return y||s}t.from=a;function*l(y){for(let V=y.length-1;V>=0;V--)yield y[V]}t.reverse=l;function c(y){return!y||y[Symbol.iterator]().next().done===!0}t.isEmpty=c;function d(y){return y[Symbol.iterator]().next().value}t.first=d;function u(y,V){let C=0;for(let S of y)if(V(S,C++))return!0;return!1}t.some=u;function h(y,V){for(let C of y)if(V(C))return C}t.find=h;function*f(y,V){for(let C of y)V(C)&&(yield C)}t.filter=f;function*m(y,V){let C=0;for(let S of y)yield V(S,C++)}t.map=m;function*p(y,V){let C=0;for(let S of y)yield*V(S,C++)}t.flatMap=p;function*g(...y){for(let V of y)yield*V}t.concat=g;function _(y,V,C){let S=C;for(let w of y)S=V(S,w);return S}t.reduce=_;function*v(y,V,C=y.length){for(V<0&&(V+=y.length),C<0?C+=y.length:C>y.length&&(C=y.length);V<C;V++)yield y[V]}t.slice=v;function x(y,V=Number.POSITIVE_INFINITY){let C=[];if(V===0)return[C,y];let S=y[Symbol.iterator]();for(let w=0;w<V;w++){let k=S.next();if(k.done)return[C,t.empty()];C.push(k.value)}return[C,{[Symbol.iterator](){return S}}]}t.consume=x;async function b(y){let V=[];for await(let C of y)V.push(C);return Promise.resolve(V)}t.asyncToArray=b})(Hu||={});function Qs(t){if(Hu.is(t)){let e=[];for(let s of t)if(s)try{s.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(t)?[]:t}else if(t)return t.dispose(),t}function XS(...t){return Me(()=>Qs(t))}function Me(t){return{dispose:YS(()=>{t()})}}var Wu=class Ku{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Qs(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?Ku.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}deleteAndLeak(e){e&&this._toDispose.has(e)&&(this._toDispose.delete(e),void 0)}};Wu.DISABLE_DISPOSED_WARNING=!1;var Ps=Wu,we=class{constructor(){this._store=new Ps,this._store}dispose(){this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}};we.None=Object.freeze({dispose(){}});var ki=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(t){this._isDisposed||t===this._value||(this._value?.dispose(),this._value=t)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}clearAndLeak(){let t=this._value;return this._value=void 0,t}},vs=typeof window=="object"?window:globalThis,qo=class Go{constructor(e){this.element=e,this.next=Go.Undefined,this.prev=Go.Undefined}};qo.Undefined=new qo(void 0);var Pe=qo,Sc=class{constructor(){this._first=Pe.Undefined,this._last=Pe.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Pe.Undefined}clear(){let t=this._first;for(;t!==Pe.Undefined;){let e=t.next;t.prev=Pe.Undefined,t.next=Pe.Undefined,t=e}this._first=Pe.Undefined,this._last=Pe.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,e){let s=new Pe(t);if(this._first===Pe.Undefined)this._first=s,this._last=s;else if(e){let n=this._last;this._last=s,s.prev=n,n.next=s}else{let n=this._first;this._first=s,s.next=n,n.prev=s}this._size+=1;let i=!1;return()=>{i||(i=!0,this._remove(s))}}shift(){if(this._first!==Pe.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Pe.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Pe.Undefined&&t.next!==Pe.Undefined){let e=t.prev;e.next=t.next,t.next.prev=e}else t.prev===Pe.Undefined&&t.next===Pe.Undefined?(this._first=Pe.Undefined,this._last=Pe.Undefined):t.next===Pe.Undefined?(this._last=this._last.prev,this._last.next=Pe.Undefined):t.prev===Pe.Undefined&&(this._first=this._first.next,this._first.prev=Pe.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Pe.Undefined;)yield t.element,t=t.next}},JS=globalThis.performance&&typeof globalThis.performance.now=="function",QS=class qu{static create(e){return new qu(e)}constructor(e){this._now=JS&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},ct;(t=>{t.None=()=>we.None;function e(I,E){return h(I,()=>{},0,void 0,!0,void 0,E)}t.defer=e;function s(I){return(E,N=null,A)=>{let D=!1,L;return L=I(R=>{if(!D)return L?L.dispose():D=!0,E.call(N,R)},null,A),D&&L.dispose(),L}}t.once=s;function i(I,E,N){return d((A,D=null,L)=>I(R=>A.call(D,E(R)),null,L),N)}t.map=i;function n(I,E,N){return d((A,D=null,L)=>I(R=>{E(R),A.call(D,R)},null,L),N)}t.forEach=n;function o(I,E,N){return d((A,D=null,L)=>I(R=>E(R)&&A.call(D,R),null,L),N)}t.filter=o;function a(I){return I}t.signal=a;function l(...I){return(E,N=null,A)=>{let D=XS(...I.map(L=>L(R=>E.call(N,R))));return u(D,A)}}t.any=l;function c(I,E,N,A){let D=N;return i(I,L=>(D=E(D,L),D),A)}t.reduce=c;function d(I,E){let N,A={onWillAddFirstListener(){N=I(D.fire,D)},onDidRemoveLastListener(){N?.dispose()}},D=new ne(A);return E?.add(D),D.event}function u(I,E){return E instanceof Array?E.push(I):E&&E.add(I),I}function h(I,E,N=100,A=!1,D=!1,L,R){let P,O,z,$=0,q,F={leakWarningThreshold:L,onWillAddFirstListener(){P=I(H=>{$++,O=E(O,H),A&&!z&&(W.fire(O),O=void 0),q=()=>{let U=O;O=void 0,z=void 0,(!A||$>1)&&W.fire(U),$=0},typeof N=="number"?(clearTimeout(z),z=setTimeout(q,N)):z===void 0&&(z=0,queueMicrotask(q))})},onWillRemoveListener(){D&&$>0&&q?.()},onDidRemoveLastListener(){q=void 0,P.dispose()}},W=new ne(F);return R?.add(W),W.event}t.debounce=h;function f(I,E=0,N){return t.debounce(I,(A,D)=>A?(A.push(D),A):[D],E,void 0,!0,void 0,N)}t.accumulate=f;function m(I,E=(A,D)=>A===D,N){let A=!0,D;return o(I,L=>{let R=A||!E(L,D);return A=!1,D=L,R},N)}t.latch=m;function p(I,E,N){return[t.filter(I,E,N),t.filter(I,A=>!E(A),N)]}t.split=p;function g(I,E=!1,N=[],A){let D=N.slice(),L=I(O=>{D?D.push(O):P.fire(O)});A&&A.add(L);let R=()=>{D?.forEach(O=>P.fire(O)),D=null},P=new ne({onWillAddFirstListener(){L||(L=I(O=>P.fire(O)),A&&A.add(L))},onDidAddFirstListener(){D&&(E?setTimeout(R):R())},onDidRemoveLastListener(){L&&L.dispose(),L=null}});return A&&A.add(P),P.event}t.buffer=g;function _(I,E){return(N,A,D)=>{let L=E(new x);return I(function(R){let P=L.evaluate(R);P!==v&&N.call(A,P)},void 0,D)}}t.chain=_;let v=Symbol("HaltChainable");class x{constructor(){this.steps=[]}map(E){return this.steps.push(E),this}forEach(E){return this.steps.push(N=>(E(N),N)),this}filter(E){return this.steps.push(N=>E(N)?N:v),this}reduce(E,N){let A=N;return this.steps.push(D=>(A=E(A,D),A)),this}latch(E=(N,A)=>N===A){let N=!0,A;return this.steps.push(D=>{let L=N||!E(D,A);return N=!1,A=D,L?D:v}),this}evaluate(E){for(let N of this.steps)if(E=N(E),E===v)break;return E}}function b(I,E,N=A=>A){let A=(...P)=>R.fire(N(...P)),D=()=>I.on(E,A),L=()=>I.removeListener(E,A),R=new ne({onWillAddFirstListener:D,onDidRemoveLastListener:L});return R.event}t.fromNodeEventEmitter=b;function y(I,E,N=A=>A){let A=(...P)=>R.fire(N(...P)),D=()=>I.addEventListener(E,A),L=()=>I.removeEventListener(E,A),R=new ne({onWillAddFirstListener:D,onDidRemoveLastListener:L});return R.event}t.fromDOMEventEmitter=y;function V(I){return new Promise(E=>s(I)(E))}t.toPromise=V;function C(I){let E=new ne;return I.then(N=>{E.fire(N)},()=>{E.fire(void 0)}).finally(()=>{E.dispose()}),E.event}t.fromPromise=C;function S(I,E){return I(N=>E.fire(N))}t.forward=S;function w(I,E,N){return E(N),I(A=>E(A))}t.runAndSubscribe=w;class k{constructor(E,N){this._observable=E,this._counter=0,this._hasChanged=!1;let A={onWillAddFirstListener:()=>{E.addObserver(this)},onDidRemoveLastListener:()=>{E.removeObserver(this)}};this.emitter=new ne(A),N&&N.add(this.emitter)}beginUpdate(E){this._counter++}handlePossibleChange(E){}handleChange(E,N){this._hasChanged=!0}endUpdate(E){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function T(I,E){return new k(I,E).emitter.event}t.fromObservable=T;function M(I){return(E,N,A)=>{let D=0,L=!1,R={beginUpdate(){D++},endUpdate(){D--,D===0&&(I.reportChanges(),L&&(L=!1,E.call(N)))},handlePossibleChange(){},handleChange(){L=!0}};I.addObserver(R),I.reportChanges();let P={dispose(){I.removeObserver(R)}};return A instanceof Ps?A.add(P):Array.isArray(A)&&A.push(P),P}}t.fromObservableLight=M})(ct||={});var Yo=class Xo{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${Xo._idPool++}`,Xo.all.add(this)}start(e){this._stopWatch=new QS,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};Yo.all=new Set,Yo._idPool=0;var ZS=Yo,ew=-1,Gu=class Yu{constructor(e,s,i=(Yu._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=s,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,s){let i=this.threshold;if(i<=0||s<i)return;this._stacks||(this._stacks=new Map);let n=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,n+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=i*.5;let[o,a]=this.getMostFrequentStack(),l=`[${this.name}] potential listener LEAK detected, having ${s} listeners already. MOST frequent listener (${a}):`;console.warn(l),console.warn(o);let c=new iw(l,o);this._errorHandler(c)}return()=>{let o=this._stacks.get(e.value)||0;this._stacks.set(e.value,o-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,s=0;for(let[i,n]of this._stacks)(!e||s<n)&&(e=[i,n],s=n);return e}};Gu._idPool=1;var tw=Gu,sw=class Xu{constructor(e){this.value=e}static create(){let e=new Error;return new Xu(e.stack??"")}print(){console.warn(this.value.split(`
|
|
719
|
+
`+t.stack):t},0)}}addListener(t){return this.listeners.push(t),()=>{this._removeListener(t)}}emit(t){this.listeners.forEach(e=>{e(t)})}_removeListener(t){this.listeners.splice(this.listeners.indexOf(t),1)}setUnexpectedErrorHandler(t){this.unexpectedErrorHandler=t}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}},HS=new US;function nn(t){WS(t)||HS.onUnexpectedError(t)}var Ho="Canceled";function WS(t){return t instanceof KS?!0:t instanceof Error&&t.name===Ho&&t.message===Ho}var KS=class extends Error{constructor(){super(Ho),this.name=this.message}};function qS(t){return new Error(`Illegal argument: ${t}`)}var yc=class Wo extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof Wo)return e;let s=new Wo;return s.message=e.message,s.stack=e.stack,s}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}},Ko=class Hu extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,Hu.prototype)}};function It(t,e=0){return t[t.length-(1+e)]}var GS;(t=>{function e(o){return o<0}t.isLessThan=e;function s(o){return o<=0}t.isLessThanOrEqual=s;function i(o){return o>0}t.isGreaterThan=i;function n(o){return o===0}t.isNeitherLessOrGreaterThan=n,t.greaterThan=1,t.lessThan=-1,t.neitherLessOrGreaterThan=0})(GS||={});function YS(t,e){let s=this,i=!1,n;return function(){return i||(i=!0,e||(n=t.apply(s,arguments))),n}}var Wu;(t=>{function e(y){return y&&typeof y=="object"&&typeof y[Symbol.iterator]=="function"}t.is=e;let s=Object.freeze([]);function i(){return s}t.empty=i;function*n(y){yield y}t.single=n;function o(y){return e(y)?y:n(y)}t.wrap=o;function a(y){return y||s}t.from=a;function*l(y){for(let V=y.length-1;V>=0;V--)yield y[V]}t.reverse=l;function c(y){return!y||y[Symbol.iterator]().next().done===!0}t.isEmpty=c;function d(y){return y[Symbol.iterator]().next().value}t.first=d;function u(y,V){let C=0;for(let S of y)if(V(S,C++))return!0;return!1}t.some=u;function h(y,V){for(let C of y)if(V(C))return C}t.find=h;function*f(y,V){for(let C of y)V(C)&&(yield C)}t.filter=f;function*m(y,V){let C=0;for(let S of y)yield V(S,C++)}t.map=m;function*p(y,V){let C=0;for(let S of y)yield*V(S,C++)}t.flatMap=p;function*g(...y){for(let V of y)yield*V}t.concat=g;function _(y,V,C){let S=C;for(let w of y)S=V(S,w);return S}t.reduce=_;function*v(y,V,C=y.length){for(V<0&&(V+=y.length),C<0?C+=y.length:C>y.length&&(C=y.length);V<C;V++)yield y[V]}t.slice=v;function x(y,V=Number.POSITIVE_INFINITY){let C=[];if(V===0)return[C,y];let S=y[Symbol.iterator]();for(let w=0;w<V;w++){let k=S.next();if(k.done)return[C,t.empty()];C.push(k.value)}return[C,{[Symbol.iterator](){return S}}]}t.consume=x;async function b(y){let V=[];for await(let C of y)V.push(C);return Promise.resolve(V)}t.asyncToArray=b})(Wu||={});function Qs(t){if(Wu.is(t)){let e=[];for(let s of t)if(s)try{s.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(t)?[]:t}else if(t)return t.dispose(),t}function XS(...t){return Me(()=>Qs(t))}function Me(t){return{dispose:YS(()=>{t()})}}var Ku=class qu{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Qs(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?qu.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}deleteAndLeak(e){e&&this._toDispose.has(e)&&(this._toDispose.delete(e),void 0)}};Ku.DISABLE_DISPOSED_WARNING=!1;var Ps=Ku,we=class{constructor(){this._store=new Ps,this._store}dispose(){this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}};we.None=Object.freeze({dispose(){}});var ki=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(t){this._isDisposed||t===this._value||(this._value?.dispose(),this._value=t)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}clearAndLeak(){let t=this._value;return this._value=void 0,t}},vs=typeof window=="object"?window:globalThis,qo=class Go{constructor(e){this.element=e,this.next=Go.Undefined,this.prev=Go.Undefined}};qo.Undefined=new qo(void 0);var Pe=qo,Sc=class{constructor(){this._first=Pe.Undefined,this._last=Pe.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Pe.Undefined}clear(){let t=this._first;for(;t!==Pe.Undefined;){let e=t.next;t.prev=Pe.Undefined,t.next=Pe.Undefined,t=e}this._first=Pe.Undefined,this._last=Pe.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,e){let s=new Pe(t);if(this._first===Pe.Undefined)this._first=s,this._last=s;else if(e){let n=this._last;this._last=s,s.prev=n,n.next=s}else{let n=this._first;this._first=s,s.next=n,n.prev=s}this._size+=1;let i=!1;return()=>{i||(i=!0,this._remove(s))}}shift(){if(this._first!==Pe.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Pe.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Pe.Undefined&&t.next!==Pe.Undefined){let e=t.prev;e.next=t.next,t.next.prev=e}else t.prev===Pe.Undefined&&t.next===Pe.Undefined?(this._first=Pe.Undefined,this._last=Pe.Undefined):t.next===Pe.Undefined?(this._last=this._last.prev,this._last.next=Pe.Undefined):t.prev===Pe.Undefined&&(this._first=this._first.next,this._first.prev=Pe.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Pe.Undefined;)yield t.element,t=t.next}},JS=globalThis.performance&&typeof globalThis.performance.now=="function",QS=class Gu{static create(e){return new Gu(e)}constructor(e){this._now=JS&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},ct;(t=>{t.None=()=>we.None;function e(I,E){return h(I,()=>{},0,void 0,!0,void 0,E)}t.defer=e;function s(I){return(E,N=null,A)=>{let D=!1,L;return L=I(R=>{if(!D)return L?L.dispose():D=!0,E.call(N,R)},null,A),D&&L.dispose(),L}}t.once=s;function i(I,E,N){return d((A,D=null,L)=>I(R=>A.call(D,E(R)),null,L),N)}t.map=i;function n(I,E,N){return d((A,D=null,L)=>I(R=>{E(R),A.call(D,R)},null,L),N)}t.forEach=n;function o(I,E,N){return d((A,D=null,L)=>I(R=>E(R)&&A.call(D,R),null,L),N)}t.filter=o;function a(I){return I}t.signal=a;function l(...I){return(E,N=null,A)=>{let D=XS(...I.map(L=>L(R=>E.call(N,R))));return u(D,A)}}t.any=l;function c(I,E,N,A){let D=N;return i(I,L=>(D=E(D,L),D),A)}t.reduce=c;function d(I,E){let N,A={onWillAddFirstListener(){N=I(D.fire,D)},onDidRemoveLastListener(){N?.dispose()}},D=new ne(A);return E?.add(D),D.event}function u(I,E){return E instanceof Array?E.push(I):E&&E.add(I),I}function h(I,E,N=100,A=!1,D=!1,L,R){let P,O,z,$=0,q,F={leakWarningThreshold:L,onWillAddFirstListener(){P=I(H=>{$++,O=E(O,H),A&&!z&&(W.fire(O),O=void 0),q=()=>{let U=O;O=void 0,z=void 0,(!A||$>1)&&W.fire(U),$=0},typeof N=="number"?(clearTimeout(z),z=setTimeout(q,N)):z===void 0&&(z=0,queueMicrotask(q))})},onWillRemoveListener(){D&&$>0&&q?.()},onDidRemoveLastListener(){q=void 0,P.dispose()}},W=new ne(F);return R?.add(W),W.event}t.debounce=h;function f(I,E=0,N){return t.debounce(I,(A,D)=>A?(A.push(D),A):[D],E,void 0,!0,void 0,N)}t.accumulate=f;function m(I,E=(A,D)=>A===D,N){let A=!0,D;return o(I,L=>{let R=A||!E(L,D);return A=!1,D=L,R},N)}t.latch=m;function p(I,E,N){return[t.filter(I,E,N),t.filter(I,A=>!E(A),N)]}t.split=p;function g(I,E=!1,N=[],A){let D=N.slice(),L=I(O=>{D?D.push(O):P.fire(O)});A&&A.add(L);let R=()=>{D?.forEach(O=>P.fire(O)),D=null},P=new ne({onWillAddFirstListener(){L||(L=I(O=>P.fire(O)),A&&A.add(L))},onDidAddFirstListener(){D&&(E?setTimeout(R):R())},onDidRemoveLastListener(){L&&L.dispose(),L=null}});return A&&A.add(P),P.event}t.buffer=g;function _(I,E){return(N,A,D)=>{let L=E(new x);return I(function(R){let P=L.evaluate(R);P!==v&&N.call(A,P)},void 0,D)}}t.chain=_;let v=Symbol("HaltChainable");class x{constructor(){this.steps=[]}map(E){return this.steps.push(E),this}forEach(E){return this.steps.push(N=>(E(N),N)),this}filter(E){return this.steps.push(N=>E(N)?N:v),this}reduce(E,N){let A=N;return this.steps.push(D=>(A=E(A,D),A)),this}latch(E=(N,A)=>N===A){let N=!0,A;return this.steps.push(D=>{let L=N||!E(D,A);return N=!1,A=D,L?D:v}),this}evaluate(E){for(let N of this.steps)if(E=N(E),E===v)break;return E}}function b(I,E,N=A=>A){let A=(...P)=>R.fire(N(...P)),D=()=>I.on(E,A),L=()=>I.removeListener(E,A),R=new ne({onWillAddFirstListener:D,onDidRemoveLastListener:L});return R.event}t.fromNodeEventEmitter=b;function y(I,E,N=A=>A){let A=(...P)=>R.fire(N(...P)),D=()=>I.addEventListener(E,A),L=()=>I.removeEventListener(E,A),R=new ne({onWillAddFirstListener:D,onDidRemoveLastListener:L});return R.event}t.fromDOMEventEmitter=y;function V(I){return new Promise(E=>s(I)(E))}t.toPromise=V;function C(I){let E=new ne;return I.then(N=>{E.fire(N)},()=>{E.fire(void 0)}).finally(()=>{E.dispose()}),E.event}t.fromPromise=C;function S(I,E){return I(N=>E.fire(N))}t.forward=S;function w(I,E,N){return E(N),I(A=>E(A))}t.runAndSubscribe=w;class k{constructor(E,N){this._observable=E,this._counter=0,this._hasChanged=!1;let A={onWillAddFirstListener:()=>{E.addObserver(this)},onDidRemoveLastListener:()=>{E.removeObserver(this)}};this.emitter=new ne(A),N&&N.add(this.emitter)}beginUpdate(E){this._counter++}handlePossibleChange(E){}handleChange(E,N){this._hasChanged=!0}endUpdate(E){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function T(I,E){return new k(I,E).emitter.event}t.fromObservable=T;function M(I){return(E,N,A)=>{let D=0,L=!1,R={beginUpdate(){D++},endUpdate(){D--,D===0&&(I.reportChanges(),L&&(L=!1,E.call(N)))},handlePossibleChange(){},handleChange(){L=!0}};I.addObserver(R),I.reportChanges();let P={dispose(){I.removeObserver(R)}};return A instanceof Ps?A.add(P):Array.isArray(A)&&A.push(P),P}}t.fromObservableLight=M})(ct||={});var Yo=class Xo{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${Xo._idPool++}`,Xo.all.add(this)}start(e){this._stopWatch=new QS,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};Yo.all=new Set,Yo._idPool=0;var ZS=Yo,ew=-1,Yu=class Xu{constructor(e,s,i=(Xu._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=s,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,s){let i=this.threshold;if(i<=0||s<i)return;this._stacks||(this._stacks=new Map);let n=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,n+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=i*.5;let[o,a]=this.getMostFrequentStack(),l=`[${this.name}] potential listener LEAK detected, having ${s} listeners already. MOST frequent listener (${a}):`;console.warn(l),console.warn(o);let c=new iw(l,o);this._errorHandler(c)}return()=>{let o=this._stacks.get(e.value)||0;this._stacks.set(e.value,o-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,s=0;for(let[i,n]of this._stacks)(!e||s<n)&&(e=[i,n],s=n);return e}};Yu._idPool=1;var tw=Yu,sw=class Ju{constructor(e){this.value=e}static create(){let e=new Error;return new Ju(e.stack??"")}print(){console.warn(this.value.split(`
|
|
720
720
|
`).slice(2).join(`
|
|
721
|
-
`))}},iw=class extends Error{constructor(t,e){super(t),this.name="ListenerLeakError",this.stack=e}},rw=class extends Error{constructor(t,e){super(t),this.name="ListenerRefusalError",this.stack=e}},nw=0,ho=class{constructor(t){this.value=t,this.id=nw++}},ow=2,aw,ne=class{constructor(t){this._size=0,this._options=t,this._leakageMon=this._options?.leakWarningThreshold?new tw(t?.onListenerError??nn,this._options?.leakWarningThreshold??ew):void 0,this._perfMon=this._options?._profName?new ZS(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(t,e,s)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);let l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new rw(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||nn)(c),we.None}if(this._disposed)return we.None;e&&(t=t.bind(e));let i=new ho(t),n;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=sw.create(),n=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof ho?(this._deliveryQueue??=new lw,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._size++;let o=Me(()=>{n?.(),this._removeListener(i)});return s instanceof Ps?s.add(o):Array.isArray(s)&&s.push(o),o},this._event}_removeListener(t){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let e=this._listeners,s=e.indexOf(t);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,e[s]=void 0;let i=this._deliveryQueue.current===this;if(this._size*ow<=e.length){let n=0;for(let o=0;o<e.length;o++)e[o]?e[n++]=e[o]:i&&(this._deliveryQueue.end--,n<this._deliveryQueue.i&&this._deliveryQueue.i--);e.length=n}}_deliver(t,e){if(!t)return;let s=this._options?.onListenerError||nn;if(!s){t.value(e);return}try{t.value(e)}catch(i){s(i)}}_deliverQueue(t){let e=t.current._listeners;for(;t.i<t.end;)this._deliver(e[t.i++],t.value);t.reset()}fire(t){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof ho)this._deliver(this._listeners,t);else{let e=this._deliveryQueue;e.enqueue(this,t,this._listeners.length),this._deliverQueue(e)}this._perfMon?.stop()}hasListeners(){return this._size>0}},lw=class{constructor(){this.i=-1,this.end=0}enqueue(t,e,s){this.i=0,this.end=s,this.current=t,this.value=e}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},Jo=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new ne,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new ne,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(e){return this.mapWindowIdToZoomLevel.get(this.getWindowId(e))??0}setZoomLevel(e,s){if(this.getZoomLevel(s)===e)return;let i=this.getWindowId(s);this.mapWindowIdToZoomLevel.set(i,e),this._onDidChangeZoomLevel.fire(i)}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}setZoomFactor(e,s){this.mapWindowIdToZoomFactor.set(this.getWindowId(s),e)}setFullscreen(e,s){if(this.isFullscreen(s)===e)return;let i=this.getWindowId(s);this.mapWindowIdToFullScreen.set(i,e),this._onDidChangeFullscreen.fire(i)}isFullscreen(e){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(e))}getWindowId(e){return e.vscodeWindowId}};Jo.INSTANCE=new Jo;var ol=Jo;function cw(t,e,s){typeof e=="string"&&(e=t.matchMedia(e)),e.addEventListener("change",s)}ol.INSTANCE.onDidChangeZoomLevel;function dw(t){return ol.INSTANCE.getZoomFactor(t)}ol.INSTANCE.onDidChangeFullscreen;var Mi=typeof navigator=="object"?navigator.userAgent:"",Qo=Mi.indexOf("Firefox")>=0,hw=Mi.indexOf("AppleWebKit")>=0,al=Mi.indexOf("Chrome")>=0,uw=!al&&Mi.indexOf("Safari")>=0;Mi.indexOf("Electron/")>=0;Mi.indexOf("Android")>=0;var uo=!1;if(typeof vs.matchMedia=="function"){let t=vs.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=vs.matchMedia("(display-mode: fullscreen)");uo=t.matches,cw(vs,t,({matches:s})=>{uo&&e.matches||(uo=s)})}var xi="en",Zo=!1,ea=!1,on=!1,Ju=!1,Ur,an=xi,wc=xi,fw,xs,Js=globalThis,Rt;typeof Js.vscode<"u"&&typeof Js.vscode.process<"u"?Rt=Js.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Rt=process);var mw=typeof Rt?.versions?.electron=="string",pw=mw&&Rt?.type==="renderer";if(typeof Rt=="object"){Zo=Rt.platform==="win32",ea=Rt.platform==="darwin",on=Rt.platform==="linux",on&&Rt.env.SNAP&&Rt.env.SNAP_REVISION,Rt.env.CI||Rt.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Ur=xi,an=xi;let t=Rt.env.VSCODE_NLS_CONFIG;if(t)try{let e=JSON.parse(t);Ur=e.userLocale,wc=e.osLocale,an=e.resolvedLanguage||xi,fw=e.languagePack?.translationsConfigFile}catch{}Ju=!0}else typeof navigator=="object"&&!pw?(xs=navigator.userAgent,Zo=xs.indexOf("Windows")>=0,ea=xs.indexOf("Macintosh")>=0,(xs.indexOf("Macintosh")>=0||xs.indexOf("iPad")>=0||xs.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,on=xs.indexOf("Linux")>=0,xs?.indexOf("Mobi")>=0,an=globalThis._VSCODE_NLS_LANGUAGE||xi,Ur=navigator.language.toLowerCase(),wc=Ur):console.error("Unable to resolve platform.");var Qu=Zo,us=ea,gw=on,Vc=Ju,fs=xs,ks=an,_w;(t=>{function e(){return ks}t.value=e;function s(){return ks.length===2?ks==="en":ks.length>=3?ks[0]==="e"&&ks[1]==="n"&&ks[2]==="-":!1}t.isDefaultVariant=s;function i(){return ks==="en"}t.isDefault=i})(_w||={});var xw=typeof Js.postMessage=="function"&&!Js.importScripts;(()=>{if(xw){let t=[];Js.addEventListener("message",s=>{if(s.data&&s.data.vscodeScheduleAsyncWork)for(let i=0,n=t.length;i<n;i++){let o=t[i];if(o.id===s.data.vscodeScheduleAsyncWork){t.splice(i,1),o.callback();return}}});let e=0;return s=>{let i=++e;t.push({id:i,callback:s}),Js.postMessage({vscodeScheduleAsyncWork:i},"*")}}return t=>setTimeout(t)})();var vw=!!(fs&&fs.indexOf("Chrome")>=0);fs&&fs.indexOf("Firefox")>=0;!vw&&fs&&fs.indexOf("Safari")>=0;fs&&fs.indexOf("Edg/")>=0;fs&&fs.indexOf("Android")>=0;var fi=typeof navigator=="object"?navigator:{};Vc||document.queryCommandSupported&&document.queryCommandSupported("copy")||fi&&fi.clipboard&&fi.clipboard.writeText,Vc||fi&&fi.clipboard&&fi.clipboard.readText;var ll=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(t,e){this._keyCodeToStr[t]=e,this._strToKeyCode[e.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}},fo=new ll,Cc=new ll,kc=new ll,bw=new Array(230),Zu;(t=>{function e(l){return fo.keyCodeToStr(l)}t.toString=e;function s(l){return fo.strToKeyCode(l)}t.fromString=s;function i(l){return Cc.keyCodeToStr(l)}t.toUserSettingsUS=i;function n(l){return kc.keyCodeToStr(l)}t.toUserSettingsGeneral=n;function o(l){return Cc.strToKeyCode(l)||kc.strToKeyCode(l)}t.fromUserSettings=o;function a(l){if(l>=98&&l<=113)return null;switch(l){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return fo.keyCodeToStr(l)}t.toElectronAccelerator=a})(Zu||={});var yw=class ef{constructor(e,s,i,n,o){this.ctrlKey=e,this.shiftKey=s,this.altKey=i,this.metaKey=n,this.keyCode=o}equals(e){return e instanceof ef&&this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode}getHashCode(){let e=this.ctrlKey?"1":"0",s=this.shiftKey?"1":"0",i=this.altKey?"1":"0",n=this.metaKey?"1":"0";return`K${e}${s}${i}${n}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new Sw([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},Sw=class{constructor(t){if(t.length===0)throw qS("chords");this.chords=t}getHashCode(){let t="";for(let e=0,s=this.chords.length;e<s;e++)e!==0&&(t+=";"),t+=this.chords[e].getHashCode();return t}equals(t){if(t===null||this.chords.length!==t.chords.length)return!1;for(let e=0;e<this.chords.length;e++)if(!this.chords[e].equals(t.chords[e]))return!1;return!0}};function ww(t){if(t.charCode){let s=String.fromCharCode(t.charCode).toUpperCase();return Zu.fromString(s)}let e=t.keyCode;if(e===3)return 7;if(Qo)switch(e){case 59:return 85;case 60:if(gw)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(us)return 57;break}else if(hw&&(us&&e===93||!us&&e===92))return 57;return bw[e]||0}var Vw=us?256:2048,Cw=512,kw=1024,jw=us?2048:256,jc=class{constructor(t){this._standardKeyboardEventBrand=!0;let e=t;this.browserEvent=e,this.target=e.target,this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,this.altGraphKey=e.getModifierState?.("AltGraph"),this.keyCode=ww(e),this.code=e.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(t){return this._asKeybinding===t}_computeKeybinding(){let t=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode);let e=0;return this.ctrlKey&&(e|=Vw),this.altKey&&(e|=Cw),this.shiftKey&&(e|=kw),this.metaKey&&(e|=jw),e|=t,e}_computeKeyCodeChord(){let t=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode),new yw(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,t)}},Nc=new WeakMap;function Nw(t){if(!t.parent||t.parent===t)return null;try{let e=t.location,s=t.parent.location;if(e.origin!=="null"&&s.origin!=="null"&&e.origin!==s.origin)return null}catch{return null}return t.parent}var Aw=class{static getSameOriginWindowChain(t){let e=Nc.get(t);if(!e){e=[],Nc.set(t,e);let s=t,i;do i=Nw(s),i?e.push({window:new WeakRef(s),iframeElement:s.frameElement||null}):e.push({window:new WeakRef(s),iframeElement:null}),s=i;while(s)}return e.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(t,e){if(!e||t===e)return{top:0,left:0};let s=0,i=0,n=this.getSameOriginWindowChain(t);for(let o of n){let a=o.window.deref();if(s+=a?.scrollY??0,i+=a?.scrollX??0,a===e||!o.iframeElement)break;let l=o.iframeElement.getBoundingClientRect();s+=l.top,i+=l.left}return{top:s,left:i}}},Hr=class{constructor(t,e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=e.button===0,this.middleButton=e.button===1,this.rightButton=e.button===2,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,e.type==="dblclick"&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,typeof e.pageX=="number"?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=e.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let s=Aw.getPositionOfChildWindowRelativeToAncestorWindow(t,e.view);this.posx-=s.left,this.posy-=s.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},Ac=class{constructor(t,e=0,s=0){this.browserEvent=t||null,this.target=t?t.target||t.targetNode||t.srcElement:null,this.deltaY=s,this.deltaX=e;let i=!1;if(al){let n=navigator.userAgent.match(/Chrome\/(\d+)/);i=(n?parseInt(n[1]):123)<=122}if(t){let n=t,o=t,a=t.view?.devicePixelRatio||1;if(typeof n.wheelDeltaY<"u")i?this.deltaY=n.wheelDeltaY/(120*a):this.deltaY=n.wheelDeltaY/120;else if(typeof o.VERTICAL_AXIS<"u"&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if(t.type==="wheel"){let l=t;l.deltaMode===l.DOM_DELTA_LINE?Qo&&!us?this.deltaY=-t.deltaY/3:this.deltaY=-t.deltaY:this.deltaY=-t.deltaY/40}if(typeof n.wheelDeltaX<"u")uw&&Qu?this.deltaX=-(n.wheelDeltaX/120):i?this.deltaX=n.wheelDeltaX/(120*a):this.deltaX=n.wheelDeltaX/120;else if(typeof o.HORIZONTAL_AXIS<"u"&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-t.detail/3;else if(t.type==="wheel"){let l=t;l.deltaMode===l.DOM_DELTA_LINE?Qo&&!us?this.deltaX=-t.deltaX/3:this.deltaX=-t.deltaX:this.deltaX=-t.deltaX/40}this.deltaY===0&&this.deltaX===0&&t.wheelDelta&&(i?this.deltaY=t.wheelDelta/(120*a):this.deltaY=t.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},tf=Object.freeze(function(t,e){let s=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(s)}}}),Ew;(t=>{function e(s){return s===t.None||s===t.Cancelled||s instanceof Iw?!0:!s||typeof s!="object"?!1:typeof s.isCancellationRequested=="boolean"&&typeof s.onCancellationRequested=="function"}t.isCancellationToken=e,t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ct.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:tf})})(Ew||={});var Iw=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?tf:(this._emitter||(this._emitter=new ne),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},cl=class{constructor(t,e){this._isDisposed=!1,this._token=-1,typeof t=="function"&&typeof e=="number"&&this.setIfNotSet(t,e)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(t,e){if(this._isDisposed)throw new Ko("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},e)}setIfNotSet(t,e){if(this._isDisposed)throw new Ko("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},e))}},Tw=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(t,e,s=globalThis){if(this.isDisposed)throw new Ko("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let i=s.setInterval(()=>{t()},e);this.disposable=Me(()=>{s.clearInterval(i),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},Rw;(t=>{async function e(i){let n,o=await Promise.all(i.map(a=>a.then(l=>l,l=>{n||(n=l)})));if(typeof n<"u")throw n;return o}t.settled=e;function s(i){return new Promise(async(n,o)=>{try{await i(n,o)}catch(a){o(a)}})}t.withAsyncBody=s})(Rw||={});var Ec=class Ut{static fromArray(e){return new Ut(s=>{s.emitMany(e)})}static fromPromise(e){return new Ut(async s=>{s.emitMany(await e)})}static fromPromises(e){return new Ut(async s=>{await Promise.all(e.map(async i=>s.emitOne(await i)))})}static merge(e){return new Ut(async s=>{await Promise.all(e.map(async i=>{for await(let n of i)s.emitOne(n)}))})}constructor(e,s){this._state=0,this._results=[],this._error=null,this._onReturn=s,this._onStateChanged=new ne,queueMicrotask(async()=>{let i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e<this._results.length)return{done:!1,value:this._results[e++]};if(this._state===1)return{done:!0,value:void 0};await ct.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,s){return new Ut(async i=>{for await(let n of e)i.emitOne(s(n))})}map(e){return Ut.map(this,e)}static filter(e,s){return new Ut(async i=>{for await(let n of e)s(n)&&i.emitOne(n)})}filter(e){return Ut.filter(this,e)}static coalesce(e){return Ut.filter(e,s=>!!s)}coalesce(){return Ut.coalesce(this)}static async toPromise(e){let s=[];for await(let i of e)s.push(i);return s}toPromise(){return Ut.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};Ec.EMPTY=Ec.fromArray([]);var{getWindow:os,getWindowId:Mw,onDidRegisterWindow:Dw}=(function(){let t=new Map,e={window:vs,disposables:new Ps};t.set(vs.vscodeWindowId,e);let s=new ne,i=new ne,n=new ne;function o(a,l){return(typeof a=="number"?t.get(a):void 0)??(l?e:void 0)}return{onDidRegisterWindow:s.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(a){if(t.has(a.vscodeWindowId))return we.None;let l=new Ps,c={window:a,disposables:l.add(new Ps)};return t.set(a.vscodeWindowId,c),l.add(Me(()=>{t.delete(a.vscodeWindowId),i.fire(a)})),l.add(ve(a,it.BEFORE_UNLOAD,()=>{n.fire(a)})),s.fire(c),l},getWindows(){return t.values()},getWindowsCount(){return t.size},getWindowId(a){return a.vscodeWindowId},hasWindow(a){return t.has(a)},getWindowById:o,getWindow(a){let l=a;if(l?.ownerDocument?.defaultView)return l.ownerDocument.defaultView.window;let c=a;return c?.view?c.view.window:vs},getDocument(a){return os(a).document}}})(),Pw=class{constructor(t,e,s,i){this._node=t,this._type=e,this._handler=s,this._options=i||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function ve(t,e,s,i){return new Pw(t,e,s,i)}var Ic=function(t,e,s,i){return ve(t,e,s,i)},dl,Lw=class extends Tw{constructor(t){super(),this.defaultTarget=t&&os(t)}cancelAndSet(t,e,s){return super.cancelAndSet(t,e,s??this.defaultTarget)}},Tc=class{constructor(t,e=0){this._runner=t,this.priority=e,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(t){nn(t)}}static sort(t,e){return e.priority-t.priority}};(function(){let t=new Map,e=new Map,s=new Map,i=new Map,n=o=>{s.set(o,!1);let a=t.get(o)??[];for(e.set(o,a),t.set(o,[]),i.set(o,!0);a.length>0;)a.sort(Tc.sort),a.shift().execute();i.set(o,!1)};dl=(o,a,l=0)=>{let c=Mw(o),d=new Tc(a,l),u=t.get(c);return u||(u=[],t.set(c,u)),u.push(d),s.get(c)||(s.set(c,!0),o.requestAnimationFrame(()=>n(c))),d}})();function Ow(t){let e=t.getBoundingClientRect(),s=os(t);return{left:e.left+s.scrollX,top:e.top+s.scrollY,width:e.width,height:e.height}}var it={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},Bw=class{constructor(t){this.domNode=t,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(t){let e=kt(t);this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth)}setWidth(t){let e=kt(t);this._width!==e&&(this._width=e,this.domNode.style.width=this._width)}setHeight(t){let e=kt(t);this._height!==e&&(this._height=e,this.domNode.style.height=this._height)}setTop(t){let e=kt(t);this._top!==e&&(this._top=e,this.domNode.style.top=this._top)}setLeft(t){let e=kt(t);this._left!==e&&(this._left=e,this.domNode.style.left=this._left)}setBottom(t){let e=kt(t);this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom)}setRight(t){let e=kt(t);this._right!==e&&(this._right=e,this.domNode.style.right=this._right)}setPaddingTop(t){let e=kt(t);this._paddingTop!==e&&(this._paddingTop=e,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(t){let e=kt(t);this._paddingLeft!==e&&(this._paddingLeft=e,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(t){let e=kt(t);this._paddingBottom!==e&&(this._paddingBottom=e,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(t){let e=kt(t);this._paddingRight!==e&&(this._paddingRight=e,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(t){this._fontFamily!==t&&(this._fontFamily=t,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(t){this._fontWeight!==t&&(this._fontWeight=t,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(t){let e=kt(t);this._fontSize!==e&&(this._fontSize=e,this.domNode.style.fontSize=this._fontSize)}setFontStyle(t){this._fontStyle!==t&&(this._fontStyle=t,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(t){this._fontFeatureSettings!==t&&(this._fontFeatureSettings=t,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(t){this._fontVariationSettings!==t&&(this._fontVariationSettings=t,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(t){this._textDecoration!==t&&(this._textDecoration=t,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(t){let e=kt(t);this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(t){let e=kt(t);this._letterSpacing!==e&&(this._letterSpacing=e,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(t){this._className!==t&&(this._className=t,this.domNode.className=this._className)}toggleClassName(t,e){this.domNode.classList.toggle(t,e),this._className=this.domNode.className}setDisplay(t){this._display!==t&&(this._display=t,this.domNode.style.display=this._display)}setPosition(t){this._position!==t&&(this._position=t,this.domNode.style.position=this._position)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this.domNode.style.visibility=this._visibility)}setColor(t){this._color!==t&&(this._color=t,this.domNode.style.color=this._color)}setBackgroundColor(t){this._backgroundColor!==t&&(this._backgroundColor=t,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(t){this._layerHint!==t&&(this._layerHint=t,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(t){this._boxShadow!==t&&(this._boxShadow=t,this.domNode.style.boxShadow=t)}setContain(t){this._contain!==t&&(this._contain=t,this.domNode.style.contain=this._contain)}setAttribute(t,e){this.domNode.setAttribute(t,e)}removeAttribute(t){this.domNode.removeAttribute(t)}appendChild(t){this.domNode.appendChild(t.domNode)}removeChild(t){this.domNode.removeChild(t.domNode)}};function kt(t){return typeof t=="number"?`${t}px`:t}function rr(t){return new Bw(t)}var sf=class{constructor(){this._hooks=new Ps,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(t,e){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let s=this._onStopCallback;this._onStopCallback=null,t&&s&&s(e)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(t,e,s,i,n){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=i,this._onStopCallback=n;let o=t;try{t.setPointerCapture(e),this._hooks.add(Me(()=>{try{t.releasePointerCapture(e)}catch{}}))}catch{o=os(t)}this._hooks.add(ve(o,it.POINTER_MOVE,a=>{if(a.buttons!==s){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(ve(o,it.POINTER_UP,a=>this.stopMonitoring(!0)))}};function $w(t,e,s){let i=null,n=null;if(typeof s.value=="function"?(i="value",n=s.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof s.get=="function"&&(i="get",n=s.get),!n)throw new Error("not supported");let o=`$memoize$${e}`;s[i]=function(...a){return this.hasOwnProperty(o)||Object.defineProperty(this,o,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,a)}),this[o]}}var is;(t=>(t.Tap="-xterm-gesturetap",t.Change="-xterm-gesturechange",t.Start="-xterm-gesturestart",t.End="-xterm-gesturesend",t.Contextmenu="-xterm-gesturecontextmenu"))(is||={});var Gi=class ut extends we{constructor(){super(),this.dispatched=!1,this.targets=new Sc,this.ignoreTargets=new Sc,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(ct.runAndSubscribe(Dw,({window:e,disposables:s})=>{s.add(ve(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),s.add(ve(e.document,"touchend",i=>this.onTouchEnd(e,i))),s.add(ve(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:vs,disposables:this._store}))}static addTarget(e){if(!ut.isTouchDevice())return we.None;ut.INSTANCE||(ut.INSTANCE=new ut);let s=ut.INSTANCE.targets.push(e);return Me(s)}static ignoreTarget(e){if(!ut.isTouchDevice())return we.None;ut.INSTANCE||(ut.INSTANCE=new ut);let s=ut.INSTANCE.ignoreTargets.push(e);return Me(s)}static isTouchDevice(){return"ontouchstart"in vs||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){let s=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i<n;i++){let o=e.targetTouches.item(i);this.activeTouches[o.identifier]={id:o.identifier,initialTarget:o.target,initialTimeStamp:s,initialPageX:o.pageX,initialPageY:o.pageY,rollingTimestamps:[s],rollingPageX:[o.pageX],rollingPageY:[o.pageY]};let a=this.newGestureEvent(is.Start,o.target);a.pageX=o.pageX,a.pageY=o.pageY,this.dispatchEvent(a)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}onTouchEnd(e,s){let i=Date.now(),n=Object.keys(this.activeTouches).length;for(let o=0,a=s.changedTouches.length;o<a;o++){let l=s.changedTouches.item(o);if(!this.activeTouches.hasOwnProperty(String(l.identifier))){console.warn("move of an UNKNOWN touch",l);continue}let c=this.activeTouches[l.identifier],d=Date.now()-c.initialTimeStamp;if(d<ut.HOLD_DELAY&&Math.abs(c.initialPageX-It(c.rollingPageX))<30&&Math.abs(c.initialPageY-It(c.rollingPageY))<30){let u=this.newGestureEvent(is.Tap,c.initialTarget);u.pageX=It(c.rollingPageX),u.pageY=It(c.rollingPageY),this.dispatchEvent(u)}else if(d>=ut.HOLD_DELAY&&Math.abs(c.initialPageX-It(c.rollingPageX))<30&&Math.abs(c.initialPageY-It(c.rollingPageY))<30){let u=this.newGestureEvent(is.Contextmenu,c.initialTarget);u.pageX=It(c.rollingPageX),u.pageY=It(c.rollingPageY),this.dispatchEvent(u)}else if(n===1){let u=It(c.rollingPageX),h=It(c.rollingPageY),f=It(c.rollingTimestamps)-c.rollingTimestamps[0],m=u-c.rollingPageX[0],p=h-c.rollingPageY[0],g=[...this.targets].filter(_=>c.initialTarget instanceof Node&&_.contains(c.initialTarget));this.inertia(e,g,i,Math.abs(m)/f,m>0?1:-1,u,Math.abs(p)/f,p>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(is.End,c.initialTarget)),delete this.activeTouches[l.identifier]}this.dispatched&&(s.preventDefault(),s.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,s){let i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=s,i.tapCount=0,i}dispatchEvent(e){if(e.type===is.Tap){let s=new Date().getTime(),i=0;s-this._lastSetTapCountTime>ut.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=s,e.tapCount=i}else(e.type===is.Change||e.type===is.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(let i of this.ignoreTargets)if(i.contains(e.initialTarget))return;let s=[];for(let i of this.targets)if(i.contains(e.initialTarget)){let n=0,o=e.initialTarget;for(;o&&o!==i;)n++,o=o.parentElement;s.push([n,i])}s.sort((i,n)=>i[0]-n[0]);for(let[i,n]of s)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,s,i,n,o,a,l,c,d){this.handle=dl(e,()=>{let u=Date.now(),h=u-i,f=0,m=0,p=!0;n+=ut.SCROLL_FRICTION*h,l+=ut.SCROLL_FRICTION*h,n>0&&(p=!1,f=o*n*h),l>0&&(p=!1,m=c*l*h);let g=this.newGestureEvent(is.Change);g.translationX=f,g.translationY=m,s.forEach(_=>_.dispatchEvent(g)),p||this.inertia(e,s,u,n,o,a+f,l,c,d+m)})}onTouchMove(e){let s=Date.now();for(let i=0,n=e.changedTouches.length;i<n;i++){let o=e.changedTouches.item(i);if(!this.activeTouches.hasOwnProperty(String(o.identifier))){console.warn("end of an UNKNOWN touch",o);continue}let a=this.activeTouches[o.identifier],l=this.newGestureEvent(is.Change,a.initialTarget);l.translationX=o.pageX-It(a.rollingPageX),l.translationY=o.pageY-It(a.rollingPageY),l.pageX=o.pageX,l.pageY=o.pageY,this.dispatchEvent(l),a.rollingPageX.length>3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(o.pageX),a.rollingPageY.push(o.pageY),a.rollingTimestamps.push(s)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};Gi.SCROLL_FRICTION=-.005,Gi.HOLD_DELAY=700,Gi.CLEAR_TAP_COUNT_TIME=400,$e([$w],Gi,"isTouchDevice",1);var zw=Gi,hl=class extends we{onclick(t,e){this._register(ve(t,it.CLICK,s=>e(new Hr(os(t),s))))}onmousedown(t,e){this._register(ve(t,it.MOUSE_DOWN,s=>e(new Hr(os(t),s))))}onmouseover(t,e){this._register(ve(t,it.MOUSE_OVER,s=>e(new Hr(os(t),s))))}onmouseleave(t,e){this._register(ve(t,it.MOUSE_LEAVE,s=>e(new Hr(os(t),s))))}onkeydown(t,e){this._register(ve(t,it.KEY_DOWN,s=>e(new jc(s))))}onkeyup(t,e){this._register(ve(t,it.KEY_UP,s=>e(new jc(s))))}oninput(t,e){this._register(ve(t,it.INPUT,e))}onblur(t,e){this._register(ve(t,it.BLUR,e))}onfocus(t,e){this._register(ve(t,it.FOCUS,e))}onchange(t,e){this._register(ve(t,it.CHANGE,e))}ignoreGesture(t){return zw.ignoreTarget(t)}},Rc=11,Fw=class extends hl{constructor(t){super(),this._onActivate=t.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=t.bgWidth+"px",this.bgDomNode.style.height=t.bgHeight+"px",typeof t.top<"u"&&(this.bgDomNode.style.top="0px"),typeof t.left<"u"&&(this.bgDomNode.style.left="0px"),typeof t.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof t.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=t.className,this.domNode.style.position="absolute",this.domNode.style.width=Rc+"px",this.domNode.style.height=Rc+"px",typeof t.top<"u"&&(this.domNode.style.top=t.top+"px"),typeof t.left<"u"&&(this.domNode.style.left=t.left+"px"),typeof t.bottom<"u"&&(this.domNode.style.bottom=t.bottom+"px"),typeof t.right<"u"&&(this.domNode.style.right=t.right+"px"),this._pointerMoveMonitor=this._register(new sf),this._register(Ic(this.bgDomNode,it.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._register(Ic(this.domNode,it.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._pointerdownRepeatTimer=this._register(new Lw),this._pointerdownScheduleRepeatTimer=this._register(new cl)}_arrowPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,os(t))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(e,200),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,s=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),t.preventDefault()}},Uw=class ta{constructor(e,s,i,n,o,a,l){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(s=s|0,i=i|0,n=n|0,o=o|0,a=a|0,l=l|0),this.rawScrollLeft=n,this.rawScrollTop=l,s<0&&(s=0),n+s>i&&(n=i-s),n<0&&(n=0),o<0&&(o=0),l+o>a&&(l=a-o),l<0&&(l=0),this.width=s,this.scrollWidth=i,this.scrollLeft=n,this.height=o,this.scrollHeight=a,this.scrollTop=l}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,s){return new ta(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,s?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,s?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new ta(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,s){let i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,o=this.scrollLeft!==e.scrollLeft,a=this.height!==e.height,l=this.scrollHeight!==e.scrollHeight,c=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:s,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:o,heightChanged:a,scrollHeightChanged:l,scrollTopChanged:c}}},Hw=class extends we{constructor(t){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._smoothScrollDuration=t.smoothScrollDuration,this._scheduleAtNextAnimationFrame=t.scheduleAtNextAnimationFrame,this._state=new Uw(t.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(t){this._smoothScrollDuration=t}validateScrollPosition(t){return this._state.withScrollPosition(t)}getScrollDimensions(){return this._state}setScrollDimensions(t,e){let s=this._state.withScrollDimensions(t,e);this._setState(s,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(t){let e=this._state.withScrollPosition(t);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(e,!1)}setScrollPositionSmooth(t,e){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(t);if(this._smoothScrolling){t={scrollLeft:typeof t.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:t.scrollLeft,scrollTop:typeof t.scrollTop>"u"?this._smoothScrolling.to.scrollTop:t.scrollTop};let s=this._state.withScrollPosition(t);if(this._smoothScrolling.to.scrollLeft===s.scrollLeft&&this._smoothScrolling.to.scrollTop===s.scrollTop)return;let i;e?i=new Dc(this._smoothScrolling.from,s,this._smoothScrolling.startTime,this._smoothScrolling.duration):i=this._smoothScrolling.combine(this._state,s,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=i}else{let s=this._state.withScrollPosition(t);this._smoothScrolling=Dc.start(this._state,s,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let t=this._smoothScrolling.tick(),e=this._state.withScrollPosition(t);if(this._setState(e,!0),!!this._smoothScrolling){if(t.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(t,e){let s=this._state;s.equals(t)||(this._state=t,this._onScroll.fire(this._state.createScrollEvent(s,e)))}},Mc=class{constructor(t,e,s){this.scrollLeft=t,this.scrollTop=e,this.isDone=s}};function mo(t,e){let s=e-t;return function(i){return t+s*qw(i)}}function Ww(t,e,s){return function(i){return i<s?t(i/s):e((i-s)/(1-s))}}var Dc=class sa{constructor(e,s,i,n){this.from=e,this.to=s,this.duration=n,this.startTime=i,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(e,s,i){if(Math.abs(e-s)>2.5*i){let n,o;return e<s?(n=e+.75*i,o=s-.75*i):(n=e-.75*i,o=s+.75*i),Ww(mo(e,n),mo(o,s),.33)}return mo(e,s)}dispose(){this.animationFrameDisposable!==null&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(e){this.to=e.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(e){let s=(e-this.startTime)/this.duration;if(s<1){let i=this.scrollLeft(s),n=this.scrollTop(s);return new Mc(i,n,!1)}return new Mc(this.to.scrollLeft,this.to.scrollTop,!0)}combine(e,s,i){return sa.start(e,s,i)}static start(e,s,i){i=i+10;let n=Date.now()-10;return new sa(e,s,n,i)}};function Kw(t){return Math.pow(t,3)}function qw(t){return 1-Kw(1-t)}var Gw=class extends we{constructor(t,e,s){super(),this._visibility=t,this._visibleClassName=e,this._invisibleClassName=s,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new cl)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this._updateShouldBeVisible())}setShouldBeVisible(t){this._rawShouldBeVisible=t,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){let t=this._applyVisibilitySetting();this._shouldBeVisible!==t&&(this._shouldBeVisible=t,this.ensureVisibility())}setIsNeeded(t){this._isNeeded!==t&&(this._isNeeded=t,this.ensureVisibility())}setDomNode(t){this._domNode=t,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(t){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(t?" fade":"")))}},Yw=140,rf=class extends hl{constructor(t){super(),this._lazyRender=t.lazyRender,this._host=t.host,this._scrollable=t.scrollable,this._scrollByPage=t.scrollByPage,this._scrollbarState=t.scrollbarState,this._visibilityController=this._register(new Gw(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new sf),this._shouldRender=!0,this.domNode=rr(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(ve(this.domNode.domNode,it.POINTER_DOWN,e=>this._domNodePointerDown(e)))}_createArrow(t){let e=this._register(new Fw(t));this.domNode.domNode.appendChild(e.bgDomNode),this.domNode.domNode.appendChild(e.domNode)}_createSlider(t,e,s,i){this.slider=rr(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(t),this.slider.setLeft(e),typeof s=="number"&&this.slider.setWidth(s),typeof i=="number"&&this.slider.setHeight(i),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(ve(this.slider.domNode,it.POINTER_DOWN,n=>{n.button===0&&(n.preventDefault(),this._sliderPointerDown(n))})),this.onclick(this.slider.domNode,n=>{n.leftButton&&n.stopPropagation()})}_onElementSize(t){return this._scrollbarState.setVisibleSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(t){return this._scrollbarState.setScrollSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(t){return this._scrollbarState.setScrollPosition(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(t){t.target===this.domNode.domNode&&this._onPointerDown(t)}delegatePointerDown(t){let e=this.domNode.domNode.getClientRects()[0].top,s=e+this._scrollbarState.getSliderPosition(),i=e+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),n=this._sliderPointerPosition(t);s<=n&&n<=i?t.button===0&&(t.preventDefault(),this._sliderPointerDown(t)):this._onPointerDown(t)}_onPointerDown(t){let e,s;if(t.target===this.domNode.domNode&&typeof t.offsetX=="number"&&typeof t.offsetY=="number")e=t.offsetX,s=t.offsetY;else{let n=Ow(this.domNode.domNode);e=t.pageX-n.left,s=t.pageY-n.top}let i=this._pointerDownRelativePosition(e,s);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(i):this._scrollbarState.getDesiredScrollPositionFromOffset(i)),t.button===0&&(t.preventDefault(),this._sliderPointerDown(t))}_sliderPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=this._sliderPointerPosition(t),s=this._sliderOrthogonalPointerPosition(t),i=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,n=>{let o=this._sliderOrthogonalPointerPosition(n),a=Math.abs(o-s);if(Qu&&a>Yw){this._setDesiredScrollPositionNow(i.getScrollPosition());return}let l=this._sliderPointerPosition(n)-e;this._setDesiredScrollPositionNow(i.getDesiredScrollPositionFromDelta(l))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(t){let e={};this.writeScrollPosition(e,t),this._scrollable.setScrollPositionNow(e)}updateScrollbarSize(t){this._updateScrollbarSize(t),this._scrollbarState.setScrollbarSize(t),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},nf=class ia{constructor(e,s,i,n,o,a){this._scrollbarSize=Math.round(s),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=o,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new ia(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){let s=Math.round(e);return this._visibleSize!==s?(this._visibleSize=s,this._refreshComputedValues(),!0):!1}setScrollSize(e){let s=Math.round(e);return this._scrollSize!==s?(this._scrollSize=s,this._refreshComputedValues(),!0):!1}setScrollPosition(e){let s=Math.round(e);return this._scrollPosition!==s?(this._scrollPosition=s,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,s,i,n,o){let a=Math.max(0,i-e),l=Math.max(0,a-2*s),c=n>0&&n>i;if(!c)return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(l),computedSliderRatio:0,computedSliderPosition:0};let d=Math.round(Math.max(20,Math.floor(i*l/n))),u=(l-d)/(n-i),h=o*u;return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(d),computedSliderRatio:u,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){let e=ia._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;let s=e-this._arrowSize-this._computedSliderSize/2;return Math.round(s/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;let s=e-this._arrowSize,i=this._scrollPosition;return s<this._computedSliderPosition?i-=this._visibleSize:i+=this._visibleSize,i}getDesiredScrollPositionFromDelta(e){if(!this._computedIsNeeded)return 0;let s=this._computedSliderPosition+e;return Math.round(s/this._computedSliderRatio)}},Xw=class extends rf{constructor(t,e,s){let i=t.getScrollDimensions(),n=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new nf(e.horizontalHasArrows?e.arrowSize:0,e.horizontal===2?0:e.horizontalScrollbarSize,e.vertical===2?0:e.verticalScrollbarSize,i.width,i.scrollWidth,n.scrollLeft),visibility:e.horizontal,extraScrollbarClassName:"horizontal",scrollable:t,scrollByPage:e.scrollByPage}),e.horizontalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((e.horizontalScrollbarSize-e.horizontalSliderSize)/2),0,void 0,e.horizontalSliderSize)}_updateSlider(t,e){this.slider.setWidth(t),this.slider.setLeft(e)}_renderDomNode(t,e){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(t.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return t}_sliderPointerPosition(t){return t.pageX}_sliderOrthogonalPointerPosition(t){return t.pageY}_updateScrollbarSize(t){this.slider.setHeight(t)}writeScrollPosition(t,e){t.scrollLeft=e}updateOptions(t){this.updateScrollbarSize(t.horizontal===2?0:t.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._visibilityController.setVisibility(t.horizontal),this._scrollByPage=t.scrollByPage}},Jw=class extends rf{constructor(t,e,s){let i=t.getScrollDimensions(),n=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new nf(e.verticalHasArrows?e.arrowSize:0,e.vertical===2?0:e.verticalScrollbarSize,0,i.height,i.scrollHeight,n.scrollTop),visibility:e.vertical,extraScrollbarClassName:"vertical",scrollable:t,scrollByPage:e.scrollByPage}),e.verticalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((e.verticalScrollbarSize-e.verticalSliderSize)/2),e.verticalSliderSize,void 0)}_updateSlider(t,e){this.slider.setHeight(t),this.slider.setTop(e)}_renderDomNode(t,e){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(t.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return e}_sliderPointerPosition(t){return t.pageY}_sliderOrthogonalPointerPosition(t){return t.pageX}_updateScrollbarSize(t){this.slider.setWidth(t)}writeScrollPosition(t,e){t.scrollTop=e}updateOptions(t){this.updateScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(t.vertical),this._scrollByPage=t.scrollByPage}},Qw=500,Pc=50,Zw=class{constructor(t,e,s){this.timestamp=t,this.deltaX=e,this.deltaY=s,this.score=0}},ra=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let e=1,s=0,i=1,n=this._rear;do{let o=n===this._front?e:Math.pow(2,-i);if(e-=o,s+=this._memory[n].score*o,n===this._front)break;n=(this._capacity+n-1)%this._capacity,i++}while(!0);return s<=.5}acceptStandardWheelEvent(e){if(al){let s=os(e.browserEvent),i=dw(s);this.accept(Date.now(),e.deltaX*i,e.deltaY*i)}else this.accept(Date.now(),e.deltaX,e.deltaY)}accept(e,s,i){let n=null,o=new Zw(e,s,i);this._front===-1&&this._rear===-1?(this._memory[0]=o,this._front=0,this._rear=0):(n=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=o),o.score=this._computeScore(o,n)}_computeScore(e,s){if(Math.abs(e.deltaX)>0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),s){let n=Math.abs(e.deltaX),o=Math.abs(e.deltaY),a=Math.abs(s.deltaX),l=Math.abs(s.deltaY),c=Math.max(Math.min(n,a),1),d=Math.max(Math.min(o,l),1),u=Math.max(n,a),h=Math.max(o,l);u%c===0&&h%d===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};ra.INSTANCE=new ra;var eV=ra,tV=class extends hl{constructor(t,e,s){super(),this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new ne),this.onWillScroll=this._onWillScroll.event,this._options=iV(e),this._scrollable=s,this._register(this._scrollable.onScroll(n=>{this._onWillScroll.fire(n),this._onDidScroll(n),this._onScroll.fire(n)}));let i={onMouseWheel:n=>this._onMouseWheel(n),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new Jw(this._scrollable,this._options,i)),this._horizontalScrollbar=this._register(new Xw(this._scrollable,this._options,i)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(t),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=rr(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=rr(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=rr(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,n=>this._onMouseOver(n)),this.onmouseleave(this._listenOnDomNode,n=>this._onMouseLeave(n)),this._hideTimeout=this._register(new cl),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=Qs(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(t){this._verticalScrollbar.delegatePointerDown(t)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(t){this._scrollable.setScrollDimensions(t,!1)}updateClassName(t){this._options.className=t,us&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(t){typeof t.handleMouseWheel<"u"&&(this._options.handleMouseWheel=t.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof t.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=t.mouseWheelScrollSensitivity),typeof t.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=t.fastScrollSensitivity),typeof t.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=t.scrollPredominantAxis),typeof t.horizontal<"u"&&(this._options.horizontal=t.horizontal),typeof t.vertical<"u"&&(this._options.vertical=t.vertical),typeof t.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=t.horizontalScrollbarSize),typeof t.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=t.verticalScrollbarSize),typeof t.scrollByPage<"u"&&(this._options.scrollByPage=t.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(t){this._revealOnScroll=t}delegateScrollFromMouseWheelEvent(t){this._onMouseWheel(new Ac(t))}_setListeningToMouseWheel(t){if(this._mouseWheelToDispose.length>0!==t&&(this._mouseWheelToDispose=Qs(this._mouseWheelToDispose),t)){let e=s=>{this._onMouseWheel(new Ac(s))};this._mouseWheelToDispose.push(ve(this._listenOnDomNode,it.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(t){if(t.browserEvent?.defaultPrevented)return;let e=eV.INSTANCE;e.acceptStandardWheelEvent(t);let s=!1;if(t.deltaY||t.deltaX){let n=t.deltaY*this._options.mouseWheelScrollSensitivity,o=t.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&o+n===0?o=n=0:Math.abs(n)>=Math.abs(o)?o=0:n=0),this._options.flipAxes&&([n,o]=[o,n]);let a=!us&&t.browserEvent&&t.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!o&&(o=n,n=0),t.browserEvent&&t.browserEvent.altKey&&(o=o*this._options.fastScrollSensitivity,n=n*this._options.fastScrollSensitivity);let l=this._scrollable.getFutureScrollPosition(),c={};if(n){let d=Pc*n,u=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,u)}if(o){let d=Pc*o,u=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,u)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&e.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),s=!0)}let i=s;!i&&this._options.alwaysConsumeMouseWheel&&(i=!0),!i&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(i=!0),i&&(t.preventDefault(),t.stopPropagation())}_onDidScroll(t){this._shouldRender=this._horizontalScrollbar.onDidScroll(t)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(t)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let t=this._scrollable.getCurrentScrollPosition(),e=t.scrollTop>0,s=t.scrollLeft>0,i=s?" left":"",n=e?" top":"",o=s||e?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${i}`),this._topShadowDomNode.setClassName(`shadow${n}`),this._topLeftShadowDomNode.setClassName(`shadow${o}${n}${i}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(t){this._mouseIsOver=!1,this._hide()}_onMouseOver(t){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),Qw)}},sV=class extends tV{constructor(t,e,s){super(t,e,s)}setScrollPosition(t){t.reuseAnimation?this._scrollable.setScrollPositionSmooth(t,t.reuseAnimation):this._scrollable.setScrollPositionNow(t)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function iV(t){let e={lazyRender:typeof t.lazyRender<"u"?t.lazyRender:!1,className:typeof t.className<"u"?t.className:"",useShadows:typeof t.useShadows<"u"?t.useShadows:!0,handleMouseWheel:typeof t.handleMouseWheel<"u"?t.handleMouseWheel:!0,flipAxes:typeof t.flipAxes<"u"?t.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof t.consumeMouseWheelIfScrollbarIsNeeded<"u"?t.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof t.alwaysConsumeMouseWheel<"u"?t.alwaysConsumeMouseWheel:!1,scrollYToX:typeof t.scrollYToX<"u"?t.scrollYToX:!1,mouseWheelScrollSensitivity:typeof t.mouseWheelScrollSensitivity<"u"?t.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof t.fastScrollSensitivity<"u"?t.fastScrollSensitivity:5,scrollPredominantAxis:typeof t.scrollPredominantAxis<"u"?t.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof t.mouseWheelSmoothScroll<"u"?t.mouseWheelSmoothScroll:!0,arrowSize:typeof t.arrowSize<"u"?t.arrowSize:11,listenOnDomNode:typeof t.listenOnDomNode<"u"?t.listenOnDomNode:null,horizontal:typeof t.horizontal<"u"?t.horizontal:1,horizontalScrollbarSize:typeof t.horizontalScrollbarSize<"u"?t.horizontalScrollbarSize:10,horizontalSliderSize:typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:0,horizontalHasArrows:typeof t.horizontalHasArrows<"u"?t.horizontalHasArrows:!1,vertical:typeof t.vertical<"u"?t.vertical:1,verticalScrollbarSize:typeof t.verticalScrollbarSize<"u"?t.verticalScrollbarSize:10,verticalHasArrows:typeof t.verticalHasArrows<"u"?t.verticalHasArrows:!1,verticalSliderSize:typeof t.verticalSliderSize<"u"?t.verticalSliderSize:0,scrollByPage:typeof t.scrollByPage<"u"?t.scrollByPage:!1};return e.horizontalSliderSize=typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof t.verticalSliderSize<"u"?t.verticalSliderSize:e.verticalScrollbarSize,us&&(e.className+=" mac"),e}var na=class extends we{constructor(t,e,s,i,n,o,a,l){super(),this._bufferService=s,this._optionsService=a,this._renderService=l,this._onRequestScrollLines=this._register(new ne),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let c=this._register(new Hw({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:d=>dl(i.window,d)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{c.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new sV(e,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},c)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(n.onProtocolChange(d=>{this._scrollableElement.updateOptions({handleMouseWheel:!(d&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(ct.runAndSubscribe(o.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=o.colors.background.css})),t.appendChild(this._scrollableElement.getDomNode()),this._register(Me(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=i.mainDocument.createElement("style"),e.appendChild(this._styleElement),this._register(Me(()=>this._styleElement.remove())),this._register(ct.runAndSubscribe(o.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${o.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${o.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${o.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
722
|
-
`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(d=>this._handleScroll(d)))}scrollLines(t){let e=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:e.scrollTop+t*this._renderService.dimensions.css.cell.height})}scrollToLine(t,e){e&&(this._latestYDisp=t),this._scrollableElement.setScrollPosition({reuseAnimation:!e,scrollTop:t*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(t){t!==void 0&&(this._latestYDisp=t),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(t=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,t!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:t*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(t){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let e=Math.round(t.scrollTop/this._renderService.dimensions.css.cell.height),s=e-this._bufferService.buffer.ydisp;s!==0&&(this._latestYDisp=e,this._onRequestScrollLines.fire(s)),this._isHandlingScroll=!1}};na=$e([le(2,wt),le(3,ys),le(4,Ou),le(5,Ri),le(6,Vt),le(7,Ss)],na);var oa=class extends we{constructor(t,e,s,i,n){super(),this._screenElement=t,this._bufferService=e,this._coreBrowserService=s,this._decorationService=i,this._renderService=n,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(o=>this._removeDecoration(o))),this._register(Me(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let t of this._decorationService.decorations)this._renderDecoration(t);this._dimensionsChanged=!1}_renderDecoration(t){this._refreshStyle(t),this._dimensionsChanged&&this._refreshXPosition(t)}_createElement(t){let e=this._coreBrowserService.mainDocument.createElement("div");e.classList.add("xterm-decoration"),e.classList.toggle("xterm-decoration-top-layer",t?.options?.layer==="top"),e.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,e.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,e.style.top=`${(t.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,e.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let s=t.options.x??0;return s&&s>this._bufferService.cols&&(e.style.display="none"),this._refreshXPosition(t,e),e}_refreshStyle(t){let e=t.marker.line-this._bufferService.buffers.active.ydisp;if(e<0||e>=this._bufferService.rows)t.element&&(t.element.style.display="none",t.onRenderEmitter.fire(t.element));else{let s=this._decorationElements.get(t);s||(s=this._createElement(t),t.element=s,this._decorationElements.set(t,s),this._container.appendChild(s),t.onDispose(()=>{this._decorationElements.delete(t),s.remove()})),s.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(s.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,s.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,s.style.top=`${e*this._renderService.dimensions.css.cell.height}px`,s.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),t.onRenderEmitter.fire(s)}}_refreshXPosition(t,e=t.element){if(!e)return;let s=t.options.x??0;(t.options.anchor||"left")==="right"?e.style.right=s?`${s*this._renderService.dimensions.css.cell.width}px`:"":e.style.left=s?`${s*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(t){this._decorationElements.get(t)?.remove(),this._decorationElements.delete(t),t.dispose()}};oa=$e([le(1,wt),le(2,ys),le(3,Er),le(4,Ss)],oa);var rV=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(t){if(t.options.overviewRulerOptions){for(let e of this._zones)if(e.color===t.options.overviewRulerOptions.color&&e.position===t.options.overviewRulerOptions.position){if(this._lineIntersectsZone(e,t.marker.line))return;if(this._lineAdjacentToZone(e,t.marker.line,t.options.overviewRulerOptions.position)){this._addLineToZone(e,t.marker.line);return}}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=t.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=t.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=t.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=t.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:t.options.overviewRulerOptions.color,position:t.options.overviewRulerOptions.position,startBufferLine:t.marker.line,endBufferLine:t.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(t){this._linePadding=t}_lineIntersectsZone(t,e){return e>=t.startBufferLine&&e<=t.endBufferLine}_lineAdjacentToZone(t,e,s){return e>=t.startBufferLine-this._linePadding[s||"full"]&&e<=t.endBufferLine+this._linePadding[s||"full"]}_addLineToZone(t,e){t.startBufferLine=Math.min(t.startBufferLine,e),t.endBufferLine=Math.max(t.endBufferLine,e)}},ts={full:0,left:0,center:0,right:0},js={full:0,left:0,center:0,right:0},$i={full:0,left:0,center:0,right:0},bn=class extends we{constructor(t,e,s,i,n,o,a,l){super(),this._viewportElement=t,this._screenElement=e,this._bufferService=s,this._decorationService=i,this._renderService=n,this._optionsService=o,this._themeService=a,this._coreBrowserService=l,this._colorZoneStore=new rV,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(Me(()=>this._canvas?.remove()));let c=this._canvas.getContext("2d");if(c)this._ctx=c;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let t=Math.floor((this._canvas.width-1)/3),e=Math.ceil((this._canvas.width-1)/3);js.full=this._canvas.width,js.left=t,js.center=e,js.right=t,this._refreshDrawHeightConstants(),$i.full=1,$i.left=1,$i.center=1+js.left,$i.right=1+js.left+js.center}_refreshDrawHeightConstants(){ts.full=Math.round(2*this._coreBrowserService.dpr);let t=this._canvas.height/this._bufferService.buffer.lines.length,e=Math.round(Math.max(Math.min(t,12),6)*this._coreBrowserService.dpr);ts.left=e,ts.center=e,ts.right=e}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let e of this._decorationService.decorations)this._colorZoneStore.addDecoration(e);this._ctx.lineWidth=1,this._renderRulerOutline();let t=this._colorZoneStore.zones;for(let e of t)e.position!=="full"&&this._renderColorZone(e);for(let e of t)e.position==="full"&&this._renderColorZone(e);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(t){this._ctx.fillStyle=t.color,this._ctx.fillRect($i[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-ts[t.position||"full"]/2),js[t.position||"full"],Math.round((this._canvas.height-1)*((t.endBufferLine-t.startBufferLine)/this._bufferService.buffers.active.lines.length)+ts[t.position||"full"]))}_queueRefresh(t,e){this._shouldUpdateDimensions=t||this._shouldUpdateDimensions,this._shouldUpdateAnchor=e||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};bn=$e([le(2,wt),le(3,Er),le(4,Ss),le(5,Vt),le(6,Ri),le(7,ys)],bn);var Q;(t=>(t.NUL="\0",t.SOH="",t.STX="",t.ETX="",t.EOT="",t.ENQ="",t.ACK="",t.BEL="\x07",t.BS="\b",t.HT=" ",t.LF=`
|
|
723
|
-
`,t.VT="\v",t.FF="\f",t.CR="\r",t.SO="",t.SI="",t.DLE="",t.DC1="",t.DC2="",t.DC3="",t.DC4="",t.NAK="",t.SYN="",t.ETB="",t.CAN="",t.EM="",t.SUB="",t.ESC="\x1B",t.FS="",t.GS="",t.RS="",t.US="",t.SP=" ",t.DEL=""))(Q||={});var ln;(t=>(t.PAD="",t.HOP="",t.BPH="",t.NBH="",t.IND="",t.NEL="
",t.SSA="",t.ESA="",t.HTS="",t.HTJ="",t.VTS="",t.PLD="",t.PLU="",t.RI="",t.SS2="",t.SS3="",t.DCS="",t.PU1="",t.PU2="",t.STS="",t.CCH="",t.MW="",t.SPA="",t.EPA="",t.SOS="",t.SGCI="",t.SCI="",t.CSI="",t.ST="",t.OSC="",t.PM="",t.APC=""))(ln||={});var of;(t=>t.ST=`${Q.ESC}\\`)(of||={});var aa=class{constructor(t,e,s,i,n,o){this._textarea=t,this._compositionView=e,this._bufferService=s,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(t){this._compositionView.textContent=t.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(t){if(this._isComposing||this._isSendingComposition){if(t.keyCode===20||t.keyCode===229||t.keyCode===16||t.keyCode===17||t.keyCode===18)return!1;this._finalizeComposition(!1)}return t.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(t){if(this._compositionView.classList.remove("active"),this._isComposing=!1,t){let e={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let s;e.start+=this._dataAlreadySent.length,this._isComposing?s=this._textarea.value.substring(e.start,this._compositionPosition.start):s=this._textarea.value.substring(e.start),s.length>0&&this._coreService.triggerDataEvent(s,!0)}},0)}else{this._isSendingComposition=!1;let e=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(e,!0)}}_handleAnyTextareaChanges(){let t=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let e=this._textarea.value,s=e.replace(t,"");this._dataAlreadySent=s,e.length>t.length?this._coreService.triggerDataEvent(s,!0):e.length<t.length?this._coreService.triggerDataEvent(`${Q.DEL}`,!0):e.length===t.length&&e!==t&&this._coreService.triggerDataEvent(e,!0)}},0)}updateCompositionElements(t){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let e=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),s=this._renderService.dimensions.css.cell.height,i=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,n=e*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=n+"px",this._compositionView.style.top=i+"px",this._compositionView.style.height=s+"px",this._compositionView.style.lineHeight=s+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let o=this._compositionView.getBoundingClientRect();this._textarea.style.left=n+"px",this._textarea.style.top=i+"px",this._textarea.style.width=Math.max(o.width,1)+"px",this._textarea.style.height=Math.max(o.height,1)+"px",this._textarea.style.lineHeight=o.height+"px"}t||setTimeout(()=>this.updateCompositionElements(!0),0)}}};aa=$e([le(2,wt),le(3,Vt),le(4,ai),le(5,Ss)],aa);var rt=0,nt=0,ot=0,Be=0,Lc={css:"#00000000",rgba:0},Ke;(t=>{function e(n,o,a,l){return l!==void 0?`#${Ks(n)}${Ks(o)}${Ks(a)}${Ks(l)}`:`#${Ks(n)}${Ks(o)}${Ks(a)}`}t.toCss=e;function s(n,o,a,l=255){return(n<<24|o<<16|a<<8|l)>>>0}t.toRgba=s;function i(n,o,a,l){return{css:t.toCss(n,o,a,l),rgba:t.toRgba(n,o,a,l)}}t.toColor=i})(Ke||={});var Te;(t=>{function e(c,d){if(Be=(d.rgba&255)/255,Be===1)return{css:d.css,rgba:d.rgba};let u=d.rgba>>24&255,h=d.rgba>>16&255,f=d.rgba>>8&255,m=c.rgba>>24&255,p=c.rgba>>16&255,g=c.rgba>>8&255;rt=m+Math.round((u-m)*Be),nt=p+Math.round((h-p)*Be),ot=g+Math.round((f-g)*Be);let _=Ke.toCss(rt,nt,ot),v=Ke.toRgba(rt,nt,ot);return{css:_,rgba:v}}t.blend=e;function s(c){return(c.rgba&255)===255}t.isOpaque=s;function i(c,d,u){let h=cn.ensureContrastRatio(c.rgba,d.rgba,u);if(h)return Ke.toColor(h>>24&255,h>>16&255,h>>8&255)}t.ensureContrastRatio=i;function n(c){let d=(c.rgba|255)>>>0;return[rt,nt,ot]=cn.toChannels(d),{css:Ke.toCss(rt,nt,ot),rgba:d}}t.opaque=n;function o(c,d){return Be=Math.round(d*255),[rt,nt,ot]=cn.toChannels(c.rgba),{css:Ke.toCss(rt,nt,ot,Be),rgba:Ke.toRgba(rt,nt,ot,Be)}}t.opacity=o;function a(c,d){return Be=c.rgba&255,o(c,Be*d/255)}t.multiplyOpacity=a;function l(c){return[c.rgba>>24&255,c.rgba>>16&255,c.rgba>>8&255]}t.toColorRGB=l})(Te||={});var Le;(t=>{let e,s;try{let n=document.createElement("canvas");n.width=1,n.height=1;let o=n.getContext("2d",{willReadFrequently:!0});o&&(e=o,e.globalCompositeOperation="copy",s=e.createLinearGradient(0,0,1,1))}catch{}function i(n){if(n.match(/#[\da-f]{3,8}/i))switch(n.length){case 4:return rt=parseInt(n.slice(1,2).repeat(2),16),nt=parseInt(n.slice(2,3).repeat(2),16),ot=parseInt(n.slice(3,4).repeat(2),16),Ke.toColor(rt,nt,ot);case 5:return rt=parseInt(n.slice(1,2).repeat(2),16),nt=parseInt(n.slice(2,3).repeat(2),16),ot=parseInt(n.slice(3,4).repeat(2),16),Be=parseInt(n.slice(4,5).repeat(2),16),Ke.toColor(rt,nt,ot,Be);case 7:return{css:n,rgba:(parseInt(n.slice(1),16)<<8|255)>>>0};case 9:return{css:n,rgba:parseInt(n.slice(1),16)>>>0}}let o=n.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(o)return rt=parseInt(o[1]),nt=parseInt(o[2]),ot=parseInt(o[3]),Be=Math.round((o[5]===void 0?1:parseFloat(o[5]))*255),Ke.toColor(rt,nt,ot,Be);if(!e||!s)throw new Error("css.toColor: Unsupported css format");if(e.fillStyle=s,e.fillStyle=n,typeof e.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(e.fillRect(0,0,1,1),[rt,nt,ot,Be]=e.getImageData(0,0,1,1).data,Be!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:Ke.toRgba(rt,nt,ot,Be),css:n}}t.toColor=i})(Le||={});var mt;(t=>{function e(i){return s(i>>16&255,i>>8&255,i&255)}t.relativeLuminance=e;function s(i,n,o){let a=i/255,l=n/255,c=o/255,d=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),u=l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4),h=c<=.03928?c/12.92:Math.pow((c+.055)/1.055,2.4);return d*.2126+u*.7152+h*.0722}t.relativeLuminance2=s})(mt||={});var cn;(t=>{function e(a,l){if(Be=(l&255)/255,Be===1)return l;let c=l>>24&255,d=l>>16&255,u=l>>8&255,h=a>>24&255,f=a>>16&255,m=a>>8&255;return rt=h+Math.round((c-h)*Be),nt=f+Math.round((d-f)*Be),ot=m+Math.round((u-m)*Be),Ke.toRgba(rt,nt,ot)}t.blend=e;function s(a,l,c){let d=mt.relativeLuminance(a>>8),u=mt.relativeLuminance(l>>8);if(_s(d,u)<c){if(u<d){let m=i(a,l,c),p=_s(d,mt.relativeLuminance(m>>8));if(p<c){let g=n(a,l,c),_=_s(d,mt.relativeLuminance(g>>8));return p>_?m:g}return m}let h=n(a,l,c),f=_s(d,mt.relativeLuminance(h>>8));if(f<c){let m=i(a,l,c),p=_s(d,mt.relativeLuminance(m>>8));return f>p?h:m}return h}}t.ensureContrastRatio=s;function i(a,l,c){let d=a>>24&255,u=a>>16&255,h=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));for(;g<c&&(f>0||m>0||p>0);)f-=Math.max(0,Math.ceil(f*.1)),m-=Math.max(0,Math.ceil(m*.1)),p-=Math.max(0,Math.ceil(p*.1)),g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));return(f<<24|m<<16|p<<8|255)>>>0}t.reduceLuminance=i;function n(a,l,c){let d=a>>24&255,u=a>>16&255,h=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));for(;g<c&&(f<255||m<255||p<255);)f=Math.min(255,f+Math.ceil((255-f)*.1)),m=Math.min(255,m+Math.ceil((255-m)*.1)),p=Math.min(255,p+Math.ceil((255-p)*.1)),g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));return(f<<24|m<<16|p<<8|255)>>>0}t.increaseLuminance=n;function o(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}t.toChannels=o})(cn||={});function Ks(t){let e=t.toString(16);return e.length<2?"0"+e:e}function _s(t,e){return t<e?(e+.05)/(t+.05):(t+.05)/(e+.05)}var nV=class extends Ar{constructor(t,e,s){super(),this.content=0,this.combinedData="",this.fg=t.fg,this.bg=t.bg,this.combinedData=e,this._width=s}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(t){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},yn=class{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Kt}register(t){let e={id:this._nextCharacterJoinerId++,handler:t};return this._characterJoiners.push(e),e.id}deregister(t){for(let e=0;e<this._characterJoiners.length;e++)if(this._characterJoiners[e].id===t)return this._characterJoiners.splice(e,1),!0;return!1}getJoinedCharacters(t){if(this._characterJoiners.length===0)return[];let e=this._bufferService.buffer.lines.get(t);if(!e||e.length===0)return[];let s=[],i=e.translateToString(!0),n=0,o=0,a=0,l=e.getFg(0),c=e.getBg(0);for(let d=0;d<e.getTrimmedLength();d++)if(e.loadCell(d,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==l||this._workCell.bg!==c){if(d-n>1){let u=this._getJoinedRanges(i,a,o,e,n);for(let h=0;h<u.length;h++)s.push(u[h])}n=d,a=o,l=this._workCell.fg,c=this._workCell.bg}o+=this._workCell.getChars().length||Is.length}if(this._bufferService.cols-n>1){let d=this._getJoinedRanges(i,a,o,e,n);for(let u=0;u<d.length;u++)s.push(d[u])}return s}_getJoinedRanges(t,e,s,i,n){let o=t.substring(e,s),a=[];try{a=this._characterJoiners[0].handler(o)}catch(l){console.error(l)}for(let l=1;l<this._characterJoiners.length;l++)try{let c=this._characterJoiners[l].handler(o);for(let d=0;d<c.length;d++)yn._mergeRanges(a,c[d])}catch(c){console.error(c)}return this._stringRangesToCellRanges(a,i,n),a}_stringRangesToCellRanges(t,e,s){let i=0,n=!1,o=0,a=t[i];if(a){for(let l=s;l<this._bufferService.cols;l++){let c=e.getWidth(l),d=e.getString(l).length||Is.length;if(c!==0){if(!n&&a[0]<=o&&(a[0]=l,n=!0),a[1]<=o){if(a[1]=l,a=t[++i],!a)break;a[0]<=o?(a[0]=l,n=!0):n=!1}o+=d}}a&&(a[1]=this._bufferService.cols)}}static _mergeRanges(t,e){let s=!1;for(let i=0;i<t.length;i++){let n=t[i];if(s){if(e[1]<=n[0])return t[i-1][1]=e[1],t;if(e[1]<=n[1])return t[i-1][1]=Math.max(e[1],n[1]),t.splice(i,1),t;t.splice(i,1),i--}else{if(e[1]<=n[0])return t.splice(i,0,e),t;if(e[1]<=n[1])return n[0]=Math.min(e[0],n[0]),t;e[0]<n[1]&&(n[0]=Math.min(e[0],n[0]),s=!0);continue}}return s?t[t.length-1][1]=e[1]:t.push(e),t}};yn=$e([le(0,wt)],yn);function oV(t){return 57508<=t&&t<=57558}function aV(t){return 9472<=t&&t<=9631}function lV(t){return oV(t)||aV(t)}function cV(){return{css:{canvas:Wr(),cell:Wr()},device:{canvas:Wr(),cell:Wr(),char:{width:0,height:0,left:0,top:0}}}}function Wr(){return{width:0,height:0}}var la=class{constructor(t,e,s,i,n,o,a){this._document=t,this._characterJoinerService=e,this._optionsService=s,this._coreBrowserService=i,this._coreService=n,this._decorationService=o,this._themeService=a,this._workCell=new Kt,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(t,e,s){this._selectionStart=t,this._selectionEnd=e,this._columnSelectMode=s}createRow(t,e,s,i,n,o,a,l,c,d,u){let h=[],f=this._characterJoinerService.getJoinedCharacters(e),m=this._themeService.colors,p=t.getNoBgTrimmedLength();s&&p<o+1&&(p=o+1);let g,_=0,v="",x=0,b=0,y=0,V=0,C=!1,S=0,w=!1,k=0,T=0,M=[],I=d!==-1&&u!==-1;for(let E=0;E<p;E++){t.loadCell(E,this._workCell);let N=this._workCell.getWidth();if(N===0)continue;let A=!1,D=E>=T,L=E,R=this._workCell;if(f.length>0&&E===f[0][0]&&D){let J=f.shift(),ae=this._isCellInSelection(J[0],e);for(x=J[0]+1;x<J[1];x++)D&&=ae===this._isCellInSelection(x,e);D&&=!s||o<J[0]||o>=J[1],D?(A=!0,R=new nV(this._workCell,t.translateToString(!0,J[0],J[1]),J[1]-J[0]),L=J[1]-1,N=R.getWidth()):T=J[1]}let P=this._isCellInSelection(E,e),O=s&&E===o,z=I&&E>=d&&E<=u,$=!1;this._decorationService.forEachDecorationAtCell(E,e,void 0,J=>{$=!0});let q=R.getChars()||Is;if(q===" "&&(R.isUnderline()||R.isOverline())&&(q=" "),k=N*l-c.get(q,R.isBold(),R.isItalic()),!g)g=this._document.createElement("span");else if(_&&(P&&w||!P&&!w&&R.bg===b)&&(P&&w&&m.selectionForeground||R.fg===y)&&R.extended.ext===V&&z===C&&k===S&&!O&&!A&&!$&&D){R.isInvisible()?v+=Is:v+=q,_++;continue}else _&&(g.textContent=v),g=this._document.createElement("span"),_=0,v="";if(b=R.bg,y=R.fg,V=R.extended.ext,C=z,S=k,w=P,A&&o>=E&&o<=L&&(o=E),!this._coreService.isCursorHidden&&O&&this._coreService.isCursorInitialized){if(M.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&M.push("xterm-cursor-blink"),M.push(i==="bar"?"xterm-cursor-bar":i==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(n)switch(n){case"outline":M.push("xterm-cursor-outline");break;case"block":M.push("xterm-cursor-block");break;case"bar":M.push("xterm-cursor-bar");break;case"underline":M.push("xterm-cursor-underline");break}}if(R.isBold()&&M.push("xterm-bold"),R.isItalic()&&M.push("xterm-italic"),R.isDim()&&M.push("xterm-dim"),R.isInvisible()?v=Is:v=R.getChars()||Is,R.isUnderline()&&(M.push(`xterm-underline-${R.extended.underlineStyle}`),v===" "&&(v=" "),!R.isUnderlineColorDefault()))if(R.isUnderlineColorRGB())g.style.textDecorationColor=`rgb(${Ar.toColorRGB(R.getUnderlineColor()).join(",")})`;else{let J=R.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&R.isBold()&&J<8&&(J+=8),g.style.textDecorationColor=m.ansi[J].css}R.isOverline()&&(M.push("xterm-overline"),v===" "&&(v=" ")),R.isStrikethrough()&&M.push("xterm-strikethrough"),z&&(g.style.textDecoration="underline");let F=R.getFgColor(),W=R.getFgColorMode(),H=R.getBgColor(),U=R.getBgColorMode(),X=!!R.isInverse();if(X){let J=F;F=H,H=J;let ae=W;W=U,U=ae}let K,G,ie=!1;this._decorationService.forEachDecorationAtCell(E,e,void 0,J=>{J.options.layer!=="top"&&ie||(J.backgroundColorRGB&&(U=50331648,H=J.backgroundColorRGB.rgba>>8&16777215,K=J.backgroundColorRGB),J.foregroundColorRGB&&(W=50331648,F=J.foregroundColorRGB.rgba>>8&16777215,G=J.foregroundColorRGB),ie=J.options.layer==="top")}),!ie&&P&&(K=this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque,H=K.rgba>>8&16777215,U=50331648,ie=!0,m.selectionForeground&&(W=50331648,F=m.selectionForeground.rgba>>8&16777215,G=m.selectionForeground)),ie&&M.push("xterm-decoration-top");let te;switch(U){case 16777216:case 33554432:te=m.ansi[H],M.push(`xterm-bg-${H}`);break;case 50331648:te=Ke.toColor(H>>16,H>>8&255,H&255),this._addStyle(g,`background-color:#${Oc((H>>>0).toString(16),"0",6)}`);break;default:X?(te=m.foreground,M.push("xterm-bg-257")):te=m.background}switch(K||R.isDim()&&(K=Te.multiplyOpacity(te,.5)),W){case 16777216:case 33554432:R.isBold()&&F<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(F+=8),this._applyMinimumContrast(g,te,m.ansi[F],R,K,void 0)||M.push(`xterm-fg-${F}`);break;case 50331648:let J=Ke.toColor(F>>16&255,F>>8&255,F&255);this._applyMinimumContrast(g,te,J,R,K,G)||this._addStyle(g,`color:#${Oc(F.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(g,te,m.foreground,R,K,G)||X&&M.push("xterm-fg-257")}M.length&&(g.className=M.join(" "),M.length=0),!O&&!A&&!$&&D?_++:g.textContent=v,k!==this.defaultSpacing&&(g.style.letterSpacing=`${k}px`),h.push(g),E=L}return g&&_&&(g.textContent=v),h}_applyMinimumContrast(t,e,s,i,n,o){if(this._optionsService.rawOptions.minimumContrastRatio===1||lV(i.getCode()))return!1;let a=this._getContrastCache(i),l;if(!n&&!o&&(l=a.getColor(e.rgba,s.rgba)),l===void 0){let c=this._optionsService.rawOptions.minimumContrastRatio/(i.isDim()?2:1);l=Te.ensureContrastRatio(n||e,o||s,c),a.setColor((n||e).rgba,(o||s).rgba,l??null)}return l?(this._addStyle(t,`color:${l.css}`),!0):!1}_getContrastCache(t){return t.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(t,e){t.setAttribute("style",`${t.getAttribute("style")||""}${e};`)}_isCellInSelection(t,e){let s=this._selectionStart,i=this._selectionEnd;return!s||!i?!1:this._columnSelectMode?s[0]<=i[0]?t>=s[0]&&e>=s[1]&&t<i[0]&&e<=i[1]:t<s[0]&&e>=s[1]&&t>=i[0]&&e<=i[1]:e>s[1]&&e<i[1]||s[1]===i[1]&&e===s[1]&&t>=s[0]&&t<i[0]||s[1]<i[1]&&e===i[1]&&t<i[0]||s[1]<i[1]&&e===s[1]&&t>=s[0]}};la=$e([le(1,zu),le(2,Vt),le(3,ys),le(4,ai),le(5,Er),le(6,Ri)],la);function Oc(t,e,s){for(;t.length<s;)t=e+t;return t}var dV=class{constructor(t,e){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=t.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let s=t.createElement("span");s.classList.add("xterm-char-measure-element");let i=t.createElement("span");i.classList.add("xterm-char-measure-element"),i.style.fontWeight="bold";let n=t.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontStyle="italic";let o=t.createElement("span");o.classList.add("xterm-char-measure-element"),o.style.fontWeight="bold",o.style.fontStyle="italic",this._measureElements=[s,i,n,o],this._container.appendChild(s),this._container.appendChild(i),this._container.appendChild(n),this._container.appendChild(o),e.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(t,e,s,i){t===this._font&&e===this._fontSize&&s===this._weight&&i===this._weightBold||(this._font=t,this._fontSize=e,this._weight=s,this._weightBold=i,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${s}`,this._measureElements[1].style.fontWeight=`${i}`,this._measureElements[2].style.fontWeight=`${s}`,this._measureElements[3].style.fontWeight=`${i}`,this.clear())}get(t,e,s){let i=0;if(!e&&!s&&t.length===1&&(i=t.charCodeAt(0))<256){if(this._flat[i]!==-9999)return this._flat[i];let a=this._measure(t,0);return a>0&&(this._flat[i]=a),a}let n=t;e&&(n+="B"),s&&(n+="I");let o=this._holey.get(n);if(o===void 0){let a=0;e&&(a|=1),s&&(a|=2),o=this._measure(t,a),o>0&&this._holey.set(n,o)}return o}_measure(t,e){let s=this._measureElements[e];return s.textContent=t.repeat(32),s.offsetWidth/32}},hV=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(t,e,s,i=!1){if(this.selectionStart=e,this.selectionEnd=s,!e||!s||e[0]===s[0]&&e[1]===s[1]){this.clear();return}let n=t.buffers.active.ydisp,o=e[1]-n,a=s[1]-n,l=Math.max(o,0),c=Math.min(a,t.rows-1);if(l>=t.rows||c<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=i,this.viewportStartRow=o,this.viewportEndRow=a,this.viewportCappedStartRow=l,this.viewportCappedEndRow=c,this.startCol=e[0],this.endCol=s[0]}isCellSelected(t,e,s){return this.hasSelection?(s-=t.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?e>=this.startCol&&s>=this.viewportCappedStartRow&&e<this.endCol&&s<=this.viewportCappedEndRow:e<this.startCol&&s>=this.viewportCappedStartRow&&e>=this.endCol&&s<=this.viewportCappedEndRow:s>this.viewportStartRow&&s<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&s===this.viewportStartRow&&e>=this.startCol&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportEndRow&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportStartRow&&e>=this.startCol):!1}};function uV(){return new hV}var po="xterm-dom-renderer-owner-",Ft="xterm-rows",Kr="xterm-fg-",Bc="xterm-bg-",zi="xterm-focus",qr="xterm-selection",fV=1,ca=class extends we{constructor(t,e,s,i,n,o,a,l,c,d,u,h,f,m){super(),this._terminal=t,this._document=e,this._element=s,this._screenElement=i,this._viewportElement=n,this._helperContainer=o,this._linkifier2=a,this._charSizeService=c,this._optionsService=d,this._bufferService=u,this._coreService=h,this._coreBrowserService=f,this._themeService=m,this._terminalClass=fV++,this._rowElements=[],this._selectionRenderModel=uV(),this.onRequestRedraw=this._register(new ne).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(Ft),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(qr),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=cV(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(p=>this._injectCss(p))),this._injectCss(this._themeService.colors),this._rowFactory=l.createInstance(la,document),this._element.classList.add(po+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(p=>this._handleLinkHover(p))),this._register(this._linkifier2.onHideLinkUnderline(p=>this._handleLinkLeave(p))),this._register(Me(()=>{this._element.classList.remove(po+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new dV(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let t=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*t,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*t),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/t),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/t),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let s of this._rowElements)s.style.width=`${this.dimensions.css.canvas.width}px`,s.style.height=`${this.dimensions.css.cell.height}px`,s.style.lineHeight=`${this.dimensions.css.cell.height}px`,s.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let e=`${this._terminalSelector} .${Ft} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=e,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(t){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let e=`${this._terminalSelector} .${Ft} { pointer-events: none; color: ${t.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;e+=`${this._terminalSelector} .${Ft} .xterm-dim { color: ${Te.multiplyOpacity(t.foreground,.5).css};}`,e+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let s=`blink_underline_${this._terminalClass}`,i=`blink_bar_${this._terminalClass}`,n=`blink_block_${this._terminalClass}`;e+=`@keyframes ${s} { 50% { border-bottom-style: hidden; }}`,e+=`@keyframes ${i} { 50% { box-shadow: none; }}`,e+=`@keyframes ${n} { 0% { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css}; } 50% { background-color: inherit; color: ${t.cursor.css}; }}`,e+=`${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-block { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css};}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${t.cursor.css} !important; color: ${t.cursorAccent.css} !important;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${t.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${t.cursor.css} inset;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${t.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,e+=`${this._terminalSelector} .${qr} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${qr} div { position: absolute; background-color: ${t.selectionBackgroundOpaque.css};}${this._terminalSelector} .${qr} div { position: absolute; background-color: ${t.selectionInactiveBackgroundOpaque.css};}`;for(let[o,a]of t.ansi.entries())e+=`${this._terminalSelector} .${Kr}${o} { color: ${a.css}; }${this._terminalSelector} .${Kr}${o}.xterm-dim { color: ${Te.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${Bc}${o} { background-color: ${a.css}; }`;e+=`${this._terminalSelector} .${Kr}257 { color: ${Te.opaque(t.background).css}; }${this._terminalSelector} .${Kr}257.xterm-dim { color: ${Te.multiplyOpacity(Te.opaque(t.background),.5).css}; }${this._terminalSelector} .${Bc}257 { background-color: ${t.foreground.css}; }`,this._themeStyleElement.textContent=e}_setDefaultSpacing(){let t=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${t}px`,this._rowFactory.defaultSpacing=t}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(t,e){for(let s=this._rowElements.length;s<=e;s++){let i=this._document.createElement("div");this._rowContainer.appendChild(i),this._rowElements.push(i)}for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(t,e){this._refreshRowElements(t,e),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(zi),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(zi),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(t,e,s){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(t,e,s),this.renderRows(0,this._bufferService.rows-1),!t||!e||(this._selectionRenderModel.update(this._terminal,t,e,s),!this._selectionRenderModel.hasSelection))return;let i=this._selectionRenderModel.viewportStartRow,n=this._selectionRenderModel.viewportEndRow,o=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,l=this._document.createDocumentFragment();if(s){let c=t[0]>e[0];l.appendChild(this._createSelectionElement(o,c?e[0]:t[0],c?t[0]:e[0],a-o+1))}else{let c=i===o?t[0]:0,d=o===n?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(o,c,d));let u=a-o-1;if(l.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,u)),o!==a){let h=n===a?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(a,0,h))}}this._selectionContainer.appendChild(l)}_createSelectionElement(t,e,s,i=1){let n=this._document.createElement("div"),o=e*this.dimensions.css.cell.width,a=this.dimensions.css.cell.width*(s-e);return o+a>this.dimensions.css.canvas.width&&(a=this.dimensions.css.canvas.width-o),n.style.height=`${i*this.dimensions.css.cell.height}px`,n.style.top=`${t*this.dimensions.css.cell.height}px`,n.style.left=`${o}px`,n.style.width=`${a}px`,n}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let t of this._rowElements)t.replaceChildren()}renderRows(t,e){let s=this._bufferService.buffer,i=s.ybase+s.y,n=Math.min(s.x,this._bufferService.cols-1),o=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,a=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,l=this._optionsService.rawOptions.cursorInactiveStyle;for(let c=t;c<=e;c++){let d=c+s.ydisp,u=this._rowElements[c],h=s.lines.get(d);if(!u||!h)break;u.replaceChildren(...this._rowFactory.createRow(h,d,d===i,a,l,n,o,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${po}${this._terminalClass}`}_handleLinkHover(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!0)}_handleLinkLeave(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!1)}_setCellUnderline(t,e,s,i,n,o){s<0&&(t=0),i<0&&(e=0);let a=this._bufferService.rows-1;s=Math.max(Math.min(s,a),0),i=Math.max(Math.min(i,a),0),n=Math.min(n,this._bufferService.cols);let l=this._bufferService.buffer,c=l.ybase+l.y,d=Math.min(l.x,n-1),u=this._optionsService.rawOptions.cursorBlink,h=this._optionsService.rawOptions.cursorStyle,f=this._optionsService.rawOptions.cursorInactiveStyle;for(let m=s;m<=i;++m){let p=m+l.ydisp,g=this._rowElements[m],_=l.lines.get(p);if(!g||!_)break;g.replaceChildren(...this._rowFactory.createRow(_,p,p===c,h,f,d,u,this.dimensions.css.cell.width,this._widthCache,o?m===s?t:0:-1,o?(m===i?e:n)-1:-1))}}};ca=$e([le(7,rl),le(8,zn),le(9,Vt),le(10,wt),le(11,ai),le(12,ys),le(13,Ri)],ca);var da=class extends we{constructor(t,e,s){super(),this._optionsService=s,this.width=0,this.height=0,this._onCharSizeChange=this._register(new ne),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new pV(this._optionsService))}catch{this._measureStrategy=this._register(new mV(t,e,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let t=this._measureStrategy.measure();(t.width!==this.width||t.height!==this.height)&&(this.width=t.width,this.height=t.height,this._onCharSizeChange.fire())}};da=$e([le(2,Vt)],da);var af=class extends we{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(t,e){t!==void 0&&t>0&&e!==void 0&&e>0&&(this._result.width=t,this._result.height=e)}},mV=class extends af{constructor(t,e,s){super(),this._document=t,this._parentElement=e,this._optionsService=s,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},pV=class extends af{constructor(t){super(),this._optionsService=t,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let e=this._ctx.measureText("W");if(!("width"in e&&"fontBoundingBoxAscent"in e&&"fontBoundingBoxDescent"in e))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let t=this._ctx.measureText("W");return this._validateAndSet(t.width,t.fontBoundingBoxAscent+t.fontBoundingBoxDescent),this._result}},gV=class extends we{constructor(t,e,s){super(),this._textarea=t,this._window=e,this.mainDocument=s,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new _V(this._window)),this._onDprChange=this._register(new ne),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new ne),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(i=>this._screenDprMonitor.setWindow(i))),this._register(ct.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(ve(this._textarea,"focus",()=>this._isFocused=!0)),this._register(ve(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(t){this._window!==t&&(this._window=t,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},_V=class extends we{constructor(t){super(),this._parentWindow=t,this._windowResizeListener=this._register(new ki),this._onDprChange=this._register(new ne),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(Me(()=>this.clearListener()))}setWindow(t){this._parentWindow=t,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=ve(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},xV=class extends we{constructor(){super(),this.linkProviders=[],this._register(Me(()=>this.linkProviders.length=0))}registerLinkProvider(t){return this.linkProviders.push(t),{dispose:()=>{let e=this.linkProviders.indexOf(t);e!==-1&&this.linkProviders.splice(e,1)}}}};function ul(t,e,s){let i=s.getBoundingClientRect(),n=t.getComputedStyle(s),o=parseInt(n.getPropertyValue("padding-left")),a=parseInt(n.getPropertyValue("padding-top"));return[e.clientX-i.left-o,e.clientY-i.top-a]}function vV(t,e,s,i,n,o,a,l,c){if(!o)return;let d=ul(t,e,s);if(d)return d[0]=Math.ceil((d[0]+(c?a/2:0))/a),d[1]=Math.ceil(d[1]/l),d[0]=Math.min(Math.max(d[0],1),i+(c?1:0)),d[1]=Math.min(Math.max(d[1],1),n),d}var ha=class{constructor(t,e){this._renderService=t,this._charSizeService=e}getCoords(t,e,s,i,n){return vV(window,t,e,s,i,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,n)}getMouseReportCoords(t,e){let s=ul(window,t,e);if(this._charSizeService.hasValidSize)return s[0]=Math.min(Math.max(s[0],0),this._renderService.dimensions.css.canvas.width-1),s[1]=Math.min(Math.max(s[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(s[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(s[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(s[0]),y:Math.floor(s[1])}}};ha=$e([le(0,Ss),le(1,zn)],ha);var bV=class{constructor(t,e){this._renderCallback=t,this._coreBrowserService=e,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(t){return this._refreshCallbacks.push(t),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(t,e,s){this._rowCount=s,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let t of this._refreshCallbacks)t(0);this._refreshCallbacks=[]}},lf={};ES(lf,{getSafariVersion:()=>SV,isChromeOS:()=>uf,isFirefox:()=>cf,isIpad:()=>wV,isIphone:()=>VV,isLegacyEdge:()=>yV,isLinux:()=>fl,isMac:()=>Sn,isNode:()=>Fn,isSafari:()=>df,isWindows:()=>hf});var Fn=typeof process<"u"&&"title"in process,Ir=Fn?"node":navigator.userAgent,Tr=Fn?"node":navigator.platform,cf=Ir.includes("Firefox"),yV=Ir.includes("Edge"),df=/^((?!chrome|android).)*safari/i.test(Ir);function SV(){if(!df)return 0;let t=Ir.match(/Version\/(\d+)/);return t===null||t.length<2?0:parseInt(t[1])}var Sn=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(Tr),wV=Tr==="iPad",VV=Tr==="iPhone",hf=["Windows","Win16","Win32","WinCE"].includes(Tr),fl=Tr.indexOf("Linux")>=0,uf=/\bCrOS\b/.test(Ir),ff=class{constructor(){this._tasks=[],this._i=0}enqueue(t){this._tasks.push(t),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(t){this._idleCallback=void 0;let e=0,s=0,i=t.timeRemaining(),n=0;for(;this._i<this._tasks.length;){if(e=performance.now(),this._tasks[this._i]()||this._i++,e=Math.max(1,performance.now()-e),s=Math.max(e,s),n=t.timeRemaining(),s*1.5>n){i-e<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(i-e))}ms`),this._start();return}i=n}this.clear()}},CV=class extends ff{_requestCallback(t){return setTimeout(()=>t(this._createDeadline(16)))}_cancelCallback(t){clearTimeout(t)}_createDeadline(t){let e=performance.now()+t;return{timeRemaining:()=>Math.max(0,e-performance.now())}}},kV=class extends ff{_requestCallback(t){return requestIdleCallback(t)}_cancelCallback(t){cancelIdleCallback(t)}},wn=!Fn&&"requestIdleCallback"in window?kV:CV,jV=class{constructor(){this._queue=new wn}set(t){this._queue.clear(),this._queue.enqueue(t)}flush(){this._queue.flush()}},ua=class extends we{constructor(t,e,s,i,n,o,a,l,c){super(),this._rowCount=t,this._optionsService=s,this._charSizeService=i,this._coreService=n,this._coreBrowserService=l,this._renderer=this._register(new ki),this._pausedResizeTask=new jV,this._observerDisposable=this._register(new ki),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new ne),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new ne),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new ne),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new ne),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new bV((d,u)=>this._renderRows(d,u),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new NV(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(Me(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(o.onDecorationRegistered(()=>this._fullRefresh())),this._register(o.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(a.cols,a.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(a.buffer.y,a.buffer.y,!0))),this._register(c.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,e),this._register(this._coreBrowserService.onWindowChange(d=>this._registerIntersectionObserver(d,e)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(t,e){if("IntersectionObserver"in t){let s=new t.IntersectionObserver(i=>this._handleIntersectionChange(i[i.length-1]),{threshold:0});s.observe(e),this._observerDisposable.value=Me(()=>s.disconnect())}}_handleIntersectionChange(t){this._isPaused=t.isIntersecting===void 0?t.intersectionRatio===0:!t.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(t,e,s=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}let i=this._syncOutputHandler.flush();i&&(t=Math.min(t,i.start),e=Math.max(e,i.end)),s||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(t,e,this._rowCount)}_renderRows(t,e){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}t=Math.min(t,this._rowCount-1),e=Math.min(e,this._rowCount-1),this._renderer.value.renderRows(t,e),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:t,end:e}),this._onRender.fire({start:t,end:e}),this._isNextRenderRedrawOnly=!0}}resize(t,e){this._rowCount=e,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(t){this._renderer.value=t,this._renderer.value&&(this._renderer.value.onRequestRedraw(e=>this.refreshRows(e.start,e.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(t){return this._renderDebouncer.addRefreshCallback(t)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(t,e){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(t,e)):this._renderer.value.handleResize(t,e),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(t,e,s){this._selectionState.start=t,this._selectionState.end=e,this._selectionState.columnSelectMode=s,this._renderer.value?.handleSelectionChanged(t,e,s)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};ua=$e([le(2,Vt),le(3,zn),le(4,ai),le(5,Er),le(6,wt),le(7,ys),le(8,Ri)],ua);var NV=class{constructor(t,e,s){this._coreBrowserService=t,this._coreService=e,this._onTimeout=s,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(t,e){this._isBuffering?(this._start=Math.min(this._start,t),this._end=Math.max(this._end,e)):(this._start=t,this._end=e,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let t={start:this._start,end:this._end};return this._isBuffering=!1,t}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function AV(t,e,s,i){let n=s.buffer.x,o=s.buffer.y;if(!s.buffer.hasScrollback)return TV(n,o,t,e,s,i)+Un(o,e,s,i)+RV(n,o,t,e,s,i);let a;if(o===e)return a=n>t?"D":"C",mr(Math.abs(n-t),fr(a,i));a=o>e?"D":"C";let l=Math.abs(o-e),c=IV(o>e?t:n,s)+(l-1)*s.cols+1+EV(o>e?n:t);return mr(c,fr(a,i))}function EV(t,e){return t-1}function IV(t,e){return e.cols-t}function TV(t,e,s,i,n,o){return Un(e,i,n,o).length===0?"":mr(pf(t,e,t,e-Zs(e,n),!1,n).length,fr("D",o))}function Un(t,e,s,i){let n=t-Zs(t,s),o=e-Zs(e,s),a=Math.abs(n-o)-MV(t,e,s);return mr(a,fr(mf(t,e),i))}function RV(t,e,s,i,n,o){let a;Un(e,i,n,o).length>0?a=i-Zs(i,n):a=e;let l=i,c=DV(t,e,s,i,n,o);return mr(pf(t,a,s,l,c==="C",n).length,fr(c,o))}function MV(t,e,s){let i=0,n=t-Zs(t,s),o=e-Zs(e,s);for(let a=0;a<Math.abs(n-o);a++){let l=mf(t,e)==="A"?-1:1;s.buffer.lines.get(n+l*a)?.isWrapped&&i++}return i}function Zs(t,e){let s=0,i=e.buffer.lines.get(t),n=i?.isWrapped;for(;n&&t>=0&&t<e.rows;)s++,i=e.buffer.lines.get(--t),n=i?.isWrapped;return s}function DV(t,e,s,i,n,o){let a;return Un(s,i,n,o).length>0?a=i-Zs(i,n):a=e,t<s&&a<=i||t>=s&&a<i?"C":"D"}function mf(t,e){return t>e?"A":"B"}function pf(t,e,s,i,n,o){let a=t,l=e,c="";for(;(a!==s||l!==i)&&l>=0&&l<o.buffer.lines.length;)a+=n?1:-1,n&&a>o.cols-1?(c+=o.buffer.translateBufferLineToString(l,!1,t,a),a=0,t=0,l++):!n&&a<0&&(c+=o.buffer.translateBufferLineToString(l,!1,0,t+1),a=o.cols-1,t=a,l--);return c+o.buffer.translateBufferLineToString(l,!1,t,a)}function fr(t,e){let s=e?"O":"[";return Q.ESC+s+t}function mr(t,e){t=Math.floor(t);let s="";for(let i=0;i<t;i++)s+=e;return s}var PV=class{constructor(t){this._bufferService=t,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:!this.selectionEnd||!this.selectionStart?this.selectionStart:this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?t%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)-1]:[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[t,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[Math.max(t,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let t=this.selectionStart,e=this.selectionEnd;return!t||!e?!1:t[1]>e[1]||t[1]===e[1]&&t[0]>e[0]}handleTrim(t){return this.selectionStart&&(this.selectionStart[1]-=t),this.selectionEnd&&(this.selectionEnd[1]-=t),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function $c(t,e){if(t.start.y>t.end.y)throw new Error(`Buffer range end (${t.end.x}, ${t.end.y}) cannot be before start (${t.start.x}, ${t.start.y})`);return e*(t.end.y-t.start.y)+(t.end.x-t.start.x+1)}var go=50,LV=15,OV=50,BV=500,$V=" ",zV=new RegExp($V,"g"),fa=class extends we{constructor(t,e,s,i,n,o,a,l,c){super(),this._element=t,this._screenElement=e,this._linkifier=s,this._bufferService=i,this._coreService=n,this._mouseService=o,this._optionsService=a,this._renderService=l,this._coreBrowserService=c,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Kt,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new ne),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new ne),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new ne),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new ne),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=d=>this._handleMouseMove(d),this._mouseUpListener=d=>this._handleMouseUp(d),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(d=>this._handleTrim(d)),this._register(this._bufferService.buffers.onBufferActivate(d=>this._handleBufferActivate(d))),this.enable(),this._model=new PV(this._bufferService),this._activeSelectionMode=0,this._register(Me(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(d=>{d.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;return!t||!e?!1:t[0]!==e[0]||t[1]!==e[1]}get selectionText(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;if(!t||!e)return"";let s=this._bufferService.buffer,i=[];if(this._activeSelectionMode===3){if(t[0]===e[0])return"";let n=t[0]<e[0]?t[0]:e[0],o=t[0]<e[0]?e[0]:t[0];for(let a=t[1];a<=e[1];a++){let l=s.translateBufferLineToString(a,!0,n,o);i.push(l)}}else{let n=t[1]===e[1]?e[0]:void 0;i.push(s.translateBufferLineToString(t[1],!0,t[0],n));for(let o=t[1]+1;o<=e[1]-1;o++){let a=s.lines.get(o),l=s.translateBufferLineToString(o,!0);a?.isWrapped?i[i.length-1]+=l:i.push(l)}if(t[1]!==e[1]){let o=s.lines.get(e[1]),a=s.translateBufferLineToString(e[1],!0,0,e[0]);o&&o.isWrapped?i[i.length-1]+=a:i.push(a)}}return i.map(n=>n.replace(zV," ")).join(hf?`\r
|
|
721
|
+
`))}},iw=class extends Error{constructor(t,e){super(t),this.name="ListenerLeakError",this.stack=e}},rw=class extends Error{constructor(t,e){super(t),this.name="ListenerRefusalError",this.stack=e}},nw=0,ho=class{constructor(t){this.value=t,this.id=nw++}},ow=2,aw,ne=class{constructor(t){this._size=0,this._options=t,this._leakageMon=this._options?.leakWarningThreshold?new tw(t?.onListenerError??nn,this._options?.leakWarningThreshold??ew):void 0,this._perfMon=this._options?._profName?new ZS(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(t,e,s)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);let l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new rw(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||nn)(c),we.None}if(this._disposed)return we.None;e&&(t=t.bind(e));let i=new ho(t),n;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=sw.create(),n=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof ho?(this._deliveryQueue??=new lw,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._size++;let o=Me(()=>{n?.(),this._removeListener(i)});return s instanceof Ps?s.add(o):Array.isArray(s)&&s.push(o),o},this._event}_removeListener(t){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let e=this._listeners,s=e.indexOf(t);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,e[s]=void 0;let i=this._deliveryQueue.current===this;if(this._size*ow<=e.length){let n=0;for(let o=0;o<e.length;o++)e[o]?e[n++]=e[o]:i&&(this._deliveryQueue.end--,n<this._deliveryQueue.i&&this._deliveryQueue.i--);e.length=n}}_deliver(t,e){if(!t)return;let s=this._options?.onListenerError||nn;if(!s){t.value(e);return}try{t.value(e)}catch(i){s(i)}}_deliverQueue(t){let e=t.current._listeners;for(;t.i<t.end;)this._deliver(e[t.i++],t.value);t.reset()}fire(t){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof ho)this._deliver(this._listeners,t);else{let e=this._deliveryQueue;e.enqueue(this,t,this._listeners.length),this._deliverQueue(e)}this._perfMon?.stop()}hasListeners(){return this._size>0}},lw=class{constructor(){this.i=-1,this.end=0}enqueue(t,e,s){this.i=0,this.end=s,this.current=t,this.value=e}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},Jo=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new ne,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new ne,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(e){return this.mapWindowIdToZoomLevel.get(this.getWindowId(e))??0}setZoomLevel(e,s){if(this.getZoomLevel(s)===e)return;let i=this.getWindowId(s);this.mapWindowIdToZoomLevel.set(i,e),this._onDidChangeZoomLevel.fire(i)}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}setZoomFactor(e,s){this.mapWindowIdToZoomFactor.set(this.getWindowId(s),e)}setFullscreen(e,s){if(this.isFullscreen(s)===e)return;let i=this.getWindowId(s);this.mapWindowIdToFullScreen.set(i,e),this._onDidChangeFullscreen.fire(i)}isFullscreen(e){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(e))}getWindowId(e){return e.vscodeWindowId}};Jo.INSTANCE=new Jo;var ol=Jo;function cw(t,e,s){typeof e=="string"&&(e=t.matchMedia(e)),e.addEventListener("change",s)}ol.INSTANCE.onDidChangeZoomLevel;function dw(t){return ol.INSTANCE.getZoomFactor(t)}ol.INSTANCE.onDidChangeFullscreen;var Mi=typeof navigator=="object"?navigator.userAgent:"",Qo=Mi.indexOf("Firefox")>=0,hw=Mi.indexOf("AppleWebKit")>=0,al=Mi.indexOf("Chrome")>=0,uw=!al&&Mi.indexOf("Safari")>=0;Mi.indexOf("Electron/")>=0;Mi.indexOf("Android")>=0;var uo=!1;if(typeof vs.matchMedia=="function"){let t=vs.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=vs.matchMedia("(display-mode: fullscreen)");uo=t.matches,cw(vs,t,({matches:s})=>{uo&&e.matches||(uo=s)})}var xi="en",Zo=!1,ea=!1,on=!1,Qu=!1,Ur,an=xi,wc=xi,fw,xs,Js=globalThis,Rt;typeof Js.vscode<"u"&&typeof Js.vscode.process<"u"?Rt=Js.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Rt=process);var mw=typeof Rt?.versions?.electron=="string",pw=mw&&Rt?.type==="renderer";if(typeof Rt=="object"){Zo=Rt.platform==="win32",ea=Rt.platform==="darwin",on=Rt.platform==="linux",on&&Rt.env.SNAP&&Rt.env.SNAP_REVISION,Rt.env.CI||Rt.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Ur=xi,an=xi;let t=Rt.env.VSCODE_NLS_CONFIG;if(t)try{let e=JSON.parse(t);Ur=e.userLocale,wc=e.osLocale,an=e.resolvedLanguage||xi,fw=e.languagePack?.translationsConfigFile}catch{}Qu=!0}else typeof navigator=="object"&&!pw?(xs=navigator.userAgent,Zo=xs.indexOf("Windows")>=0,ea=xs.indexOf("Macintosh")>=0,(xs.indexOf("Macintosh")>=0||xs.indexOf("iPad")>=0||xs.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,on=xs.indexOf("Linux")>=0,xs?.indexOf("Mobi")>=0,an=globalThis._VSCODE_NLS_LANGUAGE||xi,Ur=navigator.language.toLowerCase(),wc=Ur):console.error("Unable to resolve platform.");var Zu=Zo,us=ea,gw=on,Vc=Qu,fs=xs,ks=an,_w;(t=>{function e(){return ks}t.value=e;function s(){return ks.length===2?ks==="en":ks.length>=3?ks[0]==="e"&&ks[1]==="n"&&ks[2]==="-":!1}t.isDefaultVariant=s;function i(){return ks==="en"}t.isDefault=i})(_w||={});var xw=typeof Js.postMessage=="function"&&!Js.importScripts;(()=>{if(xw){let t=[];Js.addEventListener("message",s=>{if(s.data&&s.data.vscodeScheduleAsyncWork)for(let i=0,n=t.length;i<n;i++){let o=t[i];if(o.id===s.data.vscodeScheduleAsyncWork){t.splice(i,1),o.callback();return}}});let e=0;return s=>{let i=++e;t.push({id:i,callback:s}),Js.postMessage({vscodeScheduleAsyncWork:i},"*")}}return t=>setTimeout(t)})();var vw=!!(fs&&fs.indexOf("Chrome")>=0);fs&&fs.indexOf("Firefox")>=0;!vw&&fs&&fs.indexOf("Safari")>=0;fs&&fs.indexOf("Edg/")>=0;fs&&fs.indexOf("Android")>=0;var fi=typeof navigator=="object"?navigator:{};Vc||document.queryCommandSupported&&document.queryCommandSupported("copy")||fi&&fi.clipboard&&fi.clipboard.writeText,Vc||fi&&fi.clipboard&&fi.clipboard.readText;var ll=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(t,e){this._keyCodeToStr[t]=e,this._strToKeyCode[e.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}},fo=new ll,Cc=new ll,kc=new ll,bw=new Array(230),ef;(t=>{function e(l){return fo.keyCodeToStr(l)}t.toString=e;function s(l){return fo.strToKeyCode(l)}t.fromString=s;function i(l){return Cc.keyCodeToStr(l)}t.toUserSettingsUS=i;function n(l){return kc.keyCodeToStr(l)}t.toUserSettingsGeneral=n;function o(l){return Cc.strToKeyCode(l)||kc.strToKeyCode(l)}t.fromUserSettings=o;function a(l){if(l>=98&&l<=113)return null;switch(l){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return fo.keyCodeToStr(l)}t.toElectronAccelerator=a})(ef||={});var yw=class tf{constructor(e,s,i,n,o){this.ctrlKey=e,this.shiftKey=s,this.altKey=i,this.metaKey=n,this.keyCode=o}equals(e){return e instanceof tf&&this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode}getHashCode(){let e=this.ctrlKey?"1":"0",s=this.shiftKey?"1":"0",i=this.altKey?"1":"0",n=this.metaKey?"1":"0";return`K${e}${s}${i}${n}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new Sw([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},Sw=class{constructor(t){if(t.length===0)throw qS("chords");this.chords=t}getHashCode(){let t="";for(let e=0,s=this.chords.length;e<s;e++)e!==0&&(t+=";"),t+=this.chords[e].getHashCode();return t}equals(t){if(t===null||this.chords.length!==t.chords.length)return!1;for(let e=0;e<this.chords.length;e++)if(!this.chords[e].equals(t.chords[e]))return!1;return!0}};function ww(t){if(t.charCode){let s=String.fromCharCode(t.charCode).toUpperCase();return ef.fromString(s)}let e=t.keyCode;if(e===3)return 7;if(Qo)switch(e){case 59:return 85;case 60:if(gw)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(us)return 57;break}else if(hw&&(us&&e===93||!us&&e===92))return 57;return bw[e]||0}var Vw=us?256:2048,Cw=512,kw=1024,jw=us?2048:256,jc=class{constructor(t){this._standardKeyboardEventBrand=!0;let e=t;this.browserEvent=e,this.target=e.target,this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,this.altGraphKey=e.getModifierState?.("AltGraph"),this.keyCode=ww(e),this.code=e.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(t){return this._asKeybinding===t}_computeKeybinding(){let t=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode);let e=0;return this.ctrlKey&&(e|=Vw),this.altKey&&(e|=Cw),this.shiftKey&&(e|=kw),this.metaKey&&(e|=jw),e|=t,e}_computeKeyCodeChord(){let t=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode),new yw(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,t)}},Nc=new WeakMap;function Nw(t){if(!t.parent||t.parent===t)return null;try{let e=t.location,s=t.parent.location;if(e.origin!=="null"&&s.origin!=="null"&&e.origin!==s.origin)return null}catch{return null}return t.parent}var Aw=class{static getSameOriginWindowChain(t){let e=Nc.get(t);if(!e){e=[],Nc.set(t,e);let s=t,i;do i=Nw(s),i?e.push({window:new WeakRef(s),iframeElement:s.frameElement||null}):e.push({window:new WeakRef(s),iframeElement:null}),s=i;while(s)}return e.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(t,e){if(!e||t===e)return{top:0,left:0};let s=0,i=0,n=this.getSameOriginWindowChain(t);for(let o of n){let a=o.window.deref();if(s+=a?.scrollY??0,i+=a?.scrollX??0,a===e||!o.iframeElement)break;let l=o.iframeElement.getBoundingClientRect();s+=l.top,i+=l.left}return{top:s,left:i}}},Hr=class{constructor(t,e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=e.button===0,this.middleButton=e.button===1,this.rightButton=e.button===2,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,e.type==="dblclick"&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,typeof e.pageX=="number"?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=e.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let s=Aw.getPositionOfChildWindowRelativeToAncestorWindow(t,e.view);this.posx-=s.left,this.posy-=s.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},Ac=class{constructor(t,e=0,s=0){this.browserEvent=t||null,this.target=t?t.target||t.targetNode||t.srcElement:null,this.deltaY=s,this.deltaX=e;let i=!1;if(al){let n=navigator.userAgent.match(/Chrome\/(\d+)/);i=(n?parseInt(n[1]):123)<=122}if(t){let n=t,o=t,a=t.view?.devicePixelRatio||1;if(typeof n.wheelDeltaY<"u")i?this.deltaY=n.wheelDeltaY/(120*a):this.deltaY=n.wheelDeltaY/120;else if(typeof o.VERTICAL_AXIS<"u"&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if(t.type==="wheel"){let l=t;l.deltaMode===l.DOM_DELTA_LINE?Qo&&!us?this.deltaY=-t.deltaY/3:this.deltaY=-t.deltaY:this.deltaY=-t.deltaY/40}if(typeof n.wheelDeltaX<"u")uw&&Zu?this.deltaX=-(n.wheelDeltaX/120):i?this.deltaX=n.wheelDeltaX/(120*a):this.deltaX=n.wheelDeltaX/120;else if(typeof o.HORIZONTAL_AXIS<"u"&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-t.detail/3;else if(t.type==="wheel"){let l=t;l.deltaMode===l.DOM_DELTA_LINE?Qo&&!us?this.deltaX=-t.deltaX/3:this.deltaX=-t.deltaX:this.deltaX=-t.deltaX/40}this.deltaY===0&&this.deltaX===0&&t.wheelDelta&&(i?this.deltaY=t.wheelDelta/(120*a):this.deltaY=t.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},sf=Object.freeze(function(t,e){let s=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(s)}}}),Ew;(t=>{function e(s){return s===t.None||s===t.Cancelled||s instanceof Iw?!0:!s||typeof s!="object"?!1:typeof s.isCancellationRequested=="boolean"&&typeof s.onCancellationRequested=="function"}t.isCancellationToken=e,t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ct.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:sf})})(Ew||={});var Iw=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?sf:(this._emitter||(this._emitter=new ne),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},cl=class{constructor(t,e){this._isDisposed=!1,this._token=-1,typeof t=="function"&&typeof e=="number"&&this.setIfNotSet(t,e)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(t,e){if(this._isDisposed)throw new Ko("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},e)}setIfNotSet(t,e){if(this._isDisposed)throw new Ko("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},e))}},Tw=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(t,e,s=globalThis){if(this.isDisposed)throw new Ko("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let i=s.setInterval(()=>{t()},e);this.disposable=Me(()=>{s.clearInterval(i),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},Rw;(t=>{async function e(i){let n,o=await Promise.all(i.map(a=>a.then(l=>l,l=>{n||(n=l)})));if(typeof n<"u")throw n;return o}t.settled=e;function s(i){return new Promise(async(n,o)=>{try{await i(n,o)}catch(a){o(a)}})}t.withAsyncBody=s})(Rw||={});var Ec=class Ut{static fromArray(e){return new Ut(s=>{s.emitMany(e)})}static fromPromise(e){return new Ut(async s=>{s.emitMany(await e)})}static fromPromises(e){return new Ut(async s=>{await Promise.all(e.map(async i=>s.emitOne(await i)))})}static merge(e){return new Ut(async s=>{await Promise.all(e.map(async i=>{for await(let n of i)s.emitOne(n)}))})}constructor(e,s){this._state=0,this._results=[],this._error=null,this._onReturn=s,this._onStateChanged=new ne,queueMicrotask(async()=>{let i={emitOne:n=>this.emitOne(n),emitMany:n=>this.emitMany(n),reject:n=>this.reject(n)};try{await Promise.resolve(e(i)),this.resolve()}catch(n){this.reject(n)}finally{i.emitOne=void 0,i.emitMany=void 0,i.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e<this._results.length)return{done:!1,value:this._results[e++]};if(this._state===1)return{done:!0,value:void 0};await ct.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,s){return new Ut(async i=>{for await(let n of e)i.emitOne(s(n))})}map(e){return Ut.map(this,e)}static filter(e,s){return new Ut(async i=>{for await(let n of e)s(n)&&i.emitOne(n)})}filter(e){return Ut.filter(this,e)}static coalesce(e){return Ut.filter(e,s=>!!s)}coalesce(){return Ut.coalesce(this)}static async toPromise(e){let s=[];for await(let i of e)s.push(i);return s}toPromise(){return Ut.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};Ec.EMPTY=Ec.fromArray([]);var{getWindow:os,getWindowId:Mw,onDidRegisterWindow:Dw}=(function(){let t=new Map,e={window:vs,disposables:new Ps};t.set(vs.vscodeWindowId,e);let s=new ne,i=new ne,n=new ne;function o(a,l){return(typeof a=="number"?t.get(a):void 0)??(l?e:void 0)}return{onDidRegisterWindow:s.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(a){if(t.has(a.vscodeWindowId))return we.None;let l=new Ps,c={window:a,disposables:l.add(new Ps)};return t.set(a.vscodeWindowId,c),l.add(Me(()=>{t.delete(a.vscodeWindowId),i.fire(a)})),l.add(ve(a,it.BEFORE_UNLOAD,()=>{n.fire(a)})),s.fire(c),l},getWindows(){return t.values()},getWindowsCount(){return t.size},getWindowId(a){return a.vscodeWindowId},hasWindow(a){return t.has(a)},getWindowById:o,getWindow(a){let l=a;if(l?.ownerDocument?.defaultView)return l.ownerDocument.defaultView.window;let c=a;return c?.view?c.view.window:vs},getDocument(a){return os(a).document}}})(),Pw=class{constructor(t,e,s,i){this._node=t,this._type=e,this._handler=s,this._options=i||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function ve(t,e,s,i){return new Pw(t,e,s,i)}var Ic=function(t,e,s,i){return ve(t,e,s,i)},dl,Lw=class extends Tw{constructor(t){super(),this.defaultTarget=t&&os(t)}cancelAndSet(t,e,s){return super.cancelAndSet(t,e,s??this.defaultTarget)}},Tc=class{constructor(t,e=0){this._runner=t,this.priority=e,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(t){nn(t)}}static sort(t,e){return e.priority-t.priority}};(function(){let t=new Map,e=new Map,s=new Map,i=new Map,n=o=>{s.set(o,!1);let a=t.get(o)??[];for(e.set(o,a),t.set(o,[]),i.set(o,!0);a.length>0;)a.sort(Tc.sort),a.shift().execute();i.set(o,!1)};dl=(o,a,l=0)=>{let c=Mw(o),d=new Tc(a,l),u=t.get(c);return u||(u=[],t.set(c,u)),u.push(d),s.get(c)||(s.set(c,!0),o.requestAnimationFrame(()=>n(c))),d}})();function Ow(t){let e=t.getBoundingClientRect(),s=os(t);return{left:e.left+s.scrollX,top:e.top+s.scrollY,width:e.width,height:e.height}}var it={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},Bw=class{constructor(t){this.domNode=t,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(t){let e=kt(t);this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth)}setWidth(t){let e=kt(t);this._width!==e&&(this._width=e,this.domNode.style.width=this._width)}setHeight(t){let e=kt(t);this._height!==e&&(this._height=e,this.domNode.style.height=this._height)}setTop(t){let e=kt(t);this._top!==e&&(this._top=e,this.domNode.style.top=this._top)}setLeft(t){let e=kt(t);this._left!==e&&(this._left=e,this.domNode.style.left=this._left)}setBottom(t){let e=kt(t);this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom)}setRight(t){let e=kt(t);this._right!==e&&(this._right=e,this.domNode.style.right=this._right)}setPaddingTop(t){let e=kt(t);this._paddingTop!==e&&(this._paddingTop=e,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(t){let e=kt(t);this._paddingLeft!==e&&(this._paddingLeft=e,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(t){let e=kt(t);this._paddingBottom!==e&&(this._paddingBottom=e,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(t){let e=kt(t);this._paddingRight!==e&&(this._paddingRight=e,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(t){this._fontFamily!==t&&(this._fontFamily=t,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(t){this._fontWeight!==t&&(this._fontWeight=t,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(t){let e=kt(t);this._fontSize!==e&&(this._fontSize=e,this.domNode.style.fontSize=this._fontSize)}setFontStyle(t){this._fontStyle!==t&&(this._fontStyle=t,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(t){this._fontFeatureSettings!==t&&(this._fontFeatureSettings=t,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(t){this._fontVariationSettings!==t&&(this._fontVariationSettings=t,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(t){this._textDecoration!==t&&(this._textDecoration=t,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(t){let e=kt(t);this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(t){let e=kt(t);this._letterSpacing!==e&&(this._letterSpacing=e,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(t){this._className!==t&&(this._className=t,this.domNode.className=this._className)}toggleClassName(t,e){this.domNode.classList.toggle(t,e),this._className=this.domNode.className}setDisplay(t){this._display!==t&&(this._display=t,this.domNode.style.display=this._display)}setPosition(t){this._position!==t&&(this._position=t,this.domNode.style.position=this._position)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this.domNode.style.visibility=this._visibility)}setColor(t){this._color!==t&&(this._color=t,this.domNode.style.color=this._color)}setBackgroundColor(t){this._backgroundColor!==t&&(this._backgroundColor=t,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(t){this._layerHint!==t&&(this._layerHint=t,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(t){this._boxShadow!==t&&(this._boxShadow=t,this.domNode.style.boxShadow=t)}setContain(t){this._contain!==t&&(this._contain=t,this.domNode.style.contain=this._contain)}setAttribute(t,e){this.domNode.setAttribute(t,e)}removeAttribute(t){this.domNode.removeAttribute(t)}appendChild(t){this.domNode.appendChild(t.domNode)}removeChild(t){this.domNode.removeChild(t.domNode)}};function kt(t){return typeof t=="number"?`${t}px`:t}function rr(t){return new Bw(t)}var rf=class{constructor(){this._hooks=new Ps,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(t,e){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let s=this._onStopCallback;this._onStopCallback=null,t&&s&&s(e)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(t,e,s,i,n){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=i,this._onStopCallback=n;let o=t;try{t.setPointerCapture(e),this._hooks.add(Me(()=>{try{t.releasePointerCapture(e)}catch{}}))}catch{o=os(t)}this._hooks.add(ve(o,it.POINTER_MOVE,a=>{if(a.buttons!==s){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(ve(o,it.POINTER_UP,a=>this.stopMonitoring(!0)))}};function $w(t,e,s){let i=null,n=null;if(typeof s.value=="function"?(i="value",n=s.value,n.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof s.get=="function"&&(i="get",n=s.get),!n)throw new Error("not supported");let o=`$memoize$${e}`;s[i]=function(...a){return this.hasOwnProperty(o)||Object.defineProperty(this,o,{configurable:!1,enumerable:!1,writable:!1,value:n.apply(this,a)}),this[o]}}var is;(t=>(t.Tap="-xterm-gesturetap",t.Change="-xterm-gesturechange",t.Start="-xterm-gesturestart",t.End="-xterm-gesturesend",t.Contextmenu="-xterm-gesturecontextmenu"))(is||={});var Gi=class ut extends we{constructor(){super(),this.dispatched=!1,this.targets=new Sc,this.ignoreTargets=new Sc,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(ct.runAndSubscribe(Dw,({window:e,disposables:s})=>{s.add(ve(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),s.add(ve(e.document,"touchend",i=>this.onTouchEnd(e,i))),s.add(ve(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:vs,disposables:this._store}))}static addTarget(e){if(!ut.isTouchDevice())return we.None;ut.INSTANCE||(ut.INSTANCE=new ut);let s=ut.INSTANCE.targets.push(e);return Me(s)}static ignoreTarget(e){if(!ut.isTouchDevice())return we.None;ut.INSTANCE||(ut.INSTANCE=new ut);let s=ut.INSTANCE.ignoreTargets.push(e);return Me(s)}static isTouchDevice(){return"ontouchstart"in vs||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){let s=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let i=0,n=e.targetTouches.length;i<n;i++){let o=e.targetTouches.item(i);this.activeTouches[o.identifier]={id:o.identifier,initialTarget:o.target,initialTimeStamp:s,initialPageX:o.pageX,initialPageY:o.pageY,rollingTimestamps:[s],rollingPageX:[o.pageX],rollingPageY:[o.pageY]};let a=this.newGestureEvent(is.Start,o.target);a.pageX=o.pageX,a.pageY=o.pageY,this.dispatchEvent(a)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}onTouchEnd(e,s){let i=Date.now(),n=Object.keys(this.activeTouches).length;for(let o=0,a=s.changedTouches.length;o<a;o++){let l=s.changedTouches.item(o);if(!this.activeTouches.hasOwnProperty(String(l.identifier))){console.warn("move of an UNKNOWN touch",l);continue}let c=this.activeTouches[l.identifier],d=Date.now()-c.initialTimeStamp;if(d<ut.HOLD_DELAY&&Math.abs(c.initialPageX-It(c.rollingPageX))<30&&Math.abs(c.initialPageY-It(c.rollingPageY))<30){let u=this.newGestureEvent(is.Tap,c.initialTarget);u.pageX=It(c.rollingPageX),u.pageY=It(c.rollingPageY),this.dispatchEvent(u)}else if(d>=ut.HOLD_DELAY&&Math.abs(c.initialPageX-It(c.rollingPageX))<30&&Math.abs(c.initialPageY-It(c.rollingPageY))<30){let u=this.newGestureEvent(is.Contextmenu,c.initialTarget);u.pageX=It(c.rollingPageX),u.pageY=It(c.rollingPageY),this.dispatchEvent(u)}else if(n===1){let u=It(c.rollingPageX),h=It(c.rollingPageY),f=It(c.rollingTimestamps)-c.rollingTimestamps[0],m=u-c.rollingPageX[0],p=h-c.rollingPageY[0],g=[...this.targets].filter(_=>c.initialTarget instanceof Node&&_.contains(c.initialTarget));this.inertia(e,g,i,Math.abs(m)/f,m>0?1:-1,u,Math.abs(p)/f,p>0?1:-1,h)}this.dispatchEvent(this.newGestureEvent(is.End,c.initialTarget)),delete this.activeTouches[l.identifier]}this.dispatched&&(s.preventDefault(),s.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,s){let i=document.createEvent("CustomEvent");return i.initEvent(e,!1,!0),i.initialTarget=s,i.tapCount=0,i}dispatchEvent(e){if(e.type===is.Tap){let s=new Date().getTime(),i=0;s-this._lastSetTapCountTime>ut.CLEAR_TAP_COUNT_TIME?i=1:i=2,this._lastSetTapCountTime=s,e.tapCount=i}else(e.type===is.Change||e.type===is.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(let i of this.ignoreTargets)if(i.contains(e.initialTarget))return;let s=[];for(let i of this.targets)if(i.contains(e.initialTarget)){let n=0,o=e.initialTarget;for(;o&&o!==i;)n++,o=o.parentElement;s.push([n,i])}s.sort((i,n)=>i[0]-n[0]);for(let[i,n]of s)n.dispatchEvent(e),this.dispatched=!0}}inertia(e,s,i,n,o,a,l,c,d){this.handle=dl(e,()=>{let u=Date.now(),h=u-i,f=0,m=0,p=!0;n+=ut.SCROLL_FRICTION*h,l+=ut.SCROLL_FRICTION*h,n>0&&(p=!1,f=o*n*h),l>0&&(p=!1,m=c*l*h);let g=this.newGestureEvent(is.Change);g.translationX=f,g.translationY=m,s.forEach(_=>_.dispatchEvent(g)),p||this.inertia(e,s,u,n,o,a+f,l,c,d+m)})}onTouchMove(e){let s=Date.now();for(let i=0,n=e.changedTouches.length;i<n;i++){let o=e.changedTouches.item(i);if(!this.activeTouches.hasOwnProperty(String(o.identifier))){console.warn("end of an UNKNOWN touch",o);continue}let a=this.activeTouches[o.identifier],l=this.newGestureEvent(is.Change,a.initialTarget);l.translationX=o.pageX-It(a.rollingPageX),l.translationY=o.pageY-It(a.rollingPageY),l.pageX=o.pageX,l.pageY=o.pageY,this.dispatchEvent(l),a.rollingPageX.length>3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(o.pageX),a.rollingPageY.push(o.pageY),a.rollingTimestamps.push(s)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};Gi.SCROLL_FRICTION=-.005,Gi.HOLD_DELAY=700,Gi.CLEAR_TAP_COUNT_TIME=400,$e([$w],Gi,"isTouchDevice",1);var zw=Gi,hl=class extends we{onclick(t,e){this._register(ve(t,it.CLICK,s=>e(new Hr(os(t),s))))}onmousedown(t,e){this._register(ve(t,it.MOUSE_DOWN,s=>e(new Hr(os(t),s))))}onmouseover(t,e){this._register(ve(t,it.MOUSE_OVER,s=>e(new Hr(os(t),s))))}onmouseleave(t,e){this._register(ve(t,it.MOUSE_LEAVE,s=>e(new Hr(os(t),s))))}onkeydown(t,e){this._register(ve(t,it.KEY_DOWN,s=>e(new jc(s))))}onkeyup(t,e){this._register(ve(t,it.KEY_UP,s=>e(new jc(s))))}oninput(t,e){this._register(ve(t,it.INPUT,e))}onblur(t,e){this._register(ve(t,it.BLUR,e))}onfocus(t,e){this._register(ve(t,it.FOCUS,e))}onchange(t,e){this._register(ve(t,it.CHANGE,e))}ignoreGesture(t){return zw.ignoreTarget(t)}},Rc=11,Fw=class extends hl{constructor(t){super(),this._onActivate=t.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=t.bgWidth+"px",this.bgDomNode.style.height=t.bgHeight+"px",typeof t.top<"u"&&(this.bgDomNode.style.top="0px"),typeof t.left<"u"&&(this.bgDomNode.style.left="0px"),typeof t.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof t.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=t.className,this.domNode.style.position="absolute",this.domNode.style.width=Rc+"px",this.domNode.style.height=Rc+"px",typeof t.top<"u"&&(this.domNode.style.top=t.top+"px"),typeof t.left<"u"&&(this.domNode.style.left=t.left+"px"),typeof t.bottom<"u"&&(this.domNode.style.bottom=t.bottom+"px"),typeof t.right<"u"&&(this.domNode.style.right=t.right+"px"),this._pointerMoveMonitor=this._register(new rf),this._register(Ic(this.bgDomNode,it.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._register(Ic(this.domNode,it.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._pointerdownRepeatTimer=this._register(new Lw),this._pointerdownScheduleRepeatTimer=this._register(new cl)}_arrowPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,os(t))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(e,200),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,s=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),t.preventDefault()}},Uw=class ta{constructor(e,s,i,n,o,a,l){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(s=s|0,i=i|0,n=n|0,o=o|0,a=a|0,l=l|0),this.rawScrollLeft=n,this.rawScrollTop=l,s<0&&(s=0),n+s>i&&(n=i-s),n<0&&(n=0),o<0&&(o=0),l+o>a&&(l=a-o),l<0&&(l=0),this.width=s,this.scrollWidth=i,this.scrollLeft=n,this.height=o,this.scrollHeight=a,this.scrollTop=l}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,s){return new ta(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,s?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,s?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new ta(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,s){let i=this.width!==e.width,n=this.scrollWidth!==e.scrollWidth,o=this.scrollLeft!==e.scrollLeft,a=this.height!==e.height,l=this.scrollHeight!==e.scrollHeight,c=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:s,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:i,scrollWidthChanged:n,scrollLeftChanged:o,heightChanged:a,scrollHeightChanged:l,scrollTopChanged:c}}},Hw=class extends we{constructor(t){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._smoothScrollDuration=t.smoothScrollDuration,this._scheduleAtNextAnimationFrame=t.scheduleAtNextAnimationFrame,this._state=new Uw(t.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(t){this._smoothScrollDuration=t}validateScrollPosition(t){return this._state.withScrollPosition(t)}getScrollDimensions(){return this._state}setScrollDimensions(t,e){let s=this._state.withScrollDimensions(t,e);this._setState(s,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(t){let e=this._state.withScrollPosition(t);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(e,!1)}setScrollPositionSmooth(t,e){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(t);if(this._smoothScrolling){t={scrollLeft:typeof t.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:t.scrollLeft,scrollTop:typeof t.scrollTop>"u"?this._smoothScrolling.to.scrollTop:t.scrollTop};let s=this._state.withScrollPosition(t);if(this._smoothScrolling.to.scrollLeft===s.scrollLeft&&this._smoothScrolling.to.scrollTop===s.scrollTop)return;let i;e?i=new Dc(this._smoothScrolling.from,s,this._smoothScrolling.startTime,this._smoothScrolling.duration):i=this._smoothScrolling.combine(this._state,s,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=i}else{let s=this._state.withScrollPosition(t);this._smoothScrolling=Dc.start(this._state,s,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let t=this._smoothScrolling.tick(),e=this._state.withScrollPosition(t);if(this._setState(e,!0),!!this._smoothScrolling){if(t.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(t,e){let s=this._state;s.equals(t)||(this._state=t,this._onScroll.fire(this._state.createScrollEvent(s,e)))}},Mc=class{constructor(t,e,s){this.scrollLeft=t,this.scrollTop=e,this.isDone=s}};function mo(t,e){let s=e-t;return function(i){return t+s*qw(i)}}function Ww(t,e,s){return function(i){return i<s?t(i/s):e((i-s)/(1-s))}}var Dc=class sa{constructor(e,s,i,n){this.from=e,this.to=s,this.duration=n,this.startTime=i,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(e,s,i){if(Math.abs(e-s)>2.5*i){let n,o;return e<s?(n=e+.75*i,o=s-.75*i):(n=e-.75*i,o=s+.75*i),Ww(mo(e,n),mo(o,s),.33)}return mo(e,s)}dispose(){this.animationFrameDisposable!==null&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(e){this.to=e.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(e){let s=(e-this.startTime)/this.duration;if(s<1){let i=this.scrollLeft(s),n=this.scrollTop(s);return new Mc(i,n,!1)}return new Mc(this.to.scrollLeft,this.to.scrollTop,!0)}combine(e,s,i){return sa.start(e,s,i)}static start(e,s,i){i=i+10;let n=Date.now()-10;return new sa(e,s,n,i)}};function Kw(t){return Math.pow(t,3)}function qw(t){return 1-Kw(1-t)}var Gw=class extends we{constructor(t,e,s){super(),this._visibility=t,this._visibleClassName=e,this._invisibleClassName=s,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new cl)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this._updateShouldBeVisible())}setShouldBeVisible(t){this._rawShouldBeVisible=t,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){let t=this._applyVisibilitySetting();this._shouldBeVisible!==t&&(this._shouldBeVisible=t,this.ensureVisibility())}setIsNeeded(t){this._isNeeded!==t&&(this._isNeeded=t,this.ensureVisibility())}setDomNode(t){this._domNode=t,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(t){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(t?" fade":"")))}},Yw=140,nf=class extends hl{constructor(t){super(),this._lazyRender=t.lazyRender,this._host=t.host,this._scrollable=t.scrollable,this._scrollByPage=t.scrollByPage,this._scrollbarState=t.scrollbarState,this._visibilityController=this._register(new Gw(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new rf),this._shouldRender=!0,this.domNode=rr(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(ve(this.domNode.domNode,it.POINTER_DOWN,e=>this._domNodePointerDown(e)))}_createArrow(t){let e=this._register(new Fw(t));this.domNode.domNode.appendChild(e.bgDomNode),this.domNode.domNode.appendChild(e.domNode)}_createSlider(t,e,s,i){this.slider=rr(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(t),this.slider.setLeft(e),typeof s=="number"&&this.slider.setWidth(s),typeof i=="number"&&this.slider.setHeight(i),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(ve(this.slider.domNode,it.POINTER_DOWN,n=>{n.button===0&&(n.preventDefault(),this._sliderPointerDown(n))})),this.onclick(this.slider.domNode,n=>{n.leftButton&&n.stopPropagation()})}_onElementSize(t){return this._scrollbarState.setVisibleSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(t){return this._scrollbarState.setScrollSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(t){return this._scrollbarState.setScrollPosition(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(t){t.target===this.domNode.domNode&&this._onPointerDown(t)}delegatePointerDown(t){let e=this.domNode.domNode.getClientRects()[0].top,s=e+this._scrollbarState.getSliderPosition(),i=e+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),n=this._sliderPointerPosition(t);s<=n&&n<=i?t.button===0&&(t.preventDefault(),this._sliderPointerDown(t)):this._onPointerDown(t)}_onPointerDown(t){let e,s;if(t.target===this.domNode.domNode&&typeof t.offsetX=="number"&&typeof t.offsetY=="number")e=t.offsetX,s=t.offsetY;else{let n=Ow(this.domNode.domNode);e=t.pageX-n.left,s=t.pageY-n.top}let i=this._pointerDownRelativePosition(e,s);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(i):this._scrollbarState.getDesiredScrollPositionFromOffset(i)),t.button===0&&(t.preventDefault(),this._sliderPointerDown(t))}_sliderPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=this._sliderPointerPosition(t),s=this._sliderOrthogonalPointerPosition(t),i=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,n=>{let o=this._sliderOrthogonalPointerPosition(n),a=Math.abs(o-s);if(Zu&&a>Yw){this._setDesiredScrollPositionNow(i.getScrollPosition());return}let l=this._sliderPointerPosition(n)-e;this._setDesiredScrollPositionNow(i.getDesiredScrollPositionFromDelta(l))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(t){let e={};this.writeScrollPosition(e,t),this._scrollable.setScrollPositionNow(e)}updateScrollbarSize(t){this._updateScrollbarSize(t),this._scrollbarState.setScrollbarSize(t),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},of=class ia{constructor(e,s,i,n,o,a){this._scrollbarSize=Math.round(s),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=n,this._scrollSize=o,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new ia(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){let s=Math.round(e);return this._visibleSize!==s?(this._visibleSize=s,this._refreshComputedValues(),!0):!1}setScrollSize(e){let s=Math.round(e);return this._scrollSize!==s?(this._scrollSize=s,this._refreshComputedValues(),!0):!1}setScrollPosition(e){let s=Math.round(e);return this._scrollPosition!==s?(this._scrollPosition=s,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,s,i,n,o){let a=Math.max(0,i-e),l=Math.max(0,a-2*s),c=n>0&&n>i;if(!c)return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(l),computedSliderRatio:0,computedSliderPosition:0};let d=Math.round(Math.max(20,Math.floor(i*l/n))),u=(l-d)/(n-i),h=o*u;return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(d),computedSliderRatio:u,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){let e=ia._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;let s=e-this._arrowSize-this._computedSliderSize/2;return Math.round(s/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;let s=e-this._arrowSize,i=this._scrollPosition;return s<this._computedSliderPosition?i-=this._visibleSize:i+=this._visibleSize,i}getDesiredScrollPositionFromDelta(e){if(!this._computedIsNeeded)return 0;let s=this._computedSliderPosition+e;return Math.round(s/this._computedSliderRatio)}},Xw=class extends nf{constructor(t,e,s){let i=t.getScrollDimensions(),n=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new of(e.horizontalHasArrows?e.arrowSize:0,e.horizontal===2?0:e.horizontalScrollbarSize,e.vertical===2?0:e.verticalScrollbarSize,i.width,i.scrollWidth,n.scrollLeft),visibility:e.horizontal,extraScrollbarClassName:"horizontal",scrollable:t,scrollByPage:e.scrollByPage}),e.horizontalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((e.horizontalScrollbarSize-e.horizontalSliderSize)/2),0,void 0,e.horizontalSliderSize)}_updateSlider(t,e){this.slider.setWidth(t),this.slider.setLeft(e)}_renderDomNode(t,e){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(t.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return t}_sliderPointerPosition(t){return t.pageX}_sliderOrthogonalPointerPosition(t){return t.pageY}_updateScrollbarSize(t){this.slider.setHeight(t)}writeScrollPosition(t,e){t.scrollLeft=e}updateOptions(t){this.updateScrollbarSize(t.horizontal===2?0:t.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._visibilityController.setVisibility(t.horizontal),this._scrollByPage=t.scrollByPage}},Jw=class extends nf{constructor(t,e,s){let i=t.getScrollDimensions(),n=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new of(e.verticalHasArrows?e.arrowSize:0,e.vertical===2?0:e.verticalScrollbarSize,0,i.height,i.scrollHeight,n.scrollTop),visibility:e.vertical,extraScrollbarClassName:"vertical",scrollable:t,scrollByPage:e.scrollByPage}),e.verticalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((e.verticalScrollbarSize-e.verticalSliderSize)/2),e.verticalSliderSize,void 0)}_updateSlider(t,e){this.slider.setHeight(t),this.slider.setTop(e)}_renderDomNode(t,e){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(t.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return e}_sliderPointerPosition(t){return t.pageY}_sliderOrthogonalPointerPosition(t){return t.pageX}_updateScrollbarSize(t){this.slider.setWidth(t)}writeScrollPosition(t,e){t.scrollTop=e}updateOptions(t){this.updateScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(t.vertical),this._scrollByPage=t.scrollByPage}},Qw=500,Pc=50,Zw=class{constructor(t,e,s){this.timestamp=t,this.deltaX=e,this.deltaY=s,this.score=0}},ra=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let e=1,s=0,i=1,n=this._rear;do{let o=n===this._front?e:Math.pow(2,-i);if(e-=o,s+=this._memory[n].score*o,n===this._front)break;n=(this._capacity+n-1)%this._capacity,i++}while(!0);return s<=.5}acceptStandardWheelEvent(e){if(al){let s=os(e.browserEvent),i=dw(s);this.accept(Date.now(),e.deltaX*i,e.deltaY*i)}else this.accept(Date.now(),e.deltaX,e.deltaY)}accept(e,s,i){let n=null,o=new Zw(e,s,i);this._front===-1&&this._rear===-1?(this._memory[0]=o,this._front=0,this._rear=0):(n=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=o),o.score=this._computeScore(o,n)}_computeScore(e,s){if(Math.abs(e.deltaX)>0&&Math.abs(e.deltaY)>0)return 1;let i=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(i+=.25),s){let n=Math.abs(e.deltaX),o=Math.abs(e.deltaY),a=Math.abs(s.deltaX),l=Math.abs(s.deltaY),c=Math.max(Math.min(n,a),1),d=Math.max(Math.min(o,l),1),u=Math.max(n,a),h=Math.max(o,l);u%c===0&&h%d===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};ra.INSTANCE=new ra;var eV=ra,tV=class extends hl{constructor(t,e,s){super(),this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new ne),this.onWillScroll=this._onWillScroll.event,this._options=iV(e),this._scrollable=s,this._register(this._scrollable.onScroll(n=>{this._onWillScroll.fire(n),this._onDidScroll(n),this._onScroll.fire(n)}));let i={onMouseWheel:n=>this._onMouseWheel(n),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new Jw(this._scrollable,this._options,i)),this._horizontalScrollbar=this._register(new Xw(this._scrollable,this._options,i)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(t),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=rr(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=rr(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=rr(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,n=>this._onMouseOver(n)),this.onmouseleave(this._listenOnDomNode,n=>this._onMouseLeave(n)),this._hideTimeout=this._register(new cl),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=Qs(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(t){this._verticalScrollbar.delegatePointerDown(t)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(t){this._scrollable.setScrollDimensions(t,!1)}updateClassName(t){this._options.className=t,us&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(t){typeof t.handleMouseWheel<"u"&&(this._options.handleMouseWheel=t.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof t.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=t.mouseWheelScrollSensitivity),typeof t.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=t.fastScrollSensitivity),typeof t.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=t.scrollPredominantAxis),typeof t.horizontal<"u"&&(this._options.horizontal=t.horizontal),typeof t.vertical<"u"&&(this._options.vertical=t.vertical),typeof t.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=t.horizontalScrollbarSize),typeof t.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=t.verticalScrollbarSize),typeof t.scrollByPage<"u"&&(this._options.scrollByPage=t.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(t){this._revealOnScroll=t}delegateScrollFromMouseWheelEvent(t){this._onMouseWheel(new Ac(t))}_setListeningToMouseWheel(t){if(this._mouseWheelToDispose.length>0!==t&&(this._mouseWheelToDispose=Qs(this._mouseWheelToDispose),t)){let e=s=>{this._onMouseWheel(new Ac(s))};this._mouseWheelToDispose.push(ve(this._listenOnDomNode,it.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(t){if(t.browserEvent?.defaultPrevented)return;let e=eV.INSTANCE;e.acceptStandardWheelEvent(t);let s=!1;if(t.deltaY||t.deltaX){let n=t.deltaY*this._options.mouseWheelScrollSensitivity,o=t.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&o+n===0?o=n=0:Math.abs(n)>=Math.abs(o)?o=0:n=0),this._options.flipAxes&&([n,o]=[o,n]);let a=!us&&t.browserEvent&&t.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!o&&(o=n,n=0),t.browserEvent&&t.browserEvent.altKey&&(o=o*this._options.fastScrollSensitivity,n=n*this._options.fastScrollSensitivity);let l=this._scrollable.getFutureScrollPosition(),c={};if(n){let d=Pc*n,u=l.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(c,u)}if(o){let d=Pc*o,u=l.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(c,u)}c=this._scrollable.validateScrollPosition(c),(l.scrollLeft!==c.scrollLeft||l.scrollTop!==c.scrollTop)&&(this._options.mouseWheelSmoothScroll&&e.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(c):this._scrollable.setScrollPositionNow(c),s=!0)}let i=s;!i&&this._options.alwaysConsumeMouseWheel&&(i=!0),!i&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(i=!0),i&&(t.preventDefault(),t.stopPropagation())}_onDidScroll(t){this._shouldRender=this._horizontalScrollbar.onDidScroll(t)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(t)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let t=this._scrollable.getCurrentScrollPosition(),e=t.scrollTop>0,s=t.scrollLeft>0,i=s?" left":"",n=e?" top":"",o=s||e?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${i}`),this._topShadowDomNode.setClassName(`shadow${n}`),this._topLeftShadowDomNode.setClassName(`shadow${o}${n}${i}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(t){this._mouseIsOver=!1,this._hide()}_onMouseOver(t){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),Qw)}},sV=class extends tV{constructor(t,e,s){super(t,e,s)}setScrollPosition(t){t.reuseAnimation?this._scrollable.setScrollPositionSmooth(t,t.reuseAnimation):this._scrollable.setScrollPositionNow(t)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function iV(t){let e={lazyRender:typeof t.lazyRender<"u"?t.lazyRender:!1,className:typeof t.className<"u"?t.className:"",useShadows:typeof t.useShadows<"u"?t.useShadows:!0,handleMouseWheel:typeof t.handleMouseWheel<"u"?t.handleMouseWheel:!0,flipAxes:typeof t.flipAxes<"u"?t.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof t.consumeMouseWheelIfScrollbarIsNeeded<"u"?t.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof t.alwaysConsumeMouseWheel<"u"?t.alwaysConsumeMouseWheel:!1,scrollYToX:typeof t.scrollYToX<"u"?t.scrollYToX:!1,mouseWheelScrollSensitivity:typeof t.mouseWheelScrollSensitivity<"u"?t.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof t.fastScrollSensitivity<"u"?t.fastScrollSensitivity:5,scrollPredominantAxis:typeof t.scrollPredominantAxis<"u"?t.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof t.mouseWheelSmoothScroll<"u"?t.mouseWheelSmoothScroll:!0,arrowSize:typeof t.arrowSize<"u"?t.arrowSize:11,listenOnDomNode:typeof t.listenOnDomNode<"u"?t.listenOnDomNode:null,horizontal:typeof t.horizontal<"u"?t.horizontal:1,horizontalScrollbarSize:typeof t.horizontalScrollbarSize<"u"?t.horizontalScrollbarSize:10,horizontalSliderSize:typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:0,horizontalHasArrows:typeof t.horizontalHasArrows<"u"?t.horizontalHasArrows:!1,vertical:typeof t.vertical<"u"?t.vertical:1,verticalScrollbarSize:typeof t.verticalScrollbarSize<"u"?t.verticalScrollbarSize:10,verticalHasArrows:typeof t.verticalHasArrows<"u"?t.verticalHasArrows:!1,verticalSliderSize:typeof t.verticalSliderSize<"u"?t.verticalSliderSize:0,scrollByPage:typeof t.scrollByPage<"u"?t.scrollByPage:!1};return e.horizontalSliderSize=typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof t.verticalSliderSize<"u"?t.verticalSliderSize:e.verticalScrollbarSize,us&&(e.className+=" mac"),e}var na=class extends we{constructor(t,e,s,i,n,o,a,l){super(),this._bufferService=s,this._optionsService=a,this._renderService=l,this._onRequestScrollLines=this._register(new ne),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let c=this._register(new Hw({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:d=>dl(i.window,d)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{c.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new sV(e,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},c)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(n.onProtocolChange(d=>{this._scrollableElement.updateOptions({handleMouseWheel:!(d&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(ct.runAndSubscribe(o.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=o.colors.background.css})),t.appendChild(this._scrollableElement.getDomNode()),this._register(Me(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=i.mainDocument.createElement("style"),e.appendChild(this._styleElement),this._register(Me(()=>this._styleElement.remove())),this._register(ct.runAndSubscribe(o.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${o.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${o.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${o.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
722
|
+
`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(d=>this._handleScroll(d)))}scrollLines(t){let e=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:e.scrollTop+t*this._renderService.dimensions.css.cell.height})}scrollToLine(t,e){e&&(this._latestYDisp=t),this._scrollableElement.setScrollPosition({reuseAnimation:!e,scrollTop:t*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(t){t!==void 0&&(this._latestYDisp=t),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(t=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,t!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:t*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(t){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let e=Math.round(t.scrollTop/this._renderService.dimensions.css.cell.height),s=e-this._bufferService.buffer.ydisp;s!==0&&(this._latestYDisp=e,this._onRequestScrollLines.fire(s)),this._isHandlingScroll=!1}};na=$e([le(2,wt),le(3,ys),le(4,Bu),le(5,Ri),le(6,Vt),le(7,Ss)],na);var oa=class extends we{constructor(t,e,s,i,n){super(),this._screenElement=t,this._bufferService=e,this._coreBrowserService=s,this._decorationService=i,this._renderService=n,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(o=>this._removeDecoration(o))),this._register(Me(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let t of this._decorationService.decorations)this._renderDecoration(t);this._dimensionsChanged=!1}_renderDecoration(t){this._refreshStyle(t),this._dimensionsChanged&&this._refreshXPosition(t)}_createElement(t){let e=this._coreBrowserService.mainDocument.createElement("div");e.classList.add("xterm-decoration"),e.classList.toggle("xterm-decoration-top-layer",t?.options?.layer==="top"),e.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,e.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,e.style.top=`${(t.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,e.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let s=t.options.x??0;return s&&s>this._bufferService.cols&&(e.style.display="none"),this._refreshXPosition(t,e),e}_refreshStyle(t){let e=t.marker.line-this._bufferService.buffers.active.ydisp;if(e<0||e>=this._bufferService.rows)t.element&&(t.element.style.display="none",t.onRenderEmitter.fire(t.element));else{let s=this._decorationElements.get(t);s||(s=this._createElement(t),t.element=s,this._decorationElements.set(t,s),this._container.appendChild(s),t.onDispose(()=>{this._decorationElements.delete(t),s.remove()})),s.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(s.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,s.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,s.style.top=`${e*this._renderService.dimensions.css.cell.height}px`,s.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),t.onRenderEmitter.fire(s)}}_refreshXPosition(t,e=t.element){if(!e)return;let s=t.options.x??0;(t.options.anchor||"left")==="right"?e.style.right=s?`${s*this._renderService.dimensions.css.cell.width}px`:"":e.style.left=s?`${s*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(t){this._decorationElements.get(t)?.remove(),this._decorationElements.delete(t),t.dispose()}};oa=$e([le(1,wt),le(2,ys),le(3,Er),le(4,Ss)],oa);var rV=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(t){if(t.options.overviewRulerOptions){for(let e of this._zones)if(e.color===t.options.overviewRulerOptions.color&&e.position===t.options.overviewRulerOptions.position){if(this._lineIntersectsZone(e,t.marker.line))return;if(this._lineAdjacentToZone(e,t.marker.line,t.options.overviewRulerOptions.position)){this._addLineToZone(e,t.marker.line);return}}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=t.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=t.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=t.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=t.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:t.options.overviewRulerOptions.color,position:t.options.overviewRulerOptions.position,startBufferLine:t.marker.line,endBufferLine:t.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(t){this._linePadding=t}_lineIntersectsZone(t,e){return e>=t.startBufferLine&&e<=t.endBufferLine}_lineAdjacentToZone(t,e,s){return e>=t.startBufferLine-this._linePadding[s||"full"]&&e<=t.endBufferLine+this._linePadding[s||"full"]}_addLineToZone(t,e){t.startBufferLine=Math.min(t.startBufferLine,e),t.endBufferLine=Math.max(t.endBufferLine,e)}},ts={full:0,left:0,center:0,right:0},js={full:0,left:0,center:0,right:0},$i={full:0,left:0,center:0,right:0},bn=class extends we{constructor(t,e,s,i,n,o,a,l){super(),this._viewportElement=t,this._screenElement=e,this._bufferService=s,this._decorationService=i,this._renderService=n,this._optionsService=o,this._themeService=a,this._coreBrowserService=l,this._colorZoneStore=new rV,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(Me(()=>this._canvas?.remove()));let c=this._canvas.getContext("2d");if(c)this._ctx=c;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let t=Math.floor((this._canvas.width-1)/3),e=Math.ceil((this._canvas.width-1)/3);js.full=this._canvas.width,js.left=t,js.center=e,js.right=t,this._refreshDrawHeightConstants(),$i.full=1,$i.left=1,$i.center=1+js.left,$i.right=1+js.left+js.center}_refreshDrawHeightConstants(){ts.full=Math.round(2*this._coreBrowserService.dpr);let t=this._canvas.height/this._bufferService.buffer.lines.length,e=Math.round(Math.max(Math.min(t,12),6)*this._coreBrowserService.dpr);ts.left=e,ts.center=e,ts.right=e}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*ts.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let e of this._decorationService.decorations)this._colorZoneStore.addDecoration(e);this._ctx.lineWidth=1,this._renderRulerOutline();let t=this._colorZoneStore.zones;for(let e of t)e.position!=="full"&&this._renderColorZone(e);for(let e of t)e.position==="full"&&this._renderColorZone(e);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(t){this._ctx.fillStyle=t.color,this._ctx.fillRect($i[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-ts[t.position||"full"]/2),js[t.position||"full"],Math.round((this._canvas.height-1)*((t.endBufferLine-t.startBufferLine)/this._bufferService.buffers.active.lines.length)+ts[t.position||"full"]))}_queueRefresh(t,e){this._shouldUpdateDimensions=t||this._shouldUpdateDimensions,this._shouldUpdateAnchor=e||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};bn=$e([le(2,wt),le(3,Er),le(4,Ss),le(5,Vt),le(6,Ri),le(7,ys)],bn);var Q;(t=>(t.NUL="\0",t.SOH="",t.STX="",t.ETX="",t.EOT="",t.ENQ="",t.ACK="",t.BEL="\x07",t.BS="\b",t.HT=" ",t.LF=`
|
|
723
|
+
`,t.VT="\v",t.FF="\f",t.CR="\r",t.SO="",t.SI="",t.DLE="",t.DC1="",t.DC2="",t.DC3="",t.DC4="",t.NAK="",t.SYN="",t.ETB="",t.CAN="",t.EM="",t.SUB="",t.ESC="\x1B",t.FS="",t.GS="",t.RS="",t.US="",t.SP=" ",t.DEL=""))(Q||={});var ln;(t=>(t.PAD="",t.HOP="",t.BPH="",t.NBH="",t.IND="",t.NEL="
",t.SSA="",t.ESA="",t.HTS="",t.HTJ="",t.VTS="",t.PLD="",t.PLU="",t.RI="",t.SS2="",t.SS3="",t.DCS="",t.PU1="",t.PU2="",t.STS="",t.CCH="",t.MW="",t.SPA="",t.EPA="",t.SOS="",t.SGCI="",t.SCI="",t.CSI="",t.ST="",t.OSC="",t.PM="",t.APC=""))(ln||={});var af;(t=>t.ST=`${Q.ESC}\\`)(af||={});var aa=class{constructor(t,e,s,i,n,o){this._textarea=t,this._compositionView=e,this._bufferService=s,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(t){this._compositionView.textContent=t.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(t){if(this._isComposing||this._isSendingComposition){if(t.keyCode===20||t.keyCode===229||t.keyCode===16||t.keyCode===17||t.keyCode===18)return!1;this._finalizeComposition(!1)}return t.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(t){if(this._compositionView.classList.remove("active"),this._isComposing=!1,t){let e={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let s;e.start+=this._dataAlreadySent.length,this._isComposing?s=this._textarea.value.substring(e.start,this._compositionPosition.start):s=this._textarea.value.substring(e.start),s.length>0&&this._coreService.triggerDataEvent(s,!0)}},0)}else{this._isSendingComposition=!1;let e=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(e,!0)}}_handleAnyTextareaChanges(){let t=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let e=this._textarea.value,s=e.replace(t,"");this._dataAlreadySent=s,e.length>t.length?this._coreService.triggerDataEvent(s,!0):e.length<t.length?this._coreService.triggerDataEvent(`${Q.DEL}`,!0):e.length===t.length&&e!==t&&this._coreService.triggerDataEvent(e,!0)}},0)}updateCompositionElements(t){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let e=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),s=this._renderService.dimensions.css.cell.height,i=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,n=e*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=n+"px",this._compositionView.style.top=i+"px",this._compositionView.style.height=s+"px",this._compositionView.style.lineHeight=s+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let o=this._compositionView.getBoundingClientRect();this._textarea.style.left=n+"px",this._textarea.style.top=i+"px",this._textarea.style.width=Math.max(o.width,1)+"px",this._textarea.style.height=Math.max(o.height,1)+"px",this._textarea.style.lineHeight=o.height+"px"}t||setTimeout(()=>this.updateCompositionElements(!0),0)}}};aa=$e([le(2,wt),le(3,Vt),le(4,ai),le(5,Ss)],aa);var rt=0,nt=0,ot=0,Be=0,Lc={css:"#00000000",rgba:0},Ke;(t=>{function e(n,o,a,l){return l!==void 0?`#${Ks(n)}${Ks(o)}${Ks(a)}${Ks(l)}`:`#${Ks(n)}${Ks(o)}${Ks(a)}`}t.toCss=e;function s(n,o,a,l=255){return(n<<24|o<<16|a<<8|l)>>>0}t.toRgba=s;function i(n,o,a,l){return{css:t.toCss(n,o,a,l),rgba:t.toRgba(n,o,a,l)}}t.toColor=i})(Ke||={});var Te;(t=>{function e(c,d){if(Be=(d.rgba&255)/255,Be===1)return{css:d.css,rgba:d.rgba};let u=d.rgba>>24&255,h=d.rgba>>16&255,f=d.rgba>>8&255,m=c.rgba>>24&255,p=c.rgba>>16&255,g=c.rgba>>8&255;rt=m+Math.round((u-m)*Be),nt=p+Math.round((h-p)*Be),ot=g+Math.round((f-g)*Be);let _=Ke.toCss(rt,nt,ot),v=Ke.toRgba(rt,nt,ot);return{css:_,rgba:v}}t.blend=e;function s(c){return(c.rgba&255)===255}t.isOpaque=s;function i(c,d,u){let h=cn.ensureContrastRatio(c.rgba,d.rgba,u);if(h)return Ke.toColor(h>>24&255,h>>16&255,h>>8&255)}t.ensureContrastRatio=i;function n(c){let d=(c.rgba|255)>>>0;return[rt,nt,ot]=cn.toChannels(d),{css:Ke.toCss(rt,nt,ot),rgba:d}}t.opaque=n;function o(c,d){return Be=Math.round(d*255),[rt,nt,ot]=cn.toChannels(c.rgba),{css:Ke.toCss(rt,nt,ot,Be),rgba:Ke.toRgba(rt,nt,ot,Be)}}t.opacity=o;function a(c,d){return Be=c.rgba&255,o(c,Be*d/255)}t.multiplyOpacity=a;function l(c){return[c.rgba>>24&255,c.rgba>>16&255,c.rgba>>8&255]}t.toColorRGB=l})(Te||={});var Le;(t=>{let e,s;try{let n=document.createElement("canvas");n.width=1,n.height=1;let o=n.getContext("2d",{willReadFrequently:!0});o&&(e=o,e.globalCompositeOperation="copy",s=e.createLinearGradient(0,0,1,1))}catch{}function i(n){if(n.match(/#[\da-f]{3,8}/i))switch(n.length){case 4:return rt=parseInt(n.slice(1,2).repeat(2),16),nt=parseInt(n.slice(2,3).repeat(2),16),ot=parseInt(n.slice(3,4).repeat(2),16),Ke.toColor(rt,nt,ot);case 5:return rt=parseInt(n.slice(1,2).repeat(2),16),nt=parseInt(n.slice(2,3).repeat(2),16),ot=parseInt(n.slice(3,4).repeat(2),16),Be=parseInt(n.slice(4,5).repeat(2),16),Ke.toColor(rt,nt,ot,Be);case 7:return{css:n,rgba:(parseInt(n.slice(1),16)<<8|255)>>>0};case 9:return{css:n,rgba:parseInt(n.slice(1),16)>>>0}}let o=n.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(o)return rt=parseInt(o[1]),nt=parseInt(o[2]),ot=parseInt(o[3]),Be=Math.round((o[5]===void 0?1:parseFloat(o[5]))*255),Ke.toColor(rt,nt,ot,Be);if(!e||!s)throw new Error("css.toColor: Unsupported css format");if(e.fillStyle=s,e.fillStyle=n,typeof e.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(e.fillRect(0,0,1,1),[rt,nt,ot,Be]=e.getImageData(0,0,1,1).data,Be!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:Ke.toRgba(rt,nt,ot,Be),css:n}}t.toColor=i})(Le||={});var mt;(t=>{function e(i){return s(i>>16&255,i>>8&255,i&255)}t.relativeLuminance=e;function s(i,n,o){let a=i/255,l=n/255,c=o/255,d=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),u=l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4),h=c<=.03928?c/12.92:Math.pow((c+.055)/1.055,2.4);return d*.2126+u*.7152+h*.0722}t.relativeLuminance2=s})(mt||={});var cn;(t=>{function e(a,l){if(Be=(l&255)/255,Be===1)return l;let c=l>>24&255,d=l>>16&255,u=l>>8&255,h=a>>24&255,f=a>>16&255,m=a>>8&255;return rt=h+Math.round((c-h)*Be),nt=f+Math.round((d-f)*Be),ot=m+Math.round((u-m)*Be),Ke.toRgba(rt,nt,ot)}t.blend=e;function s(a,l,c){let d=mt.relativeLuminance(a>>8),u=mt.relativeLuminance(l>>8);if(_s(d,u)<c){if(u<d){let m=i(a,l,c),p=_s(d,mt.relativeLuminance(m>>8));if(p<c){let g=n(a,l,c),_=_s(d,mt.relativeLuminance(g>>8));return p>_?m:g}return m}let h=n(a,l,c),f=_s(d,mt.relativeLuminance(h>>8));if(f<c){let m=i(a,l,c),p=_s(d,mt.relativeLuminance(m>>8));return f>p?h:m}return h}}t.ensureContrastRatio=s;function i(a,l,c){let d=a>>24&255,u=a>>16&255,h=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));for(;g<c&&(f>0||m>0||p>0);)f-=Math.max(0,Math.ceil(f*.1)),m-=Math.max(0,Math.ceil(m*.1)),p-=Math.max(0,Math.ceil(p*.1)),g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));return(f<<24|m<<16|p<<8|255)>>>0}t.reduceLuminance=i;function n(a,l,c){let d=a>>24&255,u=a>>16&255,h=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));for(;g<c&&(f<255||m<255||p<255);)f=Math.min(255,f+Math.ceil((255-f)*.1)),m=Math.min(255,m+Math.ceil((255-m)*.1)),p=Math.min(255,p+Math.ceil((255-p)*.1)),g=_s(mt.relativeLuminance2(f,m,p),mt.relativeLuminance2(d,u,h));return(f<<24|m<<16|p<<8|255)>>>0}t.increaseLuminance=n;function o(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}t.toChannels=o})(cn||={});function Ks(t){let e=t.toString(16);return e.length<2?"0"+e:e}function _s(t,e){return t<e?(e+.05)/(t+.05):(t+.05)/(e+.05)}var nV=class extends Ar{constructor(t,e,s){super(),this.content=0,this.combinedData="",this.fg=t.fg,this.bg=t.bg,this.combinedData=e,this._width=s}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(t){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},yn=class{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Kt}register(t){let e={id:this._nextCharacterJoinerId++,handler:t};return this._characterJoiners.push(e),e.id}deregister(t){for(let e=0;e<this._characterJoiners.length;e++)if(this._characterJoiners[e].id===t)return this._characterJoiners.splice(e,1),!0;return!1}getJoinedCharacters(t){if(this._characterJoiners.length===0)return[];let e=this._bufferService.buffer.lines.get(t);if(!e||e.length===0)return[];let s=[],i=e.translateToString(!0),n=0,o=0,a=0,l=e.getFg(0),c=e.getBg(0);for(let d=0;d<e.getTrimmedLength();d++)if(e.loadCell(d,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==l||this._workCell.bg!==c){if(d-n>1){let u=this._getJoinedRanges(i,a,o,e,n);for(let h=0;h<u.length;h++)s.push(u[h])}n=d,a=o,l=this._workCell.fg,c=this._workCell.bg}o+=this._workCell.getChars().length||Is.length}if(this._bufferService.cols-n>1){let d=this._getJoinedRanges(i,a,o,e,n);for(let u=0;u<d.length;u++)s.push(d[u])}return s}_getJoinedRanges(t,e,s,i,n){let o=t.substring(e,s),a=[];try{a=this._characterJoiners[0].handler(o)}catch(l){console.error(l)}for(let l=1;l<this._characterJoiners.length;l++)try{let c=this._characterJoiners[l].handler(o);for(let d=0;d<c.length;d++)yn._mergeRanges(a,c[d])}catch(c){console.error(c)}return this._stringRangesToCellRanges(a,i,n),a}_stringRangesToCellRanges(t,e,s){let i=0,n=!1,o=0,a=t[i];if(a){for(let l=s;l<this._bufferService.cols;l++){let c=e.getWidth(l),d=e.getString(l).length||Is.length;if(c!==0){if(!n&&a[0]<=o&&(a[0]=l,n=!0),a[1]<=o){if(a[1]=l,a=t[++i],!a)break;a[0]<=o?(a[0]=l,n=!0):n=!1}o+=d}}a&&(a[1]=this._bufferService.cols)}}static _mergeRanges(t,e){let s=!1;for(let i=0;i<t.length;i++){let n=t[i];if(s){if(e[1]<=n[0])return t[i-1][1]=e[1],t;if(e[1]<=n[1])return t[i-1][1]=Math.max(e[1],n[1]),t.splice(i,1),t;t.splice(i,1),i--}else{if(e[1]<=n[0])return t.splice(i,0,e),t;if(e[1]<=n[1])return n[0]=Math.min(e[0],n[0]),t;e[0]<n[1]&&(n[0]=Math.min(e[0],n[0]),s=!0);continue}}return s?t[t.length-1][1]=e[1]:t.push(e),t}};yn=$e([le(0,wt)],yn);function oV(t){return 57508<=t&&t<=57558}function aV(t){return 9472<=t&&t<=9631}function lV(t){return oV(t)||aV(t)}function cV(){return{css:{canvas:Wr(),cell:Wr()},device:{canvas:Wr(),cell:Wr(),char:{width:0,height:0,left:0,top:0}}}}function Wr(){return{width:0,height:0}}var la=class{constructor(t,e,s,i,n,o,a){this._document=t,this._characterJoinerService=e,this._optionsService=s,this._coreBrowserService=i,this._coreService=n,this._decorationService=o,this._themeService=a,this._workCell=new Kt,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(t,e,s){this._selectionStart=t,this._selectionEnd=e,this._columnSelectMode=s}createRow(t,e,s,i,n,o,a,l,c,d,u){let h=[],f=this._characterJoinerService.getJoinedCharacters(e),m=this._themeService.colors,p=t.getNoBgTrimmedLength();s&&p<o+1&&(p=o+1);let g,_=0,v="",x=0,b=0,y=0,V=0,C=!1,S=0,w=!1,k=0,T=0,M=[],I=d!==-1&&u!==-1;for(let E=0;E<p;E++){t.loadCell(E,this._workCell);let N=this._workCell.getWidth();if(N===0)continue;let A=!1,D=E>=T,L=E,R=this._workCell;if(f.length>0&&E===f[0][0]&&D){let J=f.shift(),ae=this._isCellInSelection(J[0],e);for(x=J[0]+1;x<J[1];x++)D&&=ae===this._isCellInSelection(x,e);D&&=!s||o<J[0]||o>=J[1],D?(A=!0,R=new nV(this._workCell,t.translateToString(!0,J[0],J[1]),J[1]-J[0]),L=J[1]-1,N=R.getWidth()):T=J[1]}let P=this._isCellInSelection(E,e),O=s&&E===o,z=I&&E>=d&&E<=u,$=!1;this._decorationService.forEachDecorationAtCell(E,e,void 0,J=>{$=!0});let q=R.getChars()||Is;if(q===" "&&(R.isUnderline()||R.isOverline())&&(q=" "),k=N*l-c.get(q,R.isBold(),R.isItalic()),!g)g=this._document.createElement("span");else if(_&&(P&&w||!P&&!w&&R.bg===b)&&(P&&w&&m.selectionForeground||R.fg===y)&&R.extended.ext===V&&z===C&&k===S&&!O&&!A&&!$&&D){R.isInvisible()?v+=Is:v+=q,_++;continue}else _&&(g.textContent=v),g=this._document.createElement("span"),_=0,v="";if(b=R.bg,y=R.fg,V=R.extended.ext,C=z,S=k,w=P,A&&o>=E&&o<=L&&(o=E),!this._coreService.isCursorHidden&&O&&this._coreService.isCursorInitialized){if(M.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&M.push("xterm-cursor-blink"),M.push(i==="bar"?"xterm-cursor-bar":i==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(n)switch(n){case"outline":M.push("xterm-cursor-outline");break;case"block":M.push("xterm-cursor-block");break;case"bar":M.push("xterm-cursor-bar");break;case"underline":M.push("xterm-cursor-underline");break}}if(R.isBold()&&M.push("xterm-bold"),R.isItalic()&&M.push("xterm-italic"),R.isDim()&&M.push("xterm-dim"),R.isInvisible()?v=Is:v=R.getChars()||Is,R.isUnderline()&&(M.push(`xterm-underline-${R.extended.underlineStyle}`),v===" "&&(v=" "),!R.isUnderlineColorDefault()))if(R.isUnderlineColorRGB())g.style.textDecorationColor=`rgb(${Ar.toColorRGB(R.getUnderlineColor()).join(",")})`;else{let J=R.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&R.isBold()&&J<8&&(J+=8),g.style.textDecorationColor=m.ansi[J].css}R.isOverline()&&(M.push("xterm-overline"),v===" "&&(v=" ")),R.isStrikethrough()&&M.push("xterm-strikethrough"),z&&(g.style.textDecoration="underline");let F=R.getFgColor(),W=R.getFgColorMode(),H=R.getBgColor(),U=R.getBgColorMode(),X=!!R.isInverse();if(X){let J=F;F=H,H=J;let ae=W;W=U,U=ae}let K,G,ie=!1;this._decorationService.forEachDecorationAtCell(E,e,void 0,J=>{J.options.layer!=="top"&&ie||(J.backgroundColorRGB&&(U=50331648,H=J.backgroundColorRGB.rgba>>8&16777215,K=J.backgroundColorRGB),J.foregroundColorRGB&&(W=50331648,F=J.foregroundColorRGB.rgba>>8&16777215,G=J.foregroundColorRGB),ie=J.options.layer==="top")}),!ie&&P&&(K=this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque,H=K.rgba>>8&16777215,U=50331648,ie=!0,m.selectionForeground&&(W=50331648,F=m.selectionForeground.rgba>>8&16777215,G=m.selectionForeground)),ie&&M.push("xterm-decoration-top");let te;switch(U){case 16777216:case 33554432:te=m.ansi[H],M.push(`xterm-bg-${H}`);break;case 50331648:te=Ke.toColor(H>>16,H>>8&255,H&255),this._addStyle(g,`background-color:#${Oc((H>>>0).toString(16),"0",6)}`);break;default:X?(te=m.foreground,M.push("xterm-bg-257")):te=m.background}switch(K||R.isDim()&&(K=Te.multiplyOpacity(te,.5)),W){case 16777216:case 33554432:R.isBold()&&F<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(F+=8),this._applyMinimumContrast(g,te,m.ansi[F],R,K,void 0)||M.push(`xterm-fg-${F}`);break;case 50331648:let J=Ke.toColor(F>>16&255,F>>8&255,F&255);this._applyMinimumContrast(g,te,J,R,K,G)||this._addStyle(g,`color:#${Oc(F.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(g,te,m.foreground,R,K,G)||X&&M.push("xterm-fg-257")}M.length&&(g.className=M.join(" "),M.length=0),!O&&!A&&!$&&D?_++:g.textContent=v,k!==this.defaultSpacing&&(g.style.letterSpacing=`${k}px`),h.push(g),E=L}return g&&_&&(g.textContent=v),h}_applyMinimumContrast(t,e,s,i,n,o){if(this._optionsService.rawOptions.minimumContrastRatio===1||lV(i.getCode()))return!1;let a=this._getContrastCache(i),l;if(!n&&!o&&(l=a.getColor(e.rgba,s.rgba)),l===void 0){let c=this._optionsService.rawOptions.minimumContrastRatio/(i.isDim()?2:1);l=Te.ensureContrastRatio(n||e,o||s,c),a.setColor((n||e).rgba,(o||s).rgba,l??null)}return l?(this._addStyle(t,`color:${l.css}`),!0):!1}_getContrastCache(t){return t.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(t,e){t.setAttribute("style",`${t.getAttribute("style")||""}${e};`)}_isCellInSelection(t,e){let s=this._selectionStart,i=this._selectionEnd;return!s||!i?!1:this._columnSelectMode?s[0]<=i[0]?t>=s[0]&&e>=s[1]&&t<i[0]&&e<=i[1]:t<s[0]&&e>=s[1]&&t>=i[0]&&e<=i[1]:e>s[1]&&e<i[1]||s[1]===i[1]&&e===s[1]&&t>=s[0]&&t<i[0]||s[1]<i[1]&&e===i[1]&&t<i[0]||s[1]<i[1]&&e===s[1]&&t>=s[0]}};la=$e([le(1,Fu),le(2,Vt),le(3,ys),le(4,ai),le(5,Er),le(6,Ri)],la);function Oc(t,e,s){for(;t.length<s;)t=e+t;return t}var dV=class{constructor(t,e){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=t.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let s=t.createElement("span");s.classList.add("xterm-char-measure-element");let i=t.createElement("span");i.classList.add("xterm-char-measure-element"),i.style.fontWeight="bold";let n=t.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontStyle="italic";let o=t.createElement("span");o.classList.add("xterm-char-measure-element"),o.style.fontWeight="bold",o.style.fontStyle="italic",this._measureElements=[s,i,n,o],this._container.appendChild(s),this._container.appendChild(i),this._container.appendChild(n),this._container.appendChild(o),e.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(t,e,s,i){t===this._font&&e===this._fontSize&&s===this._weight&&i===this._weightBold||(this._font=t,this._fontSize=e,this._weight=s,this._weightBold=i,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${s}`,this._measureElements[1].style.fontWeight=`${i}`,this._measureElements[2].style.fontWeight=`${s}`,this._measureElements[3].style.fontWeight=`${i}`,this.clear())}get(t,e,s){let i=0;if(!e&&!s&&t.length===1&&(i=t.charCodeAt(0))<256){if(this._flat[i]!==-9999)return this._flat[i];let a=this._measure(t,0);return a>0&&(this._flat[i]=a),a}let n=t;e&&(n+="B"),s&&(n+="I");let o=this._holey.get(n);if(o===void 0){let a=0;e&&(a|=1),s&&(a|=2),o=this._measure(t,a),o>0&&this._holey.set(n,o)}return o}_measure(t,e){let s=this._measureElements[e];return s.textContent=t.repeat(32),s.offsetWidth/32}},hV=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(t,e,s,i=!1){if(this.selectionStart=e,this.selectionEnd=s,!e||!s||e[0]===s[0]&&e[1]===s[1]){this.clear();return}let n=t.buffers.active.ydisp,o=e[1]-n,a=s[1]-n,l=Math.max(o,0),c=Math.min(a,t.rows-1);if(l>=t.rows||c<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=i,this.viewportStartRow=o,this.viewportEndRow=a,this.viewportCappedStartRow=l,this.viewportCappedEndRow=c,this.startCol=e[0],this.endCol=s[0]}isCellSelected(t,e,s){return this.hasSelection?(s-=t.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?e>=this.startCol&&s>=this.viewportCappedStartRow&&e<this.endCol&&s<=this.viewportCappedEndRow:e<this.startCol&&s>=this.viewportCappedStartRow&&e>=this.endCol&&s<=this.viewportCappedEndRow:s>this.viewportStartRow&&s<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&s===this.viewportStartRow&&e>=this.startCol&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportEndRow&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportStartRow&&e>=this.startCol):!1}};function uV(){return new hV}var po="xterm-dom-renderer-owner-",Ft="xterm-rows",Kr="xterm-fg-",Bc="xterm-bg-",zi="xterm-focus",qr="xterm-selection",fV=1,ca=class extends we{constructor(t,e,s,i,n,o,a,l,c,d,u,h,f,m){super(),this._terminal=t,this._document=e,this._element=s,this._screenElement=i,this._viewportElement=n,this._helperContainer=o,this._linkifier2=a,this._charSizeService=c,this._optionsService=d,this._bufferService=u,this._coreService=h,this._coreBrowserService=f,this._themeService=m,this._terminalClass=fV++,this._rowElements=[],this._selectionRenderModel=uV(),this.onRequestRedraw=this._register(new ne).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(Ft),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(qr),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=cV(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(p=>this._injectCss(p))),this._injectCss(this._themeService.colors),this._rowFactory=l.createInstance(la,document),this._element.classList.add(po+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(p=>this._handleLinkHover(p))),this._register(this._linkifier2.onHideLinkUnderline(p=>this._handleLinkLeave(p))),this._register(Me(()=>{this._element.classList.remove(po+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new dV(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let t=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*t,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*t),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/t),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/t),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let s of this._rowElements)s.style.width=`${this.dimensions.css.canvas.width}px`,s.style.height=`${this.dimensions.css.cell.height}px`,s.style.lineHeight=`${this.dimensions.css.cell.height}px`,s.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let e=`${this._terminalSelector} .${Ft} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=e,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(t){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let e=`${this._terminalSelector} .${Ft} { pointer-events: none; color: ${t.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;e+=`${this._terminalSelector} .${Ft} .xterm-dim { color: ${Te.multiplyOpacity(t.foreground,.5).css};}`,e+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let s=`blink_underline_${this._terminalClass}`,i=`blink_bar_${this._terminalClass}`,n=`blink_block_${this._terminalClass}`;e+=`@keyframes ${s} { 50% { border-bottom-style: hidden; }}`,e+=`@keyframes ${i} { 50% { box-shadow: none; }}`,e+=`@keyframes ${n} { 0% { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css}; } 50% { background-color: inherit; color: ${t.cursor.css}; }}`,e+=`${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${Ft}.${zi} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-block { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css};}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${t.cursor.css} !important; color: ${t.cursorAccent.css} !important;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${t.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${t.cursor.css} inset;}${this._terminalSelector} .${Ft} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${t.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,e+=`${this._terminalSelector} .${qr} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${qr} div { position: absolute; background-color: ${t.selectionBackgroundOpaque.css};}${this._terminalSelector} .${qr} div { position: absolute; background-color: ${t.selectionInactiveBackgroundOpaque.css};}`;for(let[o,a]of t.ansi.entries())e+=`${this._terminalSelector} .${Kr}${o} { color: ${a.css}; }${this._terminalSelector} .${Kr}${o}.xterm-dim { color: ${Te.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${Bc}${o} { background-color: ${a.css}; }`;e+=`${this._terminalSelector} .${Kr}257 { color: ${Te.opaque(t.background).css}; }${this._terminalSelector} .${Kr}257.xterm-dim { color: ${Te.multiplyOpacity(Te.opaque(t.background),.5).css}; }${this._terminalSelector} .${Bc}257 { background-color: ${t.foreground.css}; }`,this._themeStyleElement.textContent=e}_setDefaultSpacing(){let t=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${t}px`,this._rowFactory.defaultSpacing=t}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(t,e){for(let s=this._rowElements.length;s<=e;s++){let i=this._document.createElement("div");this._rowContainer.appendChild(i),this._rowElements.push(i)}for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(t,e){this._refreshRowElements(t,e),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(zi),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(zi),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(t,e,s){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(t,e,s),this.renderRows(0,this._bufferService.rows-1),!t||!e||(this._selectionRenderModel.update(this._terminal,t,e,s),!this._selectionRenderModel.hasSelection))return;let i=this._selectionRenderModel.viewportStartRow,n=this._selectionRenderModel.viewportEndRow,o=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,l=this._document.createDocumentFragment();if(s){let c=t[0]>e[0];l.appendChild(this._createSelectionElement(o,c?e[0]:t[0],c?t[0]:e[0],a-o+1))}else{let c=i===o?t[0]:0,d=o===n?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(o,c,d));let u=a-o-1;if(l.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,u)),o!==a){let h=n===a?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(a,0,h))}}this._selectionContainer.appendChild(l)}_createSelectionElement(t,e,s,i=1){let n=this._document.createElement("div"),o=e*this.dimensions.css.cell.width,a=this.dimensions.css.cell.width*(s-e);return o+a>this.dimensions.css.canvas.width&&(a=this.dimensions.css.canvas.width-o),n.style.height=`${i*this.dimensions.css.cell.height}px`,n.style.top=`${t*this.dimensions.css.cell.height}px`,n.style.left=`${o}px`,n.style.width=`${a}px`,n}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let t of this._rowElements)t.replaceChildren()}renderRows(t,e){let s=this._bufferService.buffer,i=s.ybase+s.y,n=Math.min(s.x,this._bufferService.cols-1),o=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,a=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,l=this._optionsService.rawOptions.cursorInactiveStyle;for(let c=t;c<=e;c++){let d=c+s.ydisp,u=this._rowElements[c],h=s.lines.get(d);if(!u||!h)break;u.replaceChildren(...this._rowFactory.createRow(h,d,d===i,a,l,n,o,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${po}${this._terminalClass}`}_handleLinkHover(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!0)}_handleLinkLeave(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!1)}_setCellUnderline(t,e,s,i,n,o){s<0&&(t=0),i<0&&(e=0);let a=this._bufferService.rows-1;s=Math.max(Math.min(s,a),0),i=Math.max(Math.min(i,a),0),n=Math.min(n,this._bufferService.cols);let l=this._bufferService.buffer,c=l.ybase+l.y,d=Math.min(l.x,n-1),u=this._optionsService.rawOptions.cursorBlink,h=this._optionsService.rawOptions.cursorStyle,f=this._optionsService.rawOptions.cursorInactiveStyle;for(let m=s;m<=i;++m){let p=m+l.ydisp,g=this._rowElements[m],_=l.lines.get(p);if(!g||!_)break;g.replaceChildren(...this._rowFactory.createRow(_,p,p===c,h,f,d,u,this.dimensions.css.cell.width,this._widthCache,o?m===s?t:0:-1,o?(m===i?e:n)-1:-1))}}};ca=$e([le(7,rl),le(8,zn),le(9,Vt),le(10,wt),le(11,ai),le(12,ys),le(13,Ri)],ca);var da=class extends we{constructor(t,e,s){super(),this._optionsService=s,this.width=0,this.height=0,this._onCharSizeChange=this._register(new ne),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new pV(this._optionsService))}catch{this._measureStrategy=this._register(new mV(t,e,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let t=this._measureStrategy.measure();(t.width!==this.width||t.height!==this.height)&&(this.width=t.width,this.height=t.height,this._onCharSizeChange.fire())}};da=$e([le(2,Vt)],da);var lf=class extends we{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(t,e){t!==void 0&&t>0&&e!==void 0&&e>0&&(this._result.width=t,this._result.height=e)}},mV=class extends lf{constructor(t,e,s){super(),this._document=t,this._parentElement=e,this._optionsService=s,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},pV=class extends lf{constructor(t){super(),this._optionsService=t,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let e=this._ctx.measureText("W");if(!("width"in e&&"fontBoundingBoxAscent"in e&&"fontBoundingBoxDescent"in e))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let t=this._ctx.measureText("W");return this._validateAndSet(t.width,t.fontBoundingBoxAscent+t.fontBoundingBoxDescent),this._result}},gV=class extends we{constructor(t,e,s){super(),this._textarea=t,this._window=e,this.mainDocument=s,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new _V(this._window)),this._onDprChange=this._register(new ne),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new ne),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(i=>this._screenDprMonitor.setWindow(i))),this._register(ct.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(ve(this._textarea,"focus",()=>this._isFocused=!0)),this._register(ve(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(t){this._window!==t&&(this._window=t,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},_V=class extends we{constructor(t){super(),this._parentWindow=t,this._windowResizeListener=this._register(new ki),this._onDprChange=this._register(new ne),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(Me(()=>this.clearListener()))}setWindow(t){this._parentWindow=t,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=ve(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},xV=class extends we{constructor(){super(),this.linkProviders=[],this._register(Me(()=>this.linkProviders.length=0))}registerLinkProvider(t){return this.linkProviders.push(t),{dispose:()=>{let e=this.linkProviders.indexOf(t);e!==-1&&this.linkProviders.splice(e,1)}}}};function ul(t,e,s){let i=s.getBoundingClientRect(),n=t.getComputedStyle(s),o=parseInt(n.getPropertyValue("padding-left")),a=parseInt(n.getPropertyValue("padding-top"));return[e.clientX-i.left-o,e.clientY-i.top-a]}function vV(t,e,s,i,n,o,a,l,c){if(!o)return;let d=ul(t,e,s);if(d)return d[0]=Math.ceil((d[0]+(c?a/2:0))/a),d[1]=Math.ceil(d[1]/l),d[0]=Math.min(Math.max(d[0],1),i+(c?1:0)),d[1]=Math.min(Math.max(d[1],1),n),d}var ha=class{constructor(t,e){this._renderService=t,this._charSizeService=e}getCoords(t,e,s,i,n){return vV(window,t,e,s,i,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,n)}getMouseReportCoords(t,e){let s=ul(window,t,e);if(this._charSizeService.hasValidSize)return s[0]=Math.min(Math.max(s[0],0),this._renderService.dimensions.css.canvas.width-1),s[1]=Math.min(Math.max(s[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(s[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(s[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(s[0]),y:Math.floor(s[1])}}};ha=$e([le(0,Ss),le(1,zn)],ha);var bV=class{constructor(t,e){this._renderCallback=t,this._coreBrowserService=e,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(t){return this._refreshCallbacks.push(t),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(t,e,s){this._rowCount=s,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let t of this._refreshCallbacks)t(0);this._refreshCallbacks=[]}},cf={};ES(cf,{getSafariVersion:()=>SV,isChromeOS:()=>ff,isFirefox:()=>df,isIpad:()=>wV,isIphone:()=>VV,isLegacyEdge:()=>yV,isLinux:()=>fl,isMac:()=>Sn,isNode:()=>Fn,isSafari:()=>hf,isWindows:()=>uf});var Fn=typeof process<"u"&&"title"in process,Ir=Fn?"node":navigator.userAgent,Tr=Fn?"node":navigator.platform,df=Ir.includes("Firefox"),yV=Ir.includes("Edge"),hf=/^((?!chrome|android).)*safari/i.test(Ir);function SV(){if(!hf)return 0;let t=Ir.match(/Version\/(\d+)/);return t===null||t.length<2?0:parseInt(t[1])}var Sn=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(Tr),wV=Tr==="iPad",VV=Tr==="iPhone",uf=["Windows","Win16","Win32","WinCE"].includes(Tr),fl=Tr.indexOf("Linux")>=0,ff=/\bCrOS\b/.test(Ir),mf=class{constructor(){this._tasks=[],this._i=0}enqueue(t){this._tasks.push(t),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(t){this._idleCallback=void 0;let e=0,s=0,i=t.timeRemaining(),n=0;for(;this._i<this._tasks.length;){if(e=performance.now(),this._tasks[this._i]()||this._i++,e=Math.max(1,performance.now()-e),s=Math.max(e,s),n=t.timeRemaining(),s*1.5>n){i-e<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(i-e))}ms`),this._start();return}i=n}this.clear()}},CV=class extends mf{_requestCallback(t){return setTimeout(()=>t(this._createDeadline(16)))}_cancelCallback(t){clearTimeout(t)}_createDeadline(t){let e=performance.now()+t;return{timeRemaining:()=>Math.max(0,e-performance.now())}}},kV=class extends mf{_requestCallback(t){return requestIdleCallback(t)}_cancelCallback(t){cancelIdleCallback(t)}},wn=!Fn&&"requestIdleCallback"in window?kV:CV,jV=class{constructor(){this._queue=new wn}set(t){this._queue.clear(),this._queue.enqueue(t)}flush(){this._queue.flush()}},ua=class extends we{constructor(t,e,s,i,n,o,a,l,c){super(),this._rowCount=t,this._optionsService=s,this._charSizeService=i,this._coreService=n,this._coreBrowserService=l,this._renderer=this._register(new ki),this._pausedResizeTask=new jV,this._observerDisposable=this._register(new ki),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new ne),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new ne),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new ne),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new ne),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new bV((d,u)=>this._renderRows(d,u),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new NV(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(Me(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(o.onDecorationRegistered(()=>this._fullRefresh())),this._register(o.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(a.cols,a.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(a.buffer.y,a.buffer.y,!0))),this._register(c.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,e),this._register(this._coreBrowserService.onWindowChange(d=>this._registerIntersectionObserver(d,e)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(t,e){if("IntersectionObserver"in t){let s=new t.IntersectionObserver(i=>this._handleIntersectionChange(i[i.length-1]),{threshold:0});s.observe(e),this._observerDisposable.value=Me(()=>s.disconnect())}}_handleIntersectionChange(t){this._isPaused=t.isIntersecting===void 0?t.intersectionRatio===0:!t.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(t,e,s=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}let i=this._syncOutputHandler.flush();i&&(t=Math.min(t,i.start),e=Math.max(e,i.end)),s||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(t,e,this._rowCount)}_renderRows(t,e){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}t=Math.min(t,this._rowCount-1),e=Math.min(e,this._rowCount-1),this._renderer.value.renderRows(t,e),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:t,end:e}),this._onRender.fire({start:t,end:e}),this._isNextRenderRedrawOnly=!0}}resize(t,e){this._rowCount=e,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(t){this._renderer.value=t,this._renderer.value&&(this._renderer.value.onRequestRedraw(e=>this.refreshRows(e.start,e.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(t){return this._renderDebouncer.addRefreshCallback(t)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(t,e){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(t,e)):this._renderer.value.handleResize(t,e),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(t,e,s){this._selectionState.start=t,this._selectionState.end=e,this._selectionState.columnSelectMode=s,this._renderer.value?.handleSelectionChanged(t,e,s)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};ua=$e([le(2,Vt),le(3,zn),le(4,ai),le(5,Er),le(6,wt),le(7,ys),le(8,Ri)],ua);var NV=class{constructor(t,e,s){this._coreBrowserService=t,this._coreService=e,this._onTimeout=s,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(t,e){this._isBuffering?(this._start=Math.min(this._start,t),this._end=Math.max(this._end,e)):(this._start=t,this._end=e,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let t={start:this._start,end:this._end};return this._isBuffering=!1,t}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function AV(t,e,s,i){let n=s.buffer.x,o=s.buffer.y;if(!s.buffer.hasScrollback)return TV(n,o,t,e,s,i)+Un(o,e,s,i)+RV(n,o,t,e,s,i);let a;if(o===e)return a=n>t?"D":"C",mr(Math.abs(n-t),fr(a,i));a=o>e?"D":"C";let l=Math.abs(o-e),c=IV(o>e?t:n,s)+(l-1)*s.cols+1+EV(o>e?n:t);return mr(c,fr(a,i))}function EV(t,e){return t-1}function IV(t,e){return e.cols-t}function TV(t,e,s,i,n,o){return Un(e,i,n,o).length===0?"":mr(gf(t,e,t,e-Zs(e,n),!1,n).length,fr("D",o))}function Un(t,e,s,i){let n=t-Zs(t,s),o=e-Zs(e,s),a=Math.abs(n-o)-MV(t,e,s);return mr(a,fr(pf(t,e),i))}function RV(t,e,s,i,n,o){let a;Un(e,i,n,o).length>0?a=i-Zs(i,n):a=e;let l=i,c=DV(t,e,s,i,n,o);return mr(gf(t,a,s,l,c==="C",n).length,fr(c,o))}function MV(t,e,s){let i=0,n=t-Zs(t,s),o=e-Zs(e,s);for(let a=0;a<Math.abs(n-o);a++){let l=pf(t,e)==="A"?-1:1;s.buffer.lines.get(n+l*a)?.isWrapped&&i++}return i}function Zs(t,e){let s=0,i=e.buffer.lines.get(t),n=i?.isWrapped;for(;n&&t>=0&&t<e.rows;)s++,i=e.buffer.lines.get(--t),n=i?.isWrapped;return s}function DV(t,e,s,i,n,o){let a;return Un(s,i,n,o).length>0?a=i-Zs(i,n):a=e,t<s&&a<=i||t>=s&&a<i?"C":"D"}function pf(t,e){return t>e?"A":"B"}function gf(t,e,s,i,n,o){let a=t,l=e,c="";for(;(a!==s||l!==i)&&l>=0&&l<o.buffer.lines.length;)a+=n?1:-1,n&&a>o.cols-1?(c+=o.buffer.translateBufferLineToString(l,!1,t,a),a=0,t=0,l++):!n&&a<0&&(c+=o.buffer.translateBufferLineToString(l,!1,0,t+1),a=o.cols-1,t=a,l--);return c+o.buffer.translateBufferLineToString(l,!1,t,a)}function fr(t,e){let s=e?"O":"[";return Q.ESC+s+t}function mr(t,e){t=Math.floor(t);let s="";for(let i=0;i<t;i++)s+=e;return s}var PV=class{constructor(t){this._bufferService=t,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:!this.selectionEnd||!this.selectionStart?this.selectionStart:this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?t%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)-1]:[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[t,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[Math.max(t,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let t=this.selectionStart,e=this.selectionEnd;return!t||!e?!1:t[1]>e[1]||t[1]===e[1]&&t[0]>e[0]}handleTrim(t){return this.selectionStart&&(this.selectionStart[1]-=t),this.selectionEnd&&(this.selectionEnd[1]-=t),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function $c(t,e){if(t.start.y>t.end.y)throw new Error(`Buffer range end (${t.end.x}, ${t.end.y}) cannot be before start (${t.start.x}, ${t.start.y})`);return e*(t.end.y-t.start.y)+(t.end.x-t.start.x+1)}var go=50,LV=15,OV=50,BV=500,$V=" ",zV=new RegExp($V,"g"),fa=class extends we{constructor(t,e,s,i,n,o,a,l,c){super(),this._element=t,this._screenElement=e,this._linkifier=s,this._bufferService=i,this._coreService=n,this._mouseService=o,this._optionsService=a,this._renderService=l,this._coreBrowserService=c,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Kt,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new ne),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new ne),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new ne),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new ne),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=d=>this._handleMouseMove(d),this._mouseUpListener=d=>this._handleMouseUp(d),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(d=>this._handleTrim(d)),this._register(this._bufferService.buffers.onBufferActivate(d=>this._handleBufferActivate(d))),this.enable(),this._model=new PV(this._bufferService),this._activeSelectionMode=0,this._register(Me(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(d=>{d.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;return!t||!e?!1:t[0]!==e[0]||t[1]!==e[1]}get selectionText(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;if(!t||!e)return"";let s=this._bufferService.buffer,i=[];if(this._activeSelectionMode===3){if(t[0]===e[0])return"";let n=t[0]<e[0]?t[0]:e[0],o=t[0]<e[0]?e[0]:t[0];for(let a=t[1];a<=e[1];a++){let l=s.translateBufferLineToString(a,!0,n,o);i.push(l)}}else{let n=t[1]===e[1]?e[0]:void 0;i.push(s.translateBufferLineToString(t[1],!0,t[0],n));for(let o=t[1]+1;o<=e[1]-1;o++){let a=s.lines.get(o),l=s.translateBufferLineToString(o,!0);a?.isWrapped?i[i.length-1]+=l:i.push(l)}if(t[1]!==e[1]){let o=s.lines.get(e[1]),a=s.translateBufferLineToString(e[1],!0,0,e[0]);o&&o.isWrapped?i[i.length-1]+=a:i.push(a)}}return i.map(n=>n.replace(zV," ")).join(uf?`\r
|
|
724
724
|
`:`
|
|
725
|
-
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(t){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),fl&&t&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(t){let e=this._getMouseBufferCoords(t),s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i||!e?!1:this._areCoordsInSelection(e,s,i)}isCellInSelection(t,e){let s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i?!1:this._areCoordsInSelection([t,e],s,i)}_areCoordsInSelection(t,e,s){return t[1]>e[1]&&t[1]<s[1]||e[1]===s[1]&&t[1]===e[1]&&t[0]>=e[0]&&t[0]<s[0]||e[1]<s[1]&&t[1]===s[1]&&t[0]<s[0]||e[1]<s[1]&&t[1]===e[1]&&t[0]>=e[0]}_selectWordAtCursor(t,e){let s=this._linkifier.currentLink?.link?.range;if(s)return this._model.selectionStart=[s.start.x-1,s.start.y-1],this._model.selectionStartLength=$c(s,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let i=this._getMouseBufferCoords(t);return i?(this._selectWordAt(i,e),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(t,e){this._model.clearSelection(),t=Math.max(t,0),e=Math.min(e,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,t],this._model.selectionEnd=[this._bufferService.cols,e],this.refresh(),this._onSelectionChange.fire()}_handleTrim(t){this._model.handleTrim(t)&&this.refresh()}_getMouseBufferCoords(t){let e=this._mouseService.getCoords(t,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(e)return e[0]--,e[1]--,e[1]+=this._bufferService.buffer.ydisp,e}_getMouseEventScrollAmount(t){let e=ul(this._coreBrowserService.window,t,this._screenElement)[1],s=this._renderService.dimensions.css.canvas.height;return e>=0&&e<=s?0:(e>s&&(e-=s),e=Math.min(Math.max(e,-go),go),e/=go,e/Math.abs(e)+Math.round(e*(LV-1)))}shouldForceSelection(t){return Sn?t.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:t.shiftKey}handleMouseDown(t){if(this._mouseDownTimeStamp=t.timeStamp,!(t.button===2&&this.hasSelection)&&t.button===0){if(!this._enabled){if(!this.shouldForceSelection(t))return;t.stopPropagation()}t.preventDefault(),this._dragScrollAmount=0,this._enabled&&t.shiftKey?this._handleIncrementalClick(t):t.detail===1?this._handleSingleClick(t):t.detail===2?this._handleDoubleClick(t):t.detail===3&&this._handleTripleClick(t),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),OV)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(t){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(t))}_handleSingleClick(t){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(t)?3:0,this._model.selectionStart=this._getMouseBufferCoords(t),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let e=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);e&&e.length!==this._model.selectionStart[0]&&e.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(t){this._selectWordAtCursor(t,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(t){let e=this._getMouseBufferCoords(t);e&&(this._activeSelectionMode=2,this._selectLineAt(e[1]))}shouldColumnSelect(t){return t.altKey&&!(Sn&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(t){if(t.stopImmediatePropagation(),!this._model.selectionStart)return;let e=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(t),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(t),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let s=this._bufferService.buffer;if(this._model.selectionEnd[1]<s.lines.length){let i=s.lines.get(this._model.selectionEnd[1]);i&&i.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!e||e[0]!==this._model.selectionEnd[0]||e[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let t=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(t.ydisp+this._bufferService.rows,t.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=t.ydisp),this.refresh()}}_handleMouseUp(t){let e=t.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&e<BV&&t.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let s=this._mouseService.getCoords(t,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(s&&s[0]!==void 0&&s[1]!==void 0){let i=AV(s[0]-1,s[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd,s=!!t&&!!e&&(t[0]!==e[0]||t[1]!==e[1]);if(!s){this._oldHasSelection&&this._fireOnSelectionChange(t,e,s);return}!t||!e||(!this._oldSelectionStart||!this._oldSelectionEnd||t[0]!==this._oldSelectionStart[0]||t[1]!==this._oldSelectionStart[1]||e[0]!==this._oldSelectionEnd[0]||e[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(t,e,s)}_fireOnSelectionChange(t,e,s){this._oldSelectionStart=t,this._oldSelectionEnd=e,this._oldHasSelection=s,this._onSelectionChange.fire()}_handleBufferActivate(t){this.clearSelection(),this._trimListener.dispose(),this._trimListener=t.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(t,e){let s=e;for(let i=0;e>=i;i++){let n=t.loadCell(i,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:n>1&&e!==i&&(s+=n-1)}return s}setSelection(t,e,s){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[t,e],this._model.selectionStartLength=s,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(t){this._isClickInSelection(t)||(this._selectWordAtCursor(t,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(t,e,s=!0,i=!0){if(t[0]>=this._bufferService.cols)return;let n=this._bufferService.buffer,o=n.lines.get(t[1]);if(!o)return;let a=n.translateBufferLineToString(t[1],!1),l=this._convertViewportColToCharacterIndex(o,t[0]),c=l,d=t[0]-l,u=0,h=0,f=0,m=0;if(a.charAt(l)===" "){for(;l>0&&a.charAt(l-1)===" ";)l--;for(;c<a.length&&a.charAt(c+1)===" ";)c++}else{let _=t[0],v=t[0];o.getWidth(_)===0&&(u++,_--),o.getWidth(v)===2&&(h++,v++);let x=o.getString(v).length;for(x>1&&(m+=x-1,c+=x-1);_>0&&l>0&&!this._isCharWordSeparator(o.loadCell(_-1,this._workCell));){o.loadCell(_-1,this._workCell);let b=this._workCell.getChars().length;this._workCell.getWidth()===0?(u++,_--):b>1&&(f+=b-1,l-=b-1),l--,_--}for(;v<o.length&&c+1<a.length&&!this._isCharWordSeparator(o.loadCell(v+1,this._workCell));){o.loadCell(v+1,this._workCell);let b=this._workCell.getChars().length;this._workCell.getWidth()===2?(h++,v++):b>1&&(m+=b-1,c+=b-1),c++,v++}}c++;let p=l+d-u+f,g=Math.min(this._bufferService.cols,c-l+u+h-f-m);if(!(!e&&a.slice(l,c).trim()==="")){if(s&&p===0&&o.getCodePoint(0)!==32){let _=n.lines.get(t[1]-1);if(_&&o.isWrapped&&_.getCodePoint(this._bufferService.cols-1)!==32){let v=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(v){let x=this._bufferService.cols-v.start;p-=x,g+=x}}}if(i&&p+g===this._bufferService.cols&&o.getCodePoint(this._bufferService.cols-1)!==32){let _=n.lines.get(t[1]+1);if(_?.isWrapped&&_.getCodePoint(0)!==32){let v=this._getWordAt([0,t[1]+1],!1,!1,!0);v&&(g+=v.length)}}return{start:p,length:g}}}_selectWordAt(t,e){let s=this._getWordAt(t,e);if(s){for(;s.start<0;)s.start+=this._bufferService.cols,t[1]--;this._model.selectionStart=[s.start,t[1]],this._model.selectionStartLength=s.length}}_selectToWordAt(t){let e=this._getWordAt(t,!0);if(e){let s=t[1];for(;e.start<0;)e.start+=this._bufferService.cols,s--;if(!this._model.areSelectionValuesReversed())for(;e.start+e.length>this._bufferService.cols;)e.length-=this._bufferService.cols,s++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?e.start:e.start+e.length,s]}}_isCharWordSeparator(t){return t.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(t.getChars())>=0}_selectLineAt(t){let e=this._bufferService.buffer.getWrappedRangeForLine(t),s={start:{x:0,y:e.first},end:{x:this._bufferService.cols-1,y:e.last}};this._model.selectionStart=[0,e.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=$c(s,this._bufferService.cols)}};fa=$e([le(3,wt),le(4,ai),le(5,nl),le(6,Vt),le(7,Ss),le(8,ys)],fa);var zc=class{constructor(){this._data={}}set(t,e,s){this._data[t]||(this._data[t]={}),this._data[t][e]=s}get(t,e){return this._data[t]?this._data[t][e]:void 0}clear(){this._data={}}},Fc=class{constructor(){this._color=new zc,this._css=new zc}setCss(t,e,s){this._css.set(t,e,s)}getCss(t,e){return this._css.get(t,e)}setColor(t,e,s){this._color.set(t,e,s)}getColor(t,e){return this._color.get(t,e)}clear(){this._color.clear(),this._css.clear()}},Xe=Object.freeze((()=>{let t=[Le.toColor("#2e3436"),Le.toColor("#cc0000"),Le.toColor("#4e9a06"),Le.toColor("#c4a000"),Le.toColor("#3465a4"),Le.toColor("#75507b"),Le.toColor("#06989a"),Le.toColor("#d3d7cf"),Le.toColor("#555753"),Le.toColor("#ef2929"),Le.toColor("#8ae234"),Le.toColor("#fce94f"),Le.toColor("#729fcf"),Le.toColor("#ad7fa8"),Le.toColor("#34e2e2"),Le.toColor("#eeeeec")],e=[0,95,135,175,215,255];for(let s=0;s<216;s++){let i=e[s/36%6|0],n=e[s/6%6|0],o=e[s%6];t.push({css:Ke.toCss(i,n,o),rgba:Ke.toRgba(i,n,o)})}for(let s=0;s<24;s++){let i=8+s*10;t.push({css:Ke.toCss(i,i,i),rgba:Ke.toRgba(i,i,i)})}return t})()),qs=Le.toColor("#ffffff"),Yi=Le.toColor("#000000"),Uc=Le.toColor("#ffffff"),Hc=Yi,Fi={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},FV=qs,ma=class extends we{constructor(t){super(),this._optionsService=t,this._contrastCache=new Fc,this._halfContrastCache=new Fc,this._onChangeColors=this._register(new ne),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:qs,background:Yi,cursor:Uc,cursorAccent:Hc,selectionForeground:void 0,selectionBackgroundTransparent:Fi,selectionBackgroundOpaque:Te.blend(Yi,Fi),selectionInactiveBackgroundTransparent:Fi,selectionInactiveBackgroundOpaque:Te.blend(Yi,Fi),scrollbarSliderBackground:Te.opacity(qs,.2),scrollbarSliderHoverBackground:Te.opacity(qs,.4),scrollbarSliderActiveBackground:Te.opacity(qs,.5),overviewRulerBorder:qs,ansi:Xe.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(t={}){let e=this._colors;if(e.foreground=je(t.foreground,qs),e.background=je(t.background,Yi),e.cursor=Te.blend(e.background,je(t.cursor,Uc)),e.cursorAccent=Te.blend(e.background,je(t.cursorAccent,Hc)),e.selectionBackgroundTransparent=je(t.selectionBackground,Fi),e.selectionBackgroundOpaque=Te.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=je(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=Te.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?je(t.selectionForeground,Lc):void 0,e.selectionForeground===Lc&&(e.selectionForeground=void 0),Te.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=Te.opacity(e.selectionBackgroundTransparent,.3)),Te.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=Te.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=je(t.scrollbarSliderBackground,Te.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=je(t.scrollbarSliderHoverBackground,Te.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=je(t.scrollbarSliderActiveBackground,Te.opacity(e.foreground,.5)),e.overviewRulerBorder=je(t.overviewRulerBorder,FV),e.ansi=Xe.slice(),e.ansi[0]=je(t.black,Xe[0]),e.ansi[1]=je(t.red,Xe[1]),e.ansi[2]=je(t.green,Xe[2]),e.ansi[3]=je(t.yellow,Xe[3]),e.ansi[4]=je(t.blue,Xe[4]),e.ansi[5]=je(t.magenta,Xe[5]),e.ansi[6]=je(t.cyan,Xe[6]),e.ansi[7]=je(t.white,Xe[7]),e.ansi[8]=je(t.brightBlack,Xe[8]),e.ansi[9]=je(t.brightRed,Xe[9]),e.ansi[10]=je(t.brightGreen,Xe[10]),e.ansi[11]=je(t.brightYellow,Xe[11]),e.ansi[12]=je(t.brightBlue,Xe[12]),e.ansi[13]=je(t.brightMagenta,Xe[13]),e.ansi[14]=je(t.brightCyan,Xe[14]),e.ansi[15]=je(t.brightWhite,Xe[15]),t.extendedAnsi){let s=Math.min(e.ansi.length-16,t.extendedAnsi.length);for(let i=0;i<s;i++)e.ansi[i+16]=je(t.extendedAnsi[i],Xe[i+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(t){this._restoreColor(t),this._onChangeColors.fire(this.colors)}_restoreColor(t){if(t===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(t){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[t]=this._restoreColors.ansi[t]}}modifyColors(t){t(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};ma=$e([le(0,Vt)],ma);function je(t,e){if(t!==void 0)try{return Le.toColor(t)}catch{}return e}var UV=class{constructor(...t){this._entries=new Map;for(let[e,s]of t)this.set(e,s)}set(t,e){let s=this._entries.get(t);return this._entries.set(t,e),s}forEach(t){for(let[e,s]of this._entries.entries())t(e,s)}has(t){return this._entries.has(t)}get(t){return this._entries.get(t)}},HV=class{constructor(){this._services=new UV,this._services.set(rl,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let s=LS(t).sort((o,a)=>o.index-a.index),i=[];for(let o of s){let a=this._services.get(o.id);if(!a)throw new Error(`[createInstance] ${t.name} depends on UNKNOWN service ${o.id._id}.`);i.push(a)}let n=s.length>0?s[0].index:e.length;if(e.length!==n)throw new Error(`[createInstance] First service dependency of ${t.name} at position ${n+1} conflicts with ${e.length} static arguments`);return new t(...e,...i)}},WV={trace:0,debug:1,info:2,warn:3,error:4,off:5},KV="xterm.js: ",pa=class extends we{constructor(t){super(),this._optionsService=t,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=WV[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(t){for(let e=0;e<t.length;e++)typeof t[e]=="function"&&(t[e]=t[e]())}_log(t,e,s){this._evalLazyOptionalParams(s),t.call(console,(this._optionsService.options.logger?"":KV)+e,...s)}trace(t,...e){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,t,e)}debug(t,...e){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,t,e)}info(t,...e){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,t,e)}warn(t,...e){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,t,e)}error(t,...e){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,t,e)}};pa=$e([le(0,Vt)],pa);var Wc=class extends we{constructor(t){super(),this._maxLength=t,this.onDeleteEmitter=this._register(new ne),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new ne),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new ne),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(t){if(this._maxLength===t)return;let e=new Array(t);for(let s=0;s<Math.min(t,this.length);s++)e[s]=this._array[this._getCyclicIndex(s)];this._array=e,this._maxLength=t,this._startIndex=0}get length(){return this._length}set length(t){if(t>this._length)for(let e=this._length;e<t;e++)this._array[e]=void 0;this._length=t}get(t){return this._array[this._getCyclicIndex(t)]}set(t,e){this._array[this._getCyclicIndex(t)]=e}push(t){this._array[this._getCyclicIndex(this._length)]=t,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(t,e,...s){if(e){for(let i=t;i<this._length-e;i++)this._array[this._getCyclicIndex(i)]=this._array[this._getCyclicIndex(i+e)];this._length-=e,this.onDeleteEmitter.fire({index:t,amount:e})}for(let i=this._length-1;i>=t;i--)this._array[this._getCyclicIndex(i+s.length)]=this._array[this._getCyclicIndex(i)];for(let i=0;i<s.length;i++)this._array[this._getCyclicIndex(t+i)]=s[i];if(s.length&&this.onInsertEmitter.fire({index:t,amount:s.length}),this._length+s.length>this._maxLength){let i=this._length+s.length-this._maxLength;this._startIndex+=i,this._length=this._maxLength,this.onTrimEmitter.fire(i)}else this._length+=s.length}trimStart(t){t>this._length&&(t=this._length),this._startIndex+=t,this._length-=t,this.onTrimEmitter.fire(t)}shiftElements(t,e,s){if(!(e<=0)){if(t<0||t>=this._length)throw new Error("start argument out of range");if(t+s<0)throw new Error("Cannot shift elements in list beyond index 0");if(s>0){for(let n=e-1;n>=0;n--)this.set(t+n+s,this.get(t+n));let i=t+e+s-this._length;if(i>0)for(this._length+=i;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let i=0;i<e;i++)this.set(t+i+s,this.get(t+i))}}_getCyclicIndex(t){return(this._startIndex+t)%this._maxLength}},Se=3,We=Object.freeze(new Ar),Gr=0,_o=2,Xi=class gf{constructor(e,s,i=!1){this.isWrapped=i,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*Se);let n=s||Kt.fromCharData([0,Mu,1,0]);for(let o=0;o<e;++o)this.setCell(o,n);this.length=e}get(e){let s=this._data[e*Se+0],i=s&2097151;return[this._data[e*Se+1],s&2097152?this._combined[e]:i?As(i):"",s>>22,s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):i]}set(e,s){this._data[e*Se+1]=s[0],s[1].length>1?(this._combined[e]=s[1],this._data[e*Se+0]=e|2097152|s[2]<<22):this._data[e*Se+0]=s[1].charCodeAt(0)|s[2]<<22}getWidth(e){return this._data[e*Se+0]>>22}hasWidth(e){return this._data[e*Se+0]&12582912}getFg(e){return this._data[e*Se+1]}getBg(e){return this._data[e*Se+2]}hasContent(e){return this._data[e*Se+0]&4194303}getCodePoint(e){let s=this._data[e*Se+0];return s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):s&2097151}isCombined(e){return this._data[e*Se+0]&2097152}getString(e){let s=this._data[e*Se+0];return s&2097152?this._combined[e]:s&2097151?As(s&2097151):""}isProtected(e){return this._data[e*Se+2]&536870912}loadCell(e,s){return Gr=e*Se,s.content=this._data[Gr+0],s.fg=this._data[Gr+1],s.bg=this._data[Gr+2],s.content&2097152&&(s.combinedData=this._combined[e]),s.bg&268435456&&(s.extended=this._extendedAttrs[e]),s}setCell(e,s){s.content&2097152&&(this._combined[e]=s.combinedData),s.bg&268435456&&(this._extendedAttrs[e]=s.extended),this._data[e*Se+0]=s.content,this._data[e*Se+1]=s.fg,this._data[e*Se+2]=s.bg}setCellFromCodepoint(e,s,i,n){n.bg&268435456&&(this._extendedAttrs[e]=n.extended),this._data[e*Se+0]=s|i<<22,this._data[e*Se+1]=n.fg,this._data[e*Se+2]=n.bg}addCodepointToCell(e,s,i){let n=this._data[e*Se+0];n&2097152?this._combined[e]+=As(s):n&2097151?(this._combined[e]=As(n&2097151)+As(s),n&=-2097152,n|=2097152):n=s|1<<22,i&&(n&=-12582913,n|=i<<22),this._data[e*Se+0]=n}insertCells(e,s,i){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length-e){let n=new Kt;for(let o=this.length-e-s-1;o>=0;--o)this.setCell(e+s+o,this.loadCell(e+o,n));for(let o=0;o<s;++o)this.setCell(e+o,i)}else for(let n=e;n<this.length;++n)this.setCell(n,i);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,i)}deleteCells(e,s,i){if(e%=this.length,s<this.length-e){let n=new Kt;for(let o=0;o<this.length-e-s;++o)this.setCell(e+o,this.loadCell(e+s+o,n));for(let o=this.length-s;o<this.length;++o)this.setCell(o,i)}else for(let n=e;n<this.length;++n)this.setCell(n,i);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,i)}replaceCells(e,s,i,n=!1){if(n){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.isProtected(e)||this.setCell(e,i),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.setCell(e++,i)}resize(e,s){if(e===this.length)return this._data.length*4*_o<this._data.buffer.byteLength;let i=e*Se;if(e>this.length){if(this._data.buffer.byteLength>=i*4)this._data=new Uint32Array(this._data.buffer,0,i);else{let n=new Uint32Array(i);n.set(this._data),this._data=n}for(let n=this.length;n<e;++n)this.setCell(n,s)}else{this._data=this._data.subarray(0,i);let n=Object.keys(this._combined);for(let a=0;a<n.length;a++){let l=parseInt(n[a],10);l>=e&&delete this._combined[l]}let o=Object.keys(this._extendedAttrs);for(let a=0;a<o.length;a++){let l=parseInt(o[a],10);l>=e&&delete this._extendedAttrs[l]}}return this.length=e,i*4*_o<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*_o<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,s=!1){if(s){for(let i=0;i<this.length;++i)this.isProtected(i)||this.setCell(i,e);return}this._combined={},this._extendedAttrs={};for(let i=0;i<this.length;++i)this.setCell(i,e)}copyFrom(e){this.length!==e.length?this._data=new Uint32Array(e._data):this._data.set(e._data),this.length=e.length,this._combined={};for(let s in e._combined)this._combined[s]=e._combined[s];this._extendedAttrs={};for(let s in e._extendedAttrs)this._extendedAttrs[s]=e._extendedAttrs[s];this.isWrapped=e.isWrapped}clone(){let e=new gf(0);e._data=new Uint32Array(this._data),e.length=this.length;for(let s in this._combined)e._combined[s]=this._combined[s];for(let s in this._extendedAttrs)e._extendedAttrs[s]=this._extendedAttrs[s];return e.isWrapped=this.isWrapped,e}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Se+0]&4194303)return e+(this._data[e*Se+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Se+0]&4194303||this._data[e*Se+2]&50331648)return e+(this._data[e*Se+0]>>22);return 0}copyCellsFrom(e,s,i,n,o){let a=e._data;if(o)for(let c=n-1;c>=0;c--){for(let d=0;d<Se;d++)this._data[(i+c)*Se+d]=a[(s+c)*Se+d];a[(s+c)*Se+2]&268435456&&(this._extendedAttrs[i+c]=e._extendedAttrs[s+c])}else for(let c=0;c<n;c++){for(let d=0;d<Se;d++)this._data[(i+c)*Se+d]=a[(s+c)*Se+d];a[(s+c)*Se+2]&268435456&&(this._extendedAttrs[i+c]=e._extendedAttrs[s+c])}let l=Object.keys(e._combined);for(let c=0;c<l.length;c++){let d=parseInt(l[c],10);d>=s&&(this._combined[d-s+i]=e._combined[d])}}translateToString(e,s,i,n){s=s??0,i=i??this.length,e&&(i=Math.min(i,this.getTrimmedLength())),n&&(n.length=0);let o="";for(;s<i;){let a=this._data[s*Se+0],l=a&2097151,c=a&2097152?this._combined[s]:l?As(l):Is;if(o+=c,n)for(let d=0;d<c.length;++d)n.push(s);s+=a>>22||1}return n&&n.push(s),o}};function qV(t,e,s,i,n,o){let a=[];for(let l=0;l<t.length-1;l++){let c=l,d=t.get(++c);if(!d.isWrapped)continue;let u=[t.get(l)];for(;c<t.length&&d.isWrapped;)u.push(d),d=t.get(++c);if(!o&&i>=l&&i<c){l+=u.length-1;continue}let h=0,f=pr(u,h,e),m=1,p=0;for(;m<u.length;){let _=pr(u,m,e),v=_-p,x=s-f,b=Math.min(v,x);u[h].copyCellsFrom(u[m],p,f,b,!1),f+=b,f===s&&(h++,f=0),p+=b,p===_&&(m++,p=0),f===0&&h!==0&&u[h-1].getWidth(s-1)===2&&(u[h].copyCellsFrom(u[h-1],s-1,f++,1,!1),u[h-1].setCell(s-1,n))}u[h].replaceCells(f,s,n);let g=0;for(let _=u.length-1;_>0&&(_>h||u[_].getTrimmedLength()===0);_--)g++;g>0&&(a.push(l+u.length-g),a.push(g)),l+=u.length-1}return a}function GV(t,e){let s=[],i=0,n=e[i],o=0;for(let a=0;a<t.length;a++)if(n===a){let l=e[++i];t.onDeleteEmitter.fire({index:a-o,amount:l}),a+=l-1,o+=l,n=e[++i]}else s.push(a);return{layout:s,countRemoved:o}}function YV(t,e){let s=[];for(let i=0;i<e.length;i++)s.push(t.get(e[i]));for(let i=0;i<s.length;i++)t.set(i,s[i]);t.length=e.length}function XV(t,e,s){let i=[],n=t.map((c,d)=>pr(t,d,e)).reduce((c,d)=>c+d),o=0,a=0,l=0;for(;l<n;){if(n-l<s){i.push(n-l);break}o+=s;let c=pr(t,a,e);o>c&&(o-=c,a++);let d=t[a].getWidth(o-1)===2;d&&o--;let u=d?s-1:s;i.push(u),l+=u}return i}function pr(t,e,s){if(e===t.length-1)return t[e].getTrimmedLength();let i=!t[e].hasContent(s-1)&&t[e].getWidth(s-1)===1,n=t[e+1].getWidth(0)===2;return i&&n?s-1:s}var _f=class xf{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=xf._nextId++,this._onDispose=this.register(new ne),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),Qs(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};_f._nextId=1;var JV=_f,et={},Gs=et.B;et[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};et.A={"#":"£"};et.B=void 0;et[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};et.C=et[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};et.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};et.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};et.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};et.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};et.E=et[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};et.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};et.H=et[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};et["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var Kc=4294967295,qc=class{constructor(t,e,s){this._hasScrollback=t,this._optionsService=e,this._bufferService=s,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=We.clone(),this.savedCharset=Gs,this.markers=[],this._nullCell=Kt.fromCharData([0,Mu,1,0]),this._whitespaceCell=Kt.fromCharData([0,Is,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new wn,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new Wc(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(t){return t?(this._nullCell.fg=t.fg,this._nullCell.bg=t.bg,this._nullCell.extended=t.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new vn),this._nullCell}getWhitespaceCell(t){return t?(this._whitespaceCell.fg=t.fg,this._whitespaceCell.bg=t.bg,this._whitespaceCell.extended=t.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new vn),this._whitespaceCell}getBlankLine(t,e){return new Xi(this._bufferService.cols,this.getNullCell(t),e)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let t=this.ybase+this.y-this.ydisp;return t>=0&&t<this._rows}_getCorrectBufferLength(t){if(!this._hasScrollback)return t;let e=t+this._optionsService.rawOptions.scrollback;return e>Kc?Kc:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=We);let e=this._rows;for(;e--;)this.lines.push(this.getBlankLine(t))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new Wc(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let s=this.getNullCell(We),i=0,n=this._getCorrectBufferLength(e);if(n>this.lines.maxLength&&(this.lines.maxLength=n),this.lines.length>0){if(this._cols<t)for(let a=0;a<this.lines.length;a++)i+=+this.lines.get(a).resize(t,s);let o=0;if(this._rows<e)for(let a=this._rows;a<e;a++)this.lines.length<e+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new Xi(t,s)):this.ybase>0&&this.lines.length<=this.ybase+this.y+o+1?(this.ybase--,o++,this.ydisp>0&&this.ydisp--):this.lines.push(new Xi(t,s)));else for(let a=this._rows;a>e;a--)this.lines.length>e+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(n<this.lines.maxLength){let a=this.lines.length-n;a>0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=n}this.x=Math.min(this.x,t-1),this.y=Math.min(this.y,e-1),o&&(this.y+=o),this.savedX=Math.min(this.savedX,t-1),this.scrollTop=0}if(this.scrollBottom=e-1,this._isReflowEnabled&&(this._reflow(t,e),this._cols>t))for(let o=0;o<this.lines.length;o++)i+=+this.lines.get(o).resize(t,s);this._cols=t,this._rows=e,this._memoryCleanupQueue.clear(),i>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let t=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,t=!1);let e=0;for(;this._memoryCleanupPosition<this.lines.length;)if(e+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),e>100)return!0;return t}get _isReflowEnabled(){let t=this._optionsService.rawOptions.windowsPty;return t&&t.buildNumber?this._hasScrollback&&t.backend==="conpty"&&t.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(t,e){this._cols!==t&&(t>this._cols?this._reflowLarger(t,e):this._reflowSmaller(t,e))}_reflowLarger(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=qV(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(We),s);if(i.length>0){let n=GV(this.lines,i);YV(this.lines,n.layout),this._reflowLargerAdjustViewport(t,e,n.countRemoved)}}_reflowLargerAdjustViewport(t,e,s){let i=this.getNullCell(We),n=s;for(;n-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new Xi(t,i))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-s,0)}_reflowSmaller(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=this.getNullCell(We),n=[],o=0;for(let a=this.lines.length-1;a>=0;a--){let l=this.lines.get(a);if(!l||!l.isWrapped&&l.getTrimmedLength()<=t)continue;let c=[l];for(;l.isWrapped&&a>0;)l=this.lines.get(--a),c.unshift(l);if(!s){let b=this.ybase+this.y;if(b>=a&&b<a+c.length)continue}let d=c[c.length-1].getTrimmedLength(),u=XV(c,this._cols,t),h=u.length-c.length,f;this.ybase===0&&this.y!==this.lines.length-1?f=Math.max(0,this.y-this.lines.maxLength+h):f=Math.max(0,this.lines.length-this.lines.maxLength+h);let m=[];for(let b=0;b<h;b++){let y=this.getBlankLine(We,!0);m.push(y)}m.length>0&&(n.push({start:a+c.length+o,newLines:m}),o+=m.length),c.push(...m);let p=u.length-1,g=u[p];g===0&&(p--,g=u[p]);let _=c.length-h-1,v=d;for(;_>=0;){let b=Math.min(v,g);if(c[p]===void 0)break;if(c[p].copyCellsFrom(c[_],v-b,g-b,b,!0),g-=b,g===0&&(p--,g=u[p]),v-=b,v===0){_--;let y=Math.max(_,0);v=pr(c,y,this._cols)}}for(let b=0;b<c.length;b++)u[b]<t&&c[b].setCell(u[b],i);let x=h-f;for(;x-- >0;)this.ybase===0?this.y<e-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+o)-e&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+h,this.ybase+e-1)}if(n.length>0){let a=[],l=[];for(let g=0;g<this.lines.length;g++)l.push(this.lines.get(g));let c=this.lines.length,d=c-1,u=0,h=n[u];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+o);let f=0;for(let g=Math.min(this.lines.maxLength-1,c+o-1);g>=0;g--)if(h&&h.start>d+f){for(let _=h.newLines.length-1;_>=0;_--)this.lines.set(g--,h.newLines[_]);g++,a.push({index:d+1,amount:h.newLines.length}),f+=h.newLines.length,h=n[++u]}else this.lines.set(g,l[d--]);let m=0;for(let g=a.length-1;g>=0;g--)a[g].index+=m,this.lines.onInsertEmitter.fire(a[g]),m+=a[g].amount;let p=Math.max(0,c+o-this.lines.maxLength);p>0&&this.lines.onTrimEmitter.fire(p)}}translateBufferLineToString(t,e,s=0,i){let n=this.lines.get(t);return n?n.translateToString(e,s,i):""}getWrappedRangeForLine(t){let e=t,s=t;for(;e>0&&this.lines.get(e).isWrapped;)e--;for(;s+1<this.lines.length&&this.lines.get(s+1).isWrapped;)s++;return{first:e,last:s}}setupTabStops(t){for(t!=null?this.tabs[t]||(t=this.prevStop(t)):(this.tabs={},t=0);t<this._cols;t+=this._optionsService.rawOptions.tabStopWidth)this.tabs[t]=!0}prevStop(t){for(t==null&&(t=this.x);!this.tabs[--t]&&t>0;);return t>=this._cols?this._cols-1:t<0?0:t}nextStop(t){for(t==null&&(t=this.x);!this.tabs[++t]&&t<this._cols;);return t>=this._cols?this._cols-1:t<0?0:t}clearMarkers(t){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].line===t&&(this.markers[e].dispose(),this.markers.splice(e--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].dispose();this.markers.length=0,this._isClearing=!1}addMarker(t){let e=new JV(t);return this.markers.push(e),e.register(this.lines.onTrim(s=>{e.line-=s,e.line<0&&e.dispose()})),e.register(this.lines.onInsert(s=>{e.line>=s.index&&(e.line+=s.amount)})),e.register(this.lines.onDelete(s=>{e.line>=s.index&&e.line<s.index+s.amount&&e.dispose(),e.line>s.index&&(e.line-=s.amount)})),e.register(e.onDispose(()=>this._removeMarker(e))),e}_removeMarker(t){this._isClearing||this.markers.splice(this.markers.indexOf(t),1)}},QV=class extends we{constructor(t,e){super(),this._optionsService=t,this._bufferService=e,this._onBufferActivate=this._register(new ne),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new qc(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new qc(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(t){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(t),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(t,e){this._normal.resize(t,e),this._alt.resize(t,e),this.setupTabStops(t)}setupTabStops(t){this._normal.setupTabStops(t),this._alt.setupTabStops(t)}},vf=2,bf=1,ga=class extends we{constructor(t){super(),this.isUserScrolling=!1,this._onResize=this._register(new ne),this.onResize=this._onResize.event,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this.cols=Math.max(t.rawOptions.cols||0,vf),this.rows=Math.max(t.rawOptions.rows||0,bf),this.buffers=this._register(new QV(t,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(t,e){let s=this.cols!==t,i=this.rows!==e;this.cols=t,this.rows=e,this.buffers.resize(t,e),this._onResize.fire({cols:t,rows:e,colsChanged:s,rowsChanged:i})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(t,e=!1){let s=this.buffer,i;i=this._cachedBlankLine,(!i||i.length!==this.cols||i.getFg(0)!==t.fg||i.getBg(0)!==t.bg)&&(i=s.getBlankLine(t,e),this._cachedBlankLine=i),i.isWrapped=e;let n=s.ybase+s.scrollTop,o=s.ybase+s.scrollBottom;if(s.scrollTop===0){let a=s.lines.isFull;o===s.lines.length-1?a?s.lines.recycle().copyFrom(i):s.lines.push(i.clone()):s.lines.splice(o+1,0,i.clone()),a?this.isUserScrolling&&(s.ydisp=Math.max(s.ydisp-1,0)):(s.ybase++,this.isUserScrolling||s.ydisp++)}else{let a=o-n+1;s.lines.shiftElements(n+1,a-1,-1),s.lines.set(o,i.clone())}this.isUserScrolling||(s.ydisp=s.ybase),this._onScroll.fire(s.ydisp)}scrollLines(t,e){let s=this.buffer;if(t<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else t+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);let i=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+t,s.ybase),0),i!==s.ydisp&&(e||this._onScroll.fire(s.ydisp))}};ga=$e([le(0,Vt)],ga);var mi={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:Sn,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},ZV=["normal","bold","100","200","300","400","500","600","700","800","900"],eC=class extends we{constructor(t){super(),this._onOptionChange=this._register(new ne),this.onOptionChange=this._onOptionChange.event;let e={...mi};for(let s in t)if(s in e)try{let i=t[s];e[s]=this._sanitizeAndValidateOption(s,i)}catch(i){console.error(i)}this.rawOptions=e,this.options={...e},this._setupOptions(),this._register(Me(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(t,e){return this.onOptionChange(s=>{s===t&&e(this.rawOptions[t])})}onMultipleOptionChange(t,e){return this.onOptionChange(s=>{t.indexOf(s)!==-1&&e()})}_setupOptions(){let t=s=>{if(!(s in mi))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},e=(s,i)=>{if(!(s in mi))throw new Error(`No option with key "${s}"`);i=this._sanitizeAndValidateOption(s,i),this.rawOptions[s]!==i&&(this.rawOptions[s]=i,this._onOptionChange.fire(s))};for(let s in this.rawOptions){let i={get:t.bind(this,s),set:e.bind(this,s)};Object.defineProperty(this.options,s,i)}}_sanitizeAndValidateOption(t,e){switch(t){case"cursorStyle":if(e||(e=mi[t]),!tC(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=mi[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=ZV.includes(e)?e:mi[t];break;case"cursorWidth":e=Math.floor(e);case"lineHeight":case"tabStopWidth":if(e<1)throw new Error(`${t} cannot be less than 1, value: ${e}`);break;case"minimumContrastRatio":e=Math.max(1,Math.min(21,Math.round(e*10)/10));break;case"scrollback":if(e=Math.min(e,4294967295),e<0)throw new Error(`${t} cannot be less than 0, value: ${e}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(e<=0)throw new Error(`${t} cannot be less than or equal to 0, value: ${e}`);break;case"rows":case"cols":if(!e&&e!==0)throw new Error(`${t} must be numeric, value: ${e}`);break;case"windowsPty":e=e??{};break}return e}};function tC(t){return t==="block"||t==="underline"||t==="bar"}function Ji(t,e=5){if(typeof t!="object")return t;let s=Array.isArray(t)?[]:{};for(let i in t)s[i]=e<=1?t[i]:t[i]&&Ji(t[i],e-1);return s}var Gc=Object.freeze({insertMode:!1}),Yc=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),_a=class extends we{constructor(t,e,s){super(),this._bufferService=t,this._logService=e,this._optionsService=s,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new ne),this.onData=this._onData.event,this._onUserInput=this._register(new ne),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new ne),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new ne),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Ji(Gc),this.decPrivateModes=Ji(Yc)}reset(){this.modes=Ji(Gc),this.decPrivateModes=Ji(Yc)}triggerDataEvent(t,e=!1){if(this._optionsService.rawOptions.disableStdin)return;let s=this._bufferService.buffer;e&&this._optionsService.rawOptions.scrollOnUserInput&&s.ybase!==s.ydisp&&this._onRequestScrollToBottom.fire(),e&&this._onUserInput.fire(),this._logService.debug(`sending data "${t}"`),this._logService.trace("sending data (codes)",()=>t.split("").map(i=>i.charCodeAt(0))),this._onData.fire(t)}triggerBinaryEvent(t){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${t}"`),this._logService.trace("sending binary (codes)",()=>t.split("").map(e=>e.charCodeAt(0))),this._onBinary.fire(t))}};_a=$e([le(0,wt),le(1,Bu),le(2,Vt)],_a);var Xc={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:t=>t.button===4||t.action!==1?!1:(t.ctrl=!1,t.alt=!1,t.shift=!1,!0)},VT200:{events:19,restrict:t=>t.action!==32},DRAG:{events:23,restrict:t=>!(t.action===32&&t.button===3)},ANY:{events:31,restrict:t=>!0}};function xo(t,e){let s=(t.ctrl?16:0)|(t.shift?4:0)|(t.alt?8:0);return t.button===4?(s|=64,s|=t.action):(s|=t.button&3,t.button&4&&(s|=64),t.button&8&&(s|=128),t.action===32?s|=32:t.action===0&&!e&&(s|=3)),s}var vo=String.fromCharCode,Jc={DEFAULT:t=>{let e=[xo(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${vo(e[0])}${vo(e[1])}${vo(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${xo(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${xo(t,!0)};${t.x};${t.y}${e}`}},xa=class extends we{constructor(t,e,s){super(),this._bufferService=t,this._coreService=e,this._optionsService=s,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new ne),this.onProtocolChange=this._onProtocolChange.event;for(let i of Object.keys(Xc))this.addProtocol(i,Xc[i]);for(let i of Object.keys(Jc))this.addEncoding(i,Jc[i]);this.reset()}addProtocol(t,e){this._protocols[t]=e}addEncoding(t,e){this._encodings[t]=e}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(t){if(!this._protocols[t])throw new Error(`unknown protocol "${t}"`);this._activeProtocol=t,this._onProtocolChange.fire(this._protocols[t].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(t){if(!this._encodings[t])throw new Error(`unknown encoding "${t}"`);this._activeEncoding=t}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(t,e,s){if(t.deltaY===0||t.shiftKey||e===void 0||s===void 0)return 0;let i=e/s,n=this._applyScrollModifier(t.deltaY,t);return t.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(n/=i+0,Math.abs(t.deltaY)<50&&(n*=.3),this._wheelPartialScroll+=n,n=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):t.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(n*=this._bufferService.rows),n}_applyScrollModifier(t,e){return e.altKey||e.ctrlKey||e.shiftKey?t*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:t*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(t){if(t.col<0||t.col>=this._bufferService.cols||t.row<0||t.row>=this._bufferService.rows||t.button===4&&t.action===32||t.button===3&&t.action!==32||t.button!==4&&(t.action===2||t.action===3)||(t.col++,t.row++,t.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,t,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(t))return!1;let e=this._encodings[this._activeEncoding](t);return e&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(e):this._coreService.triggerDataEvent(e,!0)),this._lastEvent=t,!0}explainEvents(t){return{down:!!(t&1),up:!!(t&2),drag:!!(t&4),move:!!(t&8),wheel:!!(t&16)}}_equalEvents(t,e,s){if(s){if(t.x!==e.x||t.y!==e.y)return!1}else if(t.col!==e.col||t.row!==e.row)return!1;return!(t.button!==e.button||t.action!==e.action||t.ctrl!==e.ctrl||t.alt!==e.alt||t.shift!==e.shift)}};xa=$e([le(0,wt),le(1,ai),le(2,Vt)],xa);var bo=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],sC=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],Je;function iC(t,e){let s=0,i=e.length-1,n;if(t<e[0][0]||t>e[i][1])return!1;for(;i>=s;)if(n=s+i>>1,t>e[n][1])s=n+1;else if(t<e[n][0])i=n-1;else return!0;return!1}var rC=class{constructor(){if(this.version="6",!Je){Je=new Uint8Array(65536),Je.fill(1),Je[0]=0,Je.fill(0,1,32),Je.fill(0,127,160),Je.fill(2,4352,4448),Je[9001]=2,Je[9002]=2,Je.fill(2,11904,42192),Je[12351]=1,Je.fill(2,44032,55204),Je.fill(2,63744,64256),Je.fill(2,65040,65050),Je.fill(2,65072,65136),Je.fill(2,65280,65377),Je.fill(2,65504,65511);for(let t=0;t<bo.length;++t)Je.fill(0,bo[t][0],bo[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?Je[t]:iC(t,sC)?0:t>=131072&&t<=196605||t>=196608&&t<=262141?2:1}charProperties(t,e){let s=this.wcwidth(t),i=s===0&&e!==0;if(i){let n=Ys.extractWidth(e);n===0?i=!1:n>s&&(s=n)}return Ys.createPropertyValue(0,s,i)}},Ys=class dn{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ne,this.onChange=this._onChange.event;let e=new rC;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(e&1)!==0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,s,i=!1){return(e&16777215)<<3|(s&3)<<1|(i?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw new Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(e){let s=0,i=0,n=e.length;for(let o=0;o<n;++o){let a=e.charCodeAt(o);if(55296<=a&&a<=56319){if(++o>=n)return s+this.wcwidth(a);let d=e.charCodeAt(o);56320<=d&&d<=57343?a=(a-55296)*1024+d-56320+65536:s+=this.wcwidth(d)}let l=this.charProperties(a,i),c=dn.extractWidth(l);dn.extractShouldJoin(l)&&(c-=dn.extractWidth(i)),s+=c,i=l}return s}charProperties(e,s){return this._activeProvider.charProperties(e,s)}},nC=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(t){this.glevel=t,this.charset=this._charsets[t]}setgCharset(t,e){this._charsets[t]=e,this.glevel===t&&(this.charset=e)}};function Qc(t){let e=t.buffer.lines.get(t.buffer.ybase+t.buffer.y-1)?.get(t.cols-1),s=t.buffer.lines.get(t.buffer.ybase+t.buffer.y);s&&e&&(s.isWrapped=e[3]!==0&&e[3]!==32)}var Ui=2147483647,oC=256,yf=class va{constructor(e=32,s=32){if(this.maxLength=e,this.maxSubParamsLength=s,s>oC)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(s),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(e){let s=new va;if(!e.length)return s;for(let i=Array.isArray(e[0])?1:0;i<e.length;++i){let n=e[i];if(Array.isArray(n))for(let o=0;o<n.length;++o)s.addSubParam(n[o]);else s.addParam(n)}return s}clone(){let e=new va(this.maxLength,this.maxSubParamsLength);return e.params.set(this.params),e.length=this.length,e._subParams.set(this._subParams),e._subParamsLength=this._subParamsLength,e._subParamsIdx.set(this._subParamsIdx),e._rejectDigits=this._rejectDigits,e._rejectSubDigits=this._rejectSubDigits,e._digitIsSub=this._digitIsSub,e}toArray(){let e=[];for(let s=0;s<this.length;++s){e.push(this.params[s]);let i=this._subParamsIdx[s]>>8,n=this._subParamsIdx[s]&255;n-i>0&&e.push(Array.prototype.slice.call(this._subParams,i,n))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>Ui?Ui:e}addSubParam(e){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>Ui?Ui:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let s=this._subParamsIdx[e]>>8,i=this._subParamsIdx[e]&255;return i-s>0?this._subParams.subarray(s,i):null}getSubParamsAll(){let e={};for(let s=0;s<this.length;++s){let i=this._subParamsIdx[s]>>8,n=this._subParamsIdx[s]&255;n-i>0&&(e[s]=this._subParams.slice(i,n))}return e}addDigit(e){let s;if(this._rejectDigits||!(s=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let i=this._digitIsSub?this._subParams:this.params,n=i[s-1];i[s-1]=~n?Math.min(n*10+e,Ui):e}},Hi=[],aC=class{constructor(){this._state=0,this._active=Hi,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Hi}reset(){if(this._state===2)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].end(!1);this._stack.paused=!1,this._active=Hi,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||Hi,!this._active.length)this._handlerFb(this._id,"START");else for(let t=this._active.length-1;t>=0;t--)this._active[t].start()}_put(t,e,s){if(!this._active.length)this._handlerFb(this._id,"PUT",$n(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}start(){this.reset(),this._state=1}put(t,e,s){if(this._state!==3){if(this._state===1)for(;e<s;){let i=t[e++];if(i===59){this._state=2,this._start();break}if(i<48||57<i){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+i-48}this._state===2&&s-e>0&&this._put(t,e,s)}}end(t,e=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",t);else{let s=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,n=this._stack.fallThrough,this._stack.paused=!1),!n&&s===!1){for(;i>=0&&(s=this._active[i].end(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].end(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=Hi,this._id=-1,this._state=0}}},Tt=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=$n(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data),e instanceof Promise))return e.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,e}},Wi=[],lC=class{constructor(){this._handlers=Object.create(null),this._active=Wi,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Wi}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}reset(){if(this._active.length)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].unhook(!1);this._stack.paused=!1,this._active=Wi,this._ident=0}hook(t,e){if(this.reset(),this._ident=t,this._active=this._handlers[t]||Wi,!this._active.length)this._handlerFb(this._ident,"HOOK",e);else for(let s=this._active.length-1;s>=0;s--)this._active[s].hook(e)}put(t,e,s){if(!this._active.length)this._handlerFb(this._ident,"PUT",$n(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}unhook(t,e=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",t);else{let s=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,n=this._stack.fallThrough,this._stack.paused=!1),!n&&s===!1){for(;i>=0&&(s=this._active[i].unhook(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].unhook(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=Wi,this._ident=0}},Qi=new yf;Qi.addParam(0);var Zc=class{constructor(t){this._handler=t,this._data="",this._params=Qi,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():Qi,this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=$n(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data,this._params),e instanceof Promise))return e.then(s=>(this._params=Qi,this._data="",this._hitLimit=!1,s));return this._params=Qi,this._data="",this._hitLimit=!1,e}},cC=class{constructor(t){this.table=new Uint8Array(t)}setDefault(t,e){this.table.fill(t<<4|e)}add(t,e,s,i){this.table[e<<8|t]=s<<4|i}addMany(t,e,s,i){for(let n=0;n<t.length;n++)this.table[e<<8|t[n]]=s<<4|i}},Wt=160,dC=(function(){let t=new cC(4095),e=Array.apply(null,Array(256)).map((l,c)=>c),s=(l,c)=>e.slice(l,c),i=s(32,127),n=s(0,24);n.push(25),n.push.apply(n,s(28,32));let o=s(0,14),a;t.setDefault(1,0),t.addMany(i,0,2,0);for(a in o)t.addMany([24,26,153,154],a,3,0),t.addMany(s(128,144),a,3,0),t.addMany(s(144,152),a,3,0),t.add(156,a,0,0),t.add(27,a,11,1),t.add(157,a,4,8),t.addMany([152,158,159],a,0,7),t.add(155,a,11,3),t.add(144,a,11,9);return t.addMany(n,0,3,0),t.addMany(n,1,3,1),t.add(127,1,0,1),t.addMany(n,8,0,8),t.addMany(n,3,3,3),t.add(127,3,0,3),t.addMany(n,4,3,4),t.add(127,4,0,4),t.addMany(n,6,3,6),t.addMany(n,5,3,5),t.add(127,5,0,5),t.addMany(n,2,3,2),t.add(127,2,0,2),t.add(93,1,4,8),t.addMany(i,8,5,8),t.add(127,8,5,8),t.addMany([156,27,24,26,7],8,6,0),t.addMany(s(28,32),8,0,8),t.addMany([88,94,95],1,0,7),t.addMany(i,7,0,7),t.addMany(n,7,0,7),t.add(156,7,0,0),t.add(127,7,0,7),t.add(91,1,11,3),t.addMany(s(64,127),3,7,0),t.addMany(s(48,60),3,8,4),t.addMany([60,61,62,63],3,9,4),t.addMany(s(48,60),4,8,4),t.addMany(s(64,127),4,7,0),t.addMany([60,61,62,63],4,0,6),t.addMany(s(32,64),6,0,6),t.add(127,6,0,6),t.addMany(s(64,127),6,0,0),t.addMany(s(32,48),3,9,5),t.addMany(s(32,48),5,9,5),t.addMany(s(48,64),5,0,6),t.addMany(s(64,127),5,7,0),t.addMany(s(32,48),4,9,5),t.addMany(s(32,48),1,9,2),t.addMany(s(32,48),2,9,2),t.addMany(s(48,127),2,10,0),t.addMany(s(48,80),1,10,0),t.addMany(s(81,88),1,10,0),t.addMany([89,90,92],1,10,0),t.addMany(s(96,127),1,10,0),t.add(80,1,11,9),t.addMany(n,9,0,9),t.add(127,9,0,9),t.addMany(s(28,32),9,0,9),t.addMany(s(32,48),9,9,12),t.addMany(s(48,60),9,8,10),t.addMany([60,61,62,63],9,9,10),t.addMany(n,11,0,11),t.addMany(s(32,128),11,0,11),t.addMany(s(28,32),11,0,11),t.addMany(n,10,0,10),t.add(127,10,0,10),t.addMany(s(28,32),10,0,10),t.addMany(s(48,60),10,8,10),t.addMany([60,61,62,63],10,0,11),t.addMany(s(32,48),10,9,12),t.addMany(n,12,0,12),t.add(127,12,0,12),t.addMany(s(28,32),12,0,12),t.addMany(s(32,48),12,9,12),t.addMany(s(48,64),12,0,11),t.addMany(s(64,127),12,12,13),t.addMany(s(64,127),10,12,13),t.addMany(s(64,127),9,12,13),t.addMany(n,13,13,13),t.addMany(i,13,13,13),t.add(127,13,0,13),t.addMany([27,156,24,26],13,14,0),t.add(Wt,0,2,0),t.add(Wt,8,5,8),t.add(Wt,6,0,6),t.add(Wt,11,0,11),t.add(Wt,13,13,13),t})(),hC=class extends we{constructor(t=dC){super(),this._transitions=t,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new yf,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,s,i)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,s)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(Me(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new aC),this._dcsParser=this._register(new lC),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(t,e=[64,126]){let s=0;if(t.prefix){if(t.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=t.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(t.intermediates){if(t.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let n=0;n<t.intermediates.length;++n){let o=t.intermediates.charCodeAt(n);if(32>o||o>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=o}}if(t.final.length!==1)throw new Error("final must be a single byte");let i=t.final.charCodeAt(0);if(e[0]>i||i>e[1])throw new Error(`final must be in range ${e[0]} .. ${e[1]}`);return s<<=8,s|=i,s}identToString(t){let e=[];for(;t;)e.push(String.fromCharCode(t&255)),t>>=8;return e.reverse().join("")}setPrintHandler(t){this._printHandler=t}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(t,e){let s=this._identifier(t,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);let i=this._escHandlers[s];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearEscHandler(t){this._escHandlers[this._identifier(t,[48,126])]&&delete this._escHandlers[this._identifier(t,[48,126])]}setEscHandlerFallback(t){this._escHandlerFb=t}setExecuteHandler(t,e){this._executeHandlers[t.charCodeAt(0)]=e}clearExecuteHandler(t){this._executeHandlers[t.charCodeAt(0)]&&delete this._executeHandlers[t.charCodeAt(0)]}setExecuteHandlerFallback(t){this._executeHandlerFb=t}registerCsiHandler(t,e){let s=this._identifier(t);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);let i=this._csiHandlers[s];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearCsiHandler(t){this._csiHandlers[this._identifier(t)]&&delete this._csiHandlers[this._identifier(t)]}setCsiHandlerFallback(t){this._csiHandlerFb=t}registerDcsHandler(t,e){return this._dcsParser.registerHandler(this._identifier(t),e)}clearDcsHandler(t){this._dcsParser.clearHandler(this._identifier(t))}setDcsHandlerFallback(t){this._dcsParser.setHandlerFallback(t)}registerOscHandler(t,e){return this._oscParser.registerHandler(t,e)}clearOscHandler(t){this._oscParser.clearHandler(t)}setOscHandlerFallback(t){this._oscParser.setHandlerFallback(t)}setErrorHandler(t){this._errorHandler=t}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(t,e,s,i,n){this._parseStack.state=t,this._parseStack.handlers=e,this._parseStack.handlerPos=s,this._parseStack.transition=i,this._parseStack.chunkPos=n}parse(t,e,s){let i=0,n=0,o=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,o=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let l=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&c>-1){for(;c>=0&&(a=l[c](this._params),a!==!0);c--)if(a instanceof Promise)return this._parseStack.handlerPos=c,a}this._parseStack.handlers=[];break;case 4:if(s===!1&&c>-1){for(;c>=0&&(a=l[c](),a!==!0);c--)if(a instanceof Promise)return this._parseStack.handlerPos=c,a}this._parseStack.handlers=[];break;case 6:if(i=t[this._parseStack.chunkPos],a=this._dcsParser.unhook(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(i=t[this._parseStack.chunkPos],a=this._oscParser.end(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,o=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let l=o;l<e;++l){switch(i=t[l],n=this._transitions.table[this.currentState<<8|(i<160?i:Wt)],n>>4){case 2:for(let f=l+1;;++f){if(f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}}break;case 3:this._executeHandlers[i]?this._executeHandlers[i]():this._executeHandlerFb(i),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:l,code:i,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let c=this._csiHandlers[this._collect<<8|i],d=c?c.length-1:-1;for(;d>=0&&(a=c[d](this._params),a!==!0);d--)if(a instanceof Promise)return this._preserveStack(3,c,d,n,l),a;d<0&&this._csiHandlerFb(this._collect<<8|i,this._params),this.precedingJoinState=0;break;case 8:do switch(i){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(i-48)}while(++l<e&&(i=t[l])>47&&i<60);l--;break;case 9:this._collect<<=8,this._collect|=i;break;case 10:let u=this._escHandlers[this._collect<<8|i],h=u?u.length-1:-1;for(;h>=0&&(a=u[h](),a!==!0);h--)if(a instanceof Promise)return this._preserveStack(4,u,h,n,l),a;h<0&&this._escHandlerFb(this._collect<<8|i),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|i,this._params);break;case 13:for(let f=l+1;;++f)if(f>=e||(i=t[f])===24||i===26||i===27||i>127&&i<Wt){this._dcsParser.put(t,l,f),l=f-1;break}break;case 14:if(a=this._dcsParser.unhook(i!==24&&i!==26),a)return this._preserveStack(6,[],0,n,l),a;i===27&&(n|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let f=l+1;;f++)if(f>=e||(i=t[f])<32||i>127&&i<Wt){this._oscParser.put(t,l,f),l=f-1;break}break;case 6:if(a=this._oscParser.end(i!==24&&i!==26),a)return this._preserveStack(5,[],0,n,l),a;i===27&&(n|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=n&15}}},uC=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,fC=/^[\da-f]+$/;function ed(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let s=uC.exec(e);if(s){let i=s[1]?15:s[4]?255:s[7]?4095:65535;return[Math.round(parseInt(s[1]||s[4]||s[7]||s[10],16)/i*255),Math.round(parseInt(s[2]||s[5]||s[8]||s[11],16)/i*255),Math.round(parseInt(s[3]||s[6]||s[9]||s[12],16)/i*255)]}}else if(e.indexOf("#")===0&&(e=e.slice(1),fC.exec(e)&&[3,6,9,12].includes(e.length))){let s=e.length/3,i=[0,0,0];for(let n=0;n<3;++n){let o=parseInt(e.slice(s*n,s*n+s),16);i[n]=s===1?o<<4:s===2?o:s===3?o>>4:o>>8}return i}}function yo(t,e){let s=t.toString(16),i=s.length<2?"0"+s:s;switch(e){case 4:return s[0];case 8:return i;case 12:return(i+i).slice(0,3);default:return i+i}}function mC(t,e=16){let[s,i,n]=t;return`rgb:${yo(s,e)}/${yo(i,e)}/${yo(n,e)}`}var pC={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Ns=131072,td=10;function sd(t,e){if(t>24)return e.setWinLines||!1;switch(t){case 1:return!!e.restoreWin;case 2:return!!e.minimizeWin;case 3:return!!e.setWinPosition;case 4:return!!e.setWinSizePixels;case 5:return!!e.raiseWin;case 6:return!!e.lowerWin;case 7:return!!e.refreshWin;case 8:return!!e.setWinSizeChars;case 9:return!!e.maximizeWin;case 10:return!!e.fullscreenWin;case 11:return!!e.getWinState;case 13:return!!e.getWinPosition;case 14:return!!e.getWinSizePixels;case 15:return!!e.getScreenSizePixels;case 16:return!!e.getCellSizePixels;case 18:return!!e.getWinSizeChars;case 19:return!!e.getScreenSizeChars;case 20:return!!e.getIconTitle;case 21:return!!e.getWinTitle;case 22:return!!e.pushTitle;case 23:return!!e.popTitle;case 24:return!!e.setWinLines}return!1}var id=5e3,rd=0,gC=class extends we{constructor(t,e,s,i,n,o,a,l,c=new hC){super(),this._bufferService=t,this._charsetService=e,this._coreService=s,this._logService=i,this._optionsService=n,this._oscLinkService=o,this._coreMouseService=a,this._unicodeService=l,this._parser=c,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new DS,this._utf8Decoder=new PS,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=We.clone(),this._eraseAttrDataInternal=We.clone(),this._onRequestBell=this._register(new ne),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new ne),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new ne),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new ne),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new ne),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new ne),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new ne),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new ne),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new ne),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new ne),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new ne),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new ne),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new ba(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(d=>this._activeBuffer=d.activeBuffer)),this._parser.setCsiHandlerFallback((d,u)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(d),params:u.toArray()})}),this._parser.setEscHandlerFallback(d=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(d)})}),this._parser.setExecuteHandlerFallback(d=>{this._logService.debug("Unknown EXECUTE code: ",{code:d})}),this._parser.setOscHandlerFallback((d,u,h)=>{this._logService.debug("Unknown OSC code: ",{identifier:d,action:u,data:h})}),this._parser.setDcsHandlerFallback((d,u,h)=>{u==="HOOK"&&(h=h.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(d),action:u,payload:h})}),this._parser.setPrintHandler((d,u,h)=>this.print(d,u,h)),this._parser.registerCsiHandler({final:"@"},d=>this.insertChars(d)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},d=>this.scrollLeft(d)),this._parser.registerCsiHandler({final:"A"},d=>this.cursorUp(d)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},d=>this.scrollRight(d)),this._parser.registerCsiHandler({final:"B"},d=>this.cursorDown(d)),this._parser.registerCsiHandler({final:"C"},d=>this.cursorForward(d)),this._parser.registerCsiHandler({final:"D"},d=>this.cursorBackward(d)),this._parser.registerCsiHandler({final:"E"},d=>this.cursorNextLine(d)),this._parser.registerCsiHandler({final:"F"},d=>this.cursorPrecedingLine(d)),this._parser.registerCsiHandler({final:"G"},d=>this.cursorCharAbsolute(d)),this._parser.registerCsiHandler({final:"H"},d=>this.cursorPosition(d)),this._parser.registerCsiHandler({final:"I"},d=>this.cursorForwardTab(d)),this._parser.registerCsiHandler({final:"J"},d=>this.eraseInDisplay(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},d=>this.eraseInDisplay(d,!0)),this._parser.registerCsiHandler({final:"K"},d=>this.eraseInLine(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},d=>this.eraseInLine(d,!0)),this._parser.registerCsiHandler({final:"L"},d=>this.insertLines(d)),this._parser.registerCsiHandler({final:"M"},d=>this.deleteLines(d)),this._parser.registerCsiHandler({final:"P"},d=>this.deleteChars(d)),this._parser.registerCsiHandler({final:"S"},d=>this.scrollUp(d)),this._parser.registerCsiHandler({final:"T"},d=>this.scrollDown(d)),this._parser.registerCsiHandler({final:"X"},d=>this.eraseChars(d)),this._parser.registerCsiHandler({final:"Z"},d=>this.cursorBackwardTab(d)),this._parser.registerCsiHandler({final:"`"},d=>this.charPosAbsolute(d)),this._parser.registerCsiHandler({final:"a"},d=>this.hPositionRelative(d)),this._parser.registerCsiHandler({final:"b"},d=>this.repeatPrecedingCharacter(d)),this._parser.registerCsiHandler({final:"c"},d=>this.sendDeviceAttributesPrimary(d)),this._parser.registerCsiHandler({prefix:">",final:"c"},d=>this.sendDeviceAttributesSecondary(d)),this._parser.registerCsiHandler({final:"d"},d=>this.linePosAbsolute(d)),this._parser.registerCsiHandler({final:"e"},d=>this.vPositionRelative(d)),this._parser.registerCsiHandler({final:"f"},d=>this.hVPosition(d)),this._parser.registerCsiHandler({final:"g"},d=>this.tabClear(d)),this._parser.registerCsiHandler({final:"h"},d=>this.setMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"h"},d=>this.setModePrivate(d)),this._parser.registerCsiHandler({final:"l"},d=>this.resetMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"l"},d=>this.resetModePrivate(d)),this._parser.registerCsiHandler({final:"m"},d=>this.charAttributes(d)),this._parser.registerCsiHandler({final:"n"},d=>this.deviceStatus(d)),this._parser.registerCsiHandler({prefix:"?",final:"n"},d=>this.deviceStatusPrivate(d)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},d=>this.softReset(d)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},d=>this.setCursorStyle(d)),this._parser.registerCsiHandler({final:"r"},d=>this.setScrollRegion(d)),this._parser.registerCsiHandler({final:"s"},d=>this.saveCursor(d)),this._parser.registerCsiHandler({final:"t"},d=>this.windowOptions(d)),this._parser.registerCsiHandler({final:"u"},d=>this.restoreCursor(d)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},d=>this.insertColumns(d)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},d=>this.deleteColumns(d)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},d=>this.selectProtected(d)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},d=>this.requestMode(d,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},d=>this.requestMode(d,!1)),this._parser.setExecuteHandler(Q.BEL,()=>this.bell()),this._parser.setExecuteHandler(Q.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(Q.BS,()=>this.backspace()),this._parser.setExecuteHandler(Q.HT,()=>this.tab()),this._parser.setExecuteHandler(Q.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(Q.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(ln.IND,()=>this.index()),this._parser.setExecuteHandler(ln.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(ln.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Tt(d=>(this.setTitle(d),this.setIconName(d),!0))),this._parser.registerOscHandler(1,new Tt(d=>this.setIconName(d))),this._parser.registerOscHandler(2,new Tt(d=>this.setTitle(d))),this._parser.registerOscHandler(4,new Tt(d=>this.setOrReportIndexedColor(d))),this._parser.registerOscHandler(8,new Tt(d=>this.setHyperlink(d))),this._parser.registerOscHandler(10,new Tt(d=>this.setOrReportFgColor(d))),this._parser.registerOscHandler(11,new Tt(d=>this.setOrReportBgColor(d))),this._parser.registerOscHandler(12,new Tt(d=>this.setOrReportCursorColor(d))),this._parser.registerOscHandler(104,new Tt(d=>this.restoreIndexedColor(d))),this._parser.registerOscHandler(110,new Tt(d=>this.restoreFgColor(d))),this._parser.registerOscHandler(111,new Tt(d=>this.restoreBgColor(d))),this._parser.registerOscHandler(112,new Tt(d=>this.restoreCursorColor(d))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let d in et)this._parser.registerEscHandler({intermediates:"(",final:d},()=>this.selectCharset("("+d)),this._parser.registerEscHandler({intermediates:")",final:d},()=>this.selectCharset(")"+d)),this._parser.registerEscHandler({intermediates:"*",final:d},()=>this.selectCharset("*"+d)),this._parser.registerEscHandler({intermediates:"+",final:d},()=>this.selectCharset("+"+d)),this._parser.registerEscHandler({intermediates:"-",final:d},()=>this.selectCharset("-"+d)),this._parser.registerEscHandler({intermediates:".",final:d},()=>this.selectCharset("."+d)),this._parser.registerEscHandler({intermediates:"/",final:d},()=>this.selectCharset("/"+d));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(d=>(this._logService.error("Parsing error: ",d),d)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new Zc((d,u)=>this.requestStatusString(d,u)))}getAttrData(){return this._curAttrData}_preserveStack(t,e,s,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=t,this._parseStack.cursorStartY=e,this._parseStack.decodedLength=s,this._parseStack.position=i}_logSlowResolvingAsync(t){this._logService.logLevel<=3&&Promise.race([t,new Promise((e,s)=>setTimeout(()=>s("#SLOW_TIMEOUT"),id))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${id} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(t,e){let s,i=this._activeBuffer.x,n=this._activeBuffer.y,o=0,a=this._parseStack.paused;if(a){if(s=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,e))return this._logSlowResolvingAsync(s),s;i=this._parseStack.cursorStartX,n=this._parseStack.cursorStartY,this._parseStack.paused=!1,t.length>Ns&&(o=this._parseStack.position+Ns)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,d=>String.fromCharCode(d)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(d=>d.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<Ns&&(this._parseBuffer=new Uint32Array(Math.min(t.length,Ns))),a||this._dirtyRowTracker.clearRange(),t.length>Ns)for(let d=o;d<t.length;d+=Ns){let u=d+Ns<t.length?d+Ns:t.length,h=typeof t=="string"?this._stringDecoder.decode(t.substring(d,u),this._parseBuffer):this._utf8Decoder.decode(t.subarray(d,u),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,h))return this._preserveStack(i,n,h,d),this._logSlowResolvingAsync(s),s}else if(!a){let d=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,d))return this._preserveStack(i,n,d,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==i||this._activeBuffer.y!==n)&&this._onCursorMove.fire();let l=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),c=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);c<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(c,this._bufferService.rows-1),end:Math.min(l,this._bufferService.rows-1)})}print(t,e,s){let i,n,o=this._charsetService.charset,a=this._optionsService.rawOptions.screenReaderMode,l=this._bufferService.cols,c=this._coreService.decPrivateModes.wraparound,d=this._coreService.modes.insertMode,u=this._curAttrData,h=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-e>0&&h.getWidth(this._activeBuffer.x-1)===2&&h.setCellFromCodepoint(this._activeBuffer.x-1,0,1,u);let f=this._parser.precedingJoinState;for(let m=e;m<s;++m){if(i=t[m],i<127&&o){let v=o[String.fromCharCode(i)];v&&(i=v.charCodeAt(0))}let p=this._unicodeService.charProperties(i,f);n=Ys.extractWidth(p);let g=Ys.extractShouldJoin(p),_=g?Ys.extractWidth(f):0;if(f=p,a&&this._onA11yChar.fire(As(i)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+n-_>l){if(c){let v=h,x=this._activeBuffer.x-_;for(this._activeBuffer.x=_,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),h=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),_>0&&h instanceof Xi&&h.copyCellsFrom(v,x,0,_,!1);x<l;)v.setCellFromCodepoint(x++,0,1,u)}else if(this._activeBuffer.x=l-1,n===2)continue}if(g&&this._activeBuffer.x){let v=h.getWidth(this._activeBuffer.x-1)?1:2;h.addCodepointToCell(this._activeBuffer.x-v,i,n);for(let x=n-_;--x>=0;)h.setCellFromCodepoint(this._activeBuffer.x++,0,0,u);continue}if(d&&(h.insertCells(this._activeBuffer.x,n-_,this._activeBuffer.getNullCell(u)),h.getWidth(l-1)===2&&h.setCellFromCodepoint(l-1,0,1,u)),h.setCellFromCodepoint(this._activeBuffer.x++,i,n,u),n>0)for(;--n;)h.setCellFromCodepoint(this._activeBuffer.x++,0,0,u)}this._parser.precedingJoinState=f,this._activeBuffer.x<l&&s-e>0&&h.getWidth(this._activeBuffer.x)===0&&!h.hasContent(this._activeBuffer.x)&&h.setCellFromCodepoint(this._activeBuffer.x,0,1,u),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(t,e){return t.final==="t"&&!t.prefix&&!t.intermediates?this._parser.registerCsiHandler(t,s=>sd(s.params[0],this._optionsService.rawOptions.windowOptions)?e(s):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new Zc(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new Tt(e))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);t.hasWidth(this._activeBuffer.x)&&!t.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-t),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(t=this._bufferService.cols-1){this._activeBuffer.x=Math.min(t,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(t,e){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=t,this._activeBuffer.y=this._activeBuffer.scrollTop+e):(this._activeBuffer.x=t,this._activeBuffer.y=e),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(t,e){this._restrictCursor(),this._setCursor(this._activeBuffer.x+t,this._activeBuffer.y+e)}cursorUp(t){let e=this._activeBuffer.y-this._activeBuffer.scrollTop;return e>=0?this._moveCursor(0,-Math.min(e,t.params[0]||1)):this._moveCursor(0,-(t.params[0]||1)),!0}cursorDown(t){let e=this._activeBuffer.scrollBottom-this._activeBuffer.y;return e>=0?this._moveCursor(0,Math.min(e,t.params[0]||1)):this._moveCursor(0,t.params[0]||1),!0}cursorForward(t){return this._moveCursor(t.params[0]||1,0),!0}cursorBackward(t){return this._moveCursor(-(t.params[0]||1),0),!0}cursorNextLine(t){return this.cursorDown(t),this._activeBuffer.x=0,!0}cursorPrecedingLine(t){return this.cursorUp(t),this._activeBuffer.x=0,!0}cursorCharAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(t){return this._setCursor(t.length>=2?(t.params[1]||1)-1:0,(t.params[0]||1)-1),!0}charPosAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(t){return this._moveCursor(t.params[0]||1,0),!0}linePosAbsolute(t){return this._setCursor(this._activeBuffer.x,(t.params[0]||1)-1),!0}vPositionRelative(t){return this._moveCursor(0,t.params[0]||1),!0}hVPosition(t){return this.cursorPosition(t),!0}tabClear(t){let e=t.params[0];return e===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:e===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(t){let e=t.params[0];return e===1&&(this._curAttrData.bg|=536870912),(e===2||e===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(t,e,s,i=!1,n=!1){let o=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);o.replaceCells(e,s,this._activeBuffer.getNullCell(this._eraseAttrData()),n),i&&(o.isWrapped=!1)}_resetBufferLine(t,e=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);s&&(s.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),e),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+t),s.isWrapped=!1)}eraseInDisplay(t,e=!1){this._restrictCursor(this._bufferService.cols);let s;switch(t.params[0]){case 0:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);s<this._bufferService.rows;s++)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(s);break;case 1:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s,0,this._activeBuffer.x+1,!0,e),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(s+1).isWrapped=!1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(s=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,s-1);s--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+s)?.getTrimmedLength(););for(;s>=0;s--)this._bufferService.scroll(this._eraseAttrData())}else{for(s=this._bufferService.rows,this._dirtyRowTracker.markDirty(s-1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0)}break;case 3:let i=this._activeBuffer.lines.length-this._bufferService.rows;i>0&&(this._activeBuffer.lines.trimStart(i),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-i,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-i,0),this._onScroll.fire(0));break}return!0}eraseInLine(t,e=!1){switch(this._restrictCursor(this._bufferService.cols),t.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,e);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,e);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,n=this._bufferService.rows-1+this._activeBuffer.ybase-i+1;for(;e--;)this._activeBuffer.lines.splice(n-1,1),this._activeBuffer.lines.splice(s,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i;for(i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,i=this._bufferService.rows-1+this._activeBuffer.ybase-i;e--;)this._activeBuffer.lines.splice(s,1),this._activeBuffer.lines.splice(i,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.insertCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.deleteCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(We));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(t.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(t){let e=this._parser.precedingJoinState;if(!e)return!0;let s=t.params[0]||1,i=Ys.extractWidth(e),n=this._activeBuffer.x-i,o=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(n),a=new Uint32Array(o.length*s),l=0;for(let d=0;d<o.length;){let u=o.codePointAt(d)||0;a[l++]=u,d+=u>65535?2:1}let c=l;for(let d=1;d<s;++d)a.copyWithin(c,0,l),c+=l;return this.print(a,0,c),!0}sendDeviceAttributesPrimary(t){return t.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(Q.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(Q.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(Q.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(Q.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(Q.ESC+"[>83;40003;0c")),!0}_is(t){return(this._optionsService.rawOptions.termName+"").indexOf(t)===0}setMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,Gs),this._charsetService.setgCharset(1,Gs),this._charsetService.setgCharset(2,Gs),this._charsetService.setgCharset(3,Gs);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),t.params[e]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(t,e){let s;(g=>(g[g.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",g[g.SET=1]="SET",g[g.RESET=2]="RESET",g[g.PERMANENTLY_SET=3]="PERMANENTLY_SET",g[g.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(s||={});let i=this._coreService.decPrivateModes,{activeProtocol:n,activeEncoding:o}=this._coreMouseService,a=this._coreService,{buffers:l,cols:c}=this._bufferService,{active:d,alt:u}=l,h=this._optionsService.rawOptions,f=(g,_)=>(a.triggerDataEvent(`${Q.ESC}[${e?"":"?"}${g};${_}$y`),!0),m=g=>g?1:2,p=t.params[0];return e?p===2?f(p,4):p===4?f(p,m(a.modes.insertMode)):p===12?f(p,3):p===20?f(p,m(h.convertEol)):f(p,0):p===1?f(p,m(i.applicationCursorKeys)):p===3?f(p,h.windowOptions.setWinLines?c===80?2:c===132?1:0:0):p===6?f(p,m(i.origin)):p===7?f(p,m(i.wraparound)):p===8?f(p,3):p===9?f(p,m(n==="X10")):p===12?f(p,m(h.cursorBlink)):p===25?f(p,m(!a.isCursorHidden)):p===45?f(p,m(i.reverseWraparound)):p===66?f(p,m(i.applicationKeypad)):p===67?f(p,4):p===1e3?f(p,m(n==="VT200")):p===1002?f(p,m(n==="DRAG")):p===1003?f(p,m(n==="ANY")):p===1004?f(p,m(i.sendFocus)):p===1005?f(p,4):p===1006?f(p,m(o==="SGR")):p===1015?f(p,4):p===1016?f(p,m(o==="SGR_PIXELS")):p===1048?f(p,1):p===47||p===1047||p===1049?f(p,m(d===u)):p===2004?f(p,m(i.bracketedPasteMode)):p===2026?f(p,m(i.synchronizedOutput)):f(p,0)}_updateAttrColor(t,e,s,i,n){return e===2?(t|=50331648,t&=-16777216,t|=Ar.fromColorRGB([s,i,n])):e===5&&(t&=-50331904,t|=33554432|s&255),t}_extractColor(t,e,s){let i=[0,0,-1,0,0,0],n=0,o=0;do{if(i[o+n]=t.params[e+o],t.hasSubParams(e+o)){let a=t.getSubParams(e+o),l=0;do i[1]===5&&(n=1),i[o+l+1+n]=a[l];while(++l<a.length&&l+o+1+n<i.length);break}if(i[1]===5&&o+n>=2||i[1]===2&&o+n>=5)break;i[1]&&(n=1)}while(++o+e<t.length&&o+n<i.length);for(let a=2;a<i.length;++a)i[a]===-1&&(i[a]=0);switch(i[0]){case 38:s.fg=this._updateAttrColor(s.fg,i[1],i[3],i[4],i[5]);break;case 48:s.bg=this._updateAttrColor(s.bg,i[1],i[3],i[4],i[5]);break;case 58:s.extended=s.extended.clone(),s.extended.underlineColor=this._updateAttrColor(s.extended.underlineColor,i[1],i[3],i[4],i[5])}return o}_processUnderline(t,e){e.extended=e.extended.clone(),(!~t||t>5)&&(t=1),e.extended.underlineStyle=t,e.fg|=268435456,t===0&&(e.fg&=-268435457),e.updateExtended()}_processSGR0(t){t.fg=We.fg,t.bg=We.bg,t.extended=t.extended.clone(),t.extended.underlineStyle=0,t.extended.underlineColor&=-67108864,t.updateExtended()}charAttributes(t){if(t.length===1&&t.params[0]===0)return this._processSGR0(this._curAttrData),!0;let e=t.length,s,i=this._curAttrData;for(let n=0;n<e;n++)s=t.params[n],s>=30&&s<=37?(i.fg&=-50331904,i.fg|=16777216|s-30):s>=40&&s<=47?(i.bg&=-50331904,i.bg|=16777216|s-40):s>=90&&s<=97?(i.fg&=-50331904,i.fg|=16777216|s-90|8):s>=100&&s<=107?(i.bg&=-50331904,i.bg|=16777216|s-100|8):s===0?this._processSGR0(i):s===1?i.fg|=134217728:s===3?i.bg|=67108864:s===4?(i.fg|=268435456,this._processUnderline(t.hasSubParams(n)?t.getSubParams(n)[0]:1,i)):s===5?i.fg|=536870912:s===7?i.fg|=67108864:s===8?i.fg|=1073741824:s===9?i.fg|=2147483648:s===2?i.bg|=134217728:s===21?this._processUnderline(2,i):s===22?(i.fg&=-134217729,i.bg&=-134217729):s===23?i.bg&=-67108865:s===24?(i.fg&=-268435457,this._processUnderline(0,i)):s===25?i.fg&=-536870913:s===27?i.fg&=-67108865:s===28?i.fg&=-1073741825:s===29?i.fg&=2147483647:s===39?(i.fg&=-67108864,i.fg|=We.fg&16777215):s===49?(i.bg&=-67108864,i.bg|=We.bg&16777215):s===38||s===48||s===58?n+=this._extractColor(t,n,i):s===53?i.bg|=1073741824:s===55?i.bg&=-1073741825:s===59?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):s===100?(i.fg&=-67108864,i.fg|=We.fg&16777215,i.bg&=-67108864,i.bg|=We.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${Q.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${Q.ESC}[${e};${s}R`);break}return!0}deviceStatusPrivate(t){if(t.params[0]===6){let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${Q.ESC}[?${e};${s}R`)}return!0}softReset(t){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=We.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(t){let e=t.length===0?1:t.params[0];if(e===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(e){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let s=e%2===1;this._coreService.decPrivateModes.cursorBlink=s}return!0}setScrollRegion(t){let e=t.params[0]||1,s;return(t.length<2||(s=t.params[1])>this._bufferService.rows||s===0)&&(s=this._bufferService.rows),s>e&&(this._activeBuffer.scrollTop=e-1,this._activeBuffer.scrollBottom=s-1,this._setCursor(0,0)),!0}windowOptions(t){if(!sd(t.params[0],this._optionsService.rawOptions.windowOptions))return!0;let e=t.length>1?t.params[1]:0;switch(t.params[0]){case 14:e!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${Q.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>td&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>td&&this._iconNameStack.shift());break;case 23:(e===0||e===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(e===0||e===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(t){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(t){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(t){return this._windowTitle=t,this._onTitleChange.fire(t),!0}setIconName(t){return this._iconName=t,!0}setOrReportIndexedColor(t){let e=[],s=t.split(";");for(;s.length>1;){let i=s.shift(),n=s.shift();if(/^\d+$/.exec(i)){let o=parseInt(i);if(nd(o))if(n==="?")e.push({type:0,index:o});else{let a=ed(n);a&&e.push({type:1,index:o,color:a})}}}return e.length&&this._onColor.fire(e),!0}setHyperlink(t){let e=t.indexOf(";");if(e===-1)return!0;let s=t.slice(0,e).trim(),i=t.slice(e+1);return i?this._createHyperlink(s,i):s.trim()?!1:this._finishHyperlink()}_createHyperlink(t,e){this._getCurrentLinkId()&&this._finishHyperlink();let s=t.split(":"),i,n=s.findIndex(o=>o.startsWith("id="));return n!==-1&&(i=s[n].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:i,uri:e}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(t,e){let s=t.split(";");for(let i=0;i<s.length&&!(e>=this._specialColors.length);++i,++e)if(s[i]==="?")this._onColor.fire([{type:0,index:this._specialColors[e]}]);else{let n=ed(s[i]);n&&this._onColor.fire([{type:1,index:this._specialColors[e],color:n}])}return!0}setOrReportFgColor(t){return this._setOrReportSpecialColor(t,0)}setOrReportBgColor(t){return this._setOrReportSpecialColor(t,1)}setOrReportCursorColor(t){return this._setOrReportSpecialColor(t,2)}restoreIndexedColor(t){if(!t)return this._onColor.fire([{type:2}]),!0;let e=[],s=t.split(";");for(let i=0;i<s.length;++i)if(/^\d+$/.exec(s[i])){let n=parseInt(s[i]);nd(n)&&e.push({type:2,index:n})}return e.length&&this._onColor.fire(e),!0}restoreFgColor(t){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(t){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(t){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,Gs),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(pC[t[0]],et[t[1]]||Gs),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let t=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,t,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=We.clone(),this._eraseAttrDataInternal=We.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(t){return this._charsetService.setgLevel(t),!0}screenAlignmentPattern(){let t=new Kt;t.content=1<<22|69,t.fg=this._curAttrData.fg,t.bg=this._curAttrData.bg,this._setCursor(0,0);for(let e=0;e<this._bufferService.rows;++e){let s=this._activeBuffer.ybase+this._activeBuffer.y+e,i=this._activeBuffer.lines.get(s);i&&(i.fill(t),i.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(t,e){let s=a=>(this._coreService.triggerDataEvent(`${Q.ESC}${a}${Q.ESC}\\`),!0),i=this._bufferService.buffer,n=this._optionsService.rawOptions;return s(t==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:t==='"p'?'P1$r61;1"p':t==="r"?`P1$r${i.scrollTop+1};${i.scrollBottom+1}r`:t==="m"?"P1$r0m":t===" q"?`P1$r${{block:2,underline:4,bar:6}[n.cursorStyle]-(n.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(t,e){this._dirtyRowTracker.markRangeDirty(t,e)}},ba=class{constructor(t){this._bufferService=t,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(t){t<this.start?this.start=t:t>this.end&&(this.end=t)}markRangeDirty(t,e){t>e&&(rd=t,t=e,e=rd),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};ba=$e([le(0,wt)],ba);function nd(t){return 0<=t&&t<256}var _C=5e7,od=12,xC=50,vC=class extends we{constructor(t){super(),this._action=t,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new ne),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(t,e){if(e!==void 0&&this._syncCalls>e){this._syncCalls=0;return}if(this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let s;for(;s=this._writeBuffer.shift();){this._action(s);let i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(t,e){if(this._pendingData>_C)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e)}_innerWrite(t=0,e=!0){let s=t||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let i=this._writeBuffer[this._bufferOffset],n=this._action(i,e);if(n){let a=l=>performance.now()-s>=od?setTimeout(()=>this._innerWrite(0,l)):this._innerWrite(s,l);n.catch(l=>(queueMicrotask(()=>{throw l}),Promise.resolve(!1))).then(a);return}let o=this._callbacks[this._bufferOffset];if(o&&o(),this._bufferOffset++,this._pendingData-=i.length,performance.now()-s>=od)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>xC&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},ya=class{constructor(t){this._bufferService=t,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(t){let e=this._bufferService.buffer;if(t.id===void 0){let l=e.addMarker(e.ybase+e.y),c={data:t,id:this._nextId++,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(c,l)),this._dataByLinkId.set(c.id,c),c.id}let s=t,i=this._getEntryIdKey(s),n=this._entriesWithId.get(i);if(n)return this.addLineToLink(n.id,e.ybase+e.y),n.id;let o=e.addMarker(e.ybase+e.y),a={id:this._nextId++,key:this._getEntryIdKey(s),data:s,lines:[o]};return o.onDispose(()=>this._removeMarkerFromLink(a,o)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(t,e){let s=this._dataByLinkId.get(t);if(s&&s.lines.every(i=>i.line!==e)){let i=this._bufferService.buffer.addMarker(e);s.lines.push(i),i.onDispose(()=>this._removeMarkerFromLink(s,i))}}getLinkData(t){return this._dataByLinkId.get(t)?.data}_getEntryIdKey(t){return`${t.id};;${t.uri}`}_removeMarkerFromLink(t,e){let s=t.lines.indexOf(e);s!==-1&&(t.lines.splice(s,1),t.lines.length===0&&(t.data.id!==void 0&&this._entriesWithId.delete(t.key),this._dataByLinkId.delete(t.id)))}};ya=$e([le(0,wt)],ya);var ad=!1,bC=class extends we{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new ki),this._onBinary=this._register(new ne),this.onBinary=this._onBinary.event,this._onData=this._register(new ne),this.onData=this._onData.event,this._onLineFeed=this._register(new ne),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new ne),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new ne),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new ne),this._instantiationService=new HV,this.optionsService=this._register(new eC(t)),this._instantiationService.setService(Vt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(ga)),this._instantiationService.setService(wt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(pa)),this._instantiationService.setService(Bu,this._logService),this.coreService=this._register(this._instantiationService.createInstance(_a)),this._instantiationService.setService(ai,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(xa)),this._instantiationService.setService(Ou,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Ys)),this._instantiationService.setService($S,this.unicodeService),this._charsetService=this._instantiationService.createInstance(nC),this._instantiationService.setService(BS,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(ya),this._instantiationService.setService($u,this._oscLinkService),this._inputHandler=this._register(new gC(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(ct.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(ct.forward(this._bufferService.onResize,this._onResize)),this._register(ct.forward(this.coreService.onData,this._onData)),this._register(ct.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new vC((e,s)=>this._inputHandler.parse(e,s))),this._register(ct.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new ne),this._onScroll.event(t=>{this._onScrollApi?.fire(t.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(t){for(let e in t)this.optionsService.options[e]=t[e]}write(t,e){this._writeBuffer.write(t,e)}writeSync(t,e){this._logService.logLevel<=3&&!ad&&(this._logService.warn("writeSync is unreliable and will be removed soon."),ad=!0),this._writeBuffer.writeSync(t,e)}input(t,e=!0){this.coreService.triggerDataEvent(t,e)}resize(t,e){isNaN(t)||isNaN(e)||(t=Math.max(t,vf),e=Math.max(e,bf),this._bufferService.resize(t,e))}scroll(t,e=!1){this._bufferService.scroll(t,e)}scrollLines(t,e){this._bufferService.scrollLines(t,e)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}registerEscHandler(t,e){return this._inputHandler.registerEscHandler(t,e)}registerDcsHandler(t,e){return this._inputHandler.registerDcsHandler(t,e)}registerCsiHandler(t,e){return this._inputHandler.registerCsiHandler(t,e)}registerOscHandler(t,e){return this._inputHandler.registerOscHandler(t,e)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let t=!1,e=this.optionsService.rawOptions.windowsPty;e&&e.buildNumber!==void 0&&e.buildNumber!==void 0?t=e.backend==="conpty"&&e.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(t=!0),t?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let t=[];t.push(this.onLineFeed(Qc.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(Qc(this._bufferService),!1))),this._windowsWrappingHeuristics.value=Me(()=>{for(let e of t)e.dispose()})}}},yC={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function SC(t,e,s,i){let n={type:0,cancel:!1,key:void 0},o=(t.shiftKey?1:0)|(t.altKey?2:0)|(t.ctrlKey?4:0)|(t.metaKey?8:0);switch(t.keyCode){case 0:t.key==="UIKeyInputUpArrow"?e?n.key=Q.ESC+"OA":n.key=Q.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?n.key=Q.ESC+"OD":n.key=Q.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?n.key=Q.ESC+"OC":n.key=Q.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?n.key=Q.ESC+"OB":n.key=Q.ESC+"[B");break;case 8:n.key=t.ctrlKey?"\b":Q.DEL,t.altKey&&(n.key=Q.ESC+n.key);break;case 9:if(t.shiftKey){n.key=Q.ESC+"[Z";break}n.key=Q.HT,n.cancel=!0;break;case 13:n.key=t.altKey?Q.ESC+Q.CR:Q.CR,n.cancel=!0;break;case 27:n.key=Q.ESC,t.altKey&&(n.key=Q.ESC+Q.ESC),n.cancel=!0;break;case 37:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"D":e?n.key=Q.ESC+"OD":n.key=Q.ESC+"[D";break;case 39:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"C":e?n.key=Q.ESC+"OC":n.key=Q.ESC+"[C";break;case 38:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"A":e?n.key=Q.ESC+"OA":n.key=Q.ESC+"[A";break;case 40:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"B":e?n.key=Q.ESC+"OB":n.key=Q.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(n.key=Q.ESC+"[2~");break;case 46:o?n.key=Q.ESC+"[3;"+(o+1)+"~":n.key=Q.ESC+"[3~";break;case 36:o?n.key=Q.ESC+"[1;"+(o+1)+"H":e?n.key=Q.ESC+"OH":n.key=Q.ESC+"[H";break;case 35:o?n.key=Q.ESC+"[1;"+(o+1)+"F":e?n.key=Q.ESC+"OF":n.key=Q.ESC+"[F";break;case 33:t.shiftKey?n.type=2:t.ctrlKey?n.key=Q.ESC+"[5;"+(o+1)+"~":n.key=Q.ESC+"[5~";break;case 34:t.shiftKey?n.type=3:t.ctrlKey?n.key=Q.ESC+"[6;"+(o+1)+"~":n.key=Q.ESC+"[6~";break;case 112:o?n.key=Q.ESC+"[1;"+(o+1)+"P":n.key=Q.ESC+"OP";break;case 113:o?n.key=Q.ESC+"[1;"+(o+1)+"Q":n.key=Q.ESC+"OQ";break;case 114:o?n.key=Q.ESC+"[1;"+(o+1)+"R":n.key=Q.ESC+"OR";break;case 115:o?n.key=Q.ESC+"[1;"+(o+1)+"S":n.key=Q.ESC+"OS";break;case 116:o?n.key=Q.ESC+"[15;"+(o+1)+"~":n.key=Q.ESC+"[15~";break;case 117:o?n.key=Q.ESC+"[17;"+(o+1)+"~":n.key=Q.ESC+"[17~";break;case 118:o?n.key=Q.ESC+"[18;"+(o+1)+"~":n.key=Q.ESC+"[18~";break;case 119:o?n.key=Q.ESC+"[19;"+(o+1)+"~":n.key=Q.ESC+"[19~";break;case 120:o?n.key=Q.ESC+"[20;"+(o+1)+"~":n.key=Q.ESC+"[20~";break;case 121:o?n.key=Q.ESC+"[21;"+(o+1)+"~":n.key=Q.ESC+"[21~";break;case 122:o?n.key=Q.ESC+"[23;"+(o+1)+"~":n.key=Q.ESC+"[23~";break;case 123:o?n.key=Q.ESC+"[24;"+(o+1)+"~":n.key=Q.ESC+"[24~";break;default:if(t.ctrlKey&&!t.shiftKey&&!t.altKey&&!t.metaKey)t.keyCode>=65&&t.keyCode<=90?n.key=String.fromCharCode(t.keyCode-64):t.keyCode===32?n.key=Q.NUL:t.keyCode>=51&&t.keyCode<=55?n.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?n.key=Q.DEL:t.keyCode===219?n.key=Q.ESC:t.keyCode===220?n.key=Q.FS:t.keyCode===221&&(n.key=Q.GS);else if((!s||i)&&t.altKey&&!t.metaKey){let a=yC[t.keyCode]?.[t.shiftKey?1:0];if(a)n.key=Q.ESC+a;else if(t.keyCode>=65&&t.keyCode<=90){let l=t.ctrlKey?t.keyCode-64:t.keyCode+32,c=String.fromCharCode(l);t.shiftKey&&(c=c.toUpperCase()),n.key=Q.ESC+c}else if(t.keyCode===32)n.key=Q.ESC+(t.ctrlKey?Q.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let l=t.code.slice(3,4);t.shiftKey||(l=l.toLowerCase()),n.key=Q.ESC+l,n.cancel=!0}}else s&&!t.altKey&&!t.ctrlKey&&!t.shiftKey&&t.metaKey?t.keyCode===65&&(n.type=1):t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.keyCode>=48&&t.key.length===1?n.key=t.key:t.key&&t.ctrlKey&&(t.key==="_"&&(n.key=Q.US),t.key==="@"&&(n.key=Q.NUL));break}return n}var Ue=0,wC=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new wn,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new wn,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(t){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(t)}_flushInserted(){let t=this._insertedValues.sort((n,o)=>this._getKey(n)-this._getKey(o)),e=0,s=0,i=new Array(this._array.length+this._insertedValues.length);for(let n=0;n<i.length;n++)s>=this._array.length||this._getKey(t[e])<=this._getKey(this._array[s])?(i[n]=t[e],e++):i[n]=this._array[s++];this._array=i,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(t){if(this._flushCleanupInserted(),this._array.length===0)return!1;let e=this._getKey(t);if(e===void 0||(Ue=this._search(e),Ue===-1)||this._getKey(this._array[Ue])!==e)return!1;do if(this._array[Ue]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Ue),!0;while(++Ue<this._array.length&&this._getKey(this._array[Ue])===e);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let t=this._deletedIndices.sort((n,o)=>n-o),e=0,s=new Array(this._array.length-t.length),i=0;for(let n=0;n<this._array.length;n++)t[e]===n?e++:s[i++]=this._array[n];this._array=s,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ue=this._search(t),!(Ue<0||Ue>=this._array.length)&&this._getKey(this._array[Ue])===t))do yield this._array[Ue];while(++Ue<this._array.length&&this._getKey(this._array[Ue])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ue=this._search(t),!(Ue<0||Ue>=this._array.length)&&this._getKey(this._array[Ue])===t))do e(this._array[Ue]);while(++Ue<this._array.length&&this._getKey(this._array[Ue])===t)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(t){let e=0,s=this._array.length-1;for(;s>=e;){let i=e+s>>1,n=this._getKey(this._array[i]);if(n>t)s=i-1;else if(n<t)e=i+1;else{for(;i>0&&this._getKey(this._array[i-1])===t;)i--;return i}}return e}},So=0,ld=0,VC=class extends we{constructor(){super(),this._decorations=new wC(t=>t?.marker.line),this._onDecorationRegistered=this._register(new ne),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new ne),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(Me(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new CC(t);if(e){let s=e.marker.onDispose(()=>e.dispose()),i=e.onDispose(()=>{i.dispose(),e&&(this._decorations.delete(e)&&this._onDecorationRemoved.fire(e),s.dispose())});this._decorations.insert(e),this._onDecorationRegistered.fire(e)}return e}reset(){for(let t of this._decorations.values())t.dispose();this._decorations.clear()}*getDecorationsAtCell(t,e,s){let i=0,n=0;for(let o of this._decorations.getKeyIterator(e))i=o.options.x??0,n=i+(o.options.width??1),t>=i&&t<n&&(!s||(o.options.layer??"bottom")===s)&&(yield o)}forEachDecorationAtCell(t,e,s,i){this._decorations.forEachByKey(e,n=>{So=n.options.x??0,ld=So+(n.options.width??1),t>=So&&t<ld&&(!s||(n.options.layer??"bottom")===s)&&i(n)})}},CC=class extends Ps{constructor(t){super(),this.options=t,this.onRenderEmitter=this.add(new ne),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new ne),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=t.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=Le.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=Le.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},kC=1e3,jC=class{constructor(t,e=kC){this._renderCallback=t,this._debounceThresholdMS=e,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(t,e,s){this._rowCount=s,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e;let i=performance.now();if(i-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=i,this._innerRefresh();else if(!this._additionalRefreshRequested){let n=i-this._lastRefreshMs,o=this._debounceThresholdMS-n;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},o)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e)}},cd=20,Vn=class extends we{constructor(t,e,s,i){super(),this._terminal=t,this._coreBrowserService=s,this._renderService=i,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let n=this._coreBrowserService.mainDocument;this._accessibilityContainer=n.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=n.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let o=0;o<this._terminal.rows;o++)this._rowElements[o]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[o]);if(this._topBoundaryFocusListener=o=>this._handleBoundaryFocus(o,0),this._bottomBoundaryFocusListener=o=>this._handleBoundaryFocus(o,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=n.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new jC(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(o=>this._handleResize(o.rows))),this._register(this._terminal.onRender(o=>this._refreshRows(o.start,o.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(o=>this._handleChar(o))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
725
|
+
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(t){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),fl&&t&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(t){let e=this._getMouseBufferCoords(t),s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i||!e?!1:this._areCoordsInSelection(e,s,i)}isCellInSelection(t,e){let s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i?!1:this._areCoordsInSelection([t,e],s,i)}_areCoordsInSelection(t,e,s){return t[1]>e[1]&&t[1]<s[1]||e[1]===s[1]&&t[1]===e[1]&&t[0]>=e[0]&&t[0]<s[0]||e[1]<s[1]&&t[1]===s[1]&&t[0]<s[0]||e[1]<s[1]&&t[1]===e[1]&&t[0]>=e[0]}_selectWordAtCursor(t,e){let s=this._linkifier.currentLink?.link?.range;if(s)return this._model.selectionStart=[s.start.x-1,s.start.y-1],this._model.selectionStartLength=$c(s,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let i=this._getMouseBufferCoords(t);return i?(this._selectWordAt(i,e),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(t,e){this._model.clearSelection(),t=Math.max(t,0),e=Math.min(e,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,t],this._model.selectionEnd=[this._bufferService.cols,e],this.refresh(),this._onSelectionChange.fire()}_handleTrim(t){this._model.handleTrim(t)&&this.refresh()}_getMouseBufferCoords(t){let e=this._mouseService.getCoords(t,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(e)return e[0]--,e[1]--,e[1]+=this._bufferService.buffer.ydisp,e}_getMouseEventScrollAmount(t){let e=ul(this._coreBrowserService.window,t,this._screenElement)[1],s=this._renderService.dimensions.css.canvas.height;return e>=0&&e<=s?0:(e>s&&(e-=s),e=Math.min(Math.max(e,-go),go),e/=go,e/Math.abs(e)+Math.round(e*(LV-1)))}shouldForceSelection(t){return Sn?t.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:t.shiftKey}handleMouseDown(t){if(this._mouseDownTimeStamp=t.timeStamp,!(t.button===2&&this.hasSelection)&&t.button===0){if(!this._enabled){if(!this.shouldForceSelection(t))return;t.stopPropagation()}t.preventDefault(),this._dragScrollAmount=0,this._enabled&&t.shiftKey?this._handleIncrementalClick(t):t.detail===1?this._handleSingleClick(t):t.detail===2?this._handleDoubleClick(t):t.detail===3&&this._handleTripleClick(t),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),OV)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(t){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(t))}_handleSingleClick(t){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(t)?3:0,this._model.selectionStart=this._getMouseBufferCoords(t),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let e=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);e&&e.length!==this._model.selectionStart[0]&&e.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(t){this._selectWordAtCursor(t,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(t){let e=this._getMouseBufferCoords(t);e&&(this._activeSelectionMode=2,this._selectLineAt(e[1]))}shouldColumnSelect(t){return t.altKey&&!(Sn&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(t){if(t.stopImmediatePropagation(),!this._model.selectionStart)return;let e=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(t),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(t),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let s=this._bufferService.buffer;if(this._model.selectionEnd[1]<s.lines.length){let i=s.lines.get(this._model.selectionEnd[1]);i&&i.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!e||e[0]!==this._model.selectionEnd[0]||e[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let t=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(t.ydisp+this._bufferService.rows,t.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=t.ydisp),this.refresh()}}_handleMouseUp(t){let e=t.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&e<BV&&t.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let s=this._mouseService.getCoords(t,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(s&&s[0]!==void 0&&s[1]!==void 0){let i=AV(s[0]-1,s[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd,s=!!t&&!!e&&(t[0]!==e[0]||t[1]!==e[1]);if(!s){this._oldHasSelection&&this._fireOnSelectionChange(t,e,s);return}!t||!e||(!this._oldSelectionStart||!this._oldSelectionEnd||t[0]!==this._oldSelectionStart[0]||t[1]!==this._oldSelectionStart[1]||e[0]!==this._oldSelectionEnd[0]||e[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(t,e,s)}_fireOnSelectionChange(t,e,s){this._oldSelectionStart=t,this._oldSelectionEnd=e,this._oldHasSelection=s,this._onSelectionChange.fire()}_handleBufferActivate(t){this.clearSelection(),this._trimListener.dispose(),this._trimListener=t.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(t,e){let s=e;for(let i=0;e>=i;i++){let n=t.loadCell(i,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:n>1&&e!==i&&(s+=n-1)}return s}setSelection(t,e,s){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[t,e],this._model.selectionStartLength=s,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(t){this._isClickInSelection(t)||(this._selectWordAtCursor(t,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(t,e,s=!0,i=!0){if(t[0]>=this._bufferService.cols)return;let n=this._bufferService.buffer,o=n.lines.get(t[1]);if(!o)return;let a=n.translateBufferLineToString(t[1],!1),l=this._convertViewportColToCharacterIndex(o,t[0]),c=l,d=t[0]-l,u=0,h=0,f=0,m=0;if(a.charAt(l)===" "){for(;l>0&&a.charAt(l-1)===" ";)l--;for(;c<a.length&&a.charAt(c+1)===" ";)c++}else{let _=t[0],v=t[0];o.getWidth(_)===0&&(u++,_--),o.getWidth(v)===2&&(h++,v++);let x=o.getString(v).length;for(x>1&&(m+=x-1,c+=x-1);_>0&&l>0&&!this._isCharWordSeparator(o.loadCell(_-1,this._workCell));){o.loadCell(_-1,this._workCell);let b=this._workCell.getChars().length;this._workCell.getWidth()===0?(u++,_--):b>1&&(f+=b-1,l-=b-1),l--,_--}for(;v<o.length&&c+1<a.length&&!this._isCharWordSeparator(o.loadCell(v+1,this._workCell));){o.loadCell(v+1,this._workCell);let b=this._workCell.getChars().length;this._workCell.getWidth()===2?(h++,v++):b>1&&(m+=b-1,c+=b-1),c++,v++}}c++;let p=l+d-u+f,g=Math.min(this._bufferService.cols,c-l+u+h-f-m);if(!(!e&&a.slice(l,c).trim()==="")){if(s&&p===0&&o.getCodePoint(0)!==32){let _=n.lines.get(t[1]-1);if(_&&o.isWrapped&&_.getCodePoint(this._bufferService.cols-1)!==32){let v=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(v){let x=this._bufferService.cols-v.start;p-=x,g+=x}}}if(i&&p+g===this._bufferService.cols&&o.getCodePoint(this._bufferService.cols-1)!==32){let _=n.lines.get(t[1]+1);if(_?.isWrapped&&_.getCodePoint(0)!==32){let v=this._getWordAt([0,t[1]+1],!1,!1,!0);v&&(g+=v.length)}}return{start:p,length:g}}}_selectWordAt(t,e){let s=this._getWordAt(t,e);if(s){for(;s.start<0;)s.start+=this._bufferService.cols,t[1]--;this._model.selectionStart=[s.start,t[1]],this._model.selectionStartLength=s.length}}_selectToWordAt(t){let e=this._getWordAt(t,!0);if(e){let s=t[1];for(;e.start<0;)e.start+=this._bufferService.cols,s--;if(!this._model.areSelectionValuesReversed())for(;e.start+e.length>this._bufferService.cols;)e.length-=this._bufferService.cols,s++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?e.start:e.start+e.length,s]}}_isCharWordSeparator(t){return t.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(t.getChars())>=0}_selectLineAt(t){let e=this._bufferService.buffer.getWrappedRangeForLine(t),s={start:{x:0,y:e.first},end:{x:this._bufferService.cols-1,y:e.last}};this._model.selectionStart=[0,e.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=$c(s,this._bufferService.cols)}};fa=$e([le(3,wt),le(4,ai),le(5,nl),le(6,Vt),le(7,Ss),le(8,ys)],fa);var zc=class{constructor(){this._data={}}set(t,e,s){this._data[t]||(this._data[t]={}),this._data[t][e]=s}get(t,e){return this._data[t]?this._data[t][e]:void 0}clear(){this._data={}}},Fc=class{constructor(){this._color=new zc,this._css=new zc}setCss(t,e,s){this._css.set(t,e,s)}getCss(t,e){return this._css.get(t,e)}setColor(t,e,s){this._color.set(t,e,s)}getColor(t,e){return this._color.get(t,e)}clear(){this._color.clear(),this._css.clear()}},Xe=Object.freeze((()=>{let t=[Le.toColor("#2e3436"),Le.toColor("#cc0000"),Le.toColor("#4e9a06"),Le.toColor("#c4a000"),Le.toColor("#3465a4"),Le.toColor("#75507b"),Le.toColor("#06989a"),Le.toColor("#d3d7cf"),Le.toColor("#555753"),Le.toColor("#ef2929"),Le.toColor("#8ae234"),Le.toColor("#fce94f"),Le.toColor("#729fcf"),Le.toColor("#ad7fa8"),Le.toColor("#34e2e2"),Le.toColor("#eeeeec")],e=[0,95,135,175,215,255];for(let s=0;s<216;s++){let i=e[s/36%6|0],n=e[s/6%6|0],o=e[s%6];t.push({css:Ke.toCss(i,n,o),rgba:Ke.toRgba(i,n,o)})}for(let s=0;s<24;s++){let i=8+s*10;t.push({css:Ke.toCss(i,i,i),rgba:Ke.toRgba(i,i,i)})}return t})()),qs=Le.toColor("#ffffff"),Yi=Le.toColor("#000000"),Uc=Le.toColor("#ffffff"),Hc=Yi,Fi={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},FV=qs,ma=class extends we{constructor(t){super(),this._optionsService=t,this._contrastCache=new Fc,this._halfContrastCache=new Fc,this._onChangeColors=this._register(new ne),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:qs,background:Yi,cursor:Uc,cursorAccent:Hc,selectionForeground:void 0,selectionBackgroundTransparent:Fi,selectionBackgroundOpaque:Te.blend(Yi,Fi),selectionInactiveBackgroundTransparent:Fi,selectionInactiveBackgroundOpaque:Te.blend(Yi,Fi),scrollbarSliderBackground:Te.opacity(qs,.2),scrollbarSliderHoverBackground:Te.opacity(qs,.4),scrollbarSliderActiveBackground:Te.opacity(qs,.5),overviewRulerBorder:qs,ansi:Xe.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(t={}){let e=this._colors;if(e.foreground=je(t.foreground,qs),e.background=je(t.background,Yi),e.cursor=Te.blend(e.background,je(t.cursor,Uc)),e.cursorAccent=Te.blend(e.background,je(t.cursorAccent,Hc)),e.selectionBackgroundTransparent=je(t.selectionBackground,Fi),e.selectionBackgroundOpaque=Te.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=je(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=Te.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?je(t.selectionForeground,Lc):void 0,e.selectionForeground===Lc&&(e.selectionForeground=void 0),Te.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=Te.opacity(e.selectionBackgroundTransparent,.3)),Te.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=Te.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=je(t.scrollbarSliderBackground,Te.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=je(t.scrollbarSliderHoverBackground,Te.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=je(t.scrollbarSliderActiveBackground,Te.opacity(e.foreground,.5)),e.overviewRulerBorder=je(t.overviewRulerBorder,FV),e.ansi=Xe.slice(),e.ansi[0]=je(t.black,Xe[0]),e.ansi[1]=je(t.red,Xe[1]),e.ansi[2]=je(t.green,Xe[2]),e.ansi[3]=je(t.yellow,Xe[3]),e.ansi[4]=je(t.blue,Xe[4]),e.ansi[5]=je(t.magenta,Xe[5]),e.ansi[6]=je(t.cyan,Xe[6]),e.ansi[7]=je(t.white,Xe[7]),e.ansi[8]=je(t.brightBlack,Xe[8]),e.ansi[9]=je(t.brightRed,Xe[9]),e.ansi[10]=je(t.brightGreen,Xe[10]),e.ansi[11]=je(t.brightYellow,Xe[11]),e.ansi[12]=je(t.brightBlue,Xe[12]),e.ansi[13]=je(t.brightMagenta,Xe[13]),e.ansi[14]=je(t.brightCyan,Xe[14]),e.ansi[15]=je(t.brightWhite,Xe[15]),t.extendedAnsi){let s=Math.min(e.ansi.length-16,t.extendedAnsi.length);for(let i=0;i<s;i++)e.ansi[i+16]=je(t.extendedAnsi[i],Xe[i+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(t){this._restoreColor(t),this._onChangeColors.fire(this.colors)}_restoreColor(t){if(t===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(t){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[t]=this._restoreColors.ansi[t]}}modifyColors(t){t(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};ma=$e([le(0,Vt)],ma);function je(t,e){if(t!==void 0)try{return Le.toColor(t)}catch{}return e}var UV=class{constructor(...t){this._entries=new Map;for(let[e,s]of t)this.set(e,s)}set(t,e){let s=this._entries.get(t);return this._entries.set(t,e),s}forEach(t){for(let[e,s]of this._entries.entries())t(e,s)}has(t){return this._entries.has(t)}get(t){return this._entries.get(t)}},HV=class{constructor(){this._services=new UV,this._services.set(rl,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let s=LS(t).sort((o,a)=>o.index-a.index),i=[];for(let o of s){let a=this._services.get(o.id);if(!a)throw new Error(`[createInstance] ${t.name} depends on UNKNOWN service ${o.id._id}.`);i.push(a)}let n=s.length>0?s[0].index:e.length;if(e.length!==n)throw new Error(`[createInstance] First service dependency of ${t.name} at position ${n+1} conflicts with ${e.length} static arguments`);return new t(...e,...i)}},WV={trace:0,debug:1,info:2,warn:3,error:4,off:5},KV="xterm.js: ",pa=class extends we{constructor(t){super(),this._optionsService=t,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=WV[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(t){for(let e=0;e<t.length;e++)typeof t[e]=="function"&&(t[e]=t[e]())}_log(t,e,s){this._evalLazyOptionalParams(s),t.call(console,(this._optionsService.options.logger?"":KV)+e,...s)}trace(t,...e){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,t,e)}debug(t,...e){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,t,e)}info(t,...e){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,t,e)}warn(t,...e){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,t,e)}error(t,...e){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,t,e)}};pa=$e([le(0,Vt)],pa);var Wc=class extends we{constructor(t){super(),this._maxLength=t,this.onDeleteEmitter=this._register(new ne),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new ne),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new ne),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(t){if(this._maxLength===t)return;let e=new Array(t);for(let s=0;s<Math.min(t,this.length);s++)e[s]=this._array[this._getCyclicIndex(s)];this._array=e,this._maxLength=t,this._startIndex=0}get length(){return this._length}set length(t){if(t>this._length)for(let e=this._length;e<t;e++)this._array[e]=void 0;this._length=t}get(t){return this._array[this._getCyclicIndex(t)]}set(t,e){this._array[this._getCyclicIndex(t)]=e}push(t){this._array[this._getCyclicIndex(this._length)]=t,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(t,e,...s){if(e){for(let i=t;i<this._length-e;i++)this._array[this._getCyclicIndex(i)]=this._array[this._getCyclicIndex(i+e)];this._length-=e,this.onDeleteEmitter.fire({index:t,amount:e})}for(let i=this._length-1;i>=t;i--)this._array[this._getCyclicIndex(i+s.length)]=this._array[this._getCyclicIndex(i)];for(let i=0;i<s.length;i++)this._array[this._getCyclicIndex(t+i)]=s[i];if(s.length&&this.onInsertEmitter.fire({index:t,amount:s.length}),this._length+s.length>this._maxLength){let i=this._length+s.length-this._maxLength;this._startIndex+=i,this._length=this._maxLength,this.onTrimEmitter.fire(i)}else this._length+=s.length}trimStart(t){t>this._length&&(t=this._length),this._startIndex+=t,this._length-=t,this.onTrimEmitter.fire(t)}shiftElements(t,e,s){if(!(e<=0)){if(t<0||t>=this._length)throw new Error("start argument out of range");if(t+s<0)throw new Error("Cannot shift elements in list beyond index 0");if(s>0){for(let n=e-1;n>=0;n--)this.set(t+n+s,this.get(t+n));let i=t+e+s-this._length;if(i>0)for(this._length+=i;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let i=0;i<e;i++)this.set(t+i+s,this.get(t+i))}}_getCyclicIndex(t){return(this._startIndex+t)%this._maxLength}},Se=3,We=Object.freeze(new Ar),Gr=0,_o=2,Xi=class _f{constructor(e,s,i=!1){this.isWrapped=i,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*Se);let n=s||Kt.fromCharData([0,Du,1,0]);for(let o=0;o<e;++o)this.setCell(o,n);this.length=e}get(e){let s=this._data[e*Se+0],i=s&2097151;return[this._data[e*Se+1],s&2097152?this._combined[e]:i?As(i):"",s>>22,s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):i]}set(e,s){this._data[e*Se+1]=s[0],s[1].length>1?(this._combined[e]=s[1],this._data[e*Se+0]=e|2097152|s[2]<<22):this._data[e*Se+0]=s[1].charCodeAt(0)|s[2]<<22}getWidth(e){return this._data[e*Se+0]>>22}hasWidth(e){return this._data[e*Se+0]&12582912}getFg(e){return this._data[e*Se+1]}getBg(e){return this._data[e*Se+2]}hasContent(e){return this._data[e*Se+0]&4194303}getCodePoint(e){let s=this._data[e*Se+0];return s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):s&2097151}isCombined(e){return this._data[e*Se+0]&2097152}getString(e){let s=this._data[e*Se+0];return s&2097152?this._combined[e]:s&2097151?As(s&2097151):""}isProtected(e){return this._data[e*Se+2]&536870912}loadCell(e,s){return Gr=e*Se,s.content=this._data[Gr+0],s.fg=this._data[Gr+1],s.bg=this._data[Gr+2],s.content&2097152&&(s.combinedData=this._combined[e]),s.bg&268435456&&(s.extended=this._extendedAttrs[e]),s}setCell(e,s){s.content&2097152&&(this._combined[e]=s.combinedData),s.bg&268435456&&(this._extendedAttrs[e]=s.extended),this._data[e*Se+0]=s.content,this._data[e*Se+1]=s.fg,this._data[e*Se+2]=s.bg}setCellFromCodepoint(e,s,i,n){n.bg&268435456&&(this._extendedAttrs[e]=n.extended),this._data[e*Se+0]=s|i<<22,this._data[e*Se+1]=n.fg,this._data[e*Se+2]=n.bg}addCodepointToCell(e,s,i){let n=this._data[e*Se+0];n&2097152?this._combined[e]+=As(s):n&2097151?(this._combined[e]=As(n&2097151)+As(s),n&=-2097152,n|=2097152):n=s|1<<22,i&&(n&=-12582913,n|=i<<22),this._data[e*Se+0]=n}insertCells(e,s,i){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length-e){let n=new Kt;for(let o=this.length-e-s-1;o>=0;--o)this.setCell(e+s+o,this.loadCell(e+o,n));for(let o=0;o<s;++o)this.setCell(e+o,i)}else for(let n=e;n<this.length;++n)this.setCell(n,i);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,i)}deleteCells(e,s,i){if(e%=this.length,s<this.length-e){let n=new Kt;for(let o=0;o<this.length-e-s;++o)this.setCell(e+o,this.loadCell(e+s+o,n));for(let o=this.length-s;o<this.length;++o)this.setCell(o,i)}else for(let n=e;n<this.length;++n)this.setCell(n,i);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,i)}replaceCells(e,s,i,n=!1){if(n){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.isProtected(e)||this.setCell(e,i),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.setCell(e++,i)}resize(e,s){if(e===this.length)return this._data.length*4*_o<this._data.buffer.byteLength;let i=e*Se;if(e>this.length){if(this._data.buffer.byteLength>=i*4)this._data=new Uint32Array(this._data.buffer,0,i);else{let n=new Uint32Array(i);n.set(this._data),this._data=n}for(let n=this.length;n<e;++n)this.setCell(n,s)}else{this._data=this._data.subarray(0,i);let n=Object.keys(this._combined);for(let a=0;a<n.length;a++){let l=parseInt(n[a],10);l>=e&&delete this._combined[l]}let o=Object.keys(this._extendedAttrs);for(let a=0;a<o.length;a++){let l=parseInt(o[a],10);l>=e&&delete this._extendedAttrs[l]}}return this.length=e,i*4*_o<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*_o<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,s=!1){if(s){for(let i=0;i<this.length;++i)this.isProtected(i)||this.setCell(i,e);return}this._combined={},this._extendedAttrs={};for(let i=0;i<this.length;++i)this.setCell(i,e)}copyFrom(e){this.length!==e.length?this._data=new Uint32Array(e._data):this._data.set(e._data),this.length=e.length,this._combined={};for(let s in e._combined)this._combined[s]=e._combined[s];this._extendedAttrs={};for(let s in e._extendedAttrs)this._extendedAttrs[s]=e._extendedAttrs[s];this.isWrapped=e.isWrapped}clone(){let e=new _f(0);e._data=new Uint32Array(this._data),e.length=this.length;for(let s in this._combined)e._combined[s]=this._combined[s];for(let s in this._extendedAttrs)e._extendedAttrs[s]=this._extendedAttrs[s];return e.isWrapped=this.isWrapped,e}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Se+0]&4194303)return e+(this._data[e*Se+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Se+0]&4194303||this._data[e*Se+2]&50331648)return e+(this._data[e*Se+0]>>22);return 0}copyCellsFrom(e,s,i,n,o){let a=e._data;if(o)for(let c=n-1;c>=0;c--){for(let d=0;d<Se;d++)this._data[(i+c)*Se+d]=a[(s+c)*Se+d];a[(s+c)*Se+2]&268435456&&(this._extendedAttrs[i+c]=e._extendedAttrs[s+c])}else for(let c=0;c<n;c++){for(let d=0;d<Se;d++)this._data[(i+c)*Se+d]=a[(s+c)*Se+d];a[(s+c)*Se+2]&268435456&&(this._extendedAttrs[i+c]=e._extendedAttrs[s+c])}let l=Object.keys(e._combined);for(let c=0;c<l.length;c++){let d=parseInt(l[c],10);d>=s&&(this._combined[d-s+i]=e._combined[d])}}translateToString(e,s,i,n){s=s??0,i=i??this.length,e&&(i=Math.min(i,this.getTrimmedLength())),n&&(n.length=0);let o="";for(;s<i;){let a=this._data[s*Se+0],l=a&2097151,c=a&2097152?this._combined[s]:l?As(l):Is;if(o+=c,n)for(let d=0;d<c.length;++d)n.push(s);s+=a>>22||1}return n&&n.push(s),o}};function qV(t,e,s,i,n,o){let a=[];for(let l=0;l<t.length-1;l++){let c=l,d=t.get(++c);if(!d.isWrapped)continue;let u=[t.get(l)];for(;c<t.length&&d.isWrapped;)u.push(d),d=t.get(++c);if(!o&&i>=l&&i<c){l+=u.length-1;continue}let h=0,f=pr(u,h,e),m=1,p=0;for(;m<u.length;){let _=pr(u,m,e),v=_-p,x=s-f,b=Math.min(v,x);u[h].copyCellsFrom(u[m],p,f,b,!1),f+=b,f===s&&(h++,f=0),p+=b,p===_&&(m++,p=0),f===0&&h!==0&&u[h-1].getWidth(s-1)===2&&(u[h].copyCellsFrom(u[h-1],s-1,f++,1,!1),u[h-1].setCell(s-1,n))}u[h].replaceCells(f,s,n);let g=0;for(let _=u.length-1;_>0&&(_>h||u[_].getTrimmedLength()===0);_--)g++;g>0&&(a.push(l+u.length-g),a.push(g)),l+=u.length-1}return a}function GV(t,e){let s=[],i=0,n=e[i],o=0;for(let a=0;a<t.length;a++)if(n===a){let l=e[++i];t.onDeleteEmitter.fire({index:a-o,amount:l}),a+=l-1,o+=l,n=e[++i]}else s.push(a);return{layout:s,countRemoved:o}}function YV(t,e){let s=[];for(let i=0;i<e.length;i++)s.push(t.get(e[i]));for(let i=0;i<s.length;i++)t.set(i,s[i]);t.length=e.length}function XV(t,e,s){let i=[],n=t.map((c,d)=>pr(t,d,e)).reduce((c,d)=>c+d),o=0,a=0,l=0;for(;l<n;){if(n-l<s){i.push(n-l);break}o+=s;let c=pr(t,a,e);o>c&&(o-=c,a++);let d=t[a].getWidth(o-1)===2;d&&o--;let u=d?s-1:s;i.push(u),l+=u}return i}function pr(t,e,s){if(e===t.length-1)return t[e].getTrimmedLength();let i=!t[e].hasContent(s-1)&&t[e].getWidth(s-1)===1,n=t[e+1].getWidth(0)===2;return i&&n?s-1:s}var xf=class vf{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=vf._nextId++,this._onDispose=this.register(new ne),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),Qs(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};xf._nextId=1;var JV=xf,et={},Gs=et.B;et[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};et.A={"#":"£"};et.B=void 0;et[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};et.C=et[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};et.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};et.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};et.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};et.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};et.E=et[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};et.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};et.H=et[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};et["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var Kc=4294967295,qc=class{constructor(t,e,s){this._hasScrollback=t,this._optionsService=e,this._bufferService=s,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=We.clone(),this.savedCharset=Gs,this.markers=[],this._nullCell=Kt.fromCharData([0,Du,1,0]),this._whitespaceCell=Kt.fromCharData([0,Is,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new wn,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new Wc(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(t){return t?(this._nullCell.fg=t.fg,this._nullCell.bg=t.bg,this._nullCell.extended=t.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new vn),this._nullCell}getWhitespaceCell(t){return t?(this._whitespaceCell.fg=t.fg,this._whitespaceCell.bg=t.bg,this._whitespaceCell.extended=t.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new vn),this._whitespaceCell}getBlankLine(t,e){return new Xi(this._bufferService.cols,this.getNullCell(t),e)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let t=this.ybase+this.y-this.ydisp;return t>=0&&t<this._rows}_getCorrectBufferLength(t){if(!this._hasScrollback)return t;let e=t+this._optionsService.rawOptions.scrollback;return e>Kc?Kc:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=We);let e=this._rows;for(;e--;)this.lines.push(this.getBlankLine(t))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new Wc(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let s=this.getNullCell(We),i=0,n=this._getCorrectBufferLength(e);if(n>this.lines.maxLength&&(this.lines.maxLength=n),this.lines.length>0){if(this._cols<t)for(let a=0;a<this.lines.length;a++)i+=+this.lines.get(a).resize(t,s);let o=0;if(this._rows<e)for(let a=this._rows;a<e;a++)this.lines.length<e+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new Xi(t,s)):this.ybase>0&&this.lines.length<=this.ybase+this.y+o+1?(this.ybase--,o++,this.ydisp>0&&this.ydisp--):this.lines.push(new Xi(t,s)));else for(let a=this._rows;a>e;a--)this.lines.length>e+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(n<this.lines.maxLength){let a=this.lines.length-n;a>0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=n}this.x=Math.min(this.x,t-1),this.y=Math.min(this.y,e-1),o&&(this.y+=o),this.savedX=Math.min(this.savedX,t-1),this.scrollTop=0}if(this.scrollBottom=e-1,this._isReflowEnabled&&(this._reflow(t,e),this._cols>t))for(let o=0;o<this.lines.length;o++)i+=+this.lines.get(o).resize(t,s);this._cols=t,this._rows=e,this._memoryCleanupQueue.clear(),i>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let t=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,t=!1);let e=0;for(;this._memoryCleanupPosition<this.lines.length;)if(e+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),e>100)return!0;return t}get _isReflowEnabled(){let t=this._optionsService.rawOptions.windowsPty;return t&&t.buildNumber?this._hasScrollback&&t.backend==="conpty"&&t.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(t,e){this._cols!==t&&(t>this._cols?this._reflowLarger(t,e):this._reflowSmaller(t,e))}_reflowLarger(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=qV(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(We),s);if(i.length>0){let n=GV(this.lines,i);YV(this.lines,n.layout),this._reflowLargerAdjustViewport(t,e,n.countRemoved)}}_reflowLargerAdjustViewport(t,e,s){let i=this.getNullCell(We),n=s;for(;n-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new Xi(t,i))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-s,0)}_reflowSmaller(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=this.getNullCell(We),n=[],o=0;for(let a=this.lines.length-1;a>=0;a--){let l=this.lines.get(a);if(!l||!l.isWrapped&&l.getTrimmedLength()<=t)continue;let c=[l];for(;l.isWrapped&&a>0;)l=this.lines.get(--a),c.unshift(l);if(!s){let b=this.ybase+this.y;if(b>=a&&b<a+c.length)continue}let d=c[c.length-1].getTrimmedLength(),u=XV(c,this._cols,t),h=u.length-c.length,f;this.ybase===0&&this.y!==this.lines.length-1?f=Math.max(0,this.y-this.lines.maxLength+h):f=Math.max(0,this.lines.length-this.lines.maxLength+h);let m=[];for(let b=0;b<h;b++){let y=this.getBlankLine(We,!0);m.push(y)}m.length>0&&(n.push({start:a+c.length+o,newLines:m}),o+=m.length),c.push(...m);let p=u.length-1,g=u[p];g===0&&(p--,g=u[p]);let _=c.length-h-1,v=d;for(;_>=0;){let b=Math.min(v,g);if(c[p]===void 0)break;if(c[p].copyCellsFrom(c[_],v-b,g-b,b,!0),g-=b,g===0&&(p--,g=u[p]),v-=b,v===0){_--;let y=Math.max(_,0);v=pr(c,y,this._cols)}}for(let b=0;b<c.length;b++)u[b]<t&&c[b].setCell(u[b],i);let x=h-f;for(;x-- >0;)this.ybase===0?this.y<e-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+o)-e&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+h,this.ybase+e-1)}if(n.length>0){let a=[],l=[];for(let g=0;g<this.lines.length;g++)l.push(this.lines.get(g));let c=this.lines.length,d=c-1,u=0,h=n[u];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+o);let f=0;for(let g=Math.min(this.lines.maxLength-1,c+o-1);g>=0;g--)if(h&&h.start>d+f){for(let _=h.newLines.length-1;_>=0;_--)this.lines.set(g--,h.newLines[_]);g++,a.push({index:d+1,amount:h.newLines.length}),f+=h.newLines.length,h=n[++u]}else this.lines.set(g,l[d--]);let m=0;for(let g=a.length-1;g>=0;g--)a[g].index+=m,this.lines.onInsertEmitter.fire(a[g]),m+=a[g].amount;let p=Math.max(0,c+o-this.lines.maxLength);p>0&&this.lines.onTrimEmitter.fire(p)}}translateBufferLineToString(t,e,s=0,i){let n=this.lines.get(t);return n?n.translateToString(e,s,i):""}getWrappedRangeForLine(t){let e=t,s=t;for(;e>0&&this.lines.get(e).isWrapped;)e--;for(;s+1<this.lines.length&&this.lines.get(s+1).isWrapped;)s++;return{first:e,last:s}}setupTabStops(t){for(t!=null?this.tabs[t]||(t=this.prevStop(t)):(this.tabs={},t=0);t<this._cols;t+=this._optionsService.rawOptions.tabStopWidth)this.tabs[t]=!0}prevStop(t){for(t==null&&(t=this.x);!this.tabs[--t]&&t>0;);return t>=this._cols?this._cols-1:t<0?0:t}nextStop(t){for(t==null&&(t=this.x);!this.tabs[++t]&&t<this._cols;);return t>=this._cols?this._cols-1:t<0?0:t}clearMarkers(t){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].line===t&&(this.markers[e].dispose(),this.markers.splice(e--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].dispose();this.markers.length=0,this._isClearing=!1}addMarker(t){let e=new JV(t);return this.markers.push(e),e.register(this.lines.onTrim(s=>{e.line-=s,e.line<0&&e.dispose()})),e.register(this.lines.onInsert(s=>{e.line>=s.index&&(e.line+=s.amount)})),e.register(this.lines.onDelete(s=>{e.line>=s.index&&e.line<s.index+s.amount&&e.dispose(),e.line>s.index&&(e.line-=s.amount)})),e.register(e.onDispose(()=>this._removeMarker(e))),e}_removeMarker(t){this._isClearing||this.markers.splice(this.markers.indexOf(t),1)}},QV=class extends we{constructor(t,e){super(),this._optionsService=t,this._bufferService=e,this._onBufferActivate=this._register(new ne),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new qc(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new qc(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(t){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(t),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(t,e){this._normal.resize(t,e),this._alt.resize(t,e),this.setupTabStops(t)}setupTabStops(t){this._normal.setupTabStops(t),this._alt.setupTabStops(t)}},bf=2,yf=1,ga=class extends we{constructor(t){super(),this.isUserScrolling=!1,this._onResize=this._register(new ne),this.onResize=this._onResize.event,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this.cols=Math.max(t.rawOptions.cols||0,bf),this.rows=Math.max(t.rawOptions.rows||0,yf),this.buffers=this._register(new QV(t,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(t,e){let s=this.cols!==t,i=this.rows!==e;this.cols=t,this.rows=e,this.buffers.resize(t,e),this._onResize.fire({cols:t,rows:e,colsChanged:s,rowsChanged:i})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(t,e=!1){let s=this.buffer,i;i=this._cachedBlankLine,(!i||i.length!==this.cols||i.getFg(0)!==t.fg||i.getBg(0)!==t.bg)&&(i=s.getBlankLine(t,e),this._cachedBlankLine=i),i.isWrapped=e;let n=s.ybase+s.scrollTop,o=s.ybase+s.scrollBottom;if(s.scrollTop===0){let a=s.lines.isFull;o===s.lines.length-1?a?s.lines.recycle().copyFrom(i):s.lines.push(i.clone()):s.lines.splice(o+1,0,i.clone()),a?this.isUserScrolling&&(s.ydisp=Math.max(s.ydisp-1,0)):(s.ybase++,this.isUserScrolling||s.ydisp++)}else{let a=o-n+1;s.lines.shiftElements(n+1,a-1,-1),s.lines.set(o,i.clone())}this.isUserScrolling||(s.ydisp=s.ybase),this._onScroll.fire(s.ydisp)}scrollLines(t,e){let s=this.buffer;if(t<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else t+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);let i=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+t,s.ybase),0),i!==s.ydisp&&(e||this._onScroll.fire(s.ydisp))}};ga=$e([le(0,Vt)],ga);var mi={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:Sn,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},ZV=["normal","bold","100","200","300","400","500","600","700","800","900"],eC=class extends we{constructor(t){super(),this._onOptionChange=this._register(new ne),this.onOptionChange=this._onOptionChange.event;let e={...mi};for(let s in t)if(s in e)try{let i=t[s];e[s]=this._sanitizeAndValidateOption(s,i)}catch(i){console.error(i)}this.rawOptions=e,this.options={...e},this._setupOptions(),this._register(Me(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(t,e){return this.onOptionChange(s=>{s===t&&e(this.rawOptions[t])})}onMultipleOptionChange(t,e){return this.onOptionChange(s=>{t.indexOf(s)!==-1&&e()})}_setupOptions(){let t=s=>{if(!(s in mi))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},e=(s,i)=>{if(!(s in mi))throw new Error(`No option with key "${s}"`);i=this._sanitizeAndValidateOption(s,i),this.rawOptions[s]!==i&&(this.rawOptions[s]=i,this._onOptionChange.fire(s))};for(let s in this.rawOptions){let i={get:t.bind(this,s),set:e.bind(this,s)};Object.defineProperty(this.options,s,i)}}_sanitizeAndValidateOption(t,e){switch(t){case"cursorStyle":if(e||(e=mi[t]),!tC(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=mi[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=ZV.includes(e)?e:mi[t];break;case"cursorWidth":e=Math.floor(e);case"lineHeight":case"tabStopWidth":if(e<1)throw new Error(`${t} cannot be less than 1, value: ${e}`);break;case"minimumContrastRatio":e=Math.max(1,Math.min(21,Math.round(e*10)/10));break;case"scrollback":if(e=Math.min(e,4294967295),e<0)throw new Error(`${t} cannot be less than 0, value: ${e}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(e<=0)throw new Error(`${t} cannot be less than or equal to 0, value: ${e}`);break;case"rows":case"cols":if(!e&&e!==0)throw new Error(`${t} must be numeric, value: ${e}`);break;case"windowsPty":e=e??{};break}return e}};function tC(t){return t==="block"||t==="underline"||t==="bar"}function Ji(t,e=5){if(typeof t!="object")return t;let s=Array.isArray(t)?[]:{};for(let i in t)s[i]=e<=1?t[i]:t[i]&&Ji(t[i],e-1);return s}var Gc=Object.freeze({insertMode:!1}),Yc=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),_a=class extends we{constructor(t,e,s){super(),this._bufferService=t,this._logService=e,this._optionsService=s,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new ne),this.onData=this._onData.event,this._onUserInput=this._register(new ne),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new ne),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new ne),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Ji(Gc),this.decPrivateModes=Ji(Yc)}reset(){this.modes=Ji(Gc),this.decPrivateModes=Ji(Yc)}triggerDataEvent(t,e=!1){if(this._optionsService.rawOptions.disableStdin)return;let s=this._bufferService.buffer;e&&this._optionsService.rawOptions.scrollOnUserInput&&s.ybase!==s.ydisp&&this._onRequestScrollToBottom.fire(),e&&this._onUserInput.fire(),this._logService.debug(`sending data "${t}"`),this._logService.trace("sending data (codes)",()=>t.split("").map(i=>i.charCodeAt(0))),this._onData.fire(t)}triggerBinaryEvent(t){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${t}"`),this._logService.trace("sending binary (codes)",()=>t.split("").map(e=>e.charCodeAt(0))),this._onBinary.fire(t))}};_a=$e([le(0,wt),le(1,$u),le(2,Vt)],_a);var Xc={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:t=>t.button===4||t.action!==1?!1:(t.ctrl=!1,t.alt=!1,t.shift=!1,!0)},VT200:{events:19,restrict:t=>t.action!==32},DRAG:{events:23,restrict:t=>!(t.action===32&&t.button===3)},ANY:{events:31,restrict:t=>!0}};function xo(t,e){let s=(t.ctrl?16:0)|(t.shift?4:0)|(t.alt?8:0);return t.button===4?(s|=64,s|=t.action):(s|=t.button&3,t.button&4&&(s|=64),t.button&8&&(s|=128),t.action===32?s|=32:t.action===0&&!e&&(s|=3)),s}var vo=String.fromCharCode,Jc={DEFAULT:t=>{let e=[xo(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${vo(e[0])}${vo(e[1])}${vo(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${xo(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${xo(t,!0)};${t.x};${t.y}${e}`}},xa=class extends we{constructor(t,e,s){super(),this._bufferService=t,this._coreService=e,this._optionsService=s,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new ne),this.onProtocolChange=this._onProtocolChange.event;for(let i of Object.keys(Xc))this.addProtocol(i,Xc[i]);for(let i of Object.keys(Jc))this.addEncoding(i,Jc[i]);this.reset()}addProtocol(t,e){this._protocols[t]=e}addEncoding(t,e){this._encodings[t]=e}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(t){if(!this._protocols[t])throw new Error(`unknown protocol "${t}"`);this._activeProtocol=t,this._onProtocolChange.fire(this._protocols[t].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(t){if(!this._encodings[t])throw new Error(`unknown encoding "${t}"`);this._activeEncoding=t}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(t,e,s){if(t.deltaY===0||t.shiftKey||e===void 0||s===void 0)return 0;let i=e/s,n=this._applyScrollModifier(t.deltaY,t);return t.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(n/=i+0,Math.abs(t.deltaY)<50&&(n*=.3),this._wheelPartialScroll+=n,n=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):t.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(n*=this._bufferService.rows),n}_applyScrollModifier(t,e){return e.altKey||e.ctrlKey||e.shiftKey?t*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:t*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(t){if(t.col<0||t.col>=this._bufferService.cols||t.row<0||t.row>=this._bufferService.rows||t.button===4&&t.action===32||t.button===3&&t.action!==32||t.button!==4&&(t.action===2||t.action===3)||(t.col++,t.row++,t.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,t,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(t))return!1;let e=this._encodings[this._activeEncoding](t);return e&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(e):this._coreService.triggerDataEvent(e,!0)),this._lastEvent=t,!0}explainEvents(t){return{down:!!(t&1),up:!!(t&2),drag:!!(t&4),move:!!(t&8),wheel:!!(t&16)}}_equalEvents(t,e,s){if(s){if(t.x!==e.x||t.y!==e.y)return!1}else if(t.col!==e.col||t.row!==e.row)return!1;return!(t.button!==e.button||t.action!==e.action||t.ctrl!==e.ctrl||t.alt!==e.alt||t.shift!==e.shift)}};xa=$e([le(0,wt),le(1,ai),le(2,Vt)],xa);var bo=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],sC=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],Je;function iC(t,e){let s=0,i=e.length-1,n;if(t<e[0][0]||t>e[i][1])return!1;for(;i>=s;)if(n=s+i>>1,t>e[n][1])s=n+1;else if(t<e[n][0])i=n-1;else return!0;return!1}var rC=class{constructor(){if(this.version="6",!Je){Je=new Uint8Array(65536),Je.fill(1),Je[0]=0,Je.fill(0,1,32),Je.fill(0,127,160),Je.fill(2,4352,4448),Je[9001]=2,Je[9002]=2,Je.fill(2,11904,42192),Je[12351]=1,Je.fill(2,44032,55204),Je.fill(2,63744,64256),Je.fill(2,65040,65050),Je.fill(2,65072,65136),Je.fill(2,65280,65377),Je.fill(2,65504,65511);for(let t=0;t<bo.length;++t)Je.fill(0,bo[t][0],bo[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?Je[t]:iC(t,sC)?0:t>=131072&&t<=196605||t>=196608&&t<=262141?2:1}charProperties(t,e){let s=this.wcwidth(t),i=s===0&&e!==0;if(i){let n=Ys.extractWidth(e);n===0?i=!1:n>s&&(s=n)}return Ys.createPropertyValue(0,s,i)}},Ys=class dn{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ne,this.onChange=this._onChange.event;let e=new rC;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(e&1)!==0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,s,i=!1){return(e&16777215)<<3|(s&3)<<1|(i?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw new Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(e){let s=0,i=0,n=e.length;for(let o=0;o<n;++o){let a=e.charCodeAt(o);if(55296<=a&&a<=56319){if(++o>=n)return s+this.wcwidth(a);let d=e.charCodeAt(o);56320<=d&&d<=57343?a=(a-55296)*1024+d-56320+65536:s+=this.wcwidth(d)}let l=this.charProperties(a,i),c=dn.extractWidth(l);dn.extractShouldJoin(l)&&(c-=dn.extractWidth(i)),s+=c,i=l}return s}charProperties(e,s){return this._activeProvider.charProperties(e,s)}},nC=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(t){this.glevel=t,this.charset=this._charsets[t]}setgCharset(t,e){this._charsets[t]=e,this.glevel===t&&(this.charset=e)}};function Qc(t){let e=t.buffer.lines.get(t.buffer.ybase+t.buffer.y-1)?.get(t.cols-1),s=t.buffer.lines.get(t.buffer.ybase+t.buffer.y);s&&e&&(s.isWrapped=e[3]!==0&&e[3]!==32)}var Ui=2147483647,oC=256,Sf=class va{constructor(e=32,s=32){if(this.maxLength=e,this.maxSubParamsLength=s,s>oC)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(s),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(e){let s=new va;if(!e.length)return s;for(let i=Array.isArray(e[0])?1:0;i<e.length;++i){let n=e[i];if(Array.isArray(n))for(let o=0;o<n.length;++o)s.addSubParam(n[o]);else s.addParam(n)}return s}clone(){let e=new va(this.maxLength,this.maxSubParamsLength);return e.params.set(this.params),e.length=this.length,e._subParams.set(this._subParams),e._subParamsLength=this._subParamsLength,e._subParamsIdx.set(this._subParamsIdx),e._rejectDigits=this._rejectDigits,e._rejectSubDigits=this._rejectSubDigits,e._digitIsSub=this._digitIsSub,e}toArray(){let e=[];for(let s=0;s<this.length;++s){e.push(this.params[s]);let i=this._subParamsIdx[s]>>8,n=this._subParamsIdx[s]&255;n-i>0&&e.push(Array.prototype.slice.call(this._subParams,i,n))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>Ui?Ui:e}addSubParam(e){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>Ui?Ui:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let s=this._subParamsIdx[e]>>8,i=this._subParamsIdx[e]&255;return i-s>0?this._subParams.subarray(s,i):null}getSubParamsAll(){let e={};for(let s=0;s<this.length;++s){let i=this._subParamsIdx[s]>>8,n=this._subParamsIdx[s]&255;n-i>0&&(e[s]=this._subParams.slice(i,n))}return e}addDigit(e){let s;if(this._rejectDigits||!(s=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let i=this._digitIsSub?this._subParams:this.params,n=i[s-1];i[s-1]=~n?Math.min(n*10+e,Ui):e}},Hi=[],aC=class{constructor(){this._state=0,this._active=Hi,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Hi}reset(){if(this._state===2)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].end(!1);this._stack.paused=!1,this._active=Hi,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||Hi,!this._active.length)this._handlerFb(this._id,"START");else for(let t=this._active.length-1;t>=0;t--)this._active[t].start()}_put(t,e,s){if(!this._active.length)this._handlerFb(this._id,"PUT",$n(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}start(){this.reset(),this._state=1}put(t,e,s){if(this._state!==3){if(this._state===1)for(;e<s;){let i=t[e++];if(i===59){this._state=2,this._start();break}if(i<48||57<i){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+i-48}this._state===2&&s-e>0&&this._put(t,e,s)}}end(t,e=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",t);else{let s=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,n=this._stack.fallThrough,this._stack.paused=!1),!n&&s===!1){for(;i>=0&&(s=this._active[i].end(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].end(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=Hi,this._id=-1,this._state=0}}},Tt=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=$n(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data),e instanceof Promise))return e.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,e}},Wi=[],lC=class{constructor(){this._handlers=Object.create(null),this._active=Wi,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Wi}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}reset(){if(this._active.length)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].unhook(!1);this._stack.paused=!1,this._active=Wi,this._ident=0}hook(t,e){if(this.reset(),this._ident=t,this._active=this._handlers[t]||Wi,!this._active.length)this._handlerFb(this._ident,"HOOK",e);else for(let s=this._active.length-1;s>=0;s--)this._active[s].hook(e)}put(t,e,s){if(!this._active.length)this._handlerFb(this._ident,"PUT",$n(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}unhook(t,e=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",t);else{let s=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,n=this._stack.fallThrough,this._stack.paused=!1),!n&&s===!1){for(;i>=0&&(s=this._active[i].unhook(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].unhook(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=Wi,this._ident=0}},Qi=new Sf;Qi.addParam(0);var Zc=class{constructor(t){this._handler=t,this._data="",this._params=Qi,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():Qi,this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=$n(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data,this._params),e instanceof Promise))return e.then(s=>(this._params=Qi,this._data="",this._hitLimit=!1,s));return this._params=Qi,this._data="",this._hitLimit=!1,e}},cC=class{constructor(t){this.table=new Uint8Array(t)}setDefault(t,e){this.table.fill(t<<4|e)}add(t,e,s,i){this.table[e<<8|t]=s<<4|i}addMany(t,e,s,i){for(let n=0;n<t.length;n++)this.table[e<<8|t[n]]=s<<4|i}},Wt=160,dC=(function(){let t=new cC(4095),e=Array.apply(null,Array(256)).map((l,c)=>c),s=(l,c)=>e.slice(l,c),i=s(32,127),n=s(0,24);n.push(25),n.push.apply(n,s(28,32));let o=s(0,14),a;t.setDefault(1,0),t.addMany(i,0,2,0);for(a in o)t.addMany([24,26,153,154],a,3,0),t.addMany(s(128,144),a,3,0),t.addMany(s(144,152),a,3,0),t.add(156,a,0,0),t.add(27,a,11,1),t.add(157,a,4,8),t.addMany([152,158,159],a,0,7),t.add(155,a,11,3),t.add(144,a,11,9);return t.addMany(n,0,3,0),t.addMany(n,1,3,1),t.add(127,1,0,1),t.addMany(n,8,0,8),t.addMany(n,3,3,3),t.add(127,3,0,3),t.addMany(n,4,3,4),t.add(127,4,0,4),t.addMany(n,6,3,6),t.addMany(n,5,3,5),t.add(127,5,0,5),t.addMany(n,2,3,2),t.add(127,2,0,2),t.add(93,1,4,8),t.addMany(i,8,5,8),t.add(127,8,5,8),t.addMany([156,27,24,26,7],8,6,0),t.addMany(s(28,32),8,0,8),t.addMany([88,94,95],1,0,7),t.addMany(i,7,0,7),t.addMany(n,7,0,7),t.add(156,7,0,0),t.add(127,7,0,7),t.add(91,1,11,3),t.addMany(s(64,127),3,7,0),t.addMany(s(48,60),3,8,4),t.addMany([60,61,62,63],3,9,4),t.addMany(s(48,60),4,8,4),t.addMany(s(64,127),4,7,0),t.addMany([60,61,62,63],4,0,6),t.addMany(s(32,64),6,0,6),t.add(127,6,0,6),t.addMany(s(64,127),6,0,0),t.addMany(s(32,48),3,9,5),t.addMany(s(32,48),5,9,5),t.addMany(s(48,64),5,0,6),t.addMany(s(64,127),5,7,0),t.addMany(s(32,48),4,9,5),t.addMany(s(32,48),1,9,2),t.addMany(s(32,48),2,9,2),t.addMany(s(48,127),2,10,0),t.addMany(s(48,80),1,10,0),t.addMany(s(81,88),1,10,0),t.addMany([89,90,92],1,10,0),t.addMany(s(96,127),1,10,0),t.add(80,1,11,9),t.addMany(n,9,0,9),t.add(127,9,0,9),t.addMany(s(28,32),9,0,9),t.addMany(s(32,48),9,9,12),t.addMany(s(48,60),9,8,10),t.addMany([60,61,62,63],9,9,10),t.addMany(n,11,0,11),t.addMany(s(32,128),11,0,11),t.addMany(s(28,32),11,0,11),t.addMany(n,10,0,10),t.add(127,10,0,10),t.addMany(s(28,32),10,0,10),t.addMany(s(48,60),10,8,10),t.addMany([60,61,62,63],10,0,11),t.addMany(s(32,48),10,9,12),t.addMany(n,12,0,12),t.add(127,12,0,12),t.addMany(s(28,32),12,0,12),t.addMany(s(32,48),12,9,12),t.addMany(s(48,64),12,0,11),t.addMany(s(64,127),12,12,13),t.addMany(s(64,127),10,12,13),t.addMany(s(64,127),9,12,13),t.addMany(n,13,13,13),t.addMany(i,13,13,13),t.add(127,13,0,13),t.addMany([27,156,24,26],13,14,0),t.add(Wt,0,2,0),t.add(Wt,8,5,8),t.add(Wt,6,0,6),t.add(Wt,11,0,11),t.add(Wt,13,13,13),t})(),hC=class extends we{constructor(t=dC){super(),this._transitions=t,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new Sf,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,s,i)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,s)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(Me(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new aC),this._dcsParser=this._register(new lC),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(t,e=[64,126]){let s=0;if(t.prefix){if(t.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=t.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(t.intermediates){if(t.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let n=0;n<t.intermediates.length;++n){let o=t.intermediates.charCodeAt(n);if(32>o||o>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=o}}if(t.final.length!==1)throw new Error("final must be a single byte");let i=t.final.charCodeAt(0);if(e[0]>i||i>e[1])throw new Error(`final must be in range ${e[0]} .. ${e[1]}`);return s<<=8,s|=i,s}identToString(t){let e=[];for(;t;)e.push(String.fromCharCode(t&255)),t>>=8;return e.reverse().join("")}setPrintHandler(t){this._printHandler=t}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(t,e){let s=this._identifier(t,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);let i=this._escHandlers[s];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearEscHandler(t){this._escHandlers[this._identifier(t,[48,126])]&&delete this._escHandlers[this._identifier(t,[48,126])]}setEscHandlerFallback(t){this._escHandlerFb=t}setExecuteHandler(t,e){this._executeHandlers[t.charCodeAt(0)]=e}clearExecuteHandler(t){this._executeHandlers[t.charCodeAt(0)]&&delete this._executeHandlers[t.charCodeAt(0)]}setExecuteHandlerFallback(t){this._executeHandlerFb=t}registerCsiHandler(t,e){let s=this._identifier(t);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);let i=this._csiHandlers[s];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearCsiHandler(t){this._csiHandlers[this._identifier(t)]&&delete this._csiHandlers[this._identifier(t)]}setCsiHandlerFallback(t){this._csiHandlerFb=t}registerDcsHandler(t,e){return this._dcsParser.registerHandler(this._identifier(t),e)}clearDcsHandler(t){this._dcsParser.clearHandler(this._identifier(t))}setDcsHandlerFallback(t){this._dcsParser.setHandlerFallback(t)}registerOscHandler(t,e){return this._oscParser.registerHandler(t,e)}clearOscHandler(t){this._oscParser.clearHandler(t)}setOscHandlerFallback(t){this._oscParser.setHandlerFallback(t)}setErrorHandler(t){this._errorHandler=t}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(t,e,s,i,n){this._parseStack.state=t,this._parseStack.handlers=e,this._parseStack.handlerPos=s,this._parseStack.transition=i,this._parseStack.chunkPos=n}parse(t,e,s){let i=0,n=0,o=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,o=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let l=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&c>-1){for(;c>=0&&(a=l[c](this._params),a!==!0);c--)if(a instanceof Promise)return this._parseStack.handlerPos=c,a}this._parseStack.handlers=[];break;case 4:if(s===!1&&c>-1){for(;c>=0&&(a=l[c](),a!==!0);c--)if(a instanceof Promise)return this._parseStack.handlerPos=c,a}this._parseStack.handlers=[];break;case 6:if(i=t[this._parseStack.chunkPos],a=this._dcsParser.unhook(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(i=t[this._parseStack.chunkPos],a=this._oscParser.end(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,o=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let l=o;l<e;++l){switch(i=t[l],n=this._transitions.table[this.currentState<<8|(i<160?i:Wt)],n>>4){case 2:for(let f=l+1;;++f){if(f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Wt){this._printHandler(t,l,f),l=f-1;break}}break;case 3:this._executeHandlers[i]?this._executeHandlers[i]():this._executeHandlerFb(i),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:l,code:i,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let c=this._csiHandlers[this._collect<<8|i],d=c?c.length-1:-1;for(;d>=0&&(a=c[d](this._params),a!==!0);d--)if(a instanceof Promise)return this._preserveStack(3,c,d,n,l),a;d<0&&this._csiHandlerFb(this._collect<<8|i,this._params),this.precedingJoinState=0;break;case 8:do switch(i){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(i-48)}while(++l<e&&(i=t[l])>47&&i<60);l--;break;case 9:this._collect<<=8,this._collect|=i;break;case 10:let u=this._escHandlers[this._collect<<8|i],h=u?u.length-1:-1;for(;h>=0&&(a=u[h](),a!==!0);h--)if(a instanceof Promise)return this._preserveStack(4,u,h,n,l),a;h<0&&this._escHandlerFb(this._collect<<8|i),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|i,this._params);break;case 13:for(let f=l+1;;++f)if(f>=e||(i=t[f])===24||i===26||i===27||i>127&&i<Wt){this._dcsParser.put(t,l,f),l=f-1;break}break;case 14:if(a=this._dcsParser.unhook(i!==24&&i!==26),a)return this._preserveStack(6,[],0,n,l),a;i===27&&(n|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let f=l+1;;f++)if(f>=e||(i=t[f])<32||i>127&&i<Wt){this._oscParser.put(t,l,f),l=f-1;break}break;case 6:if(a=this._oscParser.end(i!==24&&i!==26),a)return this._preserveStack(5,[],0,n,l),a;i===27&&(n|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=n&15}}},uC=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,fC=/^[\da-f]+$/;function ed(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let s=uC.exec(e);if(s){let i=s[1]?15:s[4]?255:s[7]?4095:65535;return[Math.round(parseInt(s[1]||s[4]||s[7]||s[10],16)/i*255),Math.round(parseInt(s[2]||s[5]||s[8]||s[11],16)/i*255),Math.round(parseInt(s[3]||s[6]||s[9]||s[12],16)/i*255)]}}else if(e.indexOf("#")===0&&(e=e.slice(1),fC.exec(e)&&[3,6,9,12].includes(e.length))){let s=e.length/3,i=[0,0,0];for(let n=0;n<3;++n){let o=parseInt(e.slice(s*n,s*n+s),16);i[n]=s===1?o<<4:s===2?o:s===3?o>>4:o>>8}return i}}function yo(t,e){let s=t.toString(16),i=s.length<2?"0"+s:s;switch(e){case 4:return s[0];case 8:return i;case 12:return(i+i).slice(0,3);default:return i+i}}function mC(t,e=16){let[s,i,n]=t;return`rgb:${yo(s,e)}/${yo(i,e)}/${yo(n,e)}`}var pC={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Ns=131072,td=10;function sd(t,e){if(t>24)return e.setWinLines||!1;switch(t){case 1:return!!e.restoreWin;case 2:return!!e.minimizeWin;case 3:return!!e.setWinPosition;case 4:return!!e.setWinSizePixels;case 5:return!!e.raiseWin;case 6:return!!e.lowerWin;case 7:return!!e.refreshWin;case 8:return!!e.setWinSizeChars;case 9:return!!e.maximizeWin;case 10:return!!e.fullscreenWin;case 11:return!!e.getWinState;case 13:return!!e.getWinPosition;case 14:return!!e.getWinSizePixels;case 15:return!!e.getScreenSizePixels;case 16:return!!e.getCellSizePixels;case 18:return!!e.getWinSizeChars;case 19:return!!e.getScreenSizeChars;case 20:return!!e.getIconTitle;case 21:return!!e.getWinTitle;case 22:return!!e.pushTitle;case 23:return!!e.popTitle;case 24:return!!e.setWinLines}return!1}var id=5e3,rd=0,gC=class extends we{constructor(t,e,s,i,n,o,a,l,c=new hC){super(),this._bufferService=t,this._charsetService=e,this._coreService=s,this._logService=i,this._optionsService=n,this._oscLinkService=o,this._coreMouseService=a,this._unicodeService=l,this._parser=c,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new DS,this._utf8Decoder=new PS,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=We.clone(),this._eraseAttrDataInternal=We.clone(),this._onRequestBell=this._register(new ne),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new ne),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new ne),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new ne),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new ne),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new ne),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new ne),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new ne),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new ne),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new ne),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new ne),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new ne),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new ne),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new ba(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(d=>this._activeBuffer=d.activeBuffer)),this._parser.setCsiHandlerFallback((d,u)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(d),params:u.toArray()})}),this._parser.setEscHandlerFallback(d=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(d)})}),this._parser.setExecuteHandlerFallback(d=>{this._logService.debug("Unknown EXECUTE code: ",{code:d})}),this._parser.setOscHandlerFallback((d,u,h)=>{this._logService.debug("Unknown OSC code: ",{identifier:d,action:u,data:h})}),this._parser.setDcsHandlerFallback((d,u,h)=>{u==="HOOK"&&(h=h.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(d),action:u,payload:h})}),this._parser.setPrintHandler((d,u,h)=>this.print(d,u,h)),this._parser.registerCsiHandler({final:"@"},d=>this.insertChars(d)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},d=>this.scrollLeft(d)),this._parser.registerCsiHandler({final:"A"},d=>this.cursorUp(d)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},d=>this.scrollRight(d)),this._parser.registerCsiHandler({final:"B"},d=>this.cursorDown(d)),this._parser.registerCsiHandler({final:"C"},d=>this.cursorForward(d)),this._parser.registerCsiHandler({final:"D"},d=>this.cursorBackward(d)),this._parser.registerCsiHandler({final:"E"},d=>this.cursorNextLine(d)),this._parser.registerCsiHandler({final:"F"},d=>this.cursorPrecedingLine(d)),this._parser.registerCsiHandler({final:"G"},d=>this.cursorCharAbsolute(d)),this._parser.registerCsiHandler({final:"H"},d=>this.cursorPosition(d)),this._parser.registerCsiHandler({final:"I"},d=>this.cursorForwardTab(d)),this._parser.registerCsiHandler({final:"J"},d=>this.eraseInDisplay(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},d=>this.eraseInDisplay(d,!0)),this._parser.registerCsiHandler({final:"K"},d=>this.eraseInLine(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},d=>this.eraseInLine(d,!0)),this._parser.registerCsiHandler({final:"L"},d=>this.insertLines(d)),this._parser.registerCsiHandler({final:"M"},d=>this.deleteLines(d)),this._parser.registerCsiHandler({final:"P"},d=>this.deleteChars(d)),this._parser.registerCsiHandler({final:"S"},d=>this.scrollUp(d)),this._parser.registerCsiHandler({final:"T"},d=>this.scrollDown(d)),this._parser.registerCsiHandler({final:"X"},d=>this.eraseChars(d)),this._parser.registerCsiHandler({final:"Z"},d=>this.cursorBackwardTab(d)),this._parser.registerCsiHandler({final:"`"},d=>this.charPosAbsolute(d)),this._parser.registerCsiHandler({final:"a"},d=>this.hPositionRelative(d)),this._parser.registerCsiHandler({final:"b"},d=>this.repeatPrecedingCharacter(d)),this._parser.registerCsiHandler({final:"c"},d=>this.sendDeviceAttributesPrimary(d)),this._parser.registerCsiHandler({prefix:">",final:"c"},d=>this.sendDeviceAttributesSecondary(d)),this._parser.registerCsiHandler({final:"d"},d=>this.linePosAbsolute(d)),this._parser.registerCsiHandler({final:"e"},d=>this.vPositionRelative(d)),this._parser.registerCsiHandler({final:"f"},d=>this.hVPosition(d)),this._parser.registerCsiHandler({final:"g"},d=>this.tabClear(d)),this._parser.registerCsiHandler({final:"h"},d=>this.setMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"h"},d=>this.setModePrivate(d)),this._parser.registerCsiHandler({final:"l"},d=>this.resetMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"l"},d=>this.resetModePrivate(d)),this._parser.registerCsiHandler({final:"m"},d=>this.charAttributes(d)),this._parser.registerCsiHandler({final:"n"},d=>this.deviceStatus(d)),this._parser.registerCsiHandler({prefix:"?",final:"n"},d=>this.deviceStatusPrivate(d)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},d=>this.softReset(d)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},d=>this.setCursorStyle(d)),this._parser.registerCsiHandler({final:"r"},d=>this.setScrollRegion(d)),this._parser.registerCsiHandler({final:"s"},d=>this.saveCursor(d)),this._parser.registerCsiHandler({final:"t"},d=>this.windowOptions(d)),this._parser.registerCsiHandler({final:"u"},d=>this.restoreCursor(d)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},d=>this.insertColumns(d)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},d=>this.deleteColumns(d)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},d=>this.selectProtected(d)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},d=>this.requestMode(d,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},d=>this.requestMode(d,!1)),this._parser.setExecuteHandler(Q.BEL,()=>this.bell()),this._parser.setExecuteHandler(Q.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(Q.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(Q.BS,()=>this.backspace()),this._parser.setExecuteHandler(Q.HT,()=>this.tab()),this._parser.setExecuteHandler(Q.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(Q.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(ln.IND,()=>this.index()),this._parser.setExecuteHandler(ln.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(ln.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Tt(d=>(this.setTitle(d),this.setIconName(d),!0))),this._parser.registerOscHandler(1,new Tt(d=>this.setIconName(d))),this._parser.registerOscHandler(2,new Tt(d=>this.setTitle(d))),this._parser.registerOscHandler(4,new Tt(d=>this.setOrReportIndexedColor(d))),this._parser.registerOscHandler(8,new Tt(d=>this.setHyperlink(d))),this._parser.registerOscHandler(10,new Tt(d=>this.setOrReportFgColor(d))),this._parser.registerOscHandler(11,new Tt(d=>this.setOrReportBgColor(d))),this._parser.registerOscHandler(12,new Tt(d=>this.setOrReportCursorColor(d))),this._parser.registerOscHandler(104,new Tt(d=>this.restoreIndexedColor(d))),this._parser.registerOscHandler(110,new Tt(d=>this.restoreFgColor(d))),this._parser.registerOscHandler(111,new Tt(d=>this.restoreBgColor(d))),this._parser.registerOscHandler(112,new Tt(d=>this.restoreCursorColor(d))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let d in et)this._parser.registerEscHandler({intermediates:"(",final:d},()=>this.selectCharset("("+d)),this._parser.registerEscHandler({intermediates:")",final:d},()=>this.selectCharset(")"+d)),this._parser.registerEscHandler({intermediates:"*",final:d},()=>this.selectCharset("*"+d)),this._parser.registerEscHandler({intermediates:"+",final:d},()=>this.selectCharset("+"+d)),this._parser.registerEscHandler({intermediates:"-",final:d},()=>this.selectCharset("-"+d)),this._parser.registerEscHandler({intermediates:".",final:d},()=>this.selectCharset("."+d)),this._parser.registerEscHandler({intermediates:"/",final:d},()=>this.selectCharset("/"+d));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(d=>(this._logService.error("Parsing error: ",d),d)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new Zc((d,u)=>this.requestStatusString(d,u)))}getAttrData(){return this._curAttrData}_preserveStack(t,e,s,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=t,this._parseStack.cursorStartY=e,this._parseStack.decodedLength=s,this._parseStack.position=i}_logSlowResolvingAsync(t){this._logService.logLevel<=3&&Promise.race([t,new Promise((e,s)=>setTimeout(()=>s("#SLOW_TIMEOUT"),id))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${id} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(t,e){let s,i=this._activeBuffer.x,n=this._activeBuffer.y,o=0,a=this._parseStack.paused;if(a){if(s=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,e))return this._logSlowResolvingAsync(s),s;i=this._parseStack.cursorStartX,n=this._parseStack.cursorStartY,this._parseStack.paused=!1,t.length>Ns&&(o=this._parseStack.position+Ns)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,d=>String.fromCharCode(d)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(d=>d.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<Ns&&(this._parseBuffer=new Uint32Array(Math.min(t.length,Ns))),a||this._dirtyRowTracker.clearRange(),t.length>Ns)for(let d=o;d<t.length;d+=Ns){let u=d+Ns<t.length?d+Ns:t.length,h=typeof t=="string"?this._stringDecoder.decode(t.substring(d,u),this._parseBuffer):this._utf8Decoder.decode(t.subarray(d,u),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,h))return this._preserveStack(i,n,h,d),this._logSlowResolvingAsync(s),s}else if(!a){let d=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,d))return this._preserveStack(i,n,d,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==i||this._activeBuffer.y!==n)&&this._onCursorMove.fire();let l=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),c=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);c<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(c,this._bufferService.rows-1),end:Math.min(l,this._bufferService.rows-1)})}print(t,e,s){let i,n,o=this._charsetService.charset,a=this._optionsService.rawOptions.screenReaderMode,l=this._bufferService.cols,c=this._coreService.decPrivateModes.wraparound,d=this._coreService.modes.insertMode,u=this._curAttrData,h=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-e>0&&h.getWidth(this._activeBuffer.x-1)===2&&h.setCellFromCodepoint(this._activeBuffer.x-1,0,1,u);let f=this._parser.precedingJoinState;for(let m=e;m<s;++m){if(i=t[m],i<127&&o){let v=o[String.fromCharCode(i)];v&&(i=v.charCodeAt(0))}let p=this._unicodeService.charProperties(i,f);n=Ys.extractWidth(p);let g=Ys.extractShouldJoin(p),_=g?Ys.extractWidth(f):0;if(f=p,a&&this._onA11yChar.fire(As(i)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+n-_>l){if(c){let v=h,x=this._activeBuffer.x-_;for(this._activeBuffer.x=_,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),h=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),_>0&&h instanceof Xi&&h.copyCellsFrom(v,x,0,_,!1);x<l;)v.setCellFromCodepoint(x++,0,1,u)}else if(this._activeBuffer.x=l-1,n===2)continue}if(g&&this._activeBuffer.x){let v=h.getWidth(this._activeBuffer.x-1)?1:2;h.addCodepointToCell(this._activeBuffer.x-v,i,n);for(let x=n-_;--x>=0;)h.setCellFromCodepoint(this._activeBuffer.x++,0,0,u);continue}if(d&&(h.insertCells(this._activeBuffer.x,n-_,this._activeBuffer.getNullCell(u)),h.getWidth(l-1)===2&&h.setCellFromCodepoint(l-1,0,1,u)),h.setCellFromCodepoint(this._activeBuffer.x++,i,n,u),n>0)for(;--n;)h.setCellFromCodepoint(this._activeBuffer.x++,0,0,u)}this._parser.precedingJoinState=f,this._activeBuffer.x<l&&s-e>0&&h.getWidth(this._activeBuffer.x)===0&&!h.hasContent(this._activeBuffer.x)&&h.setCellFromCodepoint(this._activeBuffer.x,0,1,u),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(t,e){return t.final==="t"&&!t.prefix&&!t.intermediates?this._parser.registerCsiHandler(t,s=>sd(s.params[0],this._optionsService.rawOptions.windowOptions)?e(s):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new Zc(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new Tt(e))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);t.hasWidth(this._activeBuffer.x)&&!t.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-t),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(t=this._bufferService.cols-1){this._activeBuffer.x=Math.min(t,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(t,e){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=t,this._activeBuffer.y=this._activeBuffer.scrollTop+e):(this._activeBuffer.x=t,this._activeBuffer.y=e),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(t,e){this._restrictCursor(),this._setCursor(this._activeBuffer.x+t,this._activeBuffer.y+e)}cursorUp(t){let e=this._activeBuffer.y-this._activeBuffer.scrollTop;return e>=0?this._moveCursor(0,-Math.min(e,t.params[0]||1)):this._moveCursor(0,-(t.params[0]||1)),!0}cursorDown(t){let e=this._activeBuffer.scrollBottom-this._activeBuffer.y;return e>=0?this._moveCursor(0,Math.min(e,t.params[0]||1)):this._moveCursor(0,t.params[0]||1),!0}cursorForward(t){return this._moveCursor(t.params[0]||1,0),!0}cursorBackward(t){return this._moveCursor(-(t.params[0]||1),0),!0}cursorNextLine(t){return this.cursorDown(t),this._activeBuffer.x=0,!0}cursorPrecedingLine(t){return this.cursorUp(t),this._activeBuffer.x=0,!0}cursorCharAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(t){return this._setCursor(t.length>=2?(t.params[1]||1)-1:0,(t.params[0]||1)-1),!0}charPosAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(t){return this._moveCursor(t.params[0]||1,0),!0}linePosAbsolute(t){return this._setCursor(this._activeBuffer.x,(t.params[0]||1)-1),!0}vPositionRelative(t){return this._moveCursor(0,t.params[0]||1),!0}hVPosition(t){return this.cursorPosition(t),!0}tabClear(t){let e=t.params[0];return e===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:e===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(t){let e=t.params[0];return e===1&&(this._curAttrData.bg|=536870912),(e===2||e===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(t,e,s,i=!1,n=!1){let o=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);o.replaceCells(e,s,this._activeBuffer.getNullCell(this._eraseAttrData()),n),i&&(o.isWrapped=!1)}_resetBufferLine(t,e=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);s&&(s.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),e),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+t),s.isWrapped=!1)}eraseInDisplay(t,e=!1){this._restrictCursor(this._bufferService.cols);let s;switch(t.params[0]){case 0:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);s<this._bufferService.rows;s++)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(s);break;case 1:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s,0,this._activeBuffer.x+1,!0,e),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(s+1).isWrapped=!1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(s=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,s-1);s--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+s)?.getTrimmedLength(););for(;s>=0;s--)this._bufferService.scroll(this._eraseAttrData())}else{for(s=this._bufferService.rows,this._dirtyRowTracker.markDirty(s-1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0)}break;case 3:let i=this._activeBuffer.lines.length-this._bufferService.rows;i>0&&(this._activeBuffer.lines.trimStart(i),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-i,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-i,0),this._onScroll.fire(0));break}return!0}eraseInLine(t,e=!1){switch(this._restrictCursor(this._bufferService.cols),t.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,e);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,e);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,n=this._bufferService.rows-1+this._activeBuffer.ybase-i+1;for(;e--;)this._activeBuffer.lines.splice(n-1,1),this._activeBuffer.lines.splice(s,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i;for(i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,i=this._bufferService.rows-1+this._activeBuffer.ybase-i;e--;)this._activeBuffer.lines.splice(s,1),this._activeBuffer.lines.splice(i,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.insertCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.deleteCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(We));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(t.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(t){let e=this._parser.precedingJoinState;if(!e)return!0;let s=t.params[0]||1,i=Ys.extractWidth(e),n=this._activeBuffer.x-i,o=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(n),a=new Uint32Array(o.length*s),l=0;for(let d=0;d<o.length;){let u=o.codePointAt(d)||0;a[l++]=u,d+=u>65535?2:1}let c=l;for(let d=1;d<s;++d)a.copyWithin(c,0,l),c+=l;return this.print(a,0,c),!0}sendDeviceAttributesPrimary(t){return t.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(Q.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(Q.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(Q.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(Q.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(Q.ESC+"[>83;40003;0c")),!0}_is(t){return(this._optionsService.rawOptions.termName+"").indexOf(t)===0}setMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,Gs),this._charsetService.setgCharset(1,Gs),this._charsetService.setgCharset(2,Gs),this._charsetService.setgCharset(3,Gs);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),t.params[e]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(t,e){let s;(g=>(g[g.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",g[g.SET=1]="SET",g[g.RESET=2]="RESET",g[g.PERMANENTLY_SET=3]="PERMANENTLY_SET",g[g.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(s||={});let i=this._coreService.decPrivateModes,{activeProtocol:n,activeEncoding:o}=this._coreMouseService,a=this._coreService,{buffers:l,cols:c}=this._bufferService,{active:d,alt:u}=l,h=this._optionsService.rawOptions,f=(g,_)=>(a.triggerDataEvent(`${Q.ESC}[${e?"":"?"}${g};${_}$y`),!0),m=g=>g?1:2,p=t.params[0];return e?p===2?f(p,4):p===4?f(p,m(a.modes.insertMode)):p===12?f(p,3):p===20?f(p,m(h.convertEol)):f(p,0):p===1?f(p,m(i.applicationCursorKeys)):p===3?f(p,h.windowOptions.setWinLines?c===80?2:c===132?1:0:0):p===6?f(p,m(i.origin)):p===7?f(p,m(i.wraparound)):p===8?f(p,3):p===9?f(p,m(n==="X10")):p===12?f(p,m(h.cursorBlink)):p===25?f(p,m(!a.isCursorHidden)):p===45?f(p,m(i.reverseWraparound)):p===66?f(p,m(i.applicationKeypad)):p===67?f(p,4):p===1e3?f(p,m(n==="VT200")):p===1002?f(p,m(n==="DRAG")):p===1003?f(p,m(n==="ANY")):p===1004?f(p,m(i.sendFocus)):p===1005?f(p,4):p===1006?f(p,m(o==="SGR")):p===1015?f(p,4):p===1016?f(p,m(o==="SGR_PIXELS")):p===1048?f(p,1):p===47||p===1047||p===1049?f(p,m(d===u)):p===2004?f(p,m(i.bracketedPasteMode)):p===2026?f(p,m(i.synchronizedOutput)):f(p,0)}_updateAttrColor(t,e,s,i,n){return e===2?(t|=50331648,t&=-16777216,t|=Ar.fromColorRGB([s,i,n])):e===5&&(t&=-50331904,t|=33554432|s&255),t}_extractColor(t,e,s){let i=[0,0,-1,0,0,0],n=0,o=0;do{if(i[o+n]=t.params[e+o],t.hasSubParams(e+o)){let a=t.getSubParams(e+o),l=0;do i[1]===5&&(n=1),i[o+l+1+n]=a[l];while(++l<a.length&&l+o+1+n<i.length);break}if(i[1]===5&&o+n>=2||i[1]===2&&o+n>=5)break;i[1]&&(n=1)}while(++o+e<t.length&&o+n<i.length);for(let a=2;a<i.length;++a)i[a]===-1&&(i[a]=0);switch(i[0]){case 38:s.fg=this._updateAttrColor(s.fg,i[1],i[3],i[4],i[5]);break;case 48:s.bg=this._updateAttrColor(s.bg,i[1],i[3],i[4],i[5]);break;case 58:s.extended=s.extended.clone(),s.extended.underlineColor=this._updateAttrColor(s.extended.underlineColor,i[1],i[3],i[4],i[5])}return o}_processUnderline(t,e){e.extended=e.extended.clone(),(!~t||t>5)&&(t=1),e.extended.underlineStyle=t,e.fg|=268435456,t===0&&(e.fg&=-268435457),e.updateExtended()}_processSGR0(t){t.fg=We.fg,t.bg=We.bg,t.extended=t.extended.clone(),t.extended.underlineStyle=0,t.extended.underlineColor&=-67108864,t.updateExtended()}charAttributes(t){if(t.length===1&&t.params[0]===0)return this._processSGR0(this._curAttrData),!0;let e=t.length,s,i=this._curAttrData;for(let n=0;n<e;n++)s=t.params[n],s>=30&&s<=37?(i.fg&=-50331904,i.fg|=16777216|s-30):s>=40&&s<=47?(i.bg&=-50331904,i.bg|=16777216|s-40):s>=90&&s<=97?(i.fg&=-50331904,i.fg|=16777216|s-90|8):s>=100&&s<=107?(i.bg&=-50331904,i.bg|=16777216|s-100|8):s===0?this._processSGR0(i):s===1?i.fg|=134217728:s===3?i.bg|=67108864:s===4?(i.fg|=268435456,this._processUnderline(t.hasSubParams(n)?t.getSubParams(n)[0]:1,i)):s===5?i.fg|=536870912:s===7?i.fg|=67108864:s===8?i.fg|=1073741824:s===9?i.fg|=2147483648:s===2?i.bg|=134217728:s===21?this._processUnderline(2,i):s===22?(i.fg&=-134217729,i.bg&=-134217729):s===23?i.bg&=-67108865:s===24?(i.fg&=-268435457,this._processUnderline(0,i)):s===25?i.fg&=-536870913:s===27?i.fg&=-67108865:s===28?i.fg&=-1073741825:s===29?i.fg&=2147483647:s===39?(i.fg&=-67108864,i.fg|=We.fg&16777215):s===49?(i.bg&=-67108864,i.bg|=We.bg&16777215):s===38||s===48||s===58?n+=this._extractColor(t,n,i):s===53?i.bg|=1073741824:s===55?i.bg&=-1073741825:s===59?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):s===100?(i.fg&=-67108864,i.fg|=We.fg&16777215,i.bg&=-67108864,i.bg|=We.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${Q.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${Q.ESC}[${e};${s}R`);break}return!0}deviceStatusPrivate(t){if(t.params[0]===6){let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${Q.ESC}[?${e};${s}R`)}return!0}softReset(t){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=We.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(t){let e=t.length===0?1:t.params[0];if(e===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(e){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let s=e%2===1;this._coreService.decPrivateModes.cursorBlink=s}return!0}setScrollRegion(t){let e=t.params[0]||1,s;return(t.length<2||(s=t.params[1])>this._bufferService.rows||s===0)&&(s=this._bufferService.rows),s>e&&(this._activeBuffer.scrollTop=e-1,this._activeBuffer.scrollBottom=s-1,this._setCursor(0,0)),!0}windowOptions(t){if(!sd(t.params[0],this._optionsService.rawOptions.windowOptions))return!0;let e=t.length>1?t.params[1]:0;switch(t.params[0]){case 14:e!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${Q.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>td&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>td&&this._iconNameStack.shift());break;case 23:(e===0||e===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(e===0||e===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(t){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(t){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(t){return this._windowTitle=t,this._onTitleChange.fire(t),!0}setIconName(t){return this._iconName=t,!0}setOrReportIndexedColor(t){let e=[],s=t.split(";");for(;s.length>1;){let i=s.shift(),n=s.shift();if(/^\d+$/.exec(i)){let o=parseInt(i);if(nd(o))if(n==="?")e.push({type:0,index:o});else{let a=ed(n);a&&e.push({type:1,index:o,color:a})}}}return e.length&&this._onColor.fire(e),!0}setHyperlink(t){let e=t.indexOf(";");if(e===-1)return!0;let s=t.slice(0,e).trim(),i=t.slice(e+1);return i?this._createHyperlink(s,i):s.trim()?!1:this._finishHyperlink()}_createHyperlink(t,e){this._getCurrentLinkId()&&this._finishHyperlink();let s=t.split(":"),i,n=s.findIndex(o=>o.startsWith("id="));return n!==-1&&(i=s[n].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:i,uri:e}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(t,e){let s=t.split(";");for(let i=0;i<s.length&&!(e>=this._specialColors.length);++i,++e)if(s[i]==="?")this._onColor.fire([{type:0,index:this._specialColors[e]}]);else{let n=ed(s[i]);n&&this._onColor.fire([{type:1,index:this._specialColors[e],color:n}])}return!0}setOrReportFgColor(t){return this._setOrReportSpecialColor(t,0)}setOrReportBgColor(t){return this._setOrReportSpecialColor(t,1)}setOrReportCursorColor(t){return this._setOrReportSpecialColor(t,2)}restoreIndexedColor(t){if(!t)return this._onColor.fire([{type:2}]),!0;let e=[],s=t.split(";");for(let i=0;i<s.length;++i)if(/^\d+$/.exec(s[i])){let n=parseInt(s[i]);nd(n)&&e.push({type:2,index:n})}return e.length&&this._onColor.fire(e),!0}restoreFgColor(t){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(t){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(t){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,Gs),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(pC[t[0]],et[t[1]]||Gs),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let t=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,t,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=We.clone(),this._eraseAttrDataInternal=We.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(t){return this._charsetService.setgLevel(t),!0}screenAlignmentPattern(){let t=new Kt;t.content=1<<22|69,t.fg=this._curAttrData.fg,t.bg=this._curAttrData.bg,this._setCursor(0,0);for(let e=0;e<this._bufferService.rows;++e){let s=this._activeBuffer.ybase+this._activeBuffer.y+e,i=this._activeBuffer.lines.get(s);i&&(i.fill(t),i.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(t,e){let s=a=>(this._coreService.triggerDataEvent(`${Q.ESC}${a}${Q.ESC}\\`),!0),i=this._bufferService.buffer,n=this._optionsService.rawOptions;return s(t==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:t==='"p'?'P1$r61;1"p':t==="r"?`P1$r${i.scrollTop+1};${i.scrollBottom+1}r`:t==="m"?"P1$r0m":t===" q"?`P1$r${{block:2,underline:4,bar:6}[n.cursorStyle]-(n.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(t,e){this._dirtyRowTracker.markRangeDirty(t,e)}},ba=class{constructor(t){this._bufferService=t,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(t){t<this.start?this.start=t:t>this.end&&(this.end=t)}markRangeDirty(t,e){t>e&&(rd=t,t=e,e=rd),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};ba=$e([le(0,wt)],ba);function nd(t){return 0<=t&&t<256}var _C=5e7,od=12,xC=50,vC=class extends we{constructor(t){super(),this._action=t,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new ne),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(t,e){if(e!==void 0&&this._syncCalls>e){this._syncCalls=0;return}if(this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let s;for(;s=this._writeBuffer.shift();){this._action(s);let i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(t,e){if(this._pendingData>_C)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e)}_innerWrite(t=0,e=!0){let s=t||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let i=this._writeBuffer[this._bufferOffset],n=this._action(i,e);if(n){let a=l=>performance.now()-s>=od?setTimeout(()=>this._innerWrite(0,l)):this._innerWrite(s,l);n.catch(l=>(queueMicrotask(()=>{throw l}),Promise.resolve(!1))).then(a);return}let o=this._callbacks[this._bufferOffset];if(o&&o(),this._bufferOffset++,this._pendingData-=i.length,performance.now()-s>=od)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>xC&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},ya=class{constructor(t){this._bufferService=t,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(t){let e=this._bufferService.buffer;if(t.id===void 0){let l=e.addMarker(e.ybase+e.y),c={data:t,id:this._nextId++,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(c,l)),this._dataByLinkId.set(c.id,c),c.id}let s=t,i=this._getEntryIdKey(s),n=this._entriesWithId.get(i);if(n)return this.addLineToLink(n.id,e.ybase+e.y),n.id;let o=e.addMarker(e.ybase+e.y),a={id:this._nextId++,key:this._getEntryIdKey(s),data:s,lines:[o]};return o.onDispose(()=>this._removeMarkerFromLink(a,o)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(t,e){let s=this._dataByLinkId.get(t);if(s&&s.lines.every(i=>i.line!==e)){let i=this._bufferService.buffer.addMarker(e);s.lines.push(i),i.onDispose(()=>this._removeMarkerFromLink(s,i))}}getLinkData(t){return this._dataByLinkId.get(t)?.data}_getEntryIdKey(t){return`${t.id};;${t.uri}`}_removeMarkerFromLink(t,e){let s=t.lines.indexOf(e);s!==-1&&(t.lines.splice(s,1),t.lines.length===0&&(t.data.id!==void 0&&this._entriesWithId.delete(t.key),this._dataByLinkId.delete(t.id)))}};ya=$e([le(0,wt)],ya);var ad=!1,bC=class extends we{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new ki),this._onBinary=this._register(new ne),this.onBinary=this._onBinary.event,this._onData=this._register(new ne),this.onData=this._onData.event,this._onLineFeed=this._register(new ne),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new ne),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new ne),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new ne),this._instantiationService=new HV,this.optionsService=this._register(new eC(t)),this._instantiationService.setService(Vt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(ga)),this._instantiationService.setService(wt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(pa)),this._instantiationService.setService($u,this._logService),this.coreService=this._register(this._instantiationService.createInstance(_a)),this._instantiationService.setService(ai,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(xa)),this._instantiationService.setService(Bu,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Ys)),this._instantiationService.setService($S,this.unicodeService),this._charsetService=this._instantiationService.createInstance(nC),this._instantiationService.setService(BS,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(ya),this._instantiationService.setService(zu,this._oscLinkService),this._inputHandler=this._register(new gC(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(ct.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(ct.forward(this._bufferService.onResize,this._onResize)),this._register(ct.forward(this.coreService.onData,this._onData)),this._register(ct.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new vC((e,s)=>this._inputHandler.parse(e,s))),this._register(ct.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new ne),this._onScroll.event(t=>{this._onScrollApi?.fire(t.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(t){for(let e in t)this.optionsService.options[e]=t[e]}write(t,e){this._writeBuffer.write(t,e)}writeSync(t,e){this._logService.logLevel<=3&&!ad&&(this._logService.warn("writeSync is unreliable and will be removed soon."),ad=!0),this._writeBuffer.writeSync(t,e)}input(t,e=!0){this.coreService.triggerDataEvent(t,e)}resize(t,e){isNaN(t)||isNaN(e)||(t=Math.max(t,bf),e=Math.max(e,yf),this._bufferService.resize(t,e))}scroll(t,e=!1){this._bufferService.scroll(t,e)}scrollLines(t,e){this._bufferService.scrollLines(t,e)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}registerEscHandler(t,e){return this._inputHandler.registerEscHandler(t,e)}registerDcsHandler(t,e){return this._inputHandler.registerDcsHandler(t,e)}registerCsiHandler(t,e){return this._inputHandler.registerCsiHandler(t,e)}registerOscHandler(t,e){return this._inputHandler.registerOscHandler(t,e)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let t=!1,e=this.optionsService.rawOptions.windowsPty;e&&e.buildNumber!==void 0&&e.buildNumber!==void 0?t=e.backend==="conpty"&&e.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(t=!0),t?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let t=[];t.push(this.onLineFeed(Qc.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(Qc(this._bufferService),!1))),this._windowsWrappingHeuristics.value=Me(()=>{for(let e of t)e.dispose()})}}},yC={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function SC(t,e,s,i){let n={type:0,cancel:!1,key:void 0},o=(t.shiftKey?1:0)|(t.altKey?2:0)|(t.ctrlKey?4:0)|(t.metaKey?8:0);switch(t.keyCode){case 0:t.key==="UIKeyInputUpArrow"?e?n.key=Q.ESC+"OA":n.key=Q.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?n.key=Q.ESC+"OD":n.key=Q.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?n.key=Q.ESC+"OC":n.key=Q.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?n.key=Q.ESC+"OB":n.key=Q.ESC+"[B");break;case 8:n.key=t.ctrlKey?"\b":Q.DEL,t.altKey&&(n.key=Q.ESC+n.key);break;case 9:if(t.shiftKey){n.key=Q.ESC+"[Z";break}n.key=Q.HT,n.cancel=!0;break;case 13:n.key=t.altKey?Q.ESC+Q.CR:Q.CR,n.cancel=!0;break;case 27:n.key=Q.ESC,t.altKey&&(n.key=Q.ESC+Q.ESC),n.cancel=!0;break;case 37:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"D":e?n.key=Q.ESC+"OD":n.key=Q.ESC+"[D";break;case 39:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"C":e?n.key=Q.ESC+"OC":n.key=Q.ESC+"[C";break;case 38:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"A":e?n.key=Q.ESC+"OA":n.key=Q.ESC+"[A";break;case 40:if(t.metaKey)break;o?n.key=Q.ESC+"[1;"+(o+1)+"B":e?n.key=Q.ESC+"OB":n.key=Q.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(n.key=Q.ESC+"[2~");break;case 46:o?n.key=Q.ESC+"[3;"+(o+1)+"~":n.key=Q.ESC+"[3~";break;case 36:o?n.key=Q.ESC+"[1;"+(o+1)+"H":e?n.key=Q.ESC+"OH":n.key=Q.ESC+"[H";break;case 35:o?n.key=Q.ESC+"[1;"+(o+1)+"F":e?n.key=Q.ESC+"OF":n.key=Q.ESC+"[F";break;case 33:t.shiftKey?n.type=2:t.ctrlKey?n.key=Q.ESC+"[5;"+(o+1)+"~":n.key=Q.ESC+"[5~";break;case 34:t.shiftKey?n.type=3:t.ctrlKey?n.key=Q.ESC+"[6;"+(o+1)+"~":n.key=Q.ESC+"[6~";break;case 112:o?n.key=Q.ESC+"[1;"+(o+1)+"P":n.key=Q.ESC+"OP";break;case 113:o?n.key=Q.ESC+"[1;"+(o+1)+"Q":n.key=Q.ESC+"OQ";break;case 114:o?n.key=Q.ESC+"[1;"+(o+1)+"R":n.key=Q.ESC+"OR";break;case 115:o?n.key=Q.ESC+"[1;"+(o+1)+"S":n.key=Q.ESC+"OS";break;case 116:o?n.key=Q.ESC+"[15;"+(o+1)+"~":n.key=Q.ESC+"[15~";break;case 117:o?n.key=Q.ESC+"[17;"+(o+1)+"~":n.key=Q.ESC+"[17~";break;case 118:o?n.key=Q.ESC+"[18;"+(o+1)+"~":n.key=Q.ESC+"[18~";break;case 119:o?n.key=Q.ESC+"[19;"+(o+1)+"~":n.key=Q.ESC+"[19~";break;case 120:o?n.key=Q.ESC+"[20;"+(o+1)+"~":n.key=Q.ESC+"[20~";break;case 121:o?n.key=Q.ESC+"[21;"+(o+1)+"~":n.key=Q.ESC+"[21~";break;case 122:o?n.key=Q.ESC+"[23;"+(o+1)+"~":n.key=Q.ESC+"[23~";break;case 123:o?n.key=Q.ESC+"[24;"+(o+1)+"~":n.key=Q.ESC+"[24~";break;default:if(t.ctrlKey&&!t.shiftKey&&!t.altKey&&!t.metaKey)t.keyCode>=65&&t.keyCode<=90?n.key=String.fromCharCode(t.keyCode-64):t.keyCode===32?n.key=Q.NUL:t.keyCode>=51&&t.keyCode<=55?n.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?n.key=Q.DEL:t.keyCode===219?n.key=Q.ESC:t.keyCode===220?n.key=Q.FS:t.keyCode===221&&(n.key=Q.GS);else if((!s||i)&&t.altKey&&!t.metaKey){let a=yC[t.keyCode]?.[t.shiftKey?1:0];if(a)n.key=Q.ESC+a;else if(t.keyCode>=65&&t.keyCode<=90){let l=t.ctrlKey?t.keyCode-64:t.keyCode+32,c=String.fromCharCode(l);t.shiftKey&&(c=c.toUpperCase()),n.key=Q.ESC+c}else if(t.keyCode===32)n.key=Q.ESC+(t.ctrlKey?Q.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let l=t.code.slice(3,4);t.shiftKey||(l=l.toLowerCase()),n.key=Q.ESC+l,n.cancel=!0}}else s&&!t.altKey&&!t.ctrlKey&&!t.shiftKey&&t.metaKey?t.keyCode===65&&(n.type=1):t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.keyCode>=48&&t.key.length===1?n.key=t.key:t.key&&t.ctrlKey&&(t.key==="_"&&(n.key=Q.US),t.key==="@"&&(n.key=Q.NUL));break}return n}var Ue=0,wC=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new wn,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new wn,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(t){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(t)}_flushInserted(){let t=this._insertedValues.sort((n,o)=>this._getKey(n)-this._getKey(o)),e=0,s=0,i=new Array(this._array.length+this._insertedValues.length);for(let n=0;n<i.length;n++)s>=this._array.length||this._getKey(t[e])<=this._getKey(this._array[s])?(i[n]=t[e],e++):i[n]=this._array[s++];this._array=i,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(t){if(this._flushCleanupInserted(),this._array.length===0)return!1;let e=this._getKey(t);if(e===void 0||(Ue=this._search(e),Ue===-1)||this._getKey(this._array[Ue])!==e)return!1;do if(this._array[Ue]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Ue),!0;while(++Ue<this._array.length&&this._getKey(this._array[Ue])===e);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let t=this._deletedIndices.sort((n,o)=>n-o),e=0,s=new Array(this._array.length-t.length),i=0;for(let n=0;n<this._array.length;n++)t[e]===n?e++:s[i++]=this._array[n];this._array=s,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ue=this._search(t),!(Ue<0||Ue>=this._array.length)&&this._getKey(this._array[Ue])===t))do yield this._array[Ue];while(++Ue<this._array.length&&this._getKey(this._array[Ue])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ue=this._search(t),!(Ue<0||Ue>=this._array.length)&&this._getKey(this._array[Ue])===t))do e(this._array[Ue]);while(++Ue<this._array.length&&this._getKey(this._array[Ue])===t)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(t){let e=0,s=this._array.length-1;for(;s>=e;){let i=e+s>>1,n=this._getKey(this._array[i]);if(n>t)s=i-1;else if(n<t)e=i+1;else{for(;i>0&&this._getKey(this._array[i-1])===t;)i--;return i}}return e}},So=0,ld=0,VC=class extends we{constructor(){super(),this._decorations=new wC(t=>t?.marker.line),this._onDecorationRegistered=this._register(new ne),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new ne),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(Me(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new CC(t);if(e){let s=e.marker.onDispose(()=>e.dispose()),i=e.onDispose(()=>{i.dispose(),e&&(this._decorations.delete(e)&&this._onDecorationRemoved.fire(e),s.dispose())});this._decorations.insert(e),this._onDecorationRegistered.fire(e)}return e}reset(){for(let t of this._decorations.values())t.dispose();this._decorations.clear()}*getDecorationsAtCell(t,e,s){let i=0,n=0;for(let o of this._decorations.getKeyIterator(e))i=o.options.x??0,n=i+(o.options.width??1),t>=i&&t<n&&(!s||(o.options.layer??"bottom")===s)&&(yield o)}forEachDecorationAtCell(t,e,s,i){this._decorations.forEachByKey(e,n=>{So=n.options.x??0,ld=So+(n.options.width??1),t>=So&&t<ld&&(!s||(n.options.layer??"bottom")===s)&&i(n)})}},CC=class extends Ps{constructor(t){super(),this.options=t,this.onRenderEmitter=this.add(new ne),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new ne),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=t.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=Le.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=Le.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},kC=1e3,jC=class{constructor(t,e=kC){this._renderCallback=t,this._debounceThresholdMS=e,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(t,e,s){this._rowCount=s,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e;let i=performance.now();if(i-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=i,this._innerRefresh();else if(!this._additionalRefreshRequested){let n=i-this._lastRefreshMs,o=this._debounceThresholdMS-n;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},o)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e)}},cd=20,Vn=class extends we{constructor(t,e,s,i){super(),this._terminal=t,this._coreBrowserService=s,this._renderService=i,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let n=this._coreBrowserService.mainDocument;this._accessibilityContainer=n.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=n.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let o=0;o<this._terminal.rows;o++)this._rowElements[o]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[o]);if(this._topBoundaryFocusListener=o=>this._handleBoundaryFocus(o,0),this._bottomBoundaryFocusListener=o=>this._handleBoundaryFocus(o,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=n.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new jC(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(o=>this._handleResize(o.rows))),this._register(this._terminal.onRender(o=>this._refreshRows(o.start,o.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(o=>this._handleChar(o))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
726
726
|
`))),this._register(this._terminal.onA11yTab(o=>this._handleTab(o))),this._register(this._terminal.onKey(o=>this._handleKey(o.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(ve(n,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(Me(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(t){for(let e=0;e<t;e++)this._handleChar(" ")}_handleChar(t){this._liveRegionLineCount<cd+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===`
|
|
727
|
-
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===cd+1&&(this._liveRegion.textContent+=zo.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(t){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(t)||this._charsToConsume.push(t)}_refreshRows(t,e){this._liveRegionDebouncer.refresh(t,e,this._terminal.rows)}_renderRows(t,e){let s=this._terminal.buffer,i=s.lines.length.toString();for(let n=t;n<=e;n++){let o=s.lines.get(s.ydisp+n),a=[],l=o?.translateToString(!0,void 0,void 0,a)||"",c=(s.ydisp+n+1).toString(),d=this._rowElements[n];d&&(l.length===0?(d.textContent=" ",this._rowColumns.set(d,[0,1])):(d.textContent=l,this._rowColumns.set(d,a)),d.setAttribute("aria-posinset",c),d.setAttribute("aria-setsize",i),this._alignRowWidth(d))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(t,e){let s=t.target,i=this._rowElements[e===0?1:this._rowElements.length-2],n=s.getAttribute("aria-posinset"),o=e===0?"1":`${this._terminal.buffer.lines.length}`;if(n===o||t.relatedTarget!==i)return;let a,l;if(e===0?(a=s,l=this._rowElements.pop(),this._rowContainer.removeChild(l)):(a=this._rowElements.shift(),l=s,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),l.removeEventListener("focus",this._bottomBoundaryFocusListener),e===0){let c=this._createAccessibilityTreeNode();this._rowElements.unshift(c),this._rowContainer.insertAdjacentElement("afterbegin",c)}else{let c=this._createAccessibilityTreeNode();this._rowElements.push(c),this._rowContainer.appendChild(c)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(e===0?-1:1),this._rowElements[e===0?1:this._rowElements.length-2].focus(),t.preventDefault(),t.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let t=this._coreBrowserService.mainDocument.getSelection();if(!t)return;if(t.isCollapsed){this._rowContainer.contains(t.anchorNode)&&this._terminal.clearSelection();return}if(!t.anchorNode||!t.focusNode){console.error("anchorNode and/or focusNode are null");return}let e={node:t.anchorNode,offset:t.anchorOffset},s={node:t.focusNode,offset:t.focusOffset};if((e.node.compareDocumentPosition(s.node)&Node.DOCUMENT_POSITION_PRECEDING||e.node===s.node&&e.offset>s.offset)&&([e,s]=[s,e]),e.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(e={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(e.node))return;let i=this._rowElements.slice(-1)[0];if(s.node.compareDocumentPosition(i)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(s={node:i,offset:i.textContent?.length??0}),!this._rowContainer.contains(s.node))return;let n=({node:l,offset:c})=>{let d=l instanceof Text?l.parentNode:l,u=parseInt(d?.getAttribute("aria-posinset"),10)-1;if(isNaN(u))return console.warn("row is invalid. Race condition?"),null;let h=this._rowColumns.get(d);if(!h)return console.warn("columns is null. Race condition?"),null;let f=c<h.length?h[c]:h.slice(-1)[0]+1;return f>=this._terminal.cols&&(++u,f=0),{row:u,column:f}},o=n(e),a=n(s);if(!(!o||!a)){if(o.row>a.row||o.row===a.row&&o.column>=a.column)throw new Error("invalid range");this._terminal.select(o.column,o.row,(a.row-o.row)*this._terminal.cols-o.column+a.column)}}_handleResize(t){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let t=this._coreBrowserService.mainDocument.createElement("div");return t.setAttribute("role","listitem"),t.tabIndex=-1,this._refreshRowDimensions(t),t}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let t=0;t<this._terminal.rows;t++)this._refreshRowDimensions(this._rowElements[t]),this._alignRowWidth(this._rowElements[t])}}_refreshRowDimensions(t){t.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(t){t.style.transform="";let e=t.getBoundingClientRect().width,s=this._rowColumns.get(t)?.slice(-1)?.[0];if(!s)return;let i=s*this._renderService.dimensions.css.cell.width;t.style.transform=`scaleX(${i/e})`}};Vn=$e([le(1,rl),le(2,ys),le(3,Ss)],Vn);var Sa=class extends we{constructor(t,e,s,i,n){super(),this._element=t,this._mouseService=e,this._renderService=s,this._bufferService=i,this._linkProviderService=n,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new ne),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new ne),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(Me(()=>{Qs(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(ve(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(ve(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(ve(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(ve(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(t){this._lastMouseEvent=t;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);if(!e)return;this._isMouseOut=!1;let s=t.composedPath();for(let i=0;i<s.length;i++){let n=s[i];if(n.classList.contains("xterm"))break;if(n.classList.contains("xterm-hover"))return}(!this._lastBufferCell||e.x!==this._lastBufferCell.x||e.y!==this._lastBufferCell.y)&&(this._handleHover(e),this._lastBufferCell=e)}_handleHover(t){if(this._activeLine!==t.y||this._wasResized){this._clearCurrentLink(),this._askForLink(t,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,t)||(this._clearCurrentLink(),this._askForLink(t,!0))}_askForLink(t,e){(!this._activeProviderReplies||!e)&&(this._activeProviderReplies?.forEach(i=>{i?.forEach(n=>{n.link.dispose&&n.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=t.y);let s=!1;for(let[i,n]of this._linkProviderService.linkProviders.entries())e?this._activeProviderReplies?.get(i)&&(s=this._checkLinkProviderResult(i,t,s)):n.provideLinks(t.y,o=>{if(this._isMouseOut)return;let a=o?.map(l=>({link:l}));this._activeProviderReplies?.set(i,a),s=this._checkLinkProviderResult(i,t,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(t.y,this._activeProviderReplies)})}_removeIntersectingLinks(t,e){let s=new Set;for(let i=0;i<e.size;i++){let n=e.get(i);if(n)for(let o=0;o<n.length;o++){let a=n[o],l=a.link.range.start.y<t?0:a.link.range.start.x,c=a.link.range.end.y>t?this._bufferService.cols:a.link.range.end.x;for(let d=l;d<=c;d++){if(s.has(d)){n.splice(o--,1);break}s.add(d)}}}}_checkLinkProviderResult(t,e,s){if(!this._activeProviderReplies)return s;let i=this._activeProviderReplies.get(t),n=!1;for(let o=0;o<t;o++)(!this._activeProviderReplies.has(o)||this._activeProviderReplies.get(o))&&(n=!0);if(!n&&i){let o=i.find(a=>this._linkAtPosition(a.link,e));o&&(s=!0,this._handleNewLink(o))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let o=0;o<this._activeProviderReplies.size;o++){let a=this._activeProviderReplies.get(o)?.find(l=>this._linkAtPosition(l.link,e));if(a){s=!0,this._handleNewLink(a);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(t){if(!this._currentLink)return;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);e&&this._mouseDownLink&&NC(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,e)&&this._currentLink.link.activate(t,this._currentLink.link.text)}_clearCurrentLink(t,e){!this._currentLink||!this._lastMouseEvent||(!t||!e||this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=e)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,Qs(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(t){if(!this._lastMouseEvent)return;let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._linkAtPosition(t.link,e)&&(this._currentLink=t,this._currentLink.state={decorations:{underline:t.link.decorations===void 0?!0:t.link.decorations.underline,pointerCursor:t.link.decorations===void 0?!0:t.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,t.link,this._lastMouseEvent),t.link.decorations={},Object.defineProperties(t.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(t.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(s=>{if(!this._currentLink)return;let i=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=i&&this._currentLink.link.range.end.y<=n&&(this._clearCurrentLink(i,n),this._lastMouseEvent)){let o=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);o&&this._askForLink(o,!1)}})))}_linkHover(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!0),this._currentLink.state.decorations.pointerCursor&&t.classList.add("xterm-cursor-pointer")),e.hover&&e.hover(s,e.text)}_fireUnderlineEvent(t,e){let s=t.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-i-1,s.end.x,s.end.y-i-1,void 0);(e?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)}_linkLeave(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!1),this._currentLink.state.decorations.pointerCursor&&t.classList.remove("xterm-cursor-pointer")),e.leave&&e.leave(s,e.text)}_linkAtPosition(t,e){let s=t.range.start.y*this._bufferService.cols+t.range.start.x,i=t.range.end.y*this._bufferService.cols+t.range.end.x,n=e.y*this._bufferService.cols+e.x;return s<=n&&n<=i}_positionFromMouseEvent(t,e,s){let i=s.getCoords(t,e,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(t,e,s,i,n){return{x1:t,y1:e,x2:s,y2:i,cols:this._bufferService.cols,fg:n}}};Sa=$e([le(1,nl),le(2,Ss),le(3,wt),le(4,Fu)],Sa);function NC(t,e){return t.text===e.text&&t.range.start.x===e.range.start.x&&t.range.start.y===e.range.start.y&&t.range.end.x===e.range.end.x&&t.range.end.y===e.range.end.y}var AC=class extends bC{constructor(t={}){super(t),this._linkifier=this._register(new ki),this.browser=lf,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new ki),this._onCursorMove=this._register(new ne),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new ne),this.onKey=this._onKey.event,this._onRender=this._register(new ne),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new ne),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new ne),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new ne),this.onBell=this._onBell.event,this._onFocus=this._register(new ne),this._onBlur=this._register(new ne),this._onA11yCharEmitter=this._register(new ne),this._onA11yTabEmitter=this._register(new ne),this._onWillOpen=this._register(new ne),this._setup(),this._decorationService=this._instantiationService.createInstance(VC),this._instantiationService.setService(Er,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(xV),this._instantiationService.setService(Fu,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(Uo)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(ct.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(ct.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(ct.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(ct.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(Me(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(t){if(this._themeService)for(let e of t){let s,i="";switch(e.index){case 256:s="foreground",i="10";break;case 257:s="background",i="11";break;case 258:s="cursor",i="12";break;default:s="ansi",i="4;"+e.index}switch(e.type){case 0:let n=Te.toColorRGB(s==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${Q.ESC}]${i};${mC(n)}${of.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(o=>o.ansi[e.index]=Ke.toColor(...e.color));else{let o=s;this._themeService.modifyColors(a=>a[o]=Ke.toColor(...e.color))}break;case 2:this._themeService.restoreColor(e.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(t){t?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(Vn,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(Q.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(Q.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let t=this.buffer.ybase+this.buffer.y,e=this.buffer.lines.get(t);if(!e)return;let s=Math.min(this.buffer.x,this.cols-1),i=this._renderService.dimensions.css.cell.height,n=e.getWidth(s),o=this._renderService.dimensions.css.cell.width*n,a=this.buffer.y*this._renderService.dimensions.css.cell.height,l=s*this._renderService.dimensions.css.cell.width;this.textarea.style.left=l+"px",this.textarea.style.top=a+"px",this.textarea.style.width=o+"px",this.textarea.style.height=i+"px",this.textarea.style.lineHeight=i+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(ve(this.element,"copy",e=>{this.hasSelection()&&RS(e,this._selectionService)}));let t=e=>MS(e,this.textarea,this.coreService,this.optionsService);this._register(ve(this.textarea,"paste",t)),this._register(ve(this.element,"paste",t)),cf?this._register(ve(this.element,"mousedown",e=>{e.button===2&&vc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(ve(this.element,"contextmenu",e=>{vc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),fl&&this._register(ve(this.element,"auxclick",e=>{e.button===1&&Ru(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(ve(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(ve(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(ve(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(ve(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(ve(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(ve(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(ve(this.textarea,"input",t=>this._inputEvent(t),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(t){if(!t)throw new Error("Terminal requires a parent element.");if(t.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=t.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),t.appendChild(this.element);let e=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),e.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(ve(this.screenElement,"mousemove",n=>this.updateCursorStyle(n))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),e.appendChild(this.screenElement);let s=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",$o.get()),uf||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>s.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(gV,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(ys,this._coreBrowserService),this._register(ve(this.textarea,"focus",n=>this._handleTextAreaFocus(n))),this._register(ve(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(da,this._document,this._helperContainer),this._instantiationService.setService(zn,this._charSizeService),this._themeService=this._instantiationService.createInstance(ma),this._instantiationService.setService(Ri,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(yn),this._instantiationService.setService(zu,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(ua,this.rows,this.screenElement)),this._instantiationService.setService(Ss,this._renderService),this._register(this._renderService.onRenderedViewportChange(n=>this._onRender.fire(n))),this.onResize(n=>this._renderService.resize(n.cols,n.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(aa,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(ha),this._instantiationService.setService(nl,this._mouseService);let i=this._linkifier.value=this._register(this._instantiationService.createInstance(Sa,this.screenElement));this.element.appendChild(e);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(na,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(n=>{super.scrollLines(n,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(fa,this.element,this.screenElement,i)),this._instantiationService.setService(FS,this._selectionService),this._register(this._selectionService.onRequestScrollLines(n=>this.scrollLines(n.amount,n.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(n=>this._renderService.handleSelectionChanged(n.start,n.end,n.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(n=>{this.textarea.value=n,this.textarea.focus(),this.textarea.select()})),this._register(ct.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(oa,this.screenElement)),this._register(ve(this.element,"mousedown",n=>this._selectionService.handleMouseDown(n))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(Vn,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",n=>this._handleScreenReaderModeOptionChange(n))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(bn,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",n=>{!this._overviewRulerRenderer&&n&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(bn,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(ca,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let t=this,e=this.element;function s(o){let a=t._mouseService.getMouseReportCoords(o,t.screenElement);if(!a)return!1;let l,c;switch(o.overrideType||o.type){case"mousemove":c=32,o.buttons===void 0?(l=3,o.button!==void 0&&(l=o.button<3?o.button:3)):l=o.buttons&1?0:o.buttons&4?1:o.buttons&2?2:3;break;case"mouseup":c=0,l=o.button<3?o.button:3;break;case"mousedown":c=1,l=o.button<3?o.button:3;break;case"wheel":if(t._customWheelEventHandler&&t._customWheelEventHandler(o)===!1)return!1;let d=o.deltaY;if(d===0||t.coreMouseService.consumeWheelEvent(o,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return!1;c=d<0?0:1,l=4;break;default:return!1}return c===void 0||l===void 0||l>4?!1:t.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:l,action:c,ctrl:o.ctrlKey,alt:o.altKey,shift:o.shiftKey})}let i={mouseup:null,wheel:null,mousedrag:null,mousemove:null},n={mouseup:o=>(s(o),o.buttons||(this._document.removeEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.removeEventListener("mousemove",i.mousedrag)),this.cancel(o)),wheel:o=>(s(o),this.cancel(o,!0)),mousedrag:o=>{o.buttons&&s(o)},mousemove:o=>{o.buttons||s(o)}};this._register(this.coreMouseService.onProtocolChange(o=>{o?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(o)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),o&8?i.mousemove||(e.addEventListener("mousemove",n.mousemove),i.mousemove=n.mousemove):(e.removeEventListener("mousemove",i.mousemove),i.mousemove=null),o&16?i.wheel||(e.addEventListener("wheel",n.wheel,{passive:!1}),i.wheel=n.wheel):(e.removeEventListener("wheel",i.wheel),i.wheel=null),o&2?i.mouseup||(i.mouseup=n.mouseup):(this._document.removeEventListener("mouseup",i.mouseup),i.mouseup=null),o&4?i.mousedrag||(i.mousedrag=n.mousedrag):(this._document.removeEventListener("mousemove",i.mousedrag),i.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(ve(e,"mousedown",o=>{if(o.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(o)))return s(o),i.mouseup&&this._document.addEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.addEventListener("mousemove",i.mousedrag),this.cancel(o)})),this._register(ve(e,"wheel",o=>{if(!i.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(o)===!1)return!1;if(!this.buffer.hasScrollback){if(o.deltaY===0)return!1;if(t.coreMouseService.consumeWheelEvent(o,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return this.cancel(o,!0);let a=Q.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(o.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(a,!0),this.cancel(o,!0)}}},{passive:!1}))}refresh(t,e){this._renderService?.refreshRows(t,e)}updateCursorStyle(t){this._selectionService?.shouldColumnSelect(t)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(t,e){this._viewport?this._viewport.scrollLines(t):super.scrollLines(t,e),this.refresh(0,this.rows-1)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){t&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}paste(t){Tu(t,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(t){this._customKeyEventHandler=t}attachCustomWheelEventHandler(t){this._customWheelEventHandler=t}registerLinkProvider(t){return this._linkProviderService.registerLinkProvider(t)}registerCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let e=this._characterJoinerService.register(t);return this.refresh(0,this.rows-1),e}deregisterCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(t)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(t){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+t)}registerDecoration(t){return this._decorationService.registerDecoration(t)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(t,e,s){this._selectionService.setSelection(t,e,s)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(t,e){this._selectionService?.selectLines(t,e)}_keyDown(t){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;let e=this.browser.isMac&&this.options.macOptionIsMeta&&t.altKey;if(!e&&!this._compositionHelper.keydown(t))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!e&&(t.key==="Dead"||t.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let s=SC(t,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(t),s.type===3||s.type===2){let i=this.rows-1;return this.scrollLines(s.type===2?-i:i),this.cancel(t,!0)}if(s.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,t)||(s.cancel&&this.cancel(t,!0),!s.key)||t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.key.length===1&&t.key.charCodeAt(0)>=65&&t.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((s.key===Q.ETX||s.key===Q.CR)&&(this.textarea.value=""),this._onKey.fire({key:s.key,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(s.key,!0),!this.optionsService.rawOptions.screenReaderMode||t.altKey||t.ctrlKey)return this.cancel(t,!0);this._keyDownHandled=!0}_isThirdLevelShift(t,e){let s=t.isMac&&!this.options.macOptionIsMeta&&e.altKey&&!e.ctrlKey&&!e.metaKey||t.isWindows&&e.altKey&&e.ctrlKey&&!e.metaKey||t.isWindows&&e.getModifierState("AltGraph");return e.type==="keypress"?s:s&&(!e.keyCode||e.keyCode>47)}_keyUp(t){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)&&(EC(t)||this.focus(),this.updateCursorStyle(t),this._keyPressHandled=!1)}_keyPress(t){let e;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;if(this.cancel(t),t.charCode)e=t.charCode;else if(t.which===null||t.which===void 0)e=t.keyCode;else if(t.which!==0&&t.charCode!==0)e=t.which;else return!1;return!e||(t.altKey||t.ctrlKey||t.metaKey)&&!this._isThirdLevelShift(this.browser,t)?!1:(e=String.fromCharCode(e),this._onKey.fire({key:e,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(e,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(t){if(t.data&&t.inputType==="insertText"&&(!t.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let e=t.data;return this.coreService.triggerDataEvent(e,!0),this.cancel(t),!0}return!1}resize(t,e){if(t===this.cols&&e===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(t,e)}_afterResize(t,e){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let t=1;t<this.rows;t++)this.buffer.lines.push(this.buffer.getBlankLine(We));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let t=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=t,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(Q.ESC+"[I"):this.coreService.triggerDataEvent(Q.ESC+"[O")}_reportWindowsOptions(t){if(this._renderService)switch(t){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),s=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${Q.ESC}[4;${s};${e}t`);break;case 1:let i=this._renderService.dimensions.css.cell.width.toFixed(0),n=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${Q.ESC}[6;${n};${i}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function EC(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var IC=class{constructor(){this._addons=[]}dispose(){for(let t=this._addons.length-1;t>=0;t--)this._addons[t].instance.dispose()}loadAddon(t,e){let s={instance:e,dispose:e.dispose,isDisposed:!1};this._addons.push(s),e.dispose=()=>this._wrappedAddonDispose(s),e.activate(t)}_wrappedAddonDispose(t){if(t.isDisposed)return;let e=-1;for(let s=0;s<this._addons.length;s++)if(this._addons[s]===t){e=s;break}if(e===-1)throw new Error("Could not dispose an addon that has not been loaded");t.isDisposed=!0,t.dispose.apply(t.instance),this._addons.splice(e,1)}},TC=class{constructor(t){this._line=t}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(t,e){if(!(t<0||t>=this._line.length))return e?(this._line.loadCell(t,e),e):this._line.loadCell(t,new Kt)}translateToString(t,e,s){return this._line.translateToString(t,e,s)}},dd=class{constructor(t,e){this._buffer=t,this.type=e}init(t){return this._buffer=t,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(t){let e=this._buffer.lines.get(t);if(e)return new TC(e)}getNullCell(){return new Kt}},RC=class extends we{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new ne),this.onBufferChange=this._onBufferChange.event,this._normal=new dd(this._core.buffers.normal,"normal"),this._alternate=new dd(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},MC=class{constructor(t){this._core=t}registerCsiHandler(t,e){return this._core.registerCsiHandler(t,s=>e(s.toArray()))}addCsiHandler(t,e){return this.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._core.registerDcsHandler(t,(s,i)=>e(s,i.toArray()))}addDcsHandler(t,e){return this.registerDcsHandler(t,e)}registerEscHandler(t,e){return this._core.registerEscHandler(t,e)}addEscHandler(t,e){return this.registerEscHandler(t,e)}registerOscHandler(t,e){return this._core.registerOscHandler(t,e)}addOscHandler(t,e){return this.registerOscHandler(t,e)}},DC=class{constructor(t){this._core=t}register(t){this._core.unicodeService.register(t)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(t){this._core.unicodeService.activeVersion=t}},PC=["cols","rows"],ss=0,LC=class extends we{constructor(t){super(),this._core=this._register(new AC(t)),this._addonManager=this._register(new IC),this._publicOptions={...this._core.options};let e=i=>this._core.options[i],s=(i,n)=>{this._checkReadonlyOptions(i),this._core.options[i]=n};for(let i in this._core.options){let n={get:e.bind(this,i),set:s.bind(this,i)};Object.defineProperty(this._publicOptions,i,n)}}_checkReadonlyOptions(t){if(PC.includes(t))throw new Error(`Option "${t}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new MC(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new DC(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new RC(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let t=this._core.coreService.decPrivateModes,e="none";switch(this._core.coreMouseService.activeProtocol){case"X10":e="x10";break;case"VT200":e="vt200";break;case"DRAG":e="drag";break;case"ANY":e="any";break}return{applicationCursorKeysMode:t.applicationCursorKeys,applicationKeypadMode:t.applicationKeypad,bracketedPasteMode:t.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:e,originMode:t.origin,reverseWraparoundMode:t.reverseWraparound,sendFocusMode:t.sendFocus,synchronizedOutputMode:t.synchronizedOutput,wraparoundMode:t.wraparound}}get options(){return this._publicOptions}set options(t){for(let e in t)this._publicOptions[e]=t[e]}blur(){this._core.blur()}focus(){this._core.focus()}input(t,e=!0){this._core.input(t,e)}resize(t,e){this._verifyIntegers(t,e),this._core.resize(t,e)}open(t){this._core.open(t)}attachCustomKeyEventHandler(t){this._core.attachCustomKeyEventHandler(t)}attachCustomWheelEventHandler(t){this._core.attachCustomWheelEventHandler(t)}registerLinkProvider(t){return this._core.registerLinkProvider(t)}registerCharacterJoiner(t){return this._checkProposedApi(),this._core.registerCharacterJoiner(t)}deregisterCharacterJoiner(t){this._checkProposedApi(),this._core.deregisterCharacterJoiner(t)}registerMarker(t=0){return this._verifyIntegers(t),this._core.registerMarker(t)}registerDecoration(t){return this._checkProposedApi(),this._verifyPositiveIntegers(t.x??0,t.width??0,t.height??0),this._core.registerDecoration(t)}hasSelection(){return this._core.hasSelection()}select(t,e,s){this._verifyIntegers(t,e,s),this._core.select(t,e,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(t,e){this._verifyIntegers(t,e),this._core.selectLines(t,e)}dispose(){super.dispose()}scrollLines(t){this._verifyIntegers(t),this._core.scrollLines(t)}scrollPages(t){this._verifyIntegers(t),this._core.scrollPages(t)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(t){this._verifyIntegers(t),this._core.scrollToLine(t)}clear(){this._core.clear()}write(t,e){this._core.write(t,e)}writeln(t,e){this._core.write(t),this._core.write(`\r
|
|
727
|
+
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===cd+1&&(this._liveRegion.textContent+=zo.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(t){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(t)||this._charsToConsume.push(t)}_refreshRows(t,e){this._liveRegionDebouncer.refresh(t,e,this._terminal.rows)}_renderRows(t,e){let s=this._terminal.buffer,i=s.lines.length.toString();for(let n=t;n<=e;n++){let o=s.lines.get(s.ydisp+n),a=[],l=o?.translateToString(!0,void 0,void 0,a)||"",c=(s.ydisp+n+1).toString(),d=this._rowElements[n];d&&(l.length===0?(d.textContent=" ",this._rowColumns.set(d,[0,1])):(d.textContent=l,this._rowColumns.set(d,a)),d.setAttribute("aria-posinset",c),d.setAttribute("aria-setsize",i),this._alignRowWidth(d))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(t,e){let s=t.target,i=this._rowElements[e===0?1:this._rowElements.length-2],n=s.getAttribute("aria-posinset"),o=e===0?"1":`${this._terminal.buffer.lines.length}`;if(n===o||t.relatedTarget!==i)return;let a,l;if(e===0?(a=s,l=this._rowElements.pop(),this._rowContainer.removeChild(l)):(a=this._rowElements.shift(),l=s,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),l.removeEventListener("focus",this._bottomBoundaryFocusListener),e===0){let c=this._createAccessibilityTreeNode();this._rowElements.unshift(c),this._rowContainer.insertAdjacentElement("afterbegin",c)}else{let c=this._createAccessibilityTreeNode();this._rowElements.push(c),this._rowContainer.appendChild(c)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(e===0?-1:1),this._rowElements[e===0?1:this._rowElements.length-2].focus(),t.preventDefault(),t.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let t=this._coreBrowserService.mainDocument.getSelection();if(!t)return;if(t.isCollapsed){this._rowContainer.contains(t.anchorNode)&&this._terminal.clearSelection();return}if(!t.anchorNode||!t.focusNode){console.error("anchorNode and/or focusNode are null");return}let e={node:t.anchorNode,offset:t.anchorOffset},s={node:t.focusNode,offset:t.focusOffset};if((e.node.compareDocumentPosition(s.node)&Node.DOCUMENT_POSITION_PRECEDING||e.node===s.node&&e.offset>s.offset)&&([e,s]=[s,e]),e.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(e={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(e.node))return;let i=this._rowElements.slice(-1)[0];if(s.node.compareDocumentPosition(i)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(s={node:i,offset:i.textContent?.length??0}),!this._rowContainer.contains(s.node))return;let n=({node:l,offset:c})=>{let d=l instanceof Text?l.parentNode:l,u=parseInt(d?.getAttribute("aria-posinset"),10)-1;if(isNaN(u))return console.warn("row is invalid. Race condition?"),null;let h=this._rowColumns.get(d);if(!h)return console.warn("columns is null. Race condition?"),null;let f=c<h.length?h[c]:h.slice(-1)[0]+1;return f>=this._terminal.cols&&(++u,f=0),{row:u,column:f}},o=n(e),a=n(s);if(!(!o||!a)){if(o.row>a.row||o.row===a.row&&o.column>=a.column)throw new Error("invalid range");this._terminal.select(o.column,o.row,(a.row-o.row)*this._terminal.cols-o.column+a.column)}}_handleResize(t){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let t=this._coreBrowserService.mainDocument.createElement("div");return t.setAttribute("role","listitem"),t.tabIndex=-1,this._refreshRowDimensions(t),t}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let t=0;t<this._terminal.rows;t++)this._refreshRowDimensions(this._rowElements[t]),this._alignRowWidth(this._rowElements[t])}}_refreshRowDimensions(t){t.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(t){t.style.transform="";let e=t.getBoundingClientRect().width,s=this._rowColumns.get(t)?.slice(-1)?.[0];if(!s)return;let i=s*this._renderService.dimensions.css.cell.width;t.style.transform=`scaleX(${i/e})`}};Vn=$e([le(1,rl),le(2,ys),le(3,Ss)],Vn);var Sa=class extends we{constructor(t,e,s,i,n){super(),this._element=t,this._mouseService=e,this._renderService=s,this._bufferService=i,this._linkProviderService=n,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new ne),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new ne),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(Me(()=>{Qs(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(ve(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(ve(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(ve(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(ve(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(t){this._lastMouseEvent=t;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);if(!e)return;this._isMouseOut=!1;let s=t.composedPath();for(let i=0;i<s.length;i++){let n=s[i];if(n.classList.contains("xterm"))break;if(n.classList.contains("xterm-hover"))return}(!this._lastBufferCell||e.x!==this._lastBufferCell.x||e.y!==this._lastBufferCell.y)&&(this._handleHover(e),this._lastBufferCell=e)}_handleHover(t){if(this._activeLine!==t.y||this._wasResized){this._clearCurrentLink(),this._askForLink(t,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,t)||(this._clearCurrentLink(),this._askForLink(t,!0))}_askForLink(t,e){(!this._activeProviderReplies||!e)&&(this._activeProviderReplies?.forEach(i=>{i?.forEach(n=>{n.link.dispose&&n.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=t.y);let s=!1;for(let[i,n]of this._linkProviderService.linkProviders.entries())e?this._activeProviderReplies?.get(i)&&(s=this._checkLinkProviderResult(i,t,s)):n.provideLinks(t.y,o=>{if(this._isMouseOut)return;let a=o?.map(l=>({link:l}));this._activeProviderReplies?.set(i,a),s=this._checkLinkProviderResult(i,t,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(t.y,this._activeProviderReplies)})}_removeIntersectingLinks(t,e){let s=new Set;for(let i=0;i<e.size;i++){let n=e.get(i);if(n)for(let o=0;o<n.length;o++){let a=n[o],l=a.link.range.start.y<t?0:a.link.range.start.x,c=a.link.range.end.y>t?this._bufferService.cols:a.link.range.end.x;for(let d=l;d<=c;d++){if(s.has(d)){n.splice(o--,1);break}s.add(d)}}}}_checkLinkProviderResult(t,e,s){if(!this._activeProviderReplies)return s;let i=this._activeProviderReplies.get(t),n=!1;for(let o=0;o<t;o++)(!this._activeProviderReplies.has(o)||this._activeProviderReplies.get(o))&&(n=!0);if(!n&&i){let o=i.find(a=>this._linkAtPosition(a.link,e));o&&(s=!0,this._handleNewLink(o))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let o=0;o<this._activeProviderReplies.size;o++){let a=this._activeProviderReplies.get(o)?.find(l=>this._linkAtPosition(l.link,e));if(a){s=!0,this._handleNewLink(a);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(t){if(!this._currentLink)return;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);e&&this._mouseDownLink&&NC(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,e)&&this._currentLink.link.activate(t,this._currentLink.link.text)}_clearCurrentLink(t,e){!this._currentLink||!this._lastMouseEvent||(!t||!e||this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=e)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,Qs(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(t){if(!this._lastMouseEvent)return;let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._linkAtPosition(t.link,e)&&(this._currentLink=t,this._currentLink.state={decorations:{underline:t.link.decorations===void 0?!0:t.link.decorations.underline,pointerCursor:t.link.decorations===void 0?!0:t.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,t.link,this._lastMouseEvent),t.link.decorations={},Object.defineProperties(t.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(t.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(s=>{if(!this._currentLink)return;let i=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=i&&this._currentLink.link.range.end.y<=n&&(this._clearCurrentLink(i,n),this._lastMouseEvent)){let o=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);o&&this._askForLink(o,!1)}})))}_linkHover(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!0),this._currentLink.state.decorations.pointerCursor&&t.classList.add("xterm-cursor-pointer")),e.hover&&e.hover(s,e.text)}_fireUnderlineEvent(t,e){let s=t.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-i-1,s.end.x,s.end.y-i-1,void 0);(e?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)}_linkLeave(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!1),this._currentLink.state.decorations.pointerCursor&&t.classList.remove("xterm-cursor-pointer")),e.leave&&e.leave(s,e.text)}_linkAtPosition(t,e){let s=t.range.start.y*this._bufferService.cols+t.range.start.x,i=t.range.end.y*this._bufferService.cols+t.range.end.x,n=e.y*this._bufferService.cols+e.x;return s<=n&&n<=i}_positionFromMouseEvent(t,e,s){let i=s.getCoords(t,e,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(t,e,s,i,n){return{x1:t,y1:e,x2:s,y2:i,cols:this._bufferService.cols,fg:n}}};Sa=$e([le(1,nl),le(2,Ss),le(3,wt),le(4,Uu)],Sa);function NC(t,e){return t.text===e.text&&t.range.start.x===e.range.start.x&&t.range.start.y===e.range.start.y&&t.range.end.x===e.range.end.x&&t.range.end.y===e.range.end.y}var AC=class extends bC{constructor(t={}){super(t),this._linkifier=this._register(new ki),this.browser=cf,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new ki),this._onCursorMove=this._register(new ne),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new ne),this.onKey=this._onKey.event,this._onRender=this._register(new ne),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new ne),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new ne),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new ne),this.onBell=this._onBell.event,this._onFocus=this._register(new ne),this._onBlur=this._register(new ne),this._onA11yCharEmitter=this._register(new ne),this._onA11yTabEmitter=this._register(new ne),this._onWillOpen=this._register(new ne),this._setup(),this._decorationService=this._instantiationService.createInstance(VC),this._instantiationService.setService(Er,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(xV),this._instantiationService.setService(Uu,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(Uo)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(ct.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(ct.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(ct.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(ct.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(Me(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(t){if(this._themeService)for(let e of t){let s,i="";switch(e.index){case 256:s="foreground",i="10";break;case 257:s="background",i="11";break;case 258:s="cursor",i="12";break;default:s="ansi",i="4;"+e.index}switch(e.type){case 0:let n=Te.toColorRGB(s==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${Q.ESC}]${i};${mC(n)}${af.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(o=>o.ansi[e.index]=Ke.toColor(...e.color));else{let o=s;this._themeService.modifyColors(a=>a[o]=Ke.toColor(...e.color))}break;case 2:this._themeService.restoreColor(e.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(t){t?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(Vn,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(Q.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(Q.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let t=this.buffer.ybase+this.buffer.y,e=this.buffer.lines.get(t);if(!e)return;let s=Math.min(this.buffer.x,this.cols-1),i=this._renderService.dimensions.css.cell.height,n=e.getWidth(s),o=this._renderService.dimensions.css.cell.width*n,a=this.buffer.y*this._renderService.dimensions.css.cell.height,l=s*this._renderService.dimensions.css.cell.width;this.textarea.style.left=l+"px",this.textarea.style.top=a+"px",this.textarea.style.width=o+"px",this.textarea.style.height=i+"px",this.textarea.style.lineHeight=i+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(ve(this.element,"copy",e=>{this.hasSelection()&&RS(e,this._selectionService)}));let t=e=>MS(e,this.textarea,this.coreService,this.optionsService);this._register(ve(this.textarea,"paste",t)),this._register(ve(this.element,"paste",t)),df?this._register(ve(this.element,"mousedown",e=>{e.button===2&&vc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(ve(this.element,"contextmenu",e=>{vc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),fl&&this._register(ve(this.element,"auxclick",e=>{e.button===1&&Mu(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(ve(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(ve(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(ve(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(ve(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(ve(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(ve(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(ve(this.textarea,"input",t=>this._inputEvent(t),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(t){if(!t)throw new Error("Terminal requires a parent element.");if(t.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=t.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),t.appendChild(this.element);let e=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),e.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(ve(this.screenElement,"mousemove",n=>this.updateCursorStyle(n))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),e.appendChild(this.screenElement);let s=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",$o.get()),ff||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>s.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(gV,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(ys,this._coreBrowserService),this._register(ve(this.textarea,"focus",n=>this._handleTextAreaFocus(n))),this._register(ve(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(da,this._document,this._helperContainer),this._instantiationService.setService(zn,this._charSizeService),this._themeService=this._instantiationService.createInstance(ma),this._instantiationService.setService(Ri,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(yn),this._instantiationService.setService(Fu,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(ua,this.rows,this.screenElement)),this._instantiationService.setService(Ss,this._renderService),this._register(this._renderService.onRenderedViewportChange(n=>this._onRender.fire(n))),this.onResize(n=>this._renderService.resize(n.cols,n.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(aa,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(ha),this._instantiationService.setService(nl,this._mouseService);let i=this._linkifier.value=this._register(this._instantiationService.createInstance(Sa,this.screenElement));this.element.appendChild(e);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(na,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(n=>{super.scrollLines(n,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(fa,this.element,this.screenElement,i)),this._instantiationService.setService(FS,this._selectionService),this._register(this._selectionService.onRequestScrollLines(n=>this.scrollLines(n.amount,n.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(n=>this._renderService.handleSelectionChanged(n.start,n.end,n.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(n=>{this.textarea.value=n,this.textarea.focus(),this.textarea.select()})),this._register(ct.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(oa,this.screenElement)),this._register(ve(this.element,"mousedown",n=>this._selectionService.handleMouseDown(n))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(Vn,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",n=>this._handleScreenReaderModeOptionChange(n))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(bn,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",n=>{!this._overviewRulerRenderer&&n&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(bn,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(ca,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let t=this,e=this.element;function s(o){let a=t._mouseService.getMouseReportCoords(o,t.screenElement);if(!a)return!1;let l,c;switch(o.overrideType||o.type){case"mousemove":c=32,o.buttons===void 0?(l=3,o.button!==void 0&&(l=o.button<3?o.button:3)):l=o.buttons&1?0:o.buttons&4?1:o.buttons&2?2:3;break;case"mouseup":c=0,l=o.button<3?o.button:3;break;case"mousedown":c=1,l=o.button<3?o.button:3;break;case"wheel":if(t._customWheelEventHandler&&t._customWheelEventHandler(o)===!1)return!1;let d=o.deltaY;if(d===0||t.coreMouseService.consumeWheelEvent(o,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return!1;c=d<0?0:1,l=4;break;default:return!1}return c===void 0||l===void 0||l>4?!1:t.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:l,action:c,ctrl:o.ctrlKey,alt:o.altKey,shift:o.shiftKey})}let i={mouseup:null,wheel:null,mousedrag:null,mousemove:null},n={mouseup:o=>(s(o),o.buttons||(this._document.removeEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.removeEventListener("mousemove",i.mousedrag)),this.cancel(o)),wheel:o=>(s(o),this.cancel(o,!0)),mousedrag:o=>{o.buttons&&s(o)},mousemove:o=>{o.buttons||s(o)}};this._register(this.coreMouseService.onProtocolChange(o=>{o?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(o)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),o&8?i.mousemove||(e.addEventListener("mousemove",n.mousemove),i.mousemove=n.mousemove):(e.removeEventListener("mousemove",i.mousemove),i.mousemove=null),o&16?i.wheel||(e.addEventListener("wheel",n.wheel,{passive:!1}),i.wheel=n.wheel):(e.removeEventListener("wheel",i.wheel),i.wheel=null),o&2?i.mouseup||(i.mouseup=n.mouseup):(this._document.removeEventListener("mouseup",i.mouseup),i.mouseup=null),o&4?i.mousedrag||(i.mousedrag=n.mousedrag):(this._document.removeEventListener("mousemove",i.mousedrag),i.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(ve(e,"mousedown",o=>{if(o.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(o)))return s(o),i.mouseup&&this._document.addEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.addEventListener("mousemove",i.mousedrag),this.cancel(o)})),this._register(ve(e,"wheel",o=>{if(!i.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(o)===!1)return!1;if(!this.buffer.hasScrollback){if(o.deltaY===0)return!1;if(t.coreMouseService.consumeWheelEvent(o,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return this.cancel(o,!0);let a=Q.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(o.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(a,!0),this.cancel(o,!0)}}},{passive:!1}))}refresh(t,e){this._renderService?.refreshRows(t,e)}updateCursorStyle(t){this._selectionService?.shouldColumnSelect(t)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(t,e){this._viewport?this._viewport.scrollLines(t):super.scrollLines(t,e),this.refresh(0,this.rows-1)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){t&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}paste(t){Ru(t,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(t){this._customKeyEventHandler=t}attachCustomWheelEventHandler(t){this._customWheelEventHandler=t}registerLinkProvider(t){return this._linkProviderService.registerLinkProvider(t)}registerCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let e=this._characterJoinerService.register(t);return this.refresh(0,this.rows-1),e}deregisterCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(t)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(t){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+t)}registerDecoration(t){return this._decorationService.registerDecoration(t)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(t,e,s){this._selectionService.setSelection(t,e,s)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(t,e){this._selectionService?.selectLines(t,e)}_keyDown(t){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;let e=this.browser.isMac&&this.options.macOptionIsMeta&&t.altKey;if(!e&&!this._compositionHelper.keydown(t))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!e&&(t.key==="Dead"||t.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let s=SC(t,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(t),s.type===3||s.type===2){let i=this.rows-1;return this.scrollLines(s.type===2?-i:i),this.cancel(t,!0)}if(s.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,t)||(s.cancel&&this.cancel(t,!0),!s.key)||t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.key.length===1&&t.key.charCodeAt(0)>=65&&t.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((s.key===Q.ETX||s.key===Q.CR)&&(this.textarea.value=""),this._onKey.fire({key:s.key,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(s.key,!0),!this.optionsService.rawOptions.screenReaderMode||t.altKey||t.ctrlKey)return this.cancel(t,!0);this._keyDownHandled=!0}_isThirdLevelShift(t,e){let s=t.isMac&&!this.options.macOptionIsMeta&&e.altKey&&!e.ctrlKey&&!e.metaKey||t.isWindows&&e.altKey&&e.ctrlKey&&!e.metaKey||t.isWindows&&e.getModifierState("AltGraph");return e.type==="keypress"?s:s&&(!e.keyCode||e.keyCode>47)}_keyUp(t){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)&&(EC(t)||this.focus(),this.updateCursorStyle(t),this._keyPressHandled=!1)}_keyPress(t){let e;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;if(this.cancel(t),t.charCode)e=t.charCode;else if(t.which===null||t.which===void 0)e=t.keyCode;else if(t.which!==0&&t.charCode!==0)e=t.which;else return!1;return!e||(t.altKey||t.ctrlKey||t.metaKey)&&!this._isThirdLevelShift(this.browser,t)?!1:(e=String.fromCharCode(e),this._onKey.fire({key:e,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(e,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(t){if(t.data&&t.inputType==="insertText"&&(!t.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let e=t.data;return this.coreService.triggerDataEvent(e,!0),this.cancel(t),!0}return!1}resize(t,e){if(t===this.cols&&e===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(t,e)}_afterResize(t,e){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let t=1;t<this.rows;t++)this.buffer.lines.push(this.buffer.getBlankLine(We));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let t=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=t,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(Q.ESC+"[I"):this.coreService.triggerDataEvent(Q.ESC+"[O")}_reportWindowsOptions(t){if(this._renderService)switch(t){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),s=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${Q.ESC}[4;${s};${e}t`);break;case 1:let i=this._renderService.dimensions.css.cell.width.toFixed(0),n=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${Q.ESC}[6;${n};${i}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function EC(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var IC=class{constructor(){this._addons=[]}dispose(){for(let t=this._addons.length-1;t>=0;t--)this._addons[t].instance.dispose()}loadAddon(t,e){let s={instance:e,dispose:e.dispose,isDisposed:!1};this._addons.push(s),e.dispose=()=>this._wrappedAddonDispose(s),e.activate(t)}_wrappedAddonDispose(t){if(t.isDisposed)return;let e=-1;for(let s=0;s<this._addons.length;s++)if(this._addons[s]===t){e=s;break}if(e===-1)throw new Error("Could not dispose an addon that has not been loaded");t.isDisposed=!0,t.dispose.apply(t.instance),this._addons.splice(e,1)}},TC=class{constructor(t){this._line=t}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(t,e){if(!(t<0||t>=this._line.length))return e?(this._line.loadCell(t,e),e):this._line.loadCell(t,new Kt)}translateToString(t,e,s){return this._line.translateToString(t,e,s)}},dd=class{constructor(t,e){this._buffer=t,this.type=e}init(t){return this._buffer=t,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(t){let e=this._buffer.lines.get(t);if(e)return new TC(e)}getNullCell(){return new Kt}},RC=class extends we{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new ne),this.onBufferChange=this._onBufferChange.event,this._normal=new dd(this._core.buffers.normal,"normal"),this._alternate=new dd(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},MC=class{constructor(t){this._core=t}registerCsiHandler(t,e){return this._core.registerCsiHandler(t,s=>e(s.toArray()))}addCsiHandler(t,e){return this.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._core.registerDcsHandler(t,(s,i)=>e(s,i.toArray()))}addDcsHandler(t,e){return this.registerDcsHandler(t,e)}registerEscHandler(t,e){return this._core.registerEscHandler(t,e)}addEscHandler(t,e){return this.registerEscHandler(t,e)}registerOscHandler(t,e){return this._core.registerOscHandler(t,e)}addOscHandler(t,e){return this.registerOscHandler(t,e)}},DC=class{constructor(t){this._core=t}register(t){this._core.unicodeService.register(t)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(t){this._core.unicodeService.activeVersion=t}},PC=["cols","rows"],ss=0,LC=class extends we{constructor(t){super(),this._core=this._register(new AC(t)),this._addonManager=this._register(new IC),this._publicOptions={...this._core.options};let e=i=>this._core.options[i],s=(i,n)=>{this._checkReadonlyOptions(i),this._core.options[i]=n};for(let i in this._core.options){let n={get:e.bind(this,i),set:s.bind(this,i)};Object.defineProperty(this._publicOptions,i,n)}}_checkReadonlyOptions(t){if(PC.includes(t))throw new Error(`Option "${t}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new MC(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new DC(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new RC(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let t=this._core.coreService.decPrivateModes,e="none";switch(this._core.coreMouseService.activeProtocol){case"X10":e="x10";break;case"VT200":e="vt200";break;case"DRAG":e="drag";break;case"ANY":e="any";break}return{applicationCursorKeysMode:t.applicationCursorKeys,applicationKeypadMode:t.applicationKeypad,bracketedPasteMode:t.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:e,originMode:t.origin,reverseWraparoundMode:t.reverseWraparound,sendFocusMode:t.sendFocus,synchronizedOutputMode:t.synchronizedOutput,wraparoundMode:t.wraparound}}get options(){return this._publicOptions}set options(t){for(let e in t)this._publicOptions[e]=t[e]}blur(){this._core.blur()}focus(){this._core.focus()}input(t,e=!0){this._core.input(t,e)}resize(t,e){this._verifyIntegers(t,e),this._core.resize(t,e)}open(t){this._core.open(t)}attachCustomKeyEventHandler(t){this._core.attachCustomKeyEventHandler(t)}attachCustomWheelEventHandler(t){this._core.attachCustomWheelEventHandler(t)}registerLinkProvider(t){return this._core.registerLinkProvider(t)}registerCharacterJoiner(t){return this._checkProposedApi(),this._core.registerCharacterJoiner(t)}deregisterCharacterJoiner(t){this._checkProposedApi(),this._core.deregisterCharacterJoiner(t)}registerMarker(t=0){return this._verifyIntegers(t),this._core.registerMarker(t)}registerDecoration(t){return this._checkProposedApi(),this._verifyPositiveIntegers(t.x??0,t.width??0,t.height??0),this._core.registerDecoration(t)}hasSelection(){return this._core.hasSelection()}select(t,e,s){this._verifyIntegers(t,e,s),this._core.select(t,e,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(t,e){this._verifyIntegers(t,e),this._core.selectLines(t,e)}dispose(){super.dispose()}scrollLines(t){this._verifyIntegers(t),this._core.scrollLines(t)}scrollPages(t){this._verifyIntegers(t),this._core.scrollPages(t)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(t){this._verifyIntegers(t),this._core.scrollToLine(t)}clear(){this._core.clear()}write(t,e){this._core.write(t,e)}writeln(t,e){this._core.write(t),this._core.write(`\r
|
|
728
728
|
`,e)}paste(t){this._core.paste(t)}refresh(t,e){this._verifyIntegers(t,e),this._core.refresh(t,e)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(t){this._addonManager.loadAddon(this,t)}static get strings(){return{get promptLabel(){return $o.get()},set promptLabel(t){$o.set(t)},get tooMuchOutput(){return zo.get()},set tooMuchOutput(t){zo.set(t)}}}_verifyIntegers(...t){for(ss of t)if(ss===1/0||isNaN(ss)||ss%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...t){for(ss of t)if(ss&&(ss===1/0||isNaN(ss)||ss%1!==0||ss<0))throw new Error("This API only accepts positive integers")}};var OC=2,BC=1,$C=class{activate(t){this._terminal=t}dispose(){}fit(){let t=this.proposeDimensions();if(!t||!this._terminal||isNaN(t.cols)||isNaN(t.rows))return;let e=this._terminal._core;(this._terminal.rows!==t.rows||this._terminal.cols!==t.cols)&&(e._renderService.clear(),this._terminal.resize(t.cols,t.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let t=this._terminal._core._renderService.dimensions;if(t.css.cell.width===0||t.css.cell.height===0)return;let e=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,s=window.getComputedStyle(this._terminal.element.parentElement),i=parseInt(s.getPropertyValue("height")),n=Math.max(0,parseInt(s.getPropertyValue("width"))),o=window.getComputedStyle(this._terminal.element),a={top:parseInt(o.getPropertyValue("padding-top")),bottom:parseInt(o.getPropertyValue("padding-bottom")),right:parseInt(o.getPropertyValue("padding-right")),left:parseInt(o.getPropertyValue("padding-left"))},l=a.top+a.bottom,c=a.right+a.left,d=i-l,u=n-c-e;return{cols:Math.max(OC,Math.floor(u/t.css.cell.width)),rows:Math.max(BC,Math.floor(d/t.css.cell.height))}}};function zC({onReady:t,onSelectionChange:e,initialData:s,className:i}){const n=j.useRef(null),o=j.useRef(null),a=j.useRef(e);return a.current=e,j.useEffect(()=>{const l=n.current;if(!l)return;const c=getComputedStyle(document.documentElement),d=p=>c.getPropertyValue(p).trim()||void 0,u=new LC({allowTransparency:!1,fontFamily:d("--font-mono")||"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontSize:12.5,lineHeight:1.5,scrollback:5e3,cursorBlink:!1,disableStdin:!0,theme:{background:d("--sidebar")||d("--card")||d("--background")||"#1e1e1e",cursor:"transparent",foreground:d("--foreground")||"#d4d4d4",selectionBackground:d("--accent"),selectionForeground:d("--accent-foreground"),black:d("--muted"),red:d("--destructive"),green:d("--success"),yellow:d("--warning"),blue:d("--chart-1"),magenta:d("--chart-3"),cyan:d("--chart-5"),white:d("--foreground"),brightBlack:d("--muted-foreground"),brightRed:d("--destructive"),brightGreen:d("--success"),brightYellow:d("--warning"),brightBlue:d("--chart-1"),brightMagenta:d("--chart-3"),brightCyan:d("--chart-5"),brightWhite:d("--foreground")}}),h=new $C;u.loadAddon(h),u.open(l),h.fit(),s&&u.write(s),o.current=u,t?.(u);const f=u.onSelectionChange(()=>{const p=!!u.getSelection();a.current?.(p,()=>u.getSelection())}),m=new ResizeObserver(()=>{h.fit()});return m.observe(l),()=>{f.dispose(),m.disconnect(),o.current=null,u.dispose()}},[]),r.jsx("div",{ref:n,className:Y("overflow-hidden bg-sidebar px-4 py-3 [&_.xterm]:h-full [&_.xterm-screen]:min-h-full [&_.xterm-viewport]:overscroll-contain",i)})}function FC(){const t=B.c(2),s=ml()?.entity;let i;return t[0]!==s?(i=bs(s),t[0]=s,t[1]=i):i=t[1],i}const UC={npm:{install:"npm install",run:t=>`npm run ${t}`,runtime:"node"},pnpm:{install:"pnpm install",run:t=>`pnpm run ${t}`,runtime:"node"},yarn:{install:"yarn install",run:t=>`yarn run ${t}`,runtime:"node"},bun:{install:"bun install",run:t=>`bun run ${t}`,runtime:"bun"},deno:{install:"deno install",run:t=>`deno task ${t}`,runtime:"deno"}},HC=["dev","start"];function hd(t){return t?.previewUrl?t.previewUrl.replace(/\/$/,""):null}function WC({daemonOpen:t=!1}){const{org:e}=xe(),s=ml(),i=bt(),{data:n}=dt.useSession(),{currentBranch:o,setCurrentTaskBranch:a}=Lt(),l=n?.user?.id,c=s?.entity?.metadata,d=l&&o?c?.vmMap?.[l]?.[o]:void 0,u=d&&o?{previewUrl:d.previewUrl,vmId:d.vmId,branch:o,runnerKind:d.runnerKind}:null,[h,f]=j.useState(null),[m,p]=j.useState(""),[g,_]=j.useState(""),[v,x]=j.useState(!1),[b,y]=j.useState(new Set),V=j.useRef(!1),C=j.useRef(Date.now()),[S,w]=j.useState("setup"),[k,T]=j.useState([]),M=j.useRef(new Map),{sendMessage:I}=Cn(),{setChatOpen:E}=xr(),[N,A]=j.useState(!1),D=j.useRef(null),L=ee=>{w(ee),A(!1),D.current=null},R=(ee,se,Ve)=>{ee===S&&(A(se),D.current=se?Ve:null)},P=()=>{const ee=D.current?.();if(!ee)return;E(!0),I({parts:[{type:"text",text:`<server-logs>
|
|
729
729
|
${ee}
|
|
730
|
-
</server-logs>`}]}),M.current.get(S)?.clearSelection()},O=Ae({connectionId:yt,orgId:e.id}),z=(ee,se)=>{const Ve=M.current.get(ee);Ve&&Ve.write(se)},$=Ti();fS(z);const q=oy(s?.entity?.id,o??void 0),F=$.suspended?"suspended":u?"running":q?"creating":"idle",W=h??F;j.useEffect(()=>{h==="creating"&&F==="running"&&f(null),h==="stopping"&&F==="idle"&&f(null)},[F,h]);const H=el(O),{mutate:U,isPending:X}=H,K=s?.entity?.id,G=$.notFound?d?.vmId??null:null,ie=j.useRef(null);j.useEffect(()=>{if(!G||!K||X||ie.current===G)return;ie.current=G;const ee={virtualMcpId:K};o&&(ee.branch=o),U(ee,{onError:se=>{console.error("[env] reprovision VM_START failed",se)}})},[G,K,o,X,U]);const te=j.useRef(!1);j.useEffect(()=>{if($.scripts.length>0&&!te.current){te.current=!0;for(const ee of HC)if($.scripts.includes(ee)){T([ee]),L(ee);break}}},[$.scripts]);const J=async(ee,se)=>{const Ve=await O.callTool({name:ee,arguments:se}),ze=Ve.content;if(ze?.[0]?.text?.startsWith("Error:"))throw new Error(ze[0].text);return Ve.structuredContent??Ve},ae=async ee=>{if(!(v||!u)){x(!0);try{const se=hd(d);if(!se)throw new Error("No VM");const Ve=await fetch(`${se}/_decopilot_vm/exec/${ee}`,{method:"POST"});if(!Ve.ok)throw new Error(`Exec failed: ${Ve.statusText}`);y(ze=>{const Fe=new Set(ze);return Fe.delete(ee),Fe})}finally{x(!1)}}},Z=async ee=>{if(!(v||!u)){x(!0);try{const se=hd(d);if(!se)throw new Error("No VM");const Ve=await fetch(`${se}/_decopilot_vm/kill/${ee}`,{method:"POST"});if(!Ve.ok)throw new Error(`Kill failed: ${Ve.statusText}`);y(ze=>new Set(ze).add(ee))}finally{x(!1)}}},de=ee=>{k.includes(ee)||T(se=>[...se,ee]),L(ee),ae(ee)},fe=async()=>{if(!V.current){V.current=!0,C.current=Date.now(),f("creating"),p("Connecting..."),_(""),te.current=!1,T([]),L("setup");try{if(!s?.entity)throw new Error("No virtual MCP context");const ee={virtualMcpId:s.entity.id};o&&(ee.branch=o);const se=await J("VM_START",ee);if(!se.vmId||!se.branch)throw new Error("Invalid VM response — missing fields");o||a(se.branch),p(""),Xr(i)}catch(ee){f("error"),_(ee instanceof Error?ee.message:"Failed to start VM")}finally{V.current=!1}}},ye=async()=>{const ee=u?.branch??o;f("stopping");const se=s?.entity?.id;if(se&&ee)try{await O.callTool({name:"VM_DELETE",arguments:{virtualMcpId:se,branch:ee}})}catch{}Xr(i)},ge=FC();if(!ge)return null;const ce=s?.entity?.metadata?.runtime,ue="__none__",be=Object.keys(UC),pe=async(ee,se)=>{if(s?.entity)try{await O.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:s.entity.id,data:{metadata:{runtime:{...ce,[ee]:se}}}}}),Xr(i)}catch{he.error("Failed to update setting")}};if(W==="idle"||W==="stopping"){const ee=W==="stopping";return r.jsx("div",{className:"flex flex-col items-center justify-center w-full h-full p-6",children:r.jsxs("div",{className:"flex flex-col gap-4 w-full max-w-xs",children:[r.jsxs("a",{href:`https://github.com/${ge.owner}/${ge.name}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 p-4 rounded-lg border border-border hover:bg-accent/50 transition-colors",children:[r.jsx(ph,{size:24}),r.jsxs("div",{className:"flex flex-col gap-0.5 min-w-0 flex-1",children:[r.jsxs("span",{className:"text-sm font-medium truncate",children:[ge.owner,"/",ge.name]}),r.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["github.com/",ge.owner,"/",ge.name]})]}),r.jsx(oi,{size:14,className:"text-muted-foreground shrink-0"})]}),r.jsxs("div",{className:"flex flex-wrap items-end justify-between gap-2 w-full",children:[r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsx(ir,{htmlFor:"env-runtime",className:"text-xs font-medium",children:"Runtime"}),r.jsxs(Rs,{value:ce?.selected??ue,onValueChange:se=>pe("selected",se===ue?null:se),children:[r.jsx(Ms,{id:"env-runtime",className:"w-28",children:r.jsx(Ds,{placeholder:"None"})}),r.jsxs(Ts,{children:[r.jsx(Nt,{value:ue,children:"None"}),be.map(se=>r.jsx(Nt,{value:se,children:se},se))]})]})]}),r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsx(ir,{htmlFor:"env-port",className:"text-xs font-medium",children:"Port"}),r.jsx(at,{id:"env-port",placeholder:"3000",className:"w-20 h-8",defaultValue:ce?.port??"",onBlur:se=>pe("port",se.target.value||null)})]}),r.jsxs(oe,{onClick:fe,disabled:ee,children:[ee?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(tn,{size:14}),ee?"Stopping...":"Run"]})]})]})})}if(W==="creating")return r.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full gap-4",children:[r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:m}),r.jsx(Em,{since:C.current})]});if(W==="error")return r.jsx(Eu,{errorMsg:g,onRetry:fe});if(W==="suspended")return r.jsx(Au,{onResume:fe});const Ce=["setup",...k,...t?["daemon"]:[]],Ie=$.scripts.filter(ee=>!k.includes(ee));return r.jsx("div",{className:"flex flex-col w-full h-full",children:r.jsxs("div",{className:"flex flex-col h-full",children:[r.jsxs("div",{className:"flex h-12 items-center border-b border-border px-2 shrink-0",children:[Ce.map(ee=>r.jsx("button",{type:"button",onClick:()=>L(ee),className:Y("flex items-center h-full px-3 text-sm whitespace-nowrap border-b-2 mb-[-1px] capitalize transition-all hover:text-foreground",S===ee?"text-foreground border-primary":"text-muted-foreground border-transparent"),children:ee},ee)),Ie.length>0&&r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",className:"flex items-center h-full px-2 text-muted-foreground hover:text-foreground transition-colors",children:r.jsx(Dt,{size:14})})}),r.jsx(hs,{align:"start",children:Ie.map(ee=>r.jsx(Qe,{onClick:()=>de(ee),children:ee},ee))})]}),r.jsx("div",{className:"flex-1 flex justify-center",children:u?.vmId&&r.jsxs("div",{className:"flex items-center",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",className:"shrink-0 rounded-l bg-muted px-1.5 py-0.5 text-[10px] font-mono text-muted-foreground cursor-pointer hover:bg-accent hover:text-foreground transition-colors border-r border-border/50",onClick:()=>navigator.clipboard.writeText(u?.vmId??""),children:u.vmId})}),r.jsx(Ge,{side:"bottom",children:"Copy VM ID"})]}),r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",className:"shrink-0 self-stretch rounded-r bg-muted px-0.5 text-[10px] text-muted-foreground cursor-pointer hover:bg-accent hover:text-foreground transition-colors",children:r.jsx(cr,{size:10})})}),r.jsx(hs,{align:"center",children:r.jsxs(Qe,{onClick:ye,children:[r.jsx(wl,{size:12}),"Stop Server"]})})]})]})}),r.jsxs("div",{className:"flex items-center gap-1",children:[N&&r.jsxs("button",{type:"button",onClick:P,className:"flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors",children:[r.jsx(lp,{size:12}),"Add to chat"]}),S!=="setup"&&S!=="daemon"&&k.includes(S)&&(()=>{const ee=$.activeProcesses.includes(S)&&!b.has(S);return r.jsxs("div",{className:"flex items-center",children:[r.jsxs("button",{type:"button",disabled:v,onClick:()=>ae(S),className:Y("flex items-center gap-1 border border-border px-2 py-1 text-xs font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors disabled:opacity-50",ee?"rounded-l-md border-r-0":"rounded-md"),children:[v?r.jsx(Ne,{size:12,className:"animate-spin"}):r.jsx(tn,{size:12}),v?"Running...":ee?"Restart":"Run"]}),ee&&r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",disabled:v,className:"flex items-center self-stretch rounded-r-md border border-border px-1 text-xs text-muted-foreground hover:text-foreground hover:bg-muted transition-colors disabled:opacity-50",children:r.jsx(cr,{size:12})})}),r.jsx(hs,{align:"end",children:r.jsxs(Qe,{onClick:()=>Z(S),children:[r.jsx(wl,{size:12}),"Stop Process"]})})]})]})})()]})]}),r.jsx("div",{className:"flex-1 overflow-hidden",children:Ce.map(ee=>r.jsx("div",{className:Y("h-full",S===ee?"block":"hidden"),children:$.hasData(ee)||ee==="setup"||ee==="daemon"?r.jsx(zC,{onReady:se=>{M.current.set(ee,se)},onSelectionChange:(se,Ve)=>R(ee,se,Ve),initialData:$.getBuffer(ee),className:"h-full"}):r.jsx(Vi,{className:"h-full",image:null,title:`Script "${ee}" not running`,description:`Click Run to start "${ee}".`,actions:r.jsxs(oe,{variant:"outline",size:"sm",disabled:v,onClick:()=>ae(ee),children:[v?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(tn,{size:14}),"Run"]})})},ee))})]})})}function KC(t){const e=B.c(2),{virtualMcpId:s}=t,i=$t(s);if(!(i?bs(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[r.jsx(Bs,{size:24,className:"text-muted-foreground/60"}),r.jsx("div",{children:"No repository connected."}),r.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Env."})]}),e[0]=a):a=e[0],a}let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(WC,{}),e[1]=o):o=e[1],o}function nr(t){const e=t.trim().split(/\s+/);return e.length!==5?!1:e.every(s=>/^[\d*/,-]+$/.test(s))}function qC(t){if(!t)return"Unknown schedule";const e=t.trim();if(e==="* * * * *")return"Every minute";if(e==="0 * * * *")return"Every hour";if(e==="0 0 * * *")return"Every day";if(e==="0 0 * * 1")return"Every week";const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return`Every ${s[1]} minutes`;const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return`Every ${i[1]} hours`;const n=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(n){const l=parseInt(n[1]??"1");return l%7===0?`Every ${l/7} weeks`:`Every ${l} days`}const o=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+\*$/);if(o){const l=(o[2]??"0").padStart(2,"0"),c=(o[1]??"0").padStart(2,"0");return`Every day at ${l}:${c} UTC`}const a=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+(\d)$/);if(a){const c=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][parseInt(a[3]??"0")]??"day",d=(a[2]??"0").padStart(2,"0"),u=(a[1]??"0").padStart(2,"0");return`Every ${c} at ${d}:${u} UTC`}return t}function GC(t,e){const s=Math.max(1,t);switch(e){case"minutes":return s===1?"* * * * *":`*/${s} * * * *`;case"hours":return s===1?"0 * * * *":`0 */${s} * * *`;case"days":return s===1?"0 0 * * *":`0 0 */${s} * *`;case"weeks":return s===1?"0 0 * * 1":`0 0 */${s*7} * *`}}function YC(t){const e=t.trim();if(e==="* * * * *")return{count:1,unit:"minutes"};if(e==="0 * * * *")return{count:1,unit:"hours"};if(e==="0 0 * * *")return{count:1,unit:"days"};if(e==="0 0 * * 1")return{count:1,unit:"weeks"};const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return{count:parseInt(s[1]),unit:"minutes"};const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return{count:parseInt(i[1]),unit:"hours"};const n=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(n){const o=parseInt(n[1]);return o%7===0?{count:o/7,unit:"weeks"}:{count:o,unit:"days"}}return null}function XC(t,e){return e===1?{minutes:"minute",hours:"hour",days:"day",weeks:"week"}[t]??t:t}const JC=[{label:"Minute",cron:"* * * * *"},{label:"Hour",cron:"0 * * * *"},{label:"Day",cron:"0 0 * * *"},{label:"Week",cron:"0 0 * * 1"}];function QC(t){const e=B.c(33),{automationId:s,open:i,onOpenChange:n,onCustomSelect:o,onEventSelect:a}=t,{triggerAdd:l}=jr(),[c,d]=j.useState(!1),u=i??c;let h;e[0]!==n?(h=M=>{n?n(M):d(M)},e[0]=n,e[1]=h):h=e[1];const f=h;let m;e[2]!==l||e[3]!==s||e[4]!==f?(m=async M=>{try{await l.mutateAsync({automation_id:s,type:"cron",cron_expression:M}),he.success("Starter added"),f(!1)}catch(I){const E=I,N=E instanceof Error?E.message:"Failed to add starter";he.error(N)}},e[2]=l,e[3]=s,e[4]=f,e[5]=m):m=e[5];const p=m;let g;e[6]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{variant:"outline",size:"sm",children:[r.jsx(Dt,{size:14}),"Add Starter"]})}),e[6]=g):g=e[6];let _;e[7]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsxs(Pd,{className:"gap-2.5",children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),"Every..."]}),e[7]=_):_=e[7];let v;e[8]!==l||e[9]!==p?(v=JC.map(M=>r.jsxs(Qe,{className:"gap-2.5",onSelect:()=>p(M.cron),disabled:l.isPending,children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),"Every ",M.label]},M.cron)),e[8]=l,e[9]=p,e[10]=v):v=e[10];let x;e[11]!==v?(x=r.jsxs(Qr,{children:[_,r.jsx(Zr,{className:"w-[160px]",children:v})]}),e[11]=v,e[12]=x):x=e[12];let b;e[13]!==f||e[14]!==o?(b=()=>{f(!1),o?.()},e[13]=f,e[14]=o,e[15]=b):b=e[15];let y;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),e[16]=y):y=e[16];let V;e[17]!==b?(V=r.jsxs(Qe,{className:"gap-2.5",onSelect:b,children:[y,"Custom (cron)"]}),e[17]=b,e[18]=V):V=e[18];let C;e[19]!==f||e[20]!==a?(C=()=>{f(!1),a?.()},e[19]=f,e[20]=a,e[21]=C):C=e[21];let S;e[22]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),e[22]=S):S=e[22];let w;e[23]!==C?(w=r.jsxs(Qe,{className:"gap-2.5",onSelect:C,children:[S,"Event"]}),e[23]=C,e[24]=w):w=e[24];let k;e[25]!==w||e[26]!==x||e[27]!==V?(k=r.jsxs(hs,{align:"end",className:"w-[200px]",children:[x,V,w]}),e[25]=w,e[26]=x,e[27]=V,e[28]=k):k=e[28];let T;return e[29]!==f||e[30]!==u||e[31]!==k?(T=r.jsxs(cs,{open:u,onOpenChange:f,children:[g,k]}),e[29]=f,e[30]=u,e[31]=k,e[32]=T):T=e[32],T}function ZC(t){const e=B.c(60),{trigger:s,automationId:i,connectionName:n}=t,{triggerAdd:o,triggerRemove:a}=jr(),[l,c]=j.useState(!1);let d;e[0]!==s.cron_expression?(d=s.cron_expression?YC(s.cron_expression):null,e[0]=s.cron_expression,e[1]=d):d=e[1];const u=d,[h,f]=j.useState(u?.count??1),[m,p]=j.useState(!1),[g,_]=j.useState(s.cron_expression??""),v=a.isPending||o.isPending,x=s.type==="cron";let b;e[2]!==i||e[3]!==a||e[4]!==s.id?(b=async()=>{try{await a.mutateAsync({trigger_id:s.id,automation_id:i}),he.success("Starter removed")}catch{he.error("Failed to remove starter")}c(!1)},e[2]=i,e[3]=a,e[4]=s.id,e[5]=b):b=e[5];const y=b;let V;e[6]!==o||e[7]!==i||e[8]!==g||e[9]!==a||e[10]!==s.cron_expression||e[11]!==s.id?(V=async()=>{const z=g.trim();if(!z||!nr(z)||z===s.cron_expression){p(!1),_(s.cron_expression??"");return}try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:z}),await a.mutateAsync({trigger_id:s.id,automation_id:i}),p(!1)}catch{he.error("Failed to update starter"),_(s.cron_expression??""),p(!1)}},e[6]=o,e[7]=i,e[8]=g,e[9]=a,e[10]=s.cron_expression,e[11]=s.id,e[12]=V):V=e[12];const C=V;let S;e[13]!==o||e[14]!==i||e[15]!==u||e[16]!==a||e[17]!==s.cron_expression||e[18]!==s.id?(S=async z=>{if(!u)return;const $=Math.max(1,z),q=GC($,u.unit);if(q!==s.cron_expression)try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:q}),await a.mutateAsync({trigger_id:s.id,automation_id:i})}catch{he.error("Failed to update starter"),f(u.count)}},e[13]=o,e[14]=i,e[15]=u,e[16]=a,e[17]=s.cron_expression,e[18]=s.id,e[19]=S):S=e[19];const w=S;let k;e[20]!==x?(k=x?r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}):r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),e[20]=x,e[21]=k):k=e[21];let T;e[22]!==n||e[23]!==h||e[24]!==g||e[25]!==w||e[26]!==C||e[27]!==u||e[28]!==x||e[29]!==m||e[30]!==v||e[31]!==s.cron_expression||e[32]!==s.event_type||e[33]!==s.params?(T=u&&x?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"text-sm text-muted-foreground",children:"Every"}),r.jsx("input",{type:"number",min:1,value:h,onChange:z=>f(parseInt(z.target.value)||1),onBlur:()=>w(h),onKeyDown:z=>{z.key==="Enter"&&z.target.blur(),z.key==="Escape"&&f(u.count)},disabled:v,className:"w-12 text-center text-sm h-7 border border-border rounded-md bg-background px-1 focus:outline-none focus:ring-1 focus:ring-ring"}),r.jsx("span",{className:"text-sm",children:XC(u.unit,h)})]}):x&&m?r.jsxs(r.Fragment,{children:[r.jsx("input",{type:"text",value:g,onChange:z=>_(z.target.value),onBlur:C,onKeyDown:z=>{z.key==="Enter"&&z.target.blur(),z.key==="Escape"&&(p(!1),_(s.cron_expression??""))},className:"flex-1 text-sm font-mono bg-transparent outline-none",autoFocus:!0}),g&&!nr(g)&&r.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"})]}):r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[r.jsx("span",{className:"text-sm font-mono text-xs text-muted-foreground truncate",children:x?qC(s.cron_expression??""):`${s.event_type}${n?` · ${n}`:""}`}),!x&&s.params&&Object.keys(s.params).length>0&&r.jsx("span",{className:"text-xs text-muted-foreground/60 truncate",children:Object.entries(s.params).map(e3).join(", ")})]}),e[22]=n,e[23]=h,e[24]=g,e[25]=w,e[26]=C,e[27]=u,e[28]=x,e[29]=m,e[30]=v,e[31]=s.cron_expression,e[32]=s.event_type,e[33]=s.params,e[34]=T):T=e[34];let M;e[35]!==v?(M=v&&r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),e[35]=v,e[36]=M):M=e[36];let I;e[37]!==u||e[38]!==x||e[39]!==m||e[40]!==s.cron_expression?(I=x&&!u&&!m&&r.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{_(s.cron_expression??""),p(!0)},children:r.jsx(cp,{size:13,className:"text-muted-foreground"})}),e[37]=u,e[38]=x,e[39]=m,e[40]=s.cron_expression,e[41]=I):I=e[41];let E;e[42]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>c(!0),children:r.jsx(Os,{size:13,className:"text-muted-foreground"})}),e[42]=E):E=e[42];let N;e[43]!==M||e[44]!==I?(N=r.jsxs("div",{className:"ml-auto flex items-center gap-1",children:[M,I,E]}),e[43]=M,e[44]=I,e[45]=N):N=e[45];let A;e[46]!==N||e[47]!==k||e[48]!==T?(A=r.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[k,T,N]}),e[46]=N,e[47]=k,e[48]=T,e[49]=A):A=e[49];let D;e[50]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Remove Starter"}),r.jsx(Wa,{children:"Are you sure you want to remove this starter?"})]}),e[50]=D):D=e[50];let L;e[51]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(za,{children:"Cancel"}),e[51]=L):L=e[51];let R;e[52]!==y?(R=r.jsxs(Fa,{children:[D,r.jsxs(Ka,{children:[L,r.jsx(wh,{onClick:y,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),e[52]=y,e[53]=R):R=e[53];let P;e[54]!==l||e[55]!==R?(P=r.jsx(qa,{open:l,onOpenChange:c,children:R}),e[54]=l,e[55]=R,e[56]=P):P=e[56];let O;return e[57]!==A||e[58]!==P?(O=r.jsxs(r.Fragment,{children:[A,P]}),e[57]=A,e[58]=P,e[59]=O):O=e[59],O}function e3(t){const[e,s]=t;return`${e}: ${s}`}function t3(t){const e=B.c(55),{automationId:s,onDone:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={binding:"TRIGGER"},e[0]=n):n=e[0];const o=yr(n),[a,l]=j.useState(),[c,d]=j.useState();let u;e[1]===Symbol.for("react.memo_cache_sentinel")?(u={},e[1]=u):u=e[1];const[h,f]=j.useState(u),{triggerAdd:m}=jr(),{data:p,isLoading:g}=Ag(a);let _,v,x,b,y,V;if(e[2]!==m||e[3]!==s||e[4]!==a||e[5]!==c||e[6]!==g||e[7]!==i||e[8]!==h||e[9]!==o||e[10]!==p){const w=p?.find(R=>R.type===c);let k;e[17]!==m||e[18]!==s||e[19]!==a||e[20]!==c||e[21]!==i||e[22]!==h?(k=async()=>{if(!(!a||!c))try{await m.mutateAsync({automation_id:s,type:"event",event_type:c,connection_id:a,params:h}),re("automation_trigger_added",{automation_id:s,trigger_type:"event",connection_id:a,event_type:c}),he.success("Event trigger added"),i()}catch{he.error("Failed to add event trigger")}},e[17]=m,e[18]=s,e[19]=a,e[20]=c,e[21]=i,e[22]=h,e[23]=k):k=e[23],_=k,v="flex flex-col gap-3 px-3 py-3 rounded-lg border border-border bg-background";let T,M;e[24]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),T=r.jsx("span",{className:"text-sm font-medium",children:"Event trigger"}),e[24]=T,e[25]=M):(T=e[24],M=e[25]);let I;e[26]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(Os,{size:13}),e[26]=I):I=e[26],e[27]!==i?(x=r.jsxs("div",{className:"flex items-center gap-2",children:[M,T,r.jsx("button",{type:"button",className:"ml-auto shrink-0 p-0.5 rounded text-muted-foreground hover:text-foreground",onClick:i,children:I})]}),e[27]=i,e[28]=x):x=e[28];const E=a??"";let N;e[29]===Symbol.for("react.memo_cache_sentinel")?(N=R=>{l(R),d(void 0),f({})},e[29]=N):N=e[29];let A;e[30]===Symbol.for("react.memo_cache_sentinel")?(A=r.jsx(Ms,{className:"w-full",children:r.jsx(Ds,{placeholder:"Select connection..."})}),e[30]=A):A=e[30];let D;e[31]!==o?(D=o.length===0?r.jsx("div",{className:"px-2 py-3 text-center text-xs text-muted-foreground",children:"No connections with trigger support"}):o.map(r3),e[31]=o,e[32]=D):D=e[32];let L;e[33]!==D?(L=r.jsx(Ts,{children:D}),e[33]=D,e[34]=L):L=e[34],e[35]!==E||e[36]!==L?(b=r.jsxs(Rs,{value:E,onValueChange:N,children:[A,L]}),e[35]=E,e[36]=L,e[37]=b):b=e[37],e[38]!==a||e[39]!==c||e[40]!==g||e[41]!==p?(y=a&&r.jsxs(Rs,{value:c??"",onValueChange:R=>{d(R),f({})},children:[r.jsx(Ms,{className:"w-full",children:g?r.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[r.jsx(Ne,{size:13,className:"animate-spin"}),"Loading events..."]}):r.jsx(Ds,{placeholder:"Select event type...",children:c??"Select event type..."})}),r.jsx(Ts,{children:p?.map(i3)})]}),e[38]=a,e[39]=c,e[40]=g,e[41]=p,e[42]=y):y=e[42],V=w?.paramsSchema&&Object.keys(w.paramsSchema).length>0&&r.jsx("div",{className:"flex flex-col gap-2",children:Object.entries(w.paramsSchema).map(R=>{const[P,O]=R;return r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsxs("label",{className:"text-xs text-muted-foreground",children:[P,O.description&&r.jsxs("span",{className:"text-muted-foreground/60",children:[" ","— ",O.description]})]}),O.enum?r.jsxs(Rs,{value:h[P]??"",onValueChange:z=>f($=>({...$,[P]:z})),children:[r.jsx(Ms,{className:"w-full",children:r.jsx(Ds,{placeholder:`Select ${P}...`})}),r.jsx(Ts,{children:O.enum.map(s3)})]}):r.jsx("input",{type:"text",value:h[P]??"",onChange:z=>f($=>({...$,[P]:z.target.value})),placeholder:O.description??P,className:"text-sm border border-border rounded-md bg-background px-2 py-1.5 focus:outline-none focus:ring-1 focus:ring-ring"})]},P)})}),e[2]=m,e[3]=s,e[4]=a,e[5]=c,e[6]=g,e[7]=i,e[8]=h,e[9]=o,e[10]=p,e[11]=_,e[12]=v,e[13]=x,e[14]=b,e[15]=y,e[16]=V}else _=e[11],v=e[12],x=e[13],b=e[14],y=e[15],V=e[16];let C;e[43]!==m||e[44]!==a||e[45]!==c||e[46]!==_?(C=a&&c&&r.jsx(oe,{size:"sm",onClick:_,disabled:m.isPending,children:m.isPending?r.jsx(Ne,{size:13,className:"animate-spin"}):"Add trigger"}),e[43]=m,e[44]=a,e[45]=c,e[46]=_,e[47]=C):C=e[47];let S;return e[48]!==v||e[49]!==x||e[50]!==b||e[51]!==y||e[52]!==V||e[53]!==C?(S=r.jsxs("div",{className:v,children:[x,b,y,V,C]}),e[48]=v,e[49]=x,e[50]=b,e[51]=y,e[52]=V,e[53]=C,e[54]=S):S=e[54],S}function s3(t){return r.jsx(Nt,{value:t,children:t},t)}function i3(t){return r.jsx(Nt,{value:t.type,children:r.jsxs("div",{className:"flex flex-col",children:[r.jsx("span",{children:t.type}),r.jsx("span",{className:"text-xs text-muted-foreground",children:t.description})]})},t.type)}function r3(t){return r.jsx(Nt,{value:t.id,children:t.title},t.id)}function n3({automationId:t,automation:e,virtualMcpId:s,onBack:i,onDelete:n}){const o=e.agent?.id??s,{org:a}=xe(),{update:l,triggerAdd:c}=jr(),d=yr(),u=new Map(d.map(ce=>[ce.id,ce.title])),{createTaskWithMessage:h}=Lt(),{setModel:f,credentialId:m,selectedModel:p,setChatMode:g}=$s(),[_,v]=ei(),x=e.messages?.[0]?.metadata?.tiptapDoc??void 0,[b,y]=j.useState(x),[V,C]=j.useState(!1),[S,w]=j.useState(!1),[k,T]=j.useState(""),[M,I]=j.useState(!1),E=j.useRef(!1),N=j.useRef(null),A=j.useRef(!1),D=j.useRef(x),L=()=>{const ue=gl(b).filter(be=>be.type==="text").map(be=>be.text).join(`
|
|
730
|
+
</server-logs>`}]}),M.current.get(S)?.clearSelection()},O=Ae({connectionId:yt,orgId:e.id}),z=(ee,se)=>{const Ve=M.current.get(ee);Ve&&Ve.write(se)},$=Ti();fS(z);const q=oy(s?.entity?.id,o??void 0),F=$.suspended?"suspended":u?"running":q?"creating":"idle",W=h??F;j.useEffect(()=>{h==="creating"&&F==="running"&&f(null),h==="stopping"&&F==="idle"&&f(null)},[F,h]);const H=el(O),{mutate:U,isPending:X}=H,K=s?.entity?.id,G=$.notFound?d?.vmId??null:null,ie=j.useRef(null);j.useEffect(()=>{if(!G||!K||X||ie.current===G)return;ie.current=G;const ee={virtualMcpId:K};o&&(ee.branch=o),U(ee,{onError:se=>{console.error("[env] reprovision VM_START failed",se)}})},[G,K,o,X,U]);const te=j.useRef(!1);j.useEffect(()=>{if($.scripts.length>0&&!te.current){te.current=!0;for(const ee of HC)if($.scripts.includes(ee)){T([ee]),L(ee);break}}},[$.scripts]);const J=async(ee,se)=>{const Ve=await O.callTool({name:ee,arguments:se}),ze=Ve.content;if(ze?.[0]?.text?.startsWith("Error:"))throw new Error(ze[0].text);return Ve.structuredContent??Ve},ae=async ee=>{if(!(v||!u)){x(!0);try{const se=hd(d);if(!se)throw new Error("No VM");const Ve=await fetch(`${se}/_decopilot_vm/exec/${ee}`,{method:"POST"});if(!Ve.ok)throw new Error(`Exec failed: ${Ve.statusText}`);y(ze=>{const Fe=new Set(ze);return Fe.delete(ee),Fe})}finally{x(!1)}}},Z=async ee=>{if(!(v||!u)){x(!0);try{const se=hd(d);if(!se)throw new Error("No VM");const Ve=await fetch(`${se}/_decopilot_vm/kill/${ee}`,{method:"POST"});if(!Ve.ok)throw new Error(`Kill failed: ${Ve.statusText}`);y(ze=>new Set(ze).add(ee))}finally{x(!1)}}},de=ee=>{k.includes(ee)||T(se=>[...se,ee]),L(ee),ae(ee)},fe=async()=>{if(!V.current){V.current=!0,C.current=Date.now(),f("creating"),p("Connecting..."),_(""),te.current=!1,T([]),L("setup");try{if(!s?.entity)throw new Error("No virtual MCP context");const ee={virtualMcpId:s.entity.id};o&&(ee.branch=o);const se=await J("VM_START",ee);if(!se.vmId||!se.branch)throw new Error("Invalid VM response — missing fields");o||a(se.branch),p(""),Xr(i)}catch(ee){f("error"),_(ee instanceof Error?ee.message:"Failed to start VM")}finally{V.current=!1}}},ye=async()=>{const ee=u?.branch??o;f("stopping");const se=s?.entity?.id;if(se&&ee)try{await O.callTool({name:"VM_DELETE",arguments:{virtualMcpId:se,branch:ee}})}catch{}Xr(i)},ge=FC();if(!ge)return null;const ce=s?.entity?.metadata?.runtime,ue="__none__",be=Object.keys(UC),pe=async(ee,se)=>{if(s?.entity)try{await O.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:s.entity.id,data:{metadata:{runtime:{...ce,[ee]:se}}}}}),Xr(i)}catch{he.error("Failed to update setting")}};if(W==="idle"||W==="stopping"){const ee=W==="stopping";return r.jsx("div",{className:"flex flex-col items-center justify-center w-full h-full p-6",children:r.jsxs("div",{className:"flex flex-col gap-4 w-full max-w-xs",children:[r.jsxs("a",{href:`https://github.com/${ge.owner}/${ge.name}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 p-4 rounded-lg border border-border hover:bg-accent/50 transition-colors",children:[r.jsx(ph,{size:24}),r.jsxs("div",{className:"flex flex-col gap-0.5 min-w-0 flex-1",children:[r.jsxs("span",{className:"text-sm font-medium truncate",children:[ge.owner,"/",ge.name]}),r.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["github.com/",ge.owner,"/",ge.name]})]}),r.jsx(oi,{size:14,className:"text-muted-foreground shrink-0"})]}),r.jsxs("div",{className:"flex flex-wrap items-end justify-between gap-2 w-full",children:[r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsx(ir,{htmlFor:"env-runtime",className:"text-xs font-medium",children:"Runtime"}),r.jsxs(Rs,{value:ce?.selected??ue,onValueChange:se=>pe("selected",se===ue?null:se),children:[r.jsx(Ms,{id:"env-runtime",className:"w-28",children:r.jsx(Ds,{placeholder:"None"})}),r.jsxs(Ts,{children:[r.jsx(Nt,{value:ue,children:"None"}),be.map(se=>r.jsx(Nt,{value:se,children:se},se))]})]})]}),r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsx(ir,{htmlFor:"env-port",className:"text-xs font-medium",children:"Port"}),r.jsx(at,{id:"env-port",placeholder:"3000",className:"w-20 h-8",defaultValue:ce?.port??"",onBlur:se=>pe("port",se.target.value||null)})]}),r.jsxs(oe,{onClick:fe,disabled:ee,children:[ee?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(tn,{size:14}),ee?"Stopping...":"Run"]})]})]})})}if(W==="creating")return r.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full gap-4",children:[r.jsx(Ne,{size:24,className:"animate-spin text-muted-foreground"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:m}),r.jsx(Im,{since:C.current})]});if(W==="error")return r.jsx(Iu,{errorMsg:g,onRetry:fe});if(W==="suspended")return r.jsx(Eu,{onResume:fe});const Ce=["setup",...k,...t?["daemon"]:[]],Ie=$.scripts.filter(ee=>!k.includes(ee));return r.jsx("div",{className:"flex flex-col w-full h-full",children:r.jsxs("div",{className:"flex flex-col h-full",children:[r.jsxs("div",{className:"flex h-12 items-center border-b border-border px-2 shrink-0",children:[Ce.map(ee=>r.jsx("button",{type:"button",onClick:()=>L(ee),className:Y("flex items-center h-full px-3 text-sm whitespace-nowrap border-b-2 mb-[-1px] capitalize transition-all hover:text-foreground",S===ee?"text-foreground border-primary":"text-muted-foreground border-transparent"),children:ee},ee)),Ie.length>0&&r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",className:"flex items-center h-full px-2 text-muted-foreground hover:text-foreground transition-colors",children:r.jsx(Dt,{size:14})})}),r.jsx(hs,{align:"start",children:Ie.map(ee=>r.jsx(Qe,{onClick:()=>de(ee),children:ee},ee))})]}),r.jsx("div",{className:"flex-1 flex justify-center",children:u?.vmId&&r.jsxs("div",{className:"flex items-center",children:[r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",className:"shrink-0 rounded-l bg-muted px-1.5 py-0.5 text-[10px] font-mono text-muted-foreground cursor-pointer hover:bg-accent hover:text-foreground transition-colors border-r border-border/50",onClick:()=>navigator.clipboard.writeText(u?.vmId??""),children:u.vmId})}),r.jsx(Ge,{side:"bottom",children:"Copy VM ID"})]}),r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",className:"shrink-0 self-stretch rounded-r bg-muted px-0.5 text-[10px] text-muted-foreground cursor-pointer hover:bg-accent hover:text-foreground transition-colors",children:r.jsx(cr,{size:10})})}),r.jsx(hs,{align:"center",children:r.jsxs(Qe,{onClick:ye,children:[r.jsx(wl,{size:12}),"Stop Server"]})})]})]})}),r.jsxs("div",{className:"flex items-center gap-1",children:[N&&r.jsxs("button",{type:"button",onClick:P,className:"flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors",children:[r.jsx(cp,{size:12}),"Add to chat"]}),S!=="setup"&&S!=="daemon"&&k.includes(S)&&(()=>{const ee=$.activeProcesses.includes(S)&&!b.has(S);return r.jsxs("div",{className:"flex items-center",children:[r.jsxs("button",{type:"button",disabled:v,onClick:()=>ae(S),className:Y("flex items-center gap-1 border border-border px-2 py-1 text-xs font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors disabled:opacity-50",ee?"rounded-l-md border-r-0":"rounded-md"),children:[v?r.jsx(Ne,{size:12,className:"animate-spin"}):r.jsx(tn,{size:12}),v?"Running...":ee?"Restart":"Run"]}),ee&&r.jsxs(cs,{children:[r.jsx(ds,{asChild:!0,children:r.jsx("button",{type:"button",disabled:v,className:"flex items-center self-stretch rounded-r-md border border-border px-1 text-xs text-muted-foreground hover:text-foreground hover:bg-muted transition-colors disabled:opacity-50",children:r.jsx(cr,{size:12})})}),r.jsx(hs,{align:"end",children:r.jsxs(Qe,{onClick:()=>Z(S),children:[r.jsx(wl,{size:12}),"Stop Process"]})})]})]})})()]})]}),r.jsx("div",{className:"flex-1 overflow-hidden",children:Ce.map(ee=>r.jsx("div",{className:Y("h-full",S===ee?"block":"hidden"),children:$.hasData(ee)||ee==="setup"||ee==="daemon"?r.jsx(zC,{onReady:se=>{M.current.set(ee,se)},onSelectionChange:(se,Ve)=>R(ee,se,Ve),initialData:$.getBuffer(ee),className:"h-full"}):r.jsx(Vi,{className:"h-full",image:null,title:`Script "${ee}" not running`,description:`Click Run to start "${ee}".`,actions:r.jsxs(oe,{variant:"outline",size:"sm",disabled:v,onClick:()=>ae(ee),children:[v?r.jsx(Ne,{size:14,className:"animate-spin"}):r.jsx(tn,{size:14}),"Run"]})})},ee))})]})})}function KC(t){const e=B.c(2),{virtualMcpId:s}=t,i=$t(s);if(!(i?bs(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[r.jsx(Bs,{size:24,className:"text-muted-foreground/60"}),r.jsx("div",{children:"No repository connected."}),r.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Env."})]}),e[0]=a):a=e[0],a}let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(WC,{}),e[1]=o):o=e[1],o}function nr(t){const e=t.trim().split(/\s+/);return e.length!==5?!1:e.every(s=>/^[\d*/,-]+$/.test(s))}function qC(t){if(!t)return"Unknown schedule";const e=t.trim();if(e==="* * * * *")return"Every minute";if(e==="0 * * * *")return"Every hour";if(e==="0 0 * * *")return"Every day";if(e==="0 0 * * 1")return"Every week";const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return`Every ${s[1]} minutes`;const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return`Every ${i[1]} hours`;const n=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(n){const l=parseInt(n[1]??"1");return l%7===0?`Every ${l/7} weeks`:`Every ${l} days`}const o=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+\*$/);if(o){const l=(o[2]??"0").padStart(2,"0"),c=(o[1]??"0").padStart(2,"0");return`Every day at ${l}:${c} UTC`}const a=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+(\d)$/);if(a){const c=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][parseInt(a[3]??"0")]??"day",d=(a[2]??"0").padStart(2,"0"),u=(a[1]??"0").padStart(2,"0");return`Every ${c} at ${d}:${u} UTC`}return t}function GC(t,e){const s=Math.max(1,t);switch(e){case"minutes":return s===1?"* * * * *":`*/${s} * * * *`;case"hours":return s===1?"0 * * * *":`0 */${s} * * *`;case"days":return s===1?"0 0 * * *":`0 0 */${s} * *`;case"weeks":return s===1?"0 0 * * 1":`0 0 */${s*7} * *`}}function YC(t){const e=t.trim();if(e==="* * * * *")return{count:1,unit:"minutes"};if(e==="0 * * * *")return{count:1,unit:"hours"};if(e==="0 0 * * *")return{count:1,unit:"days"};if(e==="0 0 * * 1")return{count:1,unit:"weeks"};const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return{count:parseInt(s[1]),unit:"minutes"};const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return{count:parseInt(i[1]),unit:"hours"};const n=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(n){const o=parseInt(n[1]);return o%7===0?{count:o/7,unit:"weeks"}:{count:o,unit:"days"}}return null}function XC(t,e){return e===1?{minutes:"minute",hours:"hour",days:"day",weeks:"week"}[t]??t:t}const JC=[{label:"Minute",cron:"* * * * *"},{label:"Hour",cron:"0 * * * *"},{label:"Day",cron:"0 0 * * *"},{label:"Week",cron:"0 0 * * 1"}];function QC(t){const e=B.c(33),{automationId:s,open:i,onOpenChange:n,onCustomSelect:o,onEventSelect:a}=t,{triggerAdd:l}=jr(),[c,d]=j.useState(!1),u=i??c;let h;e[0]!==n?(h=M=>{n?n(M):d(M)},e[0]=n,e[1]=h):h=e[1];const f=h;let m;e[2]!==l||e[3]!==s||e[4]!==f?(m=async M=>{try{await l.mutateAsync({automation_id:s,type:"cron",cron_expression:M}),he.success("Starter added"),f(!1)}catch(I){const E=I,N=E instanceof Error?E.message:"Failed to add starter";he.error(N)}},e[2]=l,e[3]=s,e[4]=f,e[5]=m):m=e[5];const p=m;let g;e[6]===Symbol.for("react.memo_cache_sentinel")?(g=r.jsx(ds,{asChild:!0,children:r.jsxs(oe,{variant:"outline",size:"sm",children:[r.jsx(Dt,{size:14}),"Add Starter"]})}),e[6]=g):g=e[6];let _;e[7]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsxs(Pd,{className:"gap-2.5",children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),"Every..."]}),e[7]=_):_=e[7];let v;e[8]!==l||e[9]!==p?(v=JC.map(M=>r.jsxs(Qe,{className:"gap-2.5",onSelect:()=>p(M.cron),disabled:l.isPending,children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),"Every ",M.label]},M.cron)),e[8]=l,e[9]=p,e[10]=v):v=e[10];let x;e[11]!==v?(x=r.jsxs(Qr,{children:[_,r.jsx(Zr,{className:"w-[160px]",children:v})]}),e[11]=v,e[12]=x):x=e[12];let b;e[13]!==f||e[14]!==o?(b=()=>{f(!1),o?.()},e[13]=f,e[14]=o,e[15]=b):b=e[15];let y;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),e[16]=y):y=e[16];let V;e[17]!==b?(V=r.jsxs(Qe,{className:"gap-2.5",onSelect:b,children:[y,"Custom (cron)"]}),e[17]=b,e[18]=V):V=e[18];let C;e[19]!==f||e[20]!==a?(C=()=>{f(!1),a?.()},e[19]=f,e[20]=a,e[21]=C):C=e[21];let S;e[22]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),e[22]=S):S=e[22];let w;e[23]!==C?(w=r.jsxs(Qe,{className:"gap-2.5",onSelect:C,children:[S,"Event"]}),e[23]=C,e[24]=w):w=e[24];let k;e[25]!==w||e[26]!==x||e[27]!==V?(k=r.jsxs(hs,{align:"end",className:"w-[200px]",children:[x,V,w]}),e[25]=w,e[26]=x,e[27]=V,e[28]=k):k=e[28];let T;return e[29]!==f||e[30]!==u||e[31]!==k?(T=r.jsxs(cs,{open:u,onOpenChange:f,children:[g,k]}),e[29]=f,e[30]=u,e[31]=k,e[32]=T):T=e[32],T}function ZC(t){const e=B.c(60),{trigger:s,automationId:i,connectionName:n}=t,{triggerAdd:o,triggerRemove:a}=jr(),[l,c]=j.useState(!1);let d;e[0]!==s.cron_expression?(d=s.cron_expression?YC(s.cron_expression):null,e[0]=s.cron_expression,e[1]=d):d=e[1];const u=d,[h,f]=j.useState(u?.count??1),[m,p]=j.useState(!1),[g,_]=j.useState(s.cron_expression??""),v=a.isPending||o.isPending,x=s.type==="cron";let b;e[2]!==i||e[3]!==a||e[4]!==s.id?(b=async()=>{try{await a.mutateAsync({trigger_id:s.id,automation_id:i}),he.success("Starter removed")}catch{he.error("Failed to remove starter")}c(!1)},e[2]=i,e[3]=a,e[4]=s.id,e[5]=b):b=e[5];const y=b;let V;e[6]!==o||e[7]!==i||e[8]!==g||e[9]!==a||e[10]!==s.cron_expression||e[11]!==s.id?(V=async()=>{const z=g.trim();if(!z||!nr(z)||z===s.cron_expression){p(!1),_(s.cron_expression??"");return}try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:z}),await a.mutateAsync({trigger_id:s.id,automation_id:i}),p(!1)}catch{he.error("Failed to update starter"),_(s.cron_expression??""),p(!1)}},e[6]=o,e[7]=i,e[8]=g,e[9]=a,e[10]=s.cron_expression,e[11]=s.id,e[12]=V):V=e[12];const C=V;let S;e[13]!==o||e[14]!==i||e[15]!==u||e[16]!==a||e[17]!==s.cron_expression||e[18]!==s.id?(S=async z=>{if(!u)return;const $=Math.max(1,z),q=GC($,u.unit);if(q!==s.cron_expression)try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:q}),await a.mutateAsync({trigger_id:s.id,automation_id:i})}catch{he.error("Failed to update starter"),f(u.count)}},e[13]=o,e[14]=i,e[15]=u,e[16]=a,e[17]=s.cron_expression,e[18]=s.id,e[19]=S):S=e[19];const w=S;let k;e[20]!==x?(k=x?r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}):r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),e[20]=x,e[21]=k):k=e[21];let T;e[22]!==n||e[23]!==h||e[24]!==g||e[25]!==w||e[26]!==C||e[27]!==u||e[28]!==x||e[29]!==m||e[30]!==v||e[31]!==s.cron_expression||e[32]!==s.event_type||e[33]!==s.params?(T=u&&x?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"text-sm text-muted-foreground",children:"Every"}),r.jsx("input",{type:"number",min:1,value:h,onChange:z=>f(parseInt(z.target.value)||1),onBlur:()=>w(h),onKeyDown:z=>{z.key==="Enter"&&z.target.blur(),z.key==="Escape"&&f(u.count)},disabled:v,className:"w-12 text-center text-sm h-7 border border-border rounded-md bg-background px-1 focus:outline-none focus:ring-1 focus:ring-ring"}),r.jsx("span",{className:"text-sm",children:XC(u.unit,h)})]}):x&&m?r.jsxs(r.Fragment,{children:[r.jsx("input",{type:"text",value:g,onChange:z=>_(z.target.value),onBlur:C,onKeyDown:z=>{z.key==="Enter"&&z.target.blur(),z.key==="Escape"&&(p(!1),_(s.cron_expression??""))},className:"flex-1 text-sm font-mono bg-transparent outline-none",autoFocus:!0}),g&&!nr(g)&&r.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"})]}):r.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[r.jsx("span",{className:"text-sm font-mono text-xs text-muted-foreground truncate",children:x?qC(s.cron_expression??""):`${s.event_type}${n?` · ${n}`:""}`}),!x&&s.params&&Object.keys(s.params).length>0&&r.jsx("span",{className:"text-xs text-muted-foreground/60 truncate",children:Object.entries(s.params).map(e3).join(", ")})]}),e[22]=n,e[23]=h,e[24]=g,e[25]=w,e[26]=C,e[27]=u,e[28]=x,e[29]=m,e[30]=v,e[31]=s.cron_expression,e[32]=s.event_type,e[33]=s.params,e[34]=T):T=e[34];let M;e[35]!==v?(M=v&&r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),e[35]=v,e[36]=M):M=e[36];let I;e[37]!==u||e[38]!==x||e[39]!==m||e[40]!==s.cron_expression?(I=x&&!u&&!m&&r.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{_(s.cron_expression??""),p(!0)},children:r.jsx(dp,{size:13,className:"text-muted-foreground"})}),e[37]=u,e[38]=x,e[39]=m,e[40]=s.cron_expression,e[41]=I):I=e[41];let E;e[42]===Symbol.for("react.memo_cache_sentinel")?(E=r.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>c(!0),children:r.jsx(Os,{size:13,className:"text-muted-foreground"})}),e[42]=E):E=e[42];let N;e[43]!==M||e[44]!==I?(N=r.jsxs("div",{className:"ml-auto flex items-center gap-1",children:[M,I,E]}),e[43]=M,e[44]=I,e[45]=N):N=e[45];let A;e[46]!==N||e[47]!==k||e[48]!==T?(A=r.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[k,T,N]}),e[46]=N,e[47]=k,e[48]=T,e[49]=A):A=e[49];let D;e[50]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsxs(Ua,{children:[r.jsx(Ha,{children:"Remove Starter"}),r.jsx(Wa,{children:"Are you sure you want to remove this starter?"})]}),e[50]=D):D=e[50];let L;e[51]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(za,{children:"Cancel"}),e[51]=L):L=e[51];let R;e[52]!==y?(R=r.jsxs(Fa,{children:[D,r.jsxs(Ka,{children:[L,r.jsx(wh,{onClick:y,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),e[52]=y,e[53]=R):R=e[53];let P;e[54]!==l||e[55]!==R?(P=r.jsx(qa,{open:l,onOpenChange:c,children:R}),e[54]=l,e[55]=R,e[56]=P):P=e[56];let O;return e[57]!==A||e[58]!==P?(O=r.jsxs(r.Fragment,{children:[A,P]}),e[57]=A,e[58]=P,e[59]=O):O=e[59],O}function e3(t){const[e,s]=t;return`${e}: ${s}`}function t3(t){const e=B.c(55),{automationId:s,onDone:i}=t;let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n={binding:"TRIGGER"},e[0]=n):n=e[0];const o=yr(n),[a,l]=j.useState(),[c,d]=j.useState();let u;e[1]===Symbol.for("react.memo_cache_sentinel")?(u={},e[1]=u):u=e[1];const[h,f]=j.useState(u),{triggerAdd:m}=jr(),{data:p,isLoading:g}=Ag(a);let _,v,x,b,y,V;if(e[2]!==m||e[3]!==s||e[4]!==a||e[5]!==c||e[6]!==g||e[7]!==i||e[8]!==h||e[9]!==o||e[10]!==p){const w=p?.find(R=>R.type===c);let k;e[17]!==m||e[18]!==s||e[19]!==a||e[20]!==c||e[21]!==i||e[22]!==h?(k=async()=>{if(!(!a||!c))try{await m.mutateAsync({automation_id:s,type:"event",event_type:c,connection_id:a,params:h}),re("automation_trigger_added",{automation_id:s,trigger_type:"event",connection_id:a,event_type:c}),he.success("Event trigger added"),i()}catch{he.error("Failed to add event trigger")}},e[17]=m,e[18]=s,e[19]=a,e[20]=c,e[21]=i,e[22]=h,e[23]=k):k=e[23],_=k,v="flex flex-col gap-3 px-3 py-3 rounded-lg border border-border bg-background";let T,M;e[24]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx(Ci,{size:14,className:"text-muted-foreground shrink-0"}),T=r.jsx("span",{className:"text-sm font-medium",children:"Event trigger"}),e[24]=T,e[25]=M):(T=e[24],M=e[25]);let I;e[26]===Symbol.for("react.memo_cache_sentinel")?(I=r.jsx(Os,{size:13}),e[26]=I):I=e[26],e[27]!==i?(x=r.jsxs("div",{className:"flex items-center gap-2",children:[M,T,r.jsx("button",{type:"button",className:"ml-auto shrink-0 p-0.5 rounded text-muted-foreground hover:text-foreground",onClick:i,children:I})]}),e[27]=i,e[28]=x):x=e[28];const E=a??"";let N;e[29]===Symbol.for("react.memo_cache_sentinel")?(N=R=>{l(R),d(void 0),f({})},e[29]=N):N=e[29];let A;e[30]===Symbol.for("react.memo_cache_sentinel")?(A=r.jsx(Ms,{className:"w-full",children:r.jsx(Ds,{placeholder:"Select connection..."})}),e[30]=A):A=e[30];let D;e[31]!==o?(D=o.length===0?r.jsx("div",{className:"px-2 py-3 text-center text-xs text-muted-foreground",children:"No connections with trigger support"}):o.map(r3),e[31]=o,e[32]=D):D=e[32];let L;e[33]!==D?(L=r.jsx(Ts,{children:D}),e[33]=D,e[34]=L):L=e[34],e[35]!==E||e[36]!==L?(b=r.jsxs(Rs,{value:E,onValueChange:N,children:[A,L]}),e[35]=E,e[36]=L,e[37]=b):b=e[37],e[38]!==a||e[39]!==c||e[40]!==g||e[41]!==p?(y=a&&r.jsxs(Rs,{value:c??"",onValueChange:R=>{d(R),f({})},children:[r.jsx(Ms,{className:"w-full",children:g?r.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[r.jsx(Ne,{size:13,className:"animate-spin"}),"Loading events..."]}):r.jsx(Ds,{placeholder:"Select event type...",children:c??"Select event type..."})}),r.jsx(Ts,{children:p?.map(i3)})]}),e[38]=a,e[39]=c,e[40]=g,e[41]=p,e[42]=y):y=e[42],V=w?.paramsSchema&&Object.keys(w.paramsSchema).length>0&&r.jsx("div",{className:"flex flex-col gap-2",children:Object.entries(w.paramsSchema).map(R=>{const[P,O]=R;return r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsxs("label",{className:"text-xs text-muted-foreground",children:[P,O.description&&r.jsxs("span",{className:"text-muted-foreground/60",children:[" ","— ",O.description]})]}),O.enum?r.jsxs(Rs,{value:h[P]??"",onValueChange:z=>f($=>({...$,[P]:z})),children:[r.jsx(Ms,{className:"w-full",children:r.jsx(Ds,{placeholder:`Select ${P}...`})}),r.jsx(Ts,{children:O.enum.map(s3)})]}):r.jsx("input",{type:"text",value:h[P]??"",onChange:z=>f($=>({...$,[P]:z.target.value})),placeholder:O.description??P,className:"text-sm border border-border rounded-md bg-background px-2 py-1.5 focus:outline-none focus:ring-1 focus:ring-ring"})]},P)})}),e[2]=m,e[3]=s,e[4]=a,e[5]=c,e[6]=g,e[7]=i,e[8]=h,e[9]=o,e[10]=p,e[11]=_,e[12]=v,e[13]=x,e[14]=b,e[15]=y,e[16]=V}else _=e[11],v=e[12],x=e[13],b=e[14],y=e[15],V=e[16];let C;e[43]!==m||e[44]!==a||e[45]!==c||e[46]!==_?(C=a&&c&&r.jsx(oe,{size:"sm",onClick:_,disabled:m.isPending,children:m.isPending?r.jsx(Ne,{size:13,className:"animate-spin"}):"Add trigger"}),e[43]=m,e[44]=a,e[45]=c,e[46]=_,e[47]=C):C=e[47];let S;return e[48]!==v||e[49]!==x||e[50]!==b||e[51]!==y||e[52]!==V||e[53]!==C?(S=r.jsxs("div",{className:v,children:[x,b,y,V,C]}),e[48]=v,e[49]=x,e[50]=b,e[51]=y,e[52]=V,e[53]=C,e[54]=S):S=e[54],S}function s3(t){return r.jsx(Nt,{value:t,children:t},t)}function i3(t){return r.jsx(Nt,{value:t.type,children:r.jsxs("div",{className:"flex flex-col",children:[r.jsx("span",{children:t.type}),r.jsx("span",{className:"text-xs text-muted-foreground",children:t.description})]})},t.type)}function r3(t){return r.jsx(Nt,{value:t.id,children:t.title},t.id)}function n3({automationId:t,automation:e,virtualMcpId:s,onBack:i,onDelete:n}){const o=e.agent?.id??s,{org:a}=xe(),{update:l,triggerAdd:c}=jr(),d=yr(),u=new Map(d.map(ce=>[ce.id,ce.title])),{createTaskWithMessage:h}=Lt(),{setModel:f,credentialId:m,selectedModel:p,setChatMode:g}=$s(),[_,v]=ei(),x=e.messages?.[0]?.metadata?.tiptapDoc??void 0,[b,y]=j.useState(x),[V,C]=j.useState(!1),[S,w]=j.useState(!1),[k,T]=j.useState(""),[M,I]=j.useState(!1),E=j.useRef(!1),N=j.useRef(null),A=j.useRef(!1),D=j.useRef(x),L=()=>{const ue=gl(b).filter(be=>be.type==="text").map(be=>be.text).join(`
|
|
731
731
|
`);ue.trim()&&(te(),re("automation_improve_clicked",{automation_id:t,agent_id:o,instructions_length:ue.length}),g("plan"),h({virtualMcpId:Aa(a.id),message:{parts:[{type:"text",text:`/writing-prompts for automation with id ${t}. The current message is
|
|
732
732
|
|
|
733
733
|
<message>
|
|
734
734
|
${ue}
|
|
735
|
-
</message>`}]}}))},R=e.models?.credentialId||m||"",P=e.models?.thinking?.id||p?.modelId||"",O=Ai({defaultValues:{name:e.name,active:e.active,credential_id:R,model_id:P}}),z=O.watch("active"),$=O.watch("credential_id"),q=O.watch("model_id"),{models:F,isLoading:W}=eh($||void 0),H=F.find(ce=>ce.modelId===q)??null,U=j.useRef(null),X=j.useRef(new Set),K=j.useRef(0),G=j.useRef(null),ie=3e4,te=()=>{G.current&&(clearTimeout(G.current),G.current=null),U.current!==null&&(re("automation_updated",{automation_id:t,agent_id:o,fields:Array.from(X.current),save_count:K.current,edit_duration_ms:Date.now()-U.current}),U.current=null,X.current=new Set,K.current=0)},J=async()=>{if(!(Object.keys(O.formState.dirtyFields).length>0)&&!A.current)return!0;const ue=Object.keys(O.formState.dirtyFields),be=A.current;A.current=!1;const pe=O.getValues(),Ce=D.current;try{const Ie=pe.credential_id&&pe.model_id?pe.credential_id:"",ee=pe.credential_id&&pe.model_id?pe.model_id:"",se={id:t,name:pe.name,active:pe.active,agent:{id:o},models:{credentialId:Ie,thinking:{id:ee}},messages:jd(Ce),temperature:0};await l.mutateAsync(se),U.current===null&&(U.current=Date.now());for(const Ve of ue)X.current.add(Ve);return be&&X.current.add("messages"),K.current+=1,G.current&&clearTimeout(G.current),G.current=setTimeout(te,ie),O.reset({...pe,credential_id:Ie,model_id:ee},{keepDirtyValues:!0}),!0}catch{return A.current=!0,!1}},ae=j.useRef(J);ae.current=J;const Z=()=>{N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{N.current=null,ae.current()},1e3)},de=async()=>(N.current&&(clearTimeout(N.current),N.current=null),ae.current()),fe=ce=>{if(D.current=ce,y(ce),!E.current){E.current=!0;return}A.current=!0,Z()},ye=j.useRef(!1);ye.current||(ye.current=!0,O.watch(()=>{Z()})),j.useEffect(()=>()=>{N.current&&(clearTimeout(N.current),N.current=null,ae.current())},[]);const ge=async()=>{re("automation_test_clicked",{automation_id:t,agent_id:o});const ce=await de();if(te(),!ce)return;if(!b){he.error("No instructions configured for this automation");return}H&&$&&f({...H,keyId:$}),v({..._,toolApprovalLevel:"auto"});const ue=gl(b);h({message:{tiptapDoc:b,parts:ue},virtualMcpId:o||void 0})};return r.jsxs(r.Fragment,{children:[i&&r.jsx("div",{className:"flex items-center pb-4 shrink-0",children:r.jsxs(oe,{variant:"ghost",size:"sm",onClick:i,children:[r.jsx(Pa,{size:14}),"Back to list"]})}),r.jsxs("div",{className:"flex flex-col gap-8",children:[r.jsxs("div",{className:"flex flex-col gap-1.5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsx(at,{...O.register("name"),placeholder:"Automation name",className:"border border-transparent shadow-none px-0 text-lg font-medium h-auto focus-visible:ring-0 focus-visible:border-border bg-transparent flex-1",style:{boxShadow:"none"}}),n&&r.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive shrink-0",onClick:n,children:r.jsx(Ro,{size:14})})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(pi,{control:O.control,name:"active",render:({field:ce})=>r.jsx(mn,{checked:ce.value,onCheckedChange:ue=>{ce.onChange(ue),setTimeout(()=>de(),0)},className:"cursor-pointer"})}),r.jsx("span",{className:"text-sm text-muted-foreground",children:z?"Active":"Inactive"}),r.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),r.jsx(Ng,{id:e.created_by,size:"2xs",className:"text-sm text-muted-foreground"})]})]}),r.jsxs("div",{className:"flex flex-col gap-2.5",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Starter"}),r.jsx(QC,{automationId:t,open:V,onOpenChange:C,onCustomSelect:()=>{w(!0),I(!1),T("")},onEventSelect:()=>{I(!0),w(!1)}})]}),e.triggers.length===0&&!S?r.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-6 text-center",children:r.jsxs("p",{className:"text-sm text-muted-foreground",children:["When should this automation run?"," ",r.jsx("button",{type:"button",className:"text-foreground underline underline-offset-2 cursor-pointer hover:text-foreground/80 transition-colors",onClick:()=>C(!0),children:"Add a starter"})," ","to get going."]})}):r.jsx("div",{className:"flex flex-col gap-2",children:e.triggers.map(ce=>r.jsx(ZC,{trigger:ce,automationId:t,connectionName:ce.connection_id?u.get(ce.connection_id):void 0},ce.id))}),S&&r.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),r.jsx("input",{type:"text",value:k,onChange:ce=>T(ce.target.value),onBlur:async()=>{const ce=k.trim();if(!(!ce||!nr(ce)))try{await c.mutateAsync({automation_id:t,type:"cron",cron_expression:ce}),re("automation_trigger_added",{automation_id:t,trigger_type:"cron"}),he.success("Starter added"),w(!1),T("")}catch{he.error("Failed to add starter")}},onKeyDown:async ce=>{const ue=k.trim();ce.key==="Enter"&&ue&&nr(ue)&&ce.target.blur(),ce.key==="Escape"&&(w(!1),T(""))},placeholder:"0 9 * * 1-5",className:"flex-1 text-sm font-mono bg-transparent outline-none placeholder:text-muted-foreground/40",autoFocus:!0}),k&&!nr(k)&&r.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"}),c.isPending&&r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground shrink-0"}),r.jsx("button",{type:"button",className:"shrink-0 p-0.5 rounded text-muted-foreground opacity-0 group-hover:opacity-100 hover:text-foreground transition-opacity",onClick:()=>{w(!1),T("")},children:r.jsx(Os,{size:13})})]}),M&&r.jsx(j.Suspense,{fallback:r.jsxs("div",{className:"flex items-center gap-2 px-3 py-3 rounded-lg border border-border bg-background",children:[r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),r.jsx("span",{className:"text-sm text-muted-foreground",children:"Loading connections..."})]}),children:r.jsx(t3,{automationId:t,onDone:()=>I(!1)})})]}),r.jsxs("div",{className:"flex flex-col gap-2.5",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Instructions"}),r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:!b,onClick:L,children:[r.jsx(Da,{size:13}),"Improve"]})]}),r.jsx(qh,{tiptapDoc:b,setTiptapDoc:fe,placeholder:"What should this automation do?",children:r.jsxs("div",{className:"rounded-xl border border-border min-h-[120px] flex flex-col",children:[r.jsx(Gh,{virtualMcpId:o||null,className:"max-h-[45vh]"}),r.jsxs("div",{className:"flex items-center justify-end gap-1.5 p-2.5",children:[r.jsx(sh,{model:H,isLoading:W,credentialId:$||null,onCredentialChange:ce=>{O.setValue("credential_id",ce??"",{shouldDirty:!0}),O.setValue("model_id","",{shouldDirty:!0})},onModelChange:ce=>O.setValue("model_id",ce.modelId,{shouldDirty:!0}),placeholder:"Model"}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"default",className:"h-8 gap-1.5 rounded-md px-3 text-sm font-medium",onClick:ge,disabled:!o,children:[r.jsx(Od,{size:16}),"Test"]})}),r.jsx(Ge,{children:"Test Automation"})]})]})]})})]})]})]})}function o3(t){const e=B.c(6),{tabId:s,virtualMcpId:i}=t;let n;e[0]!==s?(n=Ad(s),e[0]=s,e[1]=n):n=e[1];const o=n;if(!o)return null;let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=a):a=e[2];let l;return e[3]!==o.id||e[4]!==i?(l=r.jsx(Jt,{children:r.jsx(Jt.Content,{children:r.jsx(Jt.Body,{children:r.jsx(j.Suspense,{fallback:a,children:r.jsx(a3,{id:o.id,virtualMcpId:i})})})})}),e[3]=o.id,e[4]=i,e[5]=l):l=e[5],l}function a3(t){const e=B.c(9),{id:s,virtualMcpId:i}=t,n=Oe(),{data:o,isLoading:a}=Eg(s);let l;e[0]!==n?(l=()=>n({to:".",search:l3,replace:!0}),e[0]=n,e[1]=l):l=e[1];const c=l;if(a){let u;return e[2]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=u):u=e[2],u}if(!o){let u;return e[3]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Automation not found"}),e[3]=u):u=e[3],u}let d;return e[4]!==o||e[5]!==s||e[6]!==c||e[7]!==i?(d=r.jsx(n3,{automationId:s,automation:o,virtualMcpId:i,onBack:c}),e[4]=o,e[5]=s,e[6]=c,e[7]=i,e[8]=d):d=e[8],d}function l3(t){return{...t,main:"automations"}}function c3(t){const e=B.c(20),{virtualMcpId:s}=t,i=Oe(),{data:n}=Ig(s),o=n===void 0?[]:n,{create:a}=jr(),[l,c]=j.useState(""),d=l.toLowerCase(),u=o.filter(T=>T.name.toLowerCase().includes(d));let h;e[0]!==i?(h=T=>i({to:".",search:M=>({...M,main:"automation:"+T}),replace:!0}),e[0]=i,e[1]=h):h=e[1];const f=h,m=async()=>{if(a.isPending)return;re("automation_new_clicked",{virtual_mcp_id:s,existing_count:o.length});const T=await a.mutateAsync(Rg(s));f(T.id)},p=Jt,g=Jt,_=Jt;let v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx(Jt.Title,{children:"Automations"}),e[2]=v):v=e[2];const x=o.length>0&&r.jsx(Mg,{value:l,onChange:c,placeholder:"Search automations...",className:"w-full md:w-[375px]"});let b;e[3]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Dt,{size:14}),e[3]=b):b=e[3];let y;e[4]!==a.isPending||e[5]!==m?(y=r.jsxs(oe,{size:"sm",onClick:m,disabled:a.isPending,children:[b,"New automation"]}),e[4]=a.isPending,e[5]=m,e[6]=y):y=e[6];let V;e[7]!==x||e[8]!==y?(V=r.jsxs("div",{className:"flex flex-col gap-6",children:[v,r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[x,y]})]}),e[7]=x,e[8]=y,e[9]=V):V=e[9];const C=o.length===0?r.jsx("div",{className:"flex items-center justify-center py-20",children:r.jsx(Vi,{image:r.jsx(Ci,{size:48,className:"text-muted-foreground"}),title:"No automations yet",description:"Create your first automation to run this agent on a schedule or in response to events.",actions:r.jsxs(oe,{size:"sm",onClick:m,disabled:a.isPending,children:[r.jsx(Dt,{size:14}),"New automation"]})})}):u.length===0?r.jsx("div",{className:"flex items-center justify-center py-20",children:r.jsx(Vi,{image:r.jsx(Ci,{size:48,className:"text-muted-foreground"}),title:"No automations found",description:`No automations match "${l}"`})}):r.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:u.map(T=>r.jsx(Tg,{automation:T,onClick:()=>f(T.id)},T.id))});let S;e[10]!==C||e[11]!==_.Body||e[12]!==V?(S=r.jsxs(_.Body,{children:[V,C]}),e[10]=C,e[11]=_.Body,e[12]=V,e[13]=S):S=e[13];let w;e[14]!==S||e[15]!==g.Content?(w=r.jsx(g.Content,{children:S}),e[14]=S,e[15]=g.Content,e[16]=w):w=e[16];let k;return e[17]!==p||e[18]!==w?(k=r.jsx(p,{children:w}),e[17]=p,e[18]=w,e[19]=k):k=e[19],k}function d3(t){const e=B.c(3),{virtualMcpId:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx(j.Suspense,{fallback:i,children:r.jsx(c3,{virtualMcpId:s})}),e[1]=s,e[2]=n):n=e[2],n}const ud=j.lazy(()=>dm(()=>import("./project-app-view-CxpGmDTt.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56])).then(t=>({default:t.AppViewContent})));function h3(t){const e=B.c(44),{taskId:s,virtualMcpId:i}=t;let n;e[0]!==s||e[1]!==i?(n={virtualMcpId:i,taskId:s},e[0]=s,e[1]=i,e[2]=n):n=e[2];const{activeTab:o,layoutTabs:a,expandedTools:l,automationTabParsed:c}=wu(n);if(Im(o)){let p;return e[3]!==i?(p=r.jsx(pc,{virtualMcpId:i}),e[3]=i,e[4]=p):p=e[4],p}if(o==="git"){let p;return e[5]!==i?(p=r.jsx(J2,{virtualMcpId:i}),e[5]=i,e[6]=p):p=e[6],p}if(o==="automations"){let p;return e[7]!==i?(p=r.jsx(d3,{virtualMcpId:i}),e[7]=i,e[8]=p):p=e[8],p}if(o==="env"){let p;return e[9]!==i?(p=r.jsx(KC,{virtualMcpId:i}),e[9]=i,e[10]=p):p=e[10],p}if(o==="preview"){let p;return e[11]!==i?(p=r.jsx(NS,{virtualMcpId:i}),e[11]=i,e[12]=p):p=e[12],p}if(c){let p;return e[13]!==o||e[14]!==i?(p=r.jsx(o3,{tabId:o,virtualMcpId:i}),e[13]=o,e[14]=i,e[15]=p):p=e[15],p}let d;e[16]!==o?(d=Tm(o),e[16]=o,e[17]=d):d=e[17];const u=d;if(u){let p;if(e[18]!==l||e[19]!==u.connectionId||e[20]!==u.toolName){let b;e[22]!==u.connectionId||e[23]!==u.toolName?(b=y=>y.appId===u.connectionId&&y.toolName===u.toolName,e[22]=u.connectionId,e[23]=u.toolName,e[24]=b):b=e[24],p=l.find(b),e[18]=l,e[19]=u.connectionId,e[20]=u.toolName,e[21]=p}else p=e[21];const g=p;let _;e[25]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"h-full w-full flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[25]=_):_=e[25];const v=g?.args;let x;return e[26]!==o||e[27]!==u.connectionId||e[28]!==u.toolName||e[29]!==v?(x=r.jsx(j.Suspense,{fallback:_,children:r.jsx(ud,{connectionId:u.connectionId,toolName:u.toolName,args:v},o)}),e[26]=o,e[27]=u.connectionId,e[28]=u.toolName,e[29]=v,e[30]=x):x=e[30],x}let h;if(e[31]!==o||e[32]!==a){let p;e[34]!==o?(p=g=>g.id===o,e[34]=o,e[35]=p):p=e[35],h=a.find(p),e[31]=o,e[32]=a,e[33]=h}else h=e[33];const f=h;if(f){let p;e[36]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx("div",{className:"h-full w-full flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[36]=p):p=e[36];let g;return e[37]!==o||e[38]!==f.id||e[39]!==f.view.appId||e[40]!==f.view.args?(g=r.jsx(j.Suspense,{fallback:p,children:r.jsx(ud,{connectionId:f.view.appId,toolName:f.id,args:f.view.args},o)}),e[37]=o,e[38]=f.id,e[39]=f.view.appId,e[40]=f.view.args,e[41]=g):g=e[41],g}let m;return e[42]!==i?(m=r.jsx(pc,{virtualMcpId:i}),e[42]=i,e[43]=m):m=e[43],m}function u3(t){const e=B.c(7),{children:s,defaultSize:i}=t,[,n]=j.useTransition();let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ca.decoChatPanelWidth(),e[0]=o):o=e[0];const[a,l]=Va(o,45),c=i>0&&i<100?a:i;let d;e[1]!==l?(d=f=>n(()=>{f>0&&f<100&&l(f)}),e[1]=l,e[2]=d):d=e[2];const u=d;let h;return e[3]!==s||e[4]!==c||e[5]!==u?(h=r.jsx(ih,{defaultSize:c,minSize:20,collapsible:!0,collapsedSize:0,className:"min-w-0 overflow-hidden bg-sidebar",onResize:u,order:1,children:s}),e[3]=s,e[4]=c,e[5]=u,e[6]=h):h=e[6],h}function f3(t){const e=B.c(31),{virtualMcpId:s,taskId:i,chatOpen:n,mainOpen:o,variant:a,chatContent:l}=t;let c;e[0]!==n||e[1]!==o?(c=dc(n,o),e[0]=n,e[1]=o,e[2]=c):c=e[2];const d=c;let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=Ca.decoChatPanelWidth(),e[3]=u):u=e[3];const[h]=Va(u,45),f=j.useRef(null);let m,p;e[4]!==n||e[5]!==o||e[6]!==h?(m=()=>{const M=f.current;if(!M)return;const I=dc(n,o),E=I.chat>0&&I.chat<100?h:I.chat,N=I.chat>0&&I.chat<100?100-h:I.main;M.setLayout([E,N])},p=[n,o,h],e[4]=n,e[5]=o,e[6]=h,e[7]=m,e[8]=p):(m=e[7],p=e[8]),j.useEffect(m,p);const g=`${s}-${i}`;let _;e[9]===Symbol.for("react.memo_cache_sentinel")?(_={overflow:"visible"},e[9]=_):_=e[9];let v;e[10]!==l||e[11]!==a?(v=l??r.jsx(Zh,{variant:a}),e[10]=l,e[11]=a,e[12]=v):v=e[12];let x;e[13]!==v?(x=r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:v})}),e[13]=v,e[14]=x):x=e[14];let b;e[15]!==d.chat||e[16]!==x?(b=r.jsx(u3,{defaultSize:d.chat,children:x}),e[15]=d.chat,e[16]=x,e[17]=b):b=e[17];let y;e[18]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(Np,{className:"bg-sidebar"}),e[18]=y):y=e[18];const V=d.main;let C;e[19]===Symbol.for("react.memo_cache_sentinel")?(C={overflow:"visible"},e[19]=C):C=e[19];let S;e[20]===Symbol.for("react.memo_cache_sentinel")?(S=Y("flex flex-col h-full min-h-0 bg-background overflow-hidden","card-shadow","transition-[border-radius] duration-200 ease-[var(--ease-out-quart)]","rounded-[0.75rem]"),e[20]=S):S=e[20];let w;e[21]!==i||e[22]!==s?(w=r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:S,children:r.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:r.jsx(h3,{taskId:i,virtualMcpId:s})})})}),e[21]=i,e[22]=s,e[23]=w):w=e[23];let k;e[24]!==d.main||e[25]!==w?(k=r.jsx(ih,{className:"min-w-0 flex flex-col",order:2,defaultSize:V,style:C,collapsible:!0,collapsedSize:0,minSize:20,children:w}),e[24]=d.main,e[25]=w,e[26]=k):k=e[26];let T;return e[27]!==k||e[28]!==g||e[29]!==b?(T=r.jsxs(Ap,{ref:f,direction:"horizontal",className:"flex-1 min-h-0 pb-1 pr-1 pl-0 pt-0",style:_,children:[b,y,k]},g),e[27]=k,e[28]=g,e[29]=b,e[30]=T):T=e[30],T}const wo="flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",fd="bg-sidebar-accent text-sidebar-foreground",Vo="text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";function m3(t){const e=B.c(38),{isDecopilot:s,chatOpen:i,toggleChat:n,onNewTask:o}=t,{tasksOpen:a,toggleTasks:l}=yu(),c=!!o;let d;e[0]!==a||e[1]!==l?(d=()=>{re("agent_toolbar_toggled",{button:"tasks",next_state:a?"closed":"open"}),l()},e[0]=a,e[1]=l,e[2]=d):d=e[2];const u=a?fd:Vo;let h;e[3]!==u?(h=Y(wo,u),e[3]=u,e[4]=h):h=e[4];let f;e[5]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsx(hp,{size:16}),e[5]=f):f=e[5];let m;e[6]!==d||e[7]!==h||e[8]!==a?(m=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:d,"aria-pressed":a,className:h,children:f})}),e[6]=d,e[7]=h,e[8]=a,e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx(Ge,{side:"bottom",children:"Tasks"}),e[10]=p):p=e[10];let g;e[11]!==m?(g=r.jsxs(Ye,{delayDuration:300,children:[m,p]}),e[11]=m,e[12]=g):g=e[12];let _;e[13]!==i||e[14]!==s||e[15]!==n?(_=!s&&r.jsxs(Ye,{delayDuration:300,children:[r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>{re("agent_toolbar_toggled",{button:"chat",next_state:i?"closed":"open"}),n()},"aria-pressed":i,className:Y(wo,i?fd:Vo),children:r.jsx(dp,{size:16})})}),r.jsx(Ge,{side:"bottom",children:"Chat"})]}),e[13]=i,e[14]=s,e[15]=n,e[16]=_):_=e[16];const v=c?"grid-cols-[1fr]":"grid-cols-[0fr]";let x;e[17]!==v?(x=Y("grid transition-[grid-template-columns] duration-200 ease-[var(--ease-out-quart)]",v),e[17]=v,e[18]=x):x=e[18];const b=!c,y=c?0:-1,V=!c,C=c?"translate-x-0 opacity-100":"-translate-x-2 opacity-0";let S;e[19]!==C?(S=Y(wo,Vo,"transition-[transform,opacity] duration-200 ease-[var(--ease-out-quart)] will-change-transform",C),e[19]=C,e[20]=S):S=e[20];let w;e[21]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx(Ra,{size:16}),e[21]=w):w=e[21];let k;e[22]!==o||e[23]!==b||e[24]!==y||e[25]!==V||e[26]!==S?(k=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:o,disabled:b,tabIndex:y,"aria-hidden":V,className:S,children:w})}),e[22]=o,e[23]=b,e[24]=y,e[25]=V,e[26]=S,e[27]=k):k=e[27];let T;e[28]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx(Ge,{side:"bottom",children:"New task"}),e[28]=T):T=e[28];let M;e[29]!==k?(M=r.jsx("div",{className:"overflow-hidden",children:r.jsxs(Ye,{delayDuration:300,children:[k,T]})}),e[29]=k,e[30]=M):M=e[30];let I;e[31]!==x||e[32]!==M?(I=r.jsx("div",{className:x,children:M}),e[31]=x,e[32]=M,e[33]=I):I=e[33];let E;return e[34]!==I||e[35]!==g||e[36]!==_?(E=r.jsxs(r.Fragment,{children:[g,_,I]}),e[34]=I,e[35]=g,e[36]=_,e[37]=E):E=e[37],E}function p3(t,e,s){if(t.length<=s)return{visible:t,overflow:[]};const i=t.slice(0,s),n=t.slice(s);if(e==null)return{visible:i,overflow:n};if(i.some(h=>h.id===e))return{visible:i,overflow:n};const a=n.findIndex(h=>h.id===e);if(a===-1)return{visible:i,overflow:n};const l=i[i.length-1],c=n[a],d=[...i.slice(0,-1),c],u=[l,...n.slice(0,a),...n.slice(a+1)];return{visible:d,overflow:u}}function g3(t){const e=B.c(13),{title:s,icon:i,active:n,onClick:o}=t,a=n?"bg-sidebar-accent text-sidebar-foreground":"text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";let l;e[0]!==a?(l=Y("shrink-0 flex items-center gap-1.5 h-8 rounded-md px-2","[transition:background-color_180ms_ease,color_180ms_ease]",a),e[0]=a,e[1]=l):l=e[1];let c;e[2]!==i?(c=r.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:r.jsx(_3,{icon:i})}),e[2]=i,e[3]=c):c=e[3];let d;e[4]!==s?(d=r.jsx("span",{className:"whitespace-nowrap text-sm font-medium leading-none",children:s}),e[4]=s,e[5]=d):d=e[5];let u;return e[6]!==n||e[7]!==o||e[8]!==l||e[9]!==c||e[10]!==d||e[11]!==s?(u=r.jsxs("button",{type:"button",onClick:o,"aria-pressed":n,"aria-label":s,className:l,children:[c,d]}),e[6]=n,e[7]=o,e[8]=l,e[9]=c,e[10]=d,e[11]=s,e[12]=u):u=e[12],u}function _3(t){const e=B.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:n}=s;let o;return e[0]!==n?(o=r.jsx(n,{className:"size-4"}),e[0]=n,e[1]=o):o=e[1],o}if(s.kind==="url"){let n;return e[2]!==s.src?(n=r.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=n):n=e[3],n}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Gd,{className:"size-4"}),e[4]=i):i=e[4],i}function x3(t){const e=B.c(13),{overflow:s,onSelect:i}=t,[n,o]=j.useState(!1);let a;e[0]!==i?(a=f=>{o(!1),i(f)},e[0]=i,e[1]=a):a=e[1];const l=a;let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(zs,{asChild:!0,children:r.jsx("button",{type:"button",title:"More tabs","aria-label":"More tabs",className:"shrink-0 flex size-8 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground transition-colors",children:r.jsx(Wd,{className:"size-4"})})}),e[2]=c):c=e[2];let d;if(e[3]!==l||e[4]!==s){let f;e[6]!==l?(f=m=>r.jsx("li",{children:r.jsxs("button",{type:"button",onClick:()=>l(m.id),className:"w-full flex items-center gap-2 px-3 py-2 rounded-md hover:bg-accent text-sm text-foreground",children:[r.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:r.jsx(v3,{icon:m.icon})}),r.jsx("span",{className:"truncate",children:m.title})]})},m.id),e[6]=l,e[7]=f):f=e[7],d=s.map(f),e[3]=l,e[4]=s,e[5]=d}else d=e[5];let u;e[8]!==d?(u=r.jsx(Fs,{align:"end",className:"w-56 p-1",children:r.jsx("ul",{className:"flex flex-col",children:d})}),e[8]=d,e[9]=u):u=e[9];let h;return e[10]!==n||e[11]!==u?(h=r.jsxs(Us,{open:n,onOpenChange:o,children:[c,u]}),e[10]=n,e[11]=u,e[12]=h):h=e[12],h}function v3(t){const e=B.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:n}=s;let o;return e[0]!==n?(o=r.jsx(n,{className:"size-4"}),e[0]=n,e[1]=o):o=e[1],o}if(s.kind==="url"){let n;return e[2]!==s.src?(n=r.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=n):n=e[3],n}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Gd,{className:"size-4"}),e[4]=i):i=e[4],i}const b3=6;function y3(t){const e=B.c(20),{virtualMcpId:s,taskId:i}=t,n=Oe();let o;e[0]!==i||e[1]!==s?(o={virtualMcpId:s,taskId:i},e[0]=i,e[1]=s,e[2]=o):o=e[2];const{tabs:a,activeTab:l,mainOpen:c,setActiveTab:d}=wu(o);let u,h,f,m;if(e[3]!==l||e[4]!==c||e[5]!==n||e[6]!==d||e[7]!==a||e[8]!==s){const _=Rm({activeTab:l,mainOpen:c}),v=C=>C.id==="automations"?_:c&&C.id===l,b=a.find(C=>v(C))?.id??null,{visible:y,overflow:V}=p3(a,b,b3);h=V,u=C=>{const S=a.find(k=>k.id===C),w=b===C&&c;if(re("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:C,tab_kind:S?.kind??null,was_active:w}),C==="automations"){const k=Mm({activeTab:l,mainOpen:c});n({to:".",search:T=>({...T,main:k}),replace:!0});return}d(C)},f="flex items-center min-w-0 ml-auto gap-0.5",m=y.map(C=>r.jsx(g3,{title:C.title,icon:C.icon,active:v(C),onClick:()=>u(C.id)},C.id)),e[3]=l,e[4]=c,e[5]=n,e[6]=d,e[7]=a,e[8]=s,e[9]=u,e[10]=h,e[11]=f,e[12]=m}else u=e[9],h=e[10],f=e[11],m=e[12];let p;e[13]!==u||e[14]!==h?(p=h.length>0&&r.jsx(x3,{overflow:h,onSelect:u}),e[13]=u,e[14]=h,e[15]=p):p=e[15];let g;return e[16]!==f||e[17]!==m||e[18]!==p?(g=r.jsxs("div",{className:f,children:[m,p]}),e[16]=f,e[17]=m,e[18]=p,e[19]=g):g=e[19],g}function S3(t){const e=B.c(12);let s,i,n,o;e[0]!==t?({className:s,orientation:n,decorative:o,...i}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=n,e[4]=o):(s=e[1],i=e[2],n=e[3],o=e[4]);const a=n===void 0?"horizontal":n,l=o===void 0?!0:o;let c;e[5]!==s?(c=Y("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",s),e[5]=s,e[6]=c):c=e[6];let d;return e[7]!==l||e[8]!==a||e[9]!==i||e[10]!==c?(d=r.jsx(hm,{"data-slot":"separator-root",decorative:l,orientation:a,className:c,...i}),e[7]=l,e[8]=a,e[9]=i,e[10]=c,e[11]=d):d=e[11],d}function w3(t){const e=B.c(20),{prNumber:s,disabled:i,send:n}=t;let o;e[0]!==s||e[1]!==n?(o=()=>n($2({prNumber:s})),e[0]=s,e[1]=n,e[2]=o):o=e[2];const a=o;let l;e[3]!==s||e[4]!==n?(l=()=>n(B2({prNumber:s})),e[3]=s,e[4]=n,e[5]=l):l=e[5];const c=l;let d;e[6]!==i||e[7]!==a?(d=r.jsx(oe,{size:"sm",className:"rounded-r-none border-r border-primary-foreground/20",disabled:i,onClick:a,children:"Publish"}),e[6]=i,e[7]=a,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(cr,{className:"h-3.5 w-3.5"}),e[9]=u):u=e[9];let h;e[10]!==i?(h=r.jsx(ds,{asChild:!0,children:r.jsx(oe,{size:"sm",className:"rounded-l-none px-2",disabled:i,"aria-label":"More actions",children:u})}),e[10]=i,e[11]=h):h=e[11];let f;e[12]!==c?(f=r.jsx(hs,{align:"end",children:r.jsx(Qe,{onClick:c,children:"Review"})}),e[12]=c,e[13]=f):f=e[13];let m;e[14]!==h||e[15]!==f?(m=r.jsxs(cs,{children:[h,f]}),e[14]=h,e[15]=f,e[16]=m):m=e[16];let p;return e[17]!==d||e[18]!==m?(p=r.jsxs("div",{className:"inline-flex items-stretch rounded-md",children:[d,m]}),e[17]=d,e[18]=m,e[19]=p):p=e[19],p}const V3=new Set(["failure","timed_out","cancelled","action_required"]);function C3(t){return t.status==="completed"&&V3.has(t.conclusion)}function k3(t){return t.status==="queued"||t.status==="in_progress"}function j3(t){const{branchStatus:e,pr:s,checks:i,reviews:n}=t;if(!e)return null;if(e.workingTreeDirty||e.unpushed>0)return{label:"Save changes",action:"commit-and-push"};if(s?.merged)return!!e.headSha&&!!s.headSha&&e.headSha!==s.headSha?{label:"Submit for review",action:"create-pr"}:null;if(e.aheadOfBase>0){if(s&&s.state==="closed"&&!s.merged)return{label:"Reopen",action:"reopen"};if(!s)return{label:"Submit for review",action:"create-pr"};if((n?.mergeableState??"unknown")==="dirty")return{label:`Sync with ${s.base}`,action:"rebase"};const l=i.filter(C3).map(c=>c.name);return l.length>0?{label:"Fix tests",action:"fix-checks",meta:{failingChecks:l}}:i.some(k3)?{label:"Running tests…",disabled:!0}:n?.draft?{label:"Mark ready",action:"mark-ready"}:(n?.unresolvedConversations??0)>0?{label:"Address feedback",action:"resolve-comments"}:n?.missingRequiredApprovals?{label:"Awaiting review",disabled:!0}:{label:"Publish",action:"merge-split"}}return null}function N3(){return Ti().branchStatus}const A3=6e4,E3=3e4;function I3(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:A3,refetchIntervalInBackground:!1,staleTime:E3,select:T3},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function T3(t){const e=Nr(t);if(!e)return null;const s=e.mergeable_state??"unknown",i=!!(e.draft??!1),n=Number(e.review_comments??0),o=s==="blocked"&&n>0?n:0;return{draft:i,mergeableState:s,unresolvedConversations:o,missingRequiredApprovals:s==="blocked"&&o===0}}function R3(t){const e=B.c(38),{virtualMcpId:s}=t,{org:i}=xe(),n=$t(s),{currentBranch:o}=Lt(),a=Cn(),l=n?.metadata?.githubRepo??null,c=N3(),d=l?.connectionId??"",u=l?.owner??"",h=l?.name??"",f=o??null;let m;e[0]!==i.id||e[1]!==d||e[2]!==u||e[3]!==h||e[4]!==f?(m={orgId:i.id,connectionId:d,owner:u,repo:h,branch:f},e[0]=i.id,e[1]=d,e[2]=u,e[3]=h,e[4]=f,e[5]=m):m=e[5];const g=Cu(m).data??null,_=l?.connectionId??"",v=l?.owner??"",x=l?.name??"",b=g&&g.state==="open"?g.number:null;let y;e[6]!==i.id||e[7]!==_||e[8]!==v||e[9]!==x||e[10]!==b?(y={orgId:i.id,connectionId:_,owner:v,repo:x,prNumber:b},e[6]=i.id,e[7]=_,e[8]=v,e[9]=x,e[10]=b,e[11]=y):y=e[11];const V=ju(y),C=l?.connectionId??"",S=l?.owner??"",w=l?.name??"",k=g&&g.state==="open"?g.number:null;let T;e[12]!==i.id||e[13]!==C||e[14]!==S||e[15]!==w||e[16]!==k?(T={orgId:i.id,connectionId:C,owner:S,repo:w,prNumber:k},e[12]=i.id,e[13]=C,e[14]=S,e[15]=w,e[16]=k,e[17]=T):T=e[17];const M=I3(T);if(!l?.connectionId||!o)return null;let I;e[18]!==c||e[19]!==V.data||e[20]!==g||e[21]!==M.data?(I=j3({branchStatus:c,pr:g,checks:V.data??[],reviews:M.data??null}),e[18]=c,e[19]=V.data,e[20]=g,e[21]=M.data,e[22]=I):I=e[22];const E=I;if(!E)return null;let N;e[23]!==a?(N=$=>a.sendMessage({parts:[{type:"text",text:$}]}),e[23]=a,e[24]=N):N=e[24];const A=N,D=a.isStreaming;let L;e[25]!==o||e[26]!==E||e[27]!==D||e[28]!==g||e[29]!==A?(L=$=>{if(!D)switch($){case"commit-and-push":{A(I2({branch:o}));return}case"create-pr":{A(T2({branch:o}));return}case"reopen":{g&&A(R2({prNumber:g.number}));return}case"rebase":{A(M2({branch:o}));return}case"fix-checks":{g&&A(P2({prNumber:g.number,failingChecks:E.meta?.failingChecks??[]}));return}case"mark-ready":{g&&A(L2({prNumber:g.number}));return}case"resolve-comments":{g&&A(O2({prNumber:g.number}));return}case"merge-split":return}},e[25]=o,e[26]=E,e[27]=D,e[28]=g,e[29]=A,e[30]=L):L=e[30];const R=L;let P;e[31]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(S3,{orientation:"vertical",className:"mx-2 data-[orientation=vertical]:h-5"}),e[31]=P):P=e[31];const O=g?.number;let z;return e[32]!==E||e[33]!==D||e[34]!==R||e[35]!==A||e[36]!==O?(z=r.jsxs(r.Fragment,{children:[P,r.jsx(M3,{button:E,isStreaming:D,onActivate:R,prNumber:O,send:A})]}),e[32]=E,e[33]=D,e[34]=R,e[35]=A,e[36]=O,e[37]=z):z=e[37],z}function M3(t){const e=B.c(18),{button:s,isStreaming:i}=t,n=!!s.disabled||i,o=i?"Chat is running":null;if(s.action==="merge-split"&&t.prNumber!=null){let u;e[0]!==n||e[1]!==t.prNumber||e[2]!==t.send?(u=r.jsx(w3,{prNumber:t.prNumber,disabled:n,send:t.send}),e[0]=n,e[1]=t.prNumber,e[2]=t.send,e[3]=u):u=e[3];let h;return e[4]!==u||e[5]!==o?(h=r.jsx(md,{label:o,children:u}),e[4]=u,e[5]=o,e[6]=h):h=e[6],h}const a=s.disabled?"outline":"default";let l;e[7]!==s.action||e[8]!==t?(l=()=>t.onActivate(s.action),e[7]=s.action,e[8]=t,e[9]=l):l=e[9];let c;e[10]!==s.label||e[11]!==n||e[12]!==a||e[13]!==l?(c=r.jsx(oe,{size:"sm",variant:a,disabled:n,onClick:l,children:s.label}),e[10]=s.label,e[11]=n,e[12]=a,e[13]=l,e[14]=c):c=e[14];let d;return e[15]!==c||e[16]!==o?(d=r.jsx(md,{label:o,children:c}),e[15]=c,e[16]=o,e[17]=d):d=e[17],d}function md(t){const e=B.c(9),{label:s,children:i}=t;if(!s){let l;return e[0]!==i?(l=r.jsx(r.Fragment,{children:i}),e[0]=i,e[1]=l):l=e[1],l}let n;e[2]!==i?(n=r.jsx(qe,{asChild:!0,children:r.jsx("span",{children:i})}),e[2]=i,e[3]=n):n=e[3];let o;e[4]!==s?(o=r.jsx(Ge,{children:s}),e[4]=s,e[5]=o):o=e[5];let a;return e[6]!==n||e[7]!==o?(a=r.jsx(bi,{children:r.jsxs(Ye,{children:[n,o]})}),e[6]=n,e[7]=o,e[8]=a):a=e[8],a}function D3(t){const e=B.c(2),{virtualMcp:s}=t;if(!!!(s.metadata?.githubRepo??null)?.connectionId)return null;let o;return e[0]!==s.id?(o=r.jsx(Re.Right,{children:r.jsx(R3,{virtualMcpId:s.id})}),e[0]=s.id,e[1]=o):o=e[1],o}const _i=j.createContext(null);function ml(){return j.use(_i)}function pd(t){const e=B.c(8),{children:s,variant:i}=t,{taskId:n}=Lt();let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong loading the chat. Try refreshing."}),e[0]=o):o=e[0];let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(Ee.Skeleton,{}),e[1]=a):a=e[1];let l;e[2]!==s||e[3]!==i?(l=s??r.jsx(Zh,{variant:i}),e[2]=s,e[3]=i,e[4]=l):l=e[4];let c;return e[5]!==l||e[6]!==n?(c=r.jsx(ls,{fallback:o,children:r.jsx(j.Suspense,{fallback:a,children:r.jsx(Ee.ActiveTaskProvider,{taskId:n,children:l})})}),e[5]=l,e[6]=n,e[7]=c):c=e[7],c}function gd(t){const e=B.c(3),{onNewTaskRef:s,createNewTask:i}=t;let n;return e[0]!==i||e[1]!==s?(n=()=>(s.current=i,()=>{s.current=null}),e[0]=i,e[1]=s,e[2]=n):n=e[2],j.useLayoutEffect(n),null}function P3(t){const e=B.c(3),{onOpenSidebar:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(mp,{size:20}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx("div",{className:"shrink-0 flex items-center justify-between px-3 h-12 bg-background border-b border-border",children:r.jsx("button",{type:"button",onClick:s,className:"flex size-8 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors","aria-label":"Open menu",children:i})}),e[1]=s,e[2]=n):n=e[2],n}function _d(t){const e=B.c(16),{virtualMcpId:s,hasActiveGithubRepo:i,vmMap:n,children:o}=t,{org:a}=xe(),{currentBranch:l}=Lt(),{data:c}=dt.useSession(),d=c?.user?.id,u=d&&l?n?.[d]?.[l]??null:null;let h;e[0]!==u?(h=u?.previewUrl?u.previewUrl.replace(/\/$/,""):null,e[0]=u,e[1]=h):h=e[1];const f=h;let m;e[2]!==a.id?(m={connectionId:yt,orgId:a.id},e[2]=a.id,e[3]=m):m=e[3];const p=Ae(m),{mutate:g}=el(p);let _;e[4]===Symbol.for("react.memo_cache_sentinel")?(_=new Set,e[4]=_):_=e[4];const v=j.useRef(_);let x,b;e[5]!==l||e[6]!==i||e[7]!==g||e[8]!==d||e[9]!==s||e[10]!==n?(x=()=>{i&&d&&l&&(n?.[d]?.[l]||v.current.has(l)||(v.current.add(l),g({virtualMcpId:s,branch:l},{onError:L3})))},b=[i,d,l,n,s,g],e[5]=l,e[6]=i,e[7]=g,e[8]=d,e[9]=s,e[10]=n,e[11]=x,e[12]=b):(x=e[11],b=e[12]),j.useEffect(x,b);let y;return e[13]!==o||e[14]!==f?(y=r.jsx(uS,{daemonBaseUrl:f,children:o}),e[13]=o,e[14]=f,e[15]=y):y=e[15],y}function L3(t){console.error("[auto-start-vm] failed:",t)}function xd(){const t=B.c(106),e=ms(),s=Oe(),{org:i}=xe(),n=fy()?.tasksOpen??!1;Sg(i.id);let o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o={strict:!1},t[0]=o):o=t[0];const a=_r(o),l=a.org??"";let c;t[1]===Symbol.for("react.memo_cache_sentinel")?(c={strict:!1},t[1]=c):c=t[1];const d=ti(c);let u;t[2]!==i.id||t[3]!==d.virtualmcpid?(u=d.virtualmcpid??En(i.id).id,t[2]=i.id,t[3]=d.virtualmcpid,t[4]=u):u=t[4];const h=u;let f;t[5]!==i.id?(f=Aa(i.id),t[5]=i.id,t[6]=f):f=t[6];const m=h===f,p=!m,g=Lg(a.taskId??"",h),_=$t(h),v=_?.metadata?.ui?.layout??null;let x;t[7]!==v?(x=v?{defaultMainView:v.defaultMainView??null,chatDefaultOpen:v.chatDefaultOpen??null}:null,t[7]=v,t[8]=x):x=t[8];const b=x;let y;t[9]!==_?(y=_&&bs(_),t[9]=_,t[10]=y):y=t[10];const V=!!y;let C;t[11]!==p||t[12]!==l||t[13]!==h?(C={virtualMcpId:h,orgSlug:l,isAgentRoute:p},t[11]=p,t[12]=l,t[13]=h,t[14]=C):C=t[14];const S=dy(b,C),{setOpenMobile:w,openMobile:k}=Cr(),T=w,M=j.useRef(null);let I,E;t[15]===Symbol.for("react.memo_cache_sentinel")?(I=()=>{const K=G=>{Md(G)&&G.shiftKey&&G.code==="KeyS"&&!G.repeat&&(G.preventDefault(),M.current?.())};return document.addEventListener("keydown",K),()=>document.removeEventListener("keydown",K)},E=[],t[15]=I,t[16]=E):(I=t[15],E=t[16]),j.useEffect(I,E);const N=h;let A;t[17]!==_||t[18]!==h?(A={virtualMcpId:h,entity:_},t[17]=_,t[18]=h,t[19]=A):A=t[19];const D=A;if(g.status==="creating"||g.status==="loading"){let K;t[20]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsxs("div",{className:"flex h-full items-center justify-center bg-background card-shadow rounded-[0.75rem] text-sm text-muted-foreground",children:[r.jsx(Ne,{className:"size-4 animate-spin mr-2"}),"Creating task…"]})}),t[20]=K):K=t[20];let G;return t[21]!==D?(G=r.jsx(_i,{value:D,children:K}),t[21]=D,t[22]=G):G=t[22],G}if(g.status==="error"){let K;t[23]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx("div",{className:"font-medium",children:"Task unavailable"}),t[23]=K):K=t[23];let G;t[24]!==g.error.message?(G=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsxs("div",{className:"flex flex-col h-full items-center justify-center gap-2 bg-background card-shadow rounded-[0.75rem] p-8 text-sm",children:[K,r.jsx("div",{className:"text-muted-foreground",children:g.error.message})]})}),t[24]=g.error.message,t[25]=G):G=t[25];let ie;return t[26]!==D||t[27]!==G?(ie=r.jsx(_i,{value:D,children:G}),t[26]=D,t[27]=G,t[28]=ie):ie=t[28],ie}if(!_){let K;t[29]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(Bs,{size:48,className:"text-muted-foreground"}),t[29]=K):K=t[29];const G=`The agent "${h}" does not exist in this organization.`;let ie;t[30]!==s||t[31]!==l?(ie=r.jsx(oe,{variant:"outline",onClick:()=>s({to:"/$org",params:{org:l}}),children:"Go to organization home"}),t[30]=s,t[31]=l,t[32]=ie):ie=t[32];let te;t[33]!==G||t[34]!==ie?(te=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsx("div",{className:"flex flex-col h-full bg-background overflow-hidden card-shadow rounded-[0.75rem]",children:r.jsx(Vi,{image:K,title:"Agent not found",description:G,actions:ie})})}),t[33]=G,t[34]=ie,t[35]=te):te=t[35];let J;return t[36]!==D||t[37]!==te?(J=r.jsx(_i,{value:D,children:te}),t[36]=D,t[37]=te,t[38]=J):J=t[38],J}if(e){let K;t[39]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(ig,{className:"sr-only",children:"Navigation"}),t[39]=K):K=t[39];let G;t[40]!==T?(G=r.jsx("div",{className:"w-14 shrink-0 bg-sidebar flex flex-col items-center border-r border-border overflow-y-auto group/sidebar","data-state":"collapsed",children:r.jsx(iy,{onClose:()=>T(!1)})}),t[40]=T,t[41]=G):G=t[41];let ie;t[42]===Symbol.for("react.memo_cache_sentinel")?(ie=r.jsx("div",{className:"flex-1 min-w-0 overflow-hidden",children:r.jsx(su,{})}),t[42]=ie):ie=t[42];let te;t[43]!==G?(te=r.jsxs(rg,{side:"left",hideCloseButton:!0,className:"w-[calc(100vw-3rem)] sm:max-w-md! p-0",children:[K,r.jsxs("div",{className:"flex h-full",children:[G,ie]})]}),t[43]=G,t[44]=te):te=t[44];let J;t[45]!==k||t[46]!==T||t[47]!==te?(J=r.jsx(ng,{open:k,onOpenChange:T,children:te}),t[45]=k,t[46]=T,t[47]=te,t[48]=J):J=t[48];const ae=J,Z=_?.metadata?.vmMap;let de;t[49]!==S.createNewTask?(de=r.jsx(gd,{onNewTaskRef:M,createNewTask:S.createNewTask}),t[49]=S.createNewTask,t[50]=de):de=t[50];let fe;t[51]!==T?(fe=r.jsx(P3,{onOpenSidebar:()=>T(!0)}),t[51]=T,t[52]=fe):fe=t[52];const ye=m?"home":void 0;let ge;t[53]!==ye?(ge=r.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:r.jsx(pd,{variant:ye})}),t[53]=ye,t[54]=ge):ge=t[54];let ce;t[55]!==V||t[56]!==ae||t[57]!==Z||t[58]!==de||t[59]!==fe||t[60]!==ge||t[61]!==h?(ce=r.jsxs(_d,{virtualMcpId:h,hasActiveGithubRepo:V,vmMap:Z,children:[de,fe,ge,ae]}),t[55]=V,t[56]=ae,t[57]=Z,t[58]=de,t[59]=fe,t[60]=ge,t[61]=h,t[62]=ce):ce=t[62];let ue;t[63]!==N||t[64]!==ce?(ue=r.jsx("div",{className:"flex flex-col flex-1 bg-background min-h-0",children:r.jsx(Ee.Provider,{virtualMcpId:N,children:ce},N)}),t[63]=N,t[64]=ce,t[65]=ue):ue=t[65];let be;return t[66]!==D||t[67]!==ue?(be=r.jsx(_i,{value:D,children:ue}),t[66]=D,t[67]=ue,t[68]=be):be=t[68],be}const L=n?void 0:S.createNewTask;let R;t[69]!==m||t[70]!==S.chatOpen||t[71]!==S.toggleChat||t[72]!==L?(R=r.jsx(Re.Toggles,{children:r.jsx(m3,{isDecopilot:m,chatOpen:S.chatOpen,toggleChat:S.toggleChat,onNewTask:L})}),t[69]=m,t[70]=S.chatOpen,t[71]=S.toggleChat,t[72]=L,t[73]=R):R=t[73];let P;t[74]!==m||t[75]!==S.taskId||t[76]!==h?(P=!m&&r.jsx(Re.Tabs,{children:r.jsx(y3,{virtualMcpId:h,taskId:S.taskId})}),t[74]=m,t[75]=S.taskId,t[76]=h,t[77]=P):P=t[77];const O=_?.metadata?.vmMap;let z;t[78]!==_||t[79]!==m?(z=!m&&r.jsx(D3,{virtualMcp:_}),t[78]=_,t[79]=m,t[80]=z):z=t[80];let $;t[81]!==S.createNewTask?($=r.jsx(gd,{onNewTaskRef:M,createNewTask:S.createNewTask}),t[81]=S.createNewTask,t[82]=$):$=t[82];const q=m?"home":void 0;let F;t[83]!==q?(F=r.jsx(pd,{variant:q}),t[83]=q,t[84]=F):F=t[84];let W;t[85]!==S.chatOpen||t[86]!==S.mainOpen||t[87]!==S.taskId||t[88]!==F||t[89]!==h?(W=r.jsx(f3,{virtualMcpId:h,taskId:S.taskId,chatOpen:S.chatOpen,mainOpen:S.mainOpen,chatContent:F}),t[85]=S.chatOpen,t[86]=S.mainOpen,t[87]=S.taskId,t[88]=F,t[89]=h,t[90]=W):W=t[90];let H;t[91]!==V||t[92]!==O||t[93]!==z||t[94]!==$||t[95]!==W||t[96]!==h?(H=r.jsxs(_d,{virtualMcpId:h,hasActiveGithubRepo:V,vmMap:O,children:[z,$,W]}),t[91]=V,t[92]=O,t[93]=z,t[94]=$,t[95]=W,t[96]=h,t[97]=H):H=t[97];let U;t[98]!==N||t[99]!==P||t[100]!==H?(U=r.jsxs(Ee.Provider,{virtualMcpId:N,children:[P,H]},N),t[98]=N,t[99]=P,t[100]=H,t[101]=U):U=t[101];let X;return t[102]!==D||t[103]!==R||t[104]!==U?(X=r.jsxs(_i,{value:D,children:[R,U]}),t[102]=D,t[103]=R,t[104]=U,t[105]=X):X=t[105],X}function Oj(){const t=B.c(5),e=ms();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={"--sidebar-width-icon":"3.5rem"},t[0]=s):s=t[0];let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(sy,{}),t[1]=i):i=t[1];let n;t[2]===Symbol.for("react.memo_cache_sentinel")?(n={background:"transparent",containerType:"inline-size"},t[2]=n):n=t[2];let o;return t[3]!==e?(o=r.jsx(eg,{defaultOpen:!1,children:r.jsx("div",{className:"flex flex-col h-dvh overflow-hidden",children:r.jsxs(tg,{className:"flex-1 bg-sidebar",style:s,children:[i,r.jsx(sg,{className:"flex flex-col",style:n,children:e?r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(xd,{})}):r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(hy,{children:r.jsxs(Re,{children:[r.jsxs(Re.Header,{children:[r.jsxs(Re.LeftColumn,{children:[r.jsx(Re.Nav,{}),r.jsx(Re.TogglesSlot,{})]}),r.jsx(Re.CenterSlot,{}),r.jsxs(Re.RightColumn,{children:[r.jsx(Re.TabsSlot,{}),r.jsx(Re.RightSlot,{})]})]}),r.jsxs("div",{className:"flex-1 min-h-0 flex flex-row",children:[r.jsx(Ey,{}),r.jsx("div",{className:"flex-1 min-w-0 flex flex-col",children:r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(xd,{})})})]})]})})})})]})})}),t[3]=e,t[4]=o):o=t[4],o}export{Oj as default,ml as useInsetContext};
|
|
735
|
+
</message>`}]}}))},R=e.models?.credentialId||m||"",P=e.models?.thinking?.id||p?.modelId||"",O=Ai({defaultValues:{name:e.name,active:e.active,credential_id:R,model_id:P}}),z=O.watch("active"),$=O.watch("credential_id"),q=O.watch("model_id"),{models:F,isLoading:W}=eh($||void 0),H=F.find(ce=>ce.modelId===q)??null,U=j.useRef(null),X=j.useRef(new Set),K=j.useRef(0),G=j.useRef(null),ie=3e4,te=()=>{G.current&&(clearTimeout(G.current),G.current=null),U.current!==null&&(re("automation_updated",{automation_id:t,agent_id:o,fields:Array.from(X.current),save_count:K.current,edit_duration_ms:Date.now()-U.current}),U.current=null,X.current=new Set,K.current=0)},J=async()=>{if(!(Object.keys(O.formState.dirtyFields).length>0)&&!A.current)return!0;const ue=Object.keys(O.formState.dirtyFields),be=A.current;A.current=!1;const pe=O.getValues(),Ce=D.current;try{const Ie=pe.credential_id&&pe.model_id?pe.credential_id:"",ee=pe.credential_id&&pe.model_id?pe.model_id:"",se={id:t,name:pe.name,active:pe.active,agent:{id:o},models:{credentialId:Ie,thinking:{id:ee}},messages:jd(Ce),temperature:0};await l.mutateAsync(se),U.current===null&&(U.current=Date.now());for(const Ve of ue)X.current.add(Ve);return be&&X.current.add("messages"),K.current+=1,G.current&&clearTimeout(G.current),G.current=setTimeout(te,ie),O.reset({...pe,credential_id:Ie,model_id:ee},{keepDirtyValues:!0}),!0}catch{return A.current=!0,!1}},ae=j.useRef(J);ae.current=J;const Z=()=>{N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{N.current=null,ae.current()},1e3)},de=async()=>(N.current&&(clearTimeout(N.current),N.current=null),ae.current()),fe=ce=>{if(D.current=ce,y(ce),!E.current){E.current=!0;return}A.current=!0,Z()},ye=j.useRef(!1);ye.current||(ye.current=!0,O.watch(()=>{Z()})),j.useEffect(()=>()=>{N.current&&(clearTimeout(N.current),N.current=null,ae.current())},[]);const ge=async()=>{re("automation_test_clicked",{automation_id:t,agent_id:o});const ce=await de();if(te(),!ce)return;if(!b){he.error("No instructions configured for this automation");return}H&&$&&f({...H,keyId:$}),v({..._,toolApprovalLevel:"auto"});const ue=gl(b);h({message:{tiptapDoc:b,parts:ue},virtualMcpId:o||void 0})};return r.jsxs(r.Fragment,{children:[i&&r.jsx("div",{className:"flex items-center pb-4 shrink-0",children:r.jsxs(oe,{variant:"ghost",size:"sm",onClick:i,children:[r.jsx(Pa,{size:14}),"Back to list"]})}),r.jsxs("div",{className:"flex flex-col gap-8",children:[r.jsxs("div",{className:"flex flex-col gap-1.5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-4",children:[r.jsx(at,{...O.register("name"),placeholder:"Automation name",className:"border border-transparent shadow-none px-0 text-lg font-medium h-auto focus-visible:ring-0 focus-visible:border-border bg-transparent flex-1",style:{boxShadow:"none"}}),n&&r.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive shrink-0",onClick:n,children:r.jsx(Ro,{size:14})})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(pi,{control:O.control,name:"active",render:({field:ce})=>r.jsx(mn,{checked:ce.value,onCheckedChange:ue=>{ce.onChange(ue),setTimeout(()=>de(),0)},className:"cursor-pointer"})}),r.jsx("span",{className:"text-sm text-muted-foreground",children:z?"Active":"Inactive"}),r.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),r.jsx(Ch,{id:e.created_by,size:"2xs",className:"text-sm text-muted-foreground"})]})]}),r.jsxs("div",{className:"flex flex-col gap-2.5",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Starter"}),r.jsx(QC,{automationId:t,open:V,onOpenChange:C,onCustomSelect:()=>{w(!0),I(!1),T("")},onEventSelect:()=>{I(!0),w(!1)}})]}),e.triggers.length===0&&!S?r.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-6 text-center",children:r.jsxs("p",{className:"text-sm text-muted-foreground",children:["When should this automation run?"," ",r.jsx("button",{type:"button",className:"text-foreground underline underline-offset-2 cursor-pointer hover:text-foreground/80 transition-colors",onClick:()=>C(!0),children:"Add a starter"})," ","to get going."]})}):r.jsx("div",{className:"flex flex-col gap-2",children:e.triggers.map(ce=>r.jsx(ZC,{trigger:ce,automationId:t,connectionName:ce.connection_id?u.get(ce.connection_id):void 0},ce.id))}),S&&r.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[r.jsx(tr,{size:14,className:"text-muted-foreground shrink-0"}),r.jsx("input",{type:"text",value:k,onChange:ce=>T(ce.target.value),onBlur:async()=>{const ce=k.trim();if(!(!ce||!nr(ce)))try{await c.mutateAsync({automation_id:t,type:"cron",cron_expression:ce}),re("automation_trigger_added",{automation_id:t,trigger_type:"cron"}),he.success("Starter added"),w(!1),T("")}catch{he.error("Failed to add starter")}},onKeyDown:async ce=>{const ue=k.trim();ce.key==="Enter"&&ue&&nr(ue)&&ce.target.blur(),ce.key==="Escape"&&(w(!1),T(""))},placeholder:"0 9 * * 1-5",className:"flex-1 text-sm font-mono bg-transparent outline-none placeholder:text-muted-foreground/40",autoFocus:!0}),k&&!nr(k)&&r.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"}),c.isPending&&r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground shrink-0"}),r.jsx("button",{type:"button",className:"shrink-0 p-0.5 rounded text-muted-foreground opacity-0 group-hover:opacity-100 hover:text-foreground transition-opacity",onClick:()=>{w(!1),T("")},children:r.jsx(Os,{size:13})})]}),M&&r.jsx(j.Suspense,{fallback:r.jsxs("div",{className:"flex items-center gap-2 px-3 py-3 rounded-lg border border-border bg-background",children:[r.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),r.jsx("span",{className:"text-sm text-muted-foreground",children:"Loading connections..."})]}),children:r.jsx(t3,{automationId:t,onDone:()=>I(!1)})})]}),r.jsxs("div",{className:"flex flex-col gap-2.5",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Instructions"}),r.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:!b,onClick:L,children:[r.jsx(Da,{size:13}),"Improve"]})]}),r.jsx(Gh,{tiptapDoc:b,setTiptapDoc:fe,placeholder:"What should this automation do?",children:r.jsxs("div",{className:"rounded-xl border border-border min-h-[120px] flex flex-col",children:[r.jsx(Yh,{virtualMcpId:o||null,className:"max-h-[45vh]"}),r.jsxs("div",{className:"flex items-center justify-end gap-1.5 p-2.5",children:[r.jsx(sh,{model:H,isLoading:W,credentialId:$||null,onCredentialChange:ce=>{O.setValue("credential_id",ce??"",{shouldDirty:!0}),O.setValue("model_id","",{shouldDirty:!0})},onModelChange:ce=>O.setValue("model_id",ce.modelId,{shouldDirty:!0}),placeholder:"Model"}),r.jsxs(Ye,{children:[r.jsx(qe,{asChild:!0,children:r.jsxs(oe,{type:"button",variant:"default",className:"h-8 gap-1.5 rounded-md px-3 text-sm font-medium",onClick:ge,disabled:!o,children:[r.jsx(Od,{size:16}),"Test"]})}),r.jsx(Ge,{children:"Test Automation"})]})]})]})})]})]})]})}function o3(t){const e=B.c(6),{tabId:s,virtualMcpId:i}=t;let n;e[0]!==s?(n=Ad(s),e[0]=s,e[1]=n):n=e[1];const o=n;if(!o)return null;let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=a):a=e[2];let l;return e[3]!==o.id||e[4]!==i?(l=r.jsx(Jt,{children:r.jsx(Jt.Content,{children:r.jsx(Jt.Body,{children:r.jsx(j.Suspense,{fallback:a,children:r.jsx(a3,{id:o.id,virtualMcpId:i})})})})}),e[3]=o.id,e[4]=i,e[5]=l):l=e[5],l}function a3(t){const e=B.c(9),{id:s,virtualMcpId:i}=t,n=Oe(),{data:o,isLoading:a}=Eg(s);let l;e[0]!==n?(l=()=>n({to:".",search:l3,replace:!0}),e[0]=n,e[1]=l):l=e[1];const c=l;if(a){let u;return e[2]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=u):u=e[2],u}if(!o){let u;return e[3]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Automation not found"}),e[3]=u):u=e[3],u}let d;return e[4]!==o||e[5]!==s||e[6]!==c||e[7]!==i?(d=r.jsx(n3,{automationId:s,automation:o,virtualMcpId:i,onBack:c}),e[4]=o,e[5]=s,e[6]=c,e[7]=i,e[8]=d):d=e[8],d}function l3(t){return{...t,main:"automations"}}function c3(t){const e=B.c(20),{virtualMcpId:s}=t,i=Oe(),{data:n}=Ig(s),o=n===void 0?[]:n,{create:a}=jr(),[l,c]=j.useState(""),d=l.toLowerCase(),u=o.filter(T=>T.name.toLowerCase().includes(d));let h;e[0]!==i?(h=T=>i({to:".",search:M=>({...M,main:"automation:"+T}),replace:!0}),e[0]=i,e[1]=h):h=e[1];const f=h,m=async()=>{if(a.isPending)return;re("automation_new_clicked",{virtual_mcp_id:s,existing_count:o.length});const T=await a.mutateAsync(Rg(s));f(T.id)},p=Jt,g=Jt,_=Jt;let v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx(Jt.Title,{children:"Automations"}),e[2]=v):v=e[2];const x=o.length>0&&r.jsx(Mg,{value:l,onChange:c,placeholder:"Search automations...",className:"w-full md:w-[375px]"});let b;e[3]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Dt,{size:14}),e[3]=b):b=e[3];let y;e[4]!==a.isPending||e[5]!==m?(y=r.jsxs(oe,{size:"sm",onClick:m,disabled:a.isPending,children:[b,"New automation"]}),e[4]=a.isPending,e[5]=m,e[6]=y):y=e[6];let V;e[7]!==x||e[8]!==y?(V=r.jsxs("div",{className:"flex flex-col gap-6",children:[v,r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[x,y]})]}),e[7]=x,e[8]=y,e[9]=V):V=e[9];const C=o.length===0?r.jsx("div",{className:"flex items-center justify-center py-20",children:r.jsx(Vi,{image:r.jsx(Ci,{size:48,className:"text-muted-foreground"}),title:"No automations yet",description:"Create your first automation to run this agent on a schedule or in response to events.",actions:r.jsxs(oe,{size:"sm",onClick:m,disabled:a.isPending,children:[r.jsx(Dt,{size:14}),"New automation"]})})}):u.length===0?r.jsx("div",{className:"flex items-center justify-center py-20",children:r.jsx(Vi,{image:r.jsx(Ci,{size:48,className:"text-muted-foreground"}),title:"No automations found",description:`No automations match "${l}"`})}):r.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:u.map(T=>r.jsx(Tg,{automation:T,onClick:()=>f(T.id)},T.id))});let S;e[10]!==C||e[11]!==_.Body||e[12]!==V?(S=r.jsxs(_.Body,{children:[V,C]}),e[10]=C,e[11]=_.Body,e[12]=V,e[13]=S):S=e[13];let w;e[14]!==S||e[15]!==g.Content?(w=r.jsx(g.Content,{children:S}),e[14]=S,e[15]=g.Content,e[16]=w):w=e[16];let k;return e[17]!==p||e[18]!==w?(k=r.jsx(p,{children:w}),e[17]=p,e[18]=w,e[19]=k):k=e[19],k}function d3(t){const e=B.c(3),{virtualMcpId:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx(j.Suspense,{fallback:i,children:r.jsx(c3,{virtualMcpId:s})}),e[1]=s,e[2]=n):n=e[2],n}const ud=j.lazy(()=>hm(()=>import("./project-app-view-7T_TcCNb.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56])).then(t=>({default:t.AppViewContent})));function h3(t){const e=B.c(44),{taskId:s,virtualMcpId:i}=t;let n;e[0]!==s||e[1]!==i?(n={virtualMcpId:i,taskId:s},e[0]=s,e[1]=i,e[2]=n):n=e[2];const{activeTab:o,layoutTabs:a,expandedTools:l,automationTabParsed:c}=Vu(n);if(Tm(o)){let p;return e[3]!==i?(p=r.jsx(pc,{virtualMcpId:i}),e[3]=i,e[4]=p):p=e[4],p}if(o==="git"){let p;return e[5]!==i?(p=r.jsx(J2,{virtualMcpId:i}),e[5]=i,e[6]=p):p=e[6],p}if(o==="automations"){let p;return e[7]!==i?(p=r.jsx(d3,{virtualMcpId:i}),e[7]=i,e[8]=p):p=e[8],p}if(o==="env"){let p;return e[9]!==i?(p=r.jsx(KC,{virtualMcpId:i}),e[9]=i,e[10]=p):p=e[10],p}if(o==="preview"){let p;return e[11]!==i?(p=r.jsx(NS,{virtualMcpId:i}),e[11]=i,e[12]=p):p=e[12],p}if(c){let p;return e[13]!==o||e[14]!==i?(p=r.jsx(o3,{tabId:o,virtualMcpId:i}),e[13]=o,e[14]=i,e[15]=p):p=e[15],p}let d;e[16]!==o?(d=Rm(o),e[16]=o,e[17]=d):d=e[17];const u=d;if(u){let p;if(e[18]!==l||e[19]!==u.connectionId||e[20]!==u.toolName){let b;e[22]!==u.connectionId||e[23]!==u.toolName?(b=y=>y.appId===u.connectionId&&y.toolName===u.toolName,e[22]=u.connectionId,e[23]=u.toolName,e[24]=b):b=e[24],p=l.find(b),e[18]=l,e[19]=u.connectionId,e[20]=u.toolName,e[21]=p}else p=e[21];const g=p;let _;e[25]===Symbol.for("react.memo_cache_sentinel")?(_=r.jsx("div",{className:"h-full w-full flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[25]=_):_=e[25];const v=g?.args;let x;return e[26]!==o||e[27]!==u.connectionId||e[28]!==u.toolName||e[29]!==v?(x=r.jsx(j.Suspense,{fallback:_,children:r.jsx(ud,{connectionId:u.connectionId,toolName:u.toolName,args:v},o)}),e[26]=o,e[27]=u.connectionId,e[28]=u.toolName,e[29]=v,e[30]=x):x=e[30],x}let h;if(e[31]!==o||e[32]!==a){let p;e[34]!==o?(p=g=>g.id===o,e[34]=o,e[35]=p):p=e[35],h=a.find(p),e[31]=o,e[32]=a,e[33]=h}else h=e[33];const f=h;if(f){let p;e[36]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx("div",{className:"h-full w-full flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),e[36]=p):p=e[36];let g;return e[37]!==o||e[38]!==f.id||e[39]!==f.view.appId||e[40]!==f.view.args?(g=r.jsx(j.Suspense,{fallback:p,children:r.jsx(ud,{connectionId:f.view.appId,toolName:f.id,args:f.view.args},o)}),e[37]=o,e[38]=f.id,e[39]=f.view.appId,e[40]=f.view.args,e[41]=g):g=e[41],g}let m;return e[42]!==i?(m=r.jsx(pc,{virtualMcpId:i}),e[42]=i,e[43]=m):m=e[43],m}function u3(t){const e=B.c(7),{children:s,defaultSize:i}=t,[,n]=j.useTransition();let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ca.decoChatPanelWidth(),e[0]=o):o=e[0];const[a,l]=Va(o,45),c=i>0&&i<100?a:i;let d;e[1]!==l?(d=f=>n(()=>{f>0&&f<100&&l(f)}),e[1]=l,e[2]=d):d=e[2];const u=d;let h;return e[3]!==s||e[4]!==c||e[5]!==u?(h=r.jsx(ih,{defaultSize:c,minSize:20,collapsible:!0,collapsedSize:0,className:"min-w-0 overflow-hidden bg-sidebar",onResize:u,order:1,children:s}),e[3]=s,e[4]=c,e[5]=u,e[6]=h):h=e[6],h}function f3(t){const e=B.c(31),{virtualMcpId:s,taskId:i,chatOpen:n,mainOpen:o,variant:a,chatContent:l}=t;let c;e[0]!==n||e[1]!==o?(c=dc(n,o),e[0]=n,e[1]=o,e[2]=c):c=e[2];const d=c;let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=Ca.decoChatPanelWidth(),e[3]=u):u=e[3];const[h]=Va(u,45),f=j.useRef(null);let m,p;e[4]!==n||e[5]!==o||e[6]!==h?(m=()=>{const M=f.current;if(!M)return;const I=dc(n,o),E=I.chat>0&&I.chat<100?h:I.chat,N=I.chat>0&&I.chat<100?100-h:I.main;M.setLayout([E,N])},p=[n,o,h],e[4]=n,e[5]=o,e[6]=h,e[7]=m,e[8]=p):(m=e[7],p=e[8]),j.useEffect(m,p);const g=`${s}-${i}`;let _;e[9]===Symbol.for("react.memo_cache_sentinel")?(_={overflow:"visible"},e[9]=_):_=e[9];let v;e[10]!==l||e[11]!==a?(v=l??r.jsx(eu,{variant:a}),e[10]=l,e[11]=a,e[12]=v):v=e[12];let x;e[13]!==v?(x=r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:v})}),e[13]=v,e[14]=x):x=e[14];let b;e[15]!==d.chat||e[16]!==x?(b=r.jsx(u3,{defaultSize:d.chat,children:x}),e[15]=d.chat,e[16]=x,e[17]=b):b=e[17];let y;e[18]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(Ap,{className:"bg-sidebar"}),e[18]=y):y=e[18];const V=d.main;let C;e[19]===Symbol.for("react.memo_cache_sentinel")?(C={overflow:"visible"},e[19]=C):C=e[19];let S;e[20]===Symbol.for("react.memo_cache_sentinel")?(S=Y("flex flex-col h-full min-h-0 bg-background overflow-hidden","card-shadow","transition-[border-radius] duration-200 ease-[var(--ease-out-quart)]","rounded-[0.75rem]"),e[20]=S):S=e[20];let w;e[21]!==i||e[22]!==s?(w=r.jsx("div",{className:"h-full p-0.5 pt-0.25",children:r.jsx("div",{className:S,children:r.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:r.jsx(h3,{taskId:i,virtualMcpId:s})})})}),e[21]=i,e[22]=s,e[23]=w):w=e[23];let k;e[24]!==d.main||e[25]!==w?(k=r.jsx(ih,{className:"min-w-0 flex flex-col",order:2,defaultSize:V,style:C,collapsible:!0,collapsedSize:0,minSize:20,children:w}),e[24]=d.main,e[25]=w,e[26]=k):k=e[26];let T;return e[27]!==k||e[28]!==g||e[29]!==b?(T=r.jsxs(Ep,{ref:f,direction:"horizontal",className:"flex-1 min-h-0 pb-1 pr-1 pl-0 pt-0",style:_,children:[b,y,k]},g),e[27]=k,e[28]=g,e[29]=b,e[30]=T):T=e[30],T}const wo="flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",fd="bg-sidebar-accent text-sidebar-foreground",Vo="text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";function m3(t){const e=B.c(38),{isDecopilot:s,chatOpen:i,toggleChat:n,onNewTask:o}=t,{tasksOpen:a,toggleTasks:l}=Su(),c=!!o;let d;e[0]!==a||e[1]!==l?(d=()=>{re("agent_toolbar_toggled",{button:"tasks",next_state:a?"closed":"open"}),l()},e[0]=a,e[1]=l,e[2]=d):d=e[2];const u=a?fd:Vo;let h;e[3]!==u?(h=Y(wo,u),e[3]=u,e[4]=h):h=e[4];let f;e[5]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsx(up,{size:16}),e[5]=f):f=e[5];let m;e[6]!==d||e[7]!==h||e[8]!==a?(m=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:d,"aria-pressed":a,className:h,children:f})}),e[6]=d,e[7]=h,e[8]=a,e[9]=m):m=e[9];let p;e[10]===Symbol.for("react.memo_cache_sentinel")?(p=r.jsx(Ge,{side:"bottom",children:"Tasks"}),e[10]=p):p=e[10];let g;e[11]!==m?(g=r.jsxs(Ye,{delayDuration:300,children:[m,p]}),e[11]=m,e[12]=g):g=e[12];let _;e[13]!==i||e[14]!==s||e[15]!==n?(_=!s&&r.jsxs(Ye,{delayDuration:300,children:[r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>{re("agent_toolbar_toggled",{button:"chat",next_state:i?"closed":"open"}),n()},"aria-pressed":i,className:Y(wo,i?fd:Vo),children:r.jsx(hp,{size:16})})}),r.jsx(Ge,{side:"bottom",children:"Chat"})]}),e[13]=i,e[14]=s,e[15]=n,e[16]=_):_=e[16];const v=c?"grid-cols-[1fr]":"grid-cols-[0fr]";let x;e[17]!==v?(x=Y("grid transition-[grid-template-columns] duration-200 ease-[var(--ease-out-quart)]",v),e[17]=v,e[18]=x):x=e[18];const b=!c,y=c?0:-1,V=!c,C=c?"translate-x-0 opacity-100":"-translate-x-2 opacity-0";let S;e[19]!==C?(S=Y(wo,Vo,"transition-[transform,opacity] duration-200 ease-[var(--ease-out-quart)] will-change-transform",C),e[19]=C,e[20]=S):S=e[20];let w;e[21]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx(Ra,{size:16}),e[21]=w):w=e[21];let k;e[22]!==o||e[23]!==b||e[24]!==y||e[25]!==V||e[26]!==S?(k=r.jsx(qe,{asChild:!0,children:r.jsx("button",{type:"button",onClick:o,disabled:b,tabIndex:y,"aria-hidden":V,className:S,children:w})}),e[22]=o,e[23]=b,e[24]=y,e[25]=V,e[26]=S,e[27]=k):k=e[27];let T;e[28]===Symbol.for("react.memo_cache_sentinel")?(T=r.jsx(Ge,{side:"bottom",children:"New task"}),e[28]=T):T=e[28];let M;e[29]!==k?(M=r.jsx("div",{className:"overflow-hidden",children:r.jsxs(Ye,{delayDuration:300,children:[k,T]})}),e[29]=k,e[30]=M):M=e[30];let I;e[31]!==x||e[32]!==M?(I=r.jsx("div",{className:x,children:M}),e[31]=x,e[32]=M,e[33]=I):I=e[33];let E;return e[34]!==I||e[35]!==g||e[36]!==_?(E=r.jsxs(r.Fragment,{children:[g,_,I]}),e[34]=I,e[35]=g,e[36]=_,e[37]=E):E=e[37],E}function p3(t,e,s){if(t.length<=s)return{visible:t,overflow:[]};const i=t.slice(0,s),n=t.slice(s);if(e==null)return{visible:i,overflow:n};if(i.some(h=>h.id===e))return{visible:i,overflow:n};const a=n.findIndex(h=>h.id===e);if(a===-1)return{visible:i,overflow:n};const l=i[i.length-1],c=n[a],d=[...i.slice(0,-1),c],u=[l,...n.slice(0,a),...n.slice(a+1)];return{visible:d,overflow:u}}function g3(t){const e=B.c(13),{title:s,icon:i,active:n,onClick:o}=t,a=n?"bg-sidebar-accent text-sidebar-foreground":"text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";let l;e[0]!==a?(l=Y("shrink-0 flex items-center gap-1.5 h-8 rounded-md px-2","[transition:background-color_180ms_ease,color_180ms_ease]",a),e[0]=a,e[1]=l):l=e[1];let c;e[2]!==i?(c=r.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:r.jsx(_3,{icon:i})}),e[2]=i,e[3]=c):c=e[3];let d;e[4]!==s?(d=r.jsx("span",{className:"whitespace-nowrap text-sm font-medium leading-none",children:s}),e[4]=s,e[5]=d):d=e[5];let u;return e[6]!==n||e[7]!==o||e[8]!==l||e[9]!==c||e[10]!==d||e[11]!==s?(u=r.jsxs("button",{type:"button",onClick:o,"aria-pressed":n,"aria-label":s,className:l,children:[c,d]}),e[6]=n,e[7]=o,e[8]=l,e[9]=c,e[10]=d,e[11]=s,e[12]=u):u=e[12],u}function _3(t){const e=B.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:n}=s;let o;return e[0]!==n?(o=r.jsx(n,{className:"size-4"}),e[0]=n,e[1]=o):o=e[1],o}if(s.kind==="url"){let n;return e[2]!==s.src?(n=r.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=n):n=e[3],n}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Gd,{className:"size-4"}),e[4]=i):i=e[4],i}function x3(t){const e=B.c(13),{overflow:s,onSelect:i}=t,[n,o]=j.useState(!1);let a;e[0]!==i?(a=f=>{o(!1),i(f)},e[0]=i,e[1]=a):a=e[1];const l=a;let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx(zs,{asChild:!0,children:r.jsx("button",{type:"button",title:"More tabs","aria-label":"More tabs",className:"shrink-0 flex size-8 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground transition-colors",children:r.jsx(Wd,{className:"size-4"})})}),e[2]=c):c=e[2];let d;if(e[3]!==l||e[4]!==s){let f;e[6]!==l?(f=m=>r.jsx("li",{children:r.jsxs("button",{type:"button",onClick:()=>l(m.id),className:"w-full flex items-center gap-2 px-3 py-2 rounded-md hover:bg-accent text-sm text-foreground",children:[r.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:r.jsx(v3,{icon:m.icon})}),r.jsx("span",{className:"truncate",children:m.title})]})},m.id),e[6]=l,e[7]=f):f=e[7],d=s.map(f),e[3]=l,e[4]=s,e[5]=d}else d=e[5];let u;e[8]!==d?(u=r.jsx(Fs,{align:"end",className:"w-56 p-1",children:r.jsx("ul",{className:"flex flex-col",children:d})}),e[8]=d,e[9]=u):u=e[9];let h;return e[10]!==n||e[11]!==u?(h=r.jsxs(Us,{open:n,onOpenChange:o,children:[c,u]}),e[10]=n,e[11]=u,e[12]=h):h=e[12],h}function v3(t){const e=B.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:n}=s;let o;return e[0]!==n?(o=r.jsx(n,{className:"size-4"}),e[0]=n,e[1]=o):o=e[1],o}if(s.kind==="url"){let n;return e[2]!==s.src?(n=r.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=n):n=e[3],n}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(Gd,{className:"size-4"}),e[4]=i):i=e[4],i}const b3=6;function y3(t){const e=B.c(20),{virtualMcpId:s,taskId:i}=t,n=Oe();let o;e[0]!==i||e[1]!==s?(o={virtualMcpId:s,taskId:i},e[0]=i,e[1]=s,e[2]=o):o=e[2];const{tabs:a,activeTab:l,mainOpen:c,setActiveTab:d}=Vu(o);let u,h,f,m;if(e[3]!==l||e[4]!==c||e[5]!==n||e[6]!==d||e[7]!==a||e[8]!==s){const _=Mm({activeTab:l,mainOpen:c}),v=C=>C.id==="automations"?_:c&&C.id===l,b=a.find(C=>v(C))?.id??null,{visible:y,overflow:V}=p3(a,b,b3);h=V,u=C=>{const S=a.find(k=>k.id===C),w=b===C&&c;if(re("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:C,tab_kind:S?.kind??null,was_active:w}),C==="automations"){const k=Dm({activeTab:l,mainOpen:c});n({to:".",search:T=>({...T,main:k}),replace:!0});return}d(C)},f="flex items-center min-w-0 ml-auto gap-0.5",m=y.map(C=>r.jsx(g3,{title:C.title,icon:C.icon,active:v(C),onClick:()=>u(C.id)},C.id)),e[3]=l,e[4]=c,e[5]=n,e[6]=d,e[7]=a,e[8]=s,e[9]=u,e[10]=h,e[11]=f,e[12]=m}else u=e[9],h=e[10],f=e[11],m=e[12];let p;e[13]!==u||e[14]!==h?(p=h.length>0&&r.jsx(x3,{overflow:h,onSelect:u}),e[13]=u,e[14]=h,e[15]=p):p=e[15];let g;return e[16]!==f||e[17]!==m||e[18]!==p?(g=r.jsxs("div",{className:f,children:[m,p]}),e[16]=f,e[17]=m,e[18]=p,e[19]=g):g=e[19],g}function S3(t){const e=B.c(12);let s,i,n,o;e[0]!==t?({className:s,orientation:n,decorative:o,...i}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=n,e[4]=o):(s=e[1],i=e[2],n=e[3],o=e[4]);const a=n===void 0?"horizontal":n,l=o===void 0?!0:o;let c;e[5]!==s?(c=Y("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",s),e[5]=s,e[6]=c):c=e[6];let d;return e[7]!==l||e[8]!==a||e[9]!==i||e[10]!==c?(d=r.jsx(um,{"data-slot":"separator-root",decorative:l,orientation:a,className:c,...i}),e[7]=l,e[8]=a,e[9]=i,e[10]=c,e[11]=d):d=e[11],d}function w3(t){const e=B.c(20),{prNumber:s,disabled:i,send:n}=t;let o;e[0]!==s||e[1]!==n?(o=()=>n($2({prNumber:s})),e[0]=s,e[1]=n,e[2]=o):o=e[2];const a=o;let l;e[3]!==s||e[4]!==n?(l=()=>n(B2({prNumber:s})),e[3]=s,e[4]=n,e[5]=l):l=e[5];const c=l;let d;e[6]!==i||e[7]!==a?(d=r.jsx(oe,{size:"sm",className:"rounded-r-none border-r border-primary-foreground/20",disabled:i,onClick:a,children:"Publish"}),e[6]=i,e[7]=a,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(cr,{className:"h-3.5 w-3.5"}),e[9]=u):u=e[9];let h;e[10]!==i?(h=r.jsx(ds,{asChild:!0,children:r.jsx(oe,{size:"sm",className:"rounded-l-none px-2",disabled:i,"aria-label":"More actions",children:u})}),e[10]=i,e[11]=h):h=e[11];let f;e[12]!==c?(f=r.jsx(hs,{align:"end",children:r.jsx(Qe,{onClick:c,children:"Review"})}),e[12]=c,e[13]=f):f=e[13];let m;e[14]!==h||e[15]!==f?(m=r.jsxs(cs,{children:[h,f]}),e[14]=h,e[15]=f,e[16]=m):m=e[16];let p;return e[17]!==d||e[18]!==m?(p=r.jsxs("div",{className:"inline-flex items-stretch rounded-md",children:[d,m]}),e[17]=d,e[18]=m,e[19]=p):p=e[19],p}const V3=new Set(["failure","timed_out","cancelled","action_required"]);function C3(t){return t.status==="completed"&&V3.has(t.conclusion)}function k3(t){return t.status==="queued"||t.status==="in_progress"}function j3(t){const{branchStatus:e,pr:s,checks:i,reviews:n}=t;if(!e)return null;if(e.workingTreeDirty||e.unpushed>0)return{label:"Save changes",action:"commit-and-push"};if(s?.merged)return!!e.headSha&&!!s.headSha&&e.headSha!==s.headSha?{label:"Submit for review",action:"create-pr"}:null;if(e.aheadOfBase>0){if(s&&s.state==="closed"&&!s.merged)return{label:"Reopen",action:"reopen"};if(!s)return{label:"Submit for review",action:"create-pr"};if((n?.mergeableState??"unknown")==="dirty")return{label:`Sync with ${s.base}`,action:"rebase"};const l=i.filter(C3).map(c=>c.name);return l.length>0?{label:"Fix tests",action:"fix-checks",meta:{failingChecks:l}}:i.some(k3)?{label:"Running tests…",disabled:!0}:n?.draft?{label:"Mark ready",action:"mark-ready"}:(n?.unresolvedConversations??0)>0?{label:"Address feedback",action:"resolve-comments"}:n?.missingRequiredApprovals?{label:"Awaiting review",disabled:!0}:{label:"Publish",action:"merge-split"}}return null}function N3(){return Ti().branchStatus}const A3=6e4,E3=3e4;function I3(t){const e=B.c(11);let s;e[0]!==t.connectionId||e[1]!==t.orgId?(s={connectionId:t.connectionId,orgId:t.orgId},e[0]=t.connectionId,e[1]=t.orgId,e[2]=s):s=e[2];const i=Ae(s),n=t.prNumber??0;let o;e[3]!==t.owner||e[4]!==t.repo||e[5]!==n?(o={method:"get",owner:t.owner,repo:t.repo,pullNumber:n},e[3]=t.owner,e[4]=t.repo,e[5]=n,e[6]=o):o=e[6];const a=!!t.prNumber;let l;return e[7]!==i||e[8]!==o||e[9]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:A3,refetchIntervalInBackground:!1,staleTime:E3,select:T3},e[7]=i,e[8]=o,e[9]=a,e[10]=l):l=e[10],ni(l)}function T3(t){const e=Nr(t);if(!e)return null;const s=e.mergeable_state??"unknown",i=!!(e.draft??!1),n=Number(e.review_comments??0),o=s==="blocked"&&n>0?n:0;return{draft:i,mergeableState:s,unresolvedConversations:o,missingRequiredApprovals:s==="blocked"&&o===0}}function R3(t){const e=B.c(38),{virtualMcpId:s}=t,{org:i}=xe(),n=$t(s),{currentBranch:o}=Lt(),a=Cn(),l=n?.metadata?.githubRepo??null,c=N3(),d=l?.connectionId??"",u=l?.owner??"",h=l?.name??"",f=o??null;let m;e[0]!==i.id||e[1]!==d||e[2]!==u||e[3]!==h||e[4]!==f?(m={orgId:i.id,connectionId:d,owner:u,repo:h,branch:f},e[0]=i.id,e[1]=d,e[2]=u,e[3]=h,e[4]=f,e[5]=m):m=e[5];const g=ku(m).data??null,_=l?.connectionId??"",v=l?.owner??"",x=l?.name??"",b=g&&g.state==="open"?g.number:null;let y;e[6]!==i.id||e[7]!==_||e[8]!==v||e[9]!==x||e[10]!==b?(y={orgId:i.id,connectionId:_,owner:v,repo:x,prNumber:b},e[6]=i.id,e[7]=_,e[8]=v,e[9]=x,e[10]=b,e[11]=y):y=e[11];const V=Nu(y),C=l?.connectionId??"",S=l?.owner??"",w=l?.name??"",k=g&&g.state==="open"?g.number:null;let T;e[12]!==i.id||e[13]!==C||e[14]!==S||e[15]!==w||e[16]!==k?(T={orgId:i.id,connectionId:C,owner:S,repo:w,prNumber:k},e[12]=i.id,e[13]=C,e[14]=S,e[15]=w,e[16]=k,e[17]=T):T=e[17];const M=I3(T);if(!l?.connectionId||!o)return null;let I;e[18]!==c||e[19]!==V.data||e[20]!==g||e[21]!==M.data?(I=j3({branchStatus:c,pr:g,checks:V.data??[],reviews:M.data??null}),e[18]=c,e[19]=V.data,e[20]=g,e[21]=M.data,e[22]=I):I=e[22];const E=I;if(!E)return null;let N;e[23]!==a?(N=$=>a.sendMessage({parts:[{type:"text",text:$}]}),e[23]=a,e[24]=N):N=e[24];const A=N,D=a.isStreaming;let L;e[25]!==o||e[26]!==E||e[27]!==D||e[28]!==g||e[29]!==A?(L=$=>{if(!D)switch($){case"commit-and-push":{A(I2({branch:o}));return}case"create-pr":{A(T2({branch:o}));return}case"reopen":{g&&A(R2({prNumber:g.number}));return}case"rebase":{A(M2({branch:o}));return}case"fix-checks":{g&&A(P2({prNumber:g.number,failingChecks:E.meta?.failingChecks??[]}));return}case"mark-ready":{g&&A(L2({prNumber:g.number}));return}case"resolve-comments":{g&&A(O2({prNumber:g.number}));return}case"merge-split":return}},e[25]=o,e[26]=E,e[27]=D,e[28]=g,e[29]=A,e[30]=L):L=e[30];const R=L;let P;e[31]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(S3,{orientation:"vertical",className:"mx-2 data-[orientation=vertical]:h-5"}),e[31]=P):P=e[31];const O=g?.number;let z;return e[32]!==E||e[33]!==D||e[34]!==R||e[35]!==A||e[36]!==O?(z=r.jsxs(r.Fragment,{children:[P,r.jsx(M3,{button:E,isStreaming:D,onActivate:R,prNumber:O,send:A})]}),e[32]=E,e[33]=D,e[34]=R,e[35]=A,e[36]=O,e[37]=z):z=e[37],z}function M3(t){const e=B.c(18),{button:s,isStreaming:i}=t,n=!!s.disabled||i,o=i?"Chat is running":null;if(s.action==="merge-split"&&t.prNumber!=null){let u;e[0]!==n||e[1]!==t.prNumber||e[2]!==t.send?(u=r.jsx(w3,{prNumber:t.prNumber,disabled:n,send:t.send}),e[0]=n,e[1]=t.prNumber,e[2]=t.send,e[3]=u):u=e[3];let h;return e[4]!==u||e[5]!==o?(h=r.jsx(md,{label:o,children:u}),e[4]=u,e[5]=o,e[6]=h):h=e[6],h}const a=s.disabled?"outline":"default";let l;e[7]!==s.action||e[8]!==t?(l=()=>t.onActivate(s.action),e[7]=s.action,e[8]=t,e[9]=l):l=e[9];let c;e[10]!==s.label||e[11]!==n||e[12]!==a||e[13]!==l?(c=r.jsx(oe,{size:"sm",variant:a,disabled:n,onClick:l,children:s.label}),e[10]=s.label,e[11]=n,e[12]=a,e[13]=l,e[14]=c):c=e[14];let d;return e[15]!==c||e[16]!==o?(d=r.jsx(md,{label:o,children:c}),e[15]=c,e[16]=o,e[17]=d):d=e[17],d}function md(t){const e=B.c(9),{label:s,children:i}=t;if(!s){let l;return e[0]!==i?(l=r.jsx(r.Fragment,{children:i}),e[0]=i,e[1]=l):l=e[1],l}let n;e[2]!==i?(n=r.jsx(qe,{asChild:!0,children:r.jsx("span",{children:i})}),e[2]=i,e[3]=n):n=e[3];let o;e[4]!==s?(o=r.jsx(Ge,{children:s}),e[4]=s,e[5]=o):o=e[5];let a;return e[6]!==n||e[7]!==o?(a=r.jsx(bi,{children:r.jsxs(Ye,{children:[n,o]})}),e[6]=n,e[7]=o,e[8]=a):a=e[8],a}function D3(t){const e=B.c(2),{virtualMcp:s}=t;if(!!!(s.metadata?.githubRepo??null)?.connectionId)return null;let o;return e[0]!==s.id?(o=r.jsx(Re.Right,{children:r.jsx(R3,{virtualMcpId:s.id})}),e[0]=s.id,e[1]=o):o=e[1],o}const _i=j.createContext(null);function ml(){return j.use(_i)}function pd(t){const e=B.c(8),{children:s,variant:i}=t,{taskId:n}=Lt();let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong loading the chat. Try refreshing."}),e[0]=o):o=e[0];let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a=r.jsx(Ee.Skeleton,{}),e[1]=a):a=e[1];let l;e[2]!==s||e[3]!==i?(l=s??r.jsx(eu,{variant:i}),e[2]=s,e[3]=i,e[4]=l):l=e[4];let c;return e[5]!==l||e[6]!==n?(c=r.jsx(ls,{fallback:o,children:r.jsx(j.Suspense,{fallback:a,children:r.jsx(Ee.ActiveTaskProvider,{taskId:n,children:l})})}),e[5]=l,e[6]=n,e[7]=c):c=e[7],c}function gd(t){const e=B.c(3),{onNewTaskRef:s,createNewTask:i}=t;let n;return e[0]!==i||e[1]!==s?(n=()=>(s.current=i,()=>{s.current=null}),e[0]=i,e[1]=s,e[2]=n):n=e[2],j.useLayoutEffect(n),null}function P3(t){const e=B.c(3),{onOpenSidebar:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(pp,{size:20}),e[0]=i):i=e[0];let n;return e[1]!==s?(n=r.jsx("div",{className:"shrink-0 flex items-center justify-between px-3 h-12 bg-background border-b border-border",children:r.jsx("button",{type:"button",onClick:s,className:"flex size-8 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors","aria-label":"Open menu",children:i})}),e[1]=s,e[2]=n):n=e[2],n}function _d(t){const e=B.c(16),{virtualMcpId:s,hasActiveGithubRepo:i,vmMap:n,children:o}=t,{org:a}=xe(),{currentBranch:l}=Lt(),{data:c}=dt.useSession(),d=c?.user?.id,u=d&&l?n?.[d]?.[l]??null:null;let h;e[0]!==u?(h=u?.previewUrl?u.previewUrl.replace(/\/$/,""):null,e[0]=u,e[1]=h):h=e[1];const f=h;let m;e[2]!==a.id?(m={connectionId:yt,orgId:a.id},e[2]=a.id,e[3]=m):m=e[3];const p=Ae(m),{mutate:g}=el(p);let _;e[4]===Symbol.for("react.memo_cache_sentinel")?(_=new Set,e[4]=_):_=e[4];const v=j.useRef(_);let x,b;e[5]!==l||e[6]!==i||e[7]!==g||e[8]!==d||e[9]!==s||e[10]!==n?(x=()=>{i&&d&&l&&(n?.[d]?.[l]||v.current.has(l)||(v.current.add(l),g({virtualMcpId:s,branch:l},{onError:L3})))},b=[i,d,l,n,s,g],e[5]=l,e[6]=i,e[7]=g,e[8]=d,e[9]=s,e[10]=n,e[11]=x,e[12]=b):(x=e[11],b=e[12]),j.useEffect(x,b);let y;return e[13]!==o||e[14]!==f?(y=r.jsx(uS,{daemonBaseUrl:f,children:o}),e[13]=o,e[14]=f,e[15]=y):y=e[15],y}function L3(t){console.error("[auto-start-vm] failed:",t)}function xd(){const t=B.c(106),e=ms(),s=Oe(),{org:i}=xe(),n=fy()?.tasksOpen??!1;wg(i.id);let o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o={strict:!1},t[0]=o):o=t[0];const a=_r(o),l=a.org??"";let c;t[1]===Symbol.for("react.memo_cache_sentinel")?(c={strict:!1},t[1]=c):c=t[1];const d=ti(c);let u;t[2]!==i.id||t[3]!==d.virtualmcpid?(u=d.virtualmcpid??En(i.id).id,t[2]=i.id,t[3]=d.virtualmcpid,t[4]=u):u=t[4];const h=u;let f;t[5]!==i.id?(f=Aa(i.id),t[5]=i.id,t[6]=f):f=t[6];const m=h===f,p=!m,g=Lg(a.taskId??"",h),_=$t(h),v=_?.metadata?.ui?.layout??null;let x;t[7]!==v?(x=v?{defaultMainView:v.defaultMainView??null,chatDefaultOpen:v.chatDefaultOpen??null}:null,t[7]=v,t[8]=x):x=t[8];const b=x;let y;t[9]!==_?(y=_&&bs(_),t[9]=_,t[10]=y):y=t[10];const V=!!y;let C;t[11]!==p||t[12]!==l||t[13]!==h?(C={virtualMcpId:h,orgSlug:l,isAgentRoute:p},t[11]=p,t[12]=l,t[13]=h,t[14]=C):C=t[14];const S=dy(b,C),{setOpenMobile:w,openMobile:k}=Cr(),T=w,M=j.useRef(null);let I,E;t[15]===Symbol.for("react.memo_cache_sentinel")?(I=()=>{const K=G=>{Md(G)&&G.shiftKey&&G.code==="KeyS"&&!G.repeat&&(G.preventDefault(),M.current?.())};return document.addEventListener("keydown",K),()=>document.removeEventListener("keydown",K)},E=[],t[15]=I,t[16]=E):(I=t[15],E=t[16]),j.useEffect(I,E);const N=h;let A;t[17]!==_||t[18]!==h?(A={virtualMcpId:h,entity:_},t[17]=_,t[18]=h,t[19]=A):A=t[19];const D=A;if(g.status==="creating"||g.status==="loading"){let K;t[20]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsxs("div",{className:"flex h-full items-center justify-center bg-background card-shadow rounded-[0.75rem] text-sm text-muted-foreground",children:[r.jsx(Ne,{className:"size-4 animate-spin mr-2"}),"Creating task…"]})}),t[20]=K):K=t[20];let G;return t[21]!==D?(G=r.jsx(_i,{value:D,children:K}),t[21]=D,t[22]=G):G=t[22],G}if(g.status==="error"){let K;t[23]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx("div",{className:"font-medium",children:"Task unavailable"}),t[23]=K):K=t[23];let G;t[24]!==g.error.message?(G=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsxs("div",{className:"flex flex-col h-full items-center justify-center gap-2 bg-background card-shadow rounded-[0.75rem] p-8 text-sm",children:[K,r.jsx("div",{className:"text-muted-foreground",children:g.error.message})]})}),t[24]=g.error.message,t[25]=G):G=t[25];let ie;return t[26]!==D||t[27]!==G?(ie=r.jsx(_i,{value:D,children:G}),t[26]=D,t[27]=G,t[28]=ie):ie=t[28],ie}if(!_){let K;t[29]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(Bs,{size:48,className:"text-muted-foreground"}),t[29]=K):K=t[29];const G=`The agent "${h}" does not exist in this organization.`;let ie;t[30]!==s||t[31]!==l?(ie=r.jsx(oe,{variant:"outline",onClick:()=>s({to:"/$org",params:{org:l}}),children:"Go to organization home"}),t[30]=s,t[31]=l,t[32]=ie):ie=t[32];let te;t[33]!==G||t[34]!==ie?(te=r.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:r.jsx("div",{className:"flex flex-col h-full bg-background overflow-hidden card-shadow rounded-[0.75rem]",children:r.jsx(Vi,{image:K,title:"Agent not found",description:G,actions:ie})})}),t[33]=G,t[34]=ie,t[35]=te):te=t[35];let J;return t[36]!==D||t[37]!==te?(J=r.jsx(_i,{value:D,children:te}),t[36]=D,t[37]=te,t[38]=J):J=t[38],J}if(e){let K;t[39]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(rg,{className:"sr-only",children:"Navigation"}),t[39]=K):K=t[39];let G;t[40]!==T?(G=r.jsx("div",{className:"w-14 shrink-0 bg-sidebar flex flex-col items-center border-r border-border overflow-y-auto group/sidebar","data-state":"collapsed",children:r.jsx(iy,{onClose:()=>T(!1)})}),t[40]=T,t[41]=G):G=t[41];let ie;t[42]===Symbol.for("react.memo_cache_sentinel")?(ie=r.jsx("div",{className:"flex-1 min-w-0 overflow-hidden",children:r.jsx(iu,{})}),t[42]=ie):ie=t[42];let te;t[43]!==G?(te=r.jsxs(ng,{side:"left",hideCloseButton:!0,className:"w-[calc(100vw-3rem)] sm:max-w-md! p-0",children:[K,r.jsxs("div",{className:"flex h-full",children:[G,ie]})]}),t[43]=G,t[44]=te):te=t[44];let J;t[45]!==k||t[46]!==T||t[47]!==te?(J=r.jsx(og,{open:k,onOpenChange:T,children:te}),t[45]=k,t[46]=T,t[47]=te,t[48]=J):J=t[48];const ae=J,Z=_?.metadata?.vmMap;let de;t[49]!==S.createNewTask?(de=r.jsx(gd,{onNewTaskRef:M,createNewTask:S.createNewTask}),t[49]=S.createNewTask,t[50]=de):de=t[50];let fe;t[51]!==T?(fe=r.jsx(P3,{onOpenSidebar:()=>T(!0)}),t[51]=T,t[52]=fe):fe=t[52];const ye=m?"home":void 0;let ge;t[53]!==ye?(ge=r.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:r.jsx(pd,{variant:ye})}),t[53]=ye,t[54]=ge):ge=t[54];let ce;t[55]!==V||t[56]!==ae||t[57]!==Z||t[58]!==de||t[59]!==fe||t[60]!==ge||t[61]!==h?(ce=r.jsxs(_d,{virtualMcpId:h,hasActiveGithubRepo:V,vmMap:Z,children:[de,fe,ge,ae]}),t[55]=V,t[56]=ae,t[57]=Z,t[58]=de,t[59]=fe,t[60]=ge,t[61]=h,t[62]=ce):ce=t[62];let ue;t[63]!==N||t[64]!==ce?(ue=r.jsx("div",{className:"flex flex-col flex-1 bg-background min-h-0",children:r.jsx(Ee.Provider,{virtualMcpId:N,children:ce},N)}),t[63]=N,t[64]=ce,t[65]=ue):ue=t[65];let be;return t[66]!==D||t[67]!==ue?(be=r.jsx(_i,{value:D,children:ue}),t[66]=D,t[67]=ue,t[68]=be):be=t[68],be}const L=n?void 0:S.createNewTask;let R;t[69]!==m||t[70]!==S.chatOpen||t[71]!==S.toggleChat||t[72]!==L?(R=r.jsx(Re.Toggles,{children:r.jsx(m3,{isDecopilot:m,chatOpen:S.chatOpen,toggleChat:S.toggleChat,onNewTask:L})}),t[69]=m,t[70]=S.chatOpen,t[71]=S.toggleChat,t[72]=L,t[73]=R):R=t[73];let P;t[74]!==m||t[75]!==S.taskId||t[76]!==h?(P=!m&&r.jsx(Re.Tabs,{children:r.jsx(y3,{virtualMcpId:h,taskId:S.taskId})}),t[74]=m,t[75]=S.taskId,t[76]=h,t[77]=P):P=t[77];const O=_?.metadata?.vmMap;let z;t[78]!==_||t[79]!==m?(z=!m&&r.jsx(D3,{virtualMcp:_}),t[78]=_,t[79]=m,t[80]=z):z=t[80];let $;t[81]!==S.createNewTask?($=r.jsx(gd,{onNewTaskRef:M,createNewTask:S.createNewTask}),t[81]=S.createNewTask,t[82]=$):$=t[82];const q=m?"home":void 0;let F;t[83]!==q?(F=r.jsx(pd,{variant:q}),t[83]=q,t[84]=F):F=t[84];let W;t[85]!==S.chatOpen||t[86]!==S.mainOpen||t[87]!==S.taskId||t[88]!==F||t[89]!==h?(W=r.jsx(f3,{virtualMcpId:h,taskId:S.taskId,chatOpen:S.chatOpen,mainOpen:S.mainOpen,chatContent:F}),t[85]=S.chatOpen,t[86]=S.mainOpen,t[87]=S.taskId,t[88]=F,t[89]=h,t[90]=W):W=t[90];let H;t[91]!==V||t[92]!==O||t[93]!==z||t[94]!==$||t[95]!==W||t[96]!==h?(H=r.jsxs(_d,{virtualMcpId:h,hasActiveGithubRepo:V,vmMap:O,children:[z,$,W]}),t[91]=V,t[92]=O,t[93]=z,t[94]=$,t[95]=W,t[96]=h,t[97]=H):H=t[97];let U;t[98]!==N||t[99]!==P||t[100]!==H?(U=r.jsxs(Ee.Provider,{virtualMcpId:N,children:[P,H]},N),t[98]=N,t[99]=P,t[100]=H,t[101]=U):U=t[101];let X;return t[102]!==D||t[103]!==R||t[104]!==U?(X=r.jsxs(_i,{value:D,children:[R,U]}),t[102]=D,t[103]=R,t[104]=U,t[105]=X):X=t[105],X}function Oj(){const t=B.c(5),e=ms();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s={"--sidebar-width-icon":"3.5rem"},t[0]=s):s=t[0];let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=r.jsx(sy,{}),t[1]=i):i=t[1];let n;t[2]===Symbol.for("react.memo_cache_sentinel")?(n={background:"transparent",containerType:"inline-size"},t[2]=n):n=t[2];let o;return t[3]!==e?(o=r.jsx(tg,{defaultOpen:!1,children:r.jsx("div",{className:"flex flex-col h-dvh overflow-hidden",children:r.jsxs(sg,{className:"flex-1 bg-sidebar",style:s,children:[i,r.jsx(ig,{className:"flex flex-col",style:n,children:e?r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(xd,{})}):r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(hy,{children:r.jsxs(Re,{children:[r.jsxs(Re.Header,{children:[r.jsxs(Re.LeftColumn,{children:[r.jsx(Re.Nav,{}),r.jsx(Re.TogglesSlot,{})]}),r.jsx(Re.CenterSlot,{}),r.jsxs(Re.RightColumn,{children:[r.jsx(Re.TabsSlot,{}),r.jsx(Re.RightSlot,{})]})]}),r.jsxs("div",{className:"flex-1 min-h-0 flex flex-row",children:[r.jsx(Ey,{}),r.jsx("div",{className:"flex-1 min-w-0 flex flex-col",children:r.jsx(j.Suspense,{fallback:r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:r.jsx(xd,{})})})]})]})})})})]})})}),t[3]=e,t[4]=o):o=t[4],o}export{Oj as default,ml as useInsetContext};
|