decocms 3.79.2 → 3.80.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-Diz6uT7Y.js → AlertCircle-CzPpSV3W.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-Bo4YThIl.js → ArrowUpRight-BefNTATY.js} +1 -1
- package/dist/client/assets/{CheckCircle-BSFt0_RZ.js → CheckCircle-BRNW9lmT.js} +1 -1
- package/dist/client/assets/{ChevronDown-C_njLrOU.js → ChevronDown-Di-ZHzN-.js} +1 -1
- package/dist/client/assets/{ChevronLeft-ByQFERqp.js → ChevronLeft-ByolOLbh.js} +1 -1
- package/dist/client/assets/{ChevronRight-D1duQehP.js → ChevronRight-CmB8MBzZ.js} +1 -1
- package/dist/client/assets/{ChevronUp-_gM_dQkt.js → ChevronUp-BurUkCqE.js} +1 -1
- package/dist/client/assets/{DotsVertical-BJnhQ8u0.js → DotsVertical-Dsznav3Y.js} +1 -1
- package/dist/client/assets/{Eye-SUXNGsVY.js → Eye-B8NUm9Br.js} +1 -1
- package/dist/client/assets/{FilterLines-CxIQYlMz.js → FilterLines-DMbodALc.js} +1 -1
- package/dist/client/assets/{Globe01-CNw0uMhK.js → Globe01-BG9Wm5DJ.js} +1 -1
- package/dist/client/assets/{Globe04-B24hCYmg.js → Globe04-Fg_TSPLj.js} +1 -1
- package/dist/client/assets/{HardDrive-IPJJMMij.js → HardDrive-BLr46_IN.js} +1 -1
- package/dist/client/assets/{Key01-CES8n-fG.js → Key01-Dc0MTS9j.js} +1 -1
- package/dist/client/assets/{LayoutLeft-D3mZzNi0.js → LayoutLeft-nNhAa0Dy.js} +1 -1
- package/dist/client/assets/{LinkExternal01-B8zRpPza.js → LinkExternal01-D0OVTAOa.js} +1 -1
- package/dist/client/assets/{Monitor01-Uh-3HvZI.js → Monitor01-D_VMj6ZB.js} +1 -1
- package/dist/client/assets/{Palette-Du66341h.js → Palette-BmXFbt3l.js} +1 -1
- package/dist/client/assets/{Play-CVoFjR5I.js → Play-CAiQqhjZ.js} +1 -1
- package/dist/client/assets/{Plus-DoMNANl8.js → Plus-DHDiWYHk.js} +1 -1
- package/dist/client/assets/{SearchMd-B-bL1wjq.js → SearchMd-DaWHy1GV.js} +1 -1
- package/dist/client/assets/{Settings02-BvivcyYL.js → Settings02-B7jENSJZ.js} +1 -1
- package/dist/client/assets/{Shield01-BewRt7sw.js → Shield01-YoAzrA51.js} +1 -1
- package/dist/client/assets/{Star01-Ds91SJzA.js → Star01-CaB7lNB9.js} +1 -1
- package/dist/client/assets/{Stars01-PS518Jif.js → Stars01-a6WqibZn.js} +1 -1
- package/dist/client/assets/{Stars02-CVb_b-OZ.js → Stars02-D2Vky1vN.js} +1 -1
- package/dist/client/assets/{Sun-tLN4vA6M.js → Sun-vyxrPcie.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-vo5MpXEz.js → SwitchHorizontal01-C3K-vKiU.js} +1 -1
- package/dist/client/assets/{Tool01-BgzvuPeY.js → Tool01-CTw8qR4v.js} +1 -1
- package/dist/client/assets/{Trash01-D84eyfFz.js → Trash01-BzTEx-hS.js} +1 -1
- package/dist/client/assets/{Upload01-BA5iKtAl.js → Upload01-DwgHgRix.js} +1 -1
- package/dist/client/assets/{User01-CeCQHgwg.js → User01-BtO-AoKy.js} +1 -1
- package/dist/client/assets/{Users01-DtmLcsFN.js → Users01-BRTza8nY.js} +1 -1
- package/dist/client/assets/{Users03-ClWrctLP.js → Users03-9LUo_raC.js} +1 -1
- package/dist/client/assets/{X-2HGWB7Oo.js → X-1BuEzBGR.js} +1 -1
- package/dist/client/assets/{XCircle-B88UxHjD.js → XCircle-DtHr5hnB.js} +1 -1
- package/dist/client/assets/{XClose-DcfEQwVh.js → XClose-qpXD94Yo.js} +1 -1
- package/dist/client/assets/{Zap-BeB31T8Y.js → Zap-DluXKGP1.js} +1 -1
- package/dist/client/assets/{ZapSquare-BfSTQonf.js → ZapSquare-C2q_71C5.js} +1 -1
- package/dist/client/assets/{ZoomOut-Csc4IU4b.js → ZoomOut-DHX-bR9F.js} +1 -1
- package/dist/client/assets/{access-gate-BI-B2IAv.js → access-gate-CGKEhEok.js} +1 -1
- package/dist/client/assets/add-section-modal-SzJO4niJ.js +1 -0
- package/dist/client/assets/{agent-icon-BMQHBhP6.js → agent-icon-B8qJNw4_.js} +1 -1
- package/dist/client/assets/{agents-list-XJ_b0Boo.js → agents-list-BCVql_rD.js} +1 -1
- package/dist/client/assets/{ai-providers-BT9tXzcJ.js → ai-providers-DfbrzvnV.js} +1 -1
- package/dist/client/assets/{alert-BFF74cGy.js → alert-BdFRtqYC.js} +1 -1
- package/dist/client/assets/{alert-dialog-0uOi3HqZ.js → alert-dialog-CSRFWtbt.js} +3 -3
- package/dist/client/assets/app-editor-CSxGjHmN.js +1 -0
- package/dist/client/assets/{auth-CCI_mhgC.js → auth-DOooeHhC.js} +1 -1
- package/dist/client/assets/{auth-catchall-DFuEeSui.js → auth-catchall-esDJNOF7.js} +1 -1
- package/dist/client/assets/{auth-entry-BE0f6I0U.js → auth-entry-CJkDGWB9.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DTKSSrMT.js → auth-split-layout-BHOeLJSB.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-eSHjAd3t.js → authenticate-and-persist-oauth-CAo_oHNJ.js} +1 -1
- package/dist/client/assets/{automation-list-row-Ct9jaHYX.js → automation-list-row-CBS-1Qac.js} +1 -1
- package/dist/client/assets/automation-runs-BhCrA9zN.js +1 -0
- package/dist/client/assets/{automations-DAlCMK2H.js → automations-DgOam79q.js} +1 -1
- package/dist/client/assets/{avatar-CtVVLapD.js → avatar-BnBqk-2k.js} +1 -1
- package/dist/client/assets/{badge-BFvLiE20.js → badge-CpxlbcB7.js} +1 -1
- package/dist/client/assets/{block-document-CZwjF0EN.js → block-document-DJ0g8qfo.js} +2 -2
- package/dist/client/assets/{brand-context-Dc4UEvfb.js → brand-context-COIa0n8O.js} +1 -1
- package/dist/client/assets/{buckets-CY1G8BoT.js → buckets-BINQS-Su.js} +1 -1
- package/dist/client/assets/{capability-load-error-CNUOCvDx.js → capability-load-error-HdFgr5IE.js} +1 -1
- package/dist/client/assets/{card-DZtTT5Es.js → card-DQnbTJFb.js} +1 -1
- package/dist/client/assets/category-editor-vCwJctBK.js +1 -0
- package/dist/client/assets/{chat-context-Dqu5Dj_J.js → chat-context-CmZjYRTw.js} +1 -1
- package/dist/client/assets/{checkbox-CHXOcnVE.js → checkbox-DokO2DXd.js} +1 -1
- package/dist/client/assets/{cli-auth-success-BSe4zAji.js → cli-auth-success-NPtl5xjH.js} +1 -1
- package/dist/client/assets/collection-detail-DgzIzvmX.js +1 -0
- package/dist/client/assets/{collection-display-button-Dn_LJLmj.js → collection-display-button-hKaFuGbc.js} +1 -1
- package/dist/client/assets/{collection-search-D6nD206z.js → collection-search-9oxtR-cY.js} +1 -1
- package/dist/client/assets/{collection-tabs-cs02GObx.js → collection-tabs-CvHGsfW_.js} +1 -1
- package/dist/client/assets/{command-DhLgZpjn.js → command-Bw5g6PzP.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-CTTgJmu9.js → commerce-onboarding-QQ9bqrwx.js} +1 -1
- package/dist/client/assets/{connect-desktop-dialog-DNAK4U2K.js → connect-desktop-dialog-BktLGd3J.js} +1 -1
- package/dist/client/assets/{connection-card-BwnCXxRf.js → connection-card-BZz5WDR5.js} +1 -1
- package/dist/client/assets/connection-detail-DNAdeiIH.js +1 -0
- package/dist/client/assets/{connection-form-helpers-Csy5hutj.js → connection-form-helpers-CltinQul.js} +1 -1
- package/dist/client/assets/connections-BSiahnsQ.js +1 -0
- package/dist/client/assets/context-menu-ByPsUX7u.js +1 -0
- package/dist/client/assets/{decopilot-CLVJpS6M.js → decopilot-DjAEZRNX.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-_mJQvJZ7.js → decopilot-sse-pool-R-AtQW2s.js} +1 -1
- package/dist/client/assets/{dialog-AE8ChAe3.js → dialog-L9SFsS1U.js} +1 -1
- package/dist/client/assets/{domain-settings-Dika0U17.js → domain-settings-BDbjH98X.js} +1 -1
- package/dist/client/assets/{drawer-Di9WrlRG.js → drawer-D-LP9Hh8.js} +1 -1
- package/dist/client/assets/{dropdown-menu-ecBYljKf.js → dropdown-menu-ByaGrYAQ.js} +1 -1
- package/dist/client/assets/{empty-state-CegPWPc0.js → empty-state-BoeIt5Fh.js} +1 -1
- package/dist/client/assets/{extract-connection-data-BumzxLvt.js → extract-connection-data-Rczvmr_Y.js} +1 -1
- package/dist/client/assets/file-explorer-QNJW4EAt.js +2 -0
- package/dist/client/assets/{file-type-icon-BOraV8Gq.js → file-type-icon-C96ES1WD.js} +1 -1
- package/dist/client/assets/{files-7E0LjJ-5.js → files-CK2ZpMSb.js} +1 -1
- package/dist/client/assets/{form-teSq_9QK.js → form-Ci3Mfx5E.js} +1 -1
- package/dist/client/assets/{general-DCnSVDK9.js → general-Dt135lsN.js} +1 -1
- package/dist/client/assets/{github-repo-picker-LA1Jld2f.js → github-repo-picker-CLrsrBV_.js} +1 -1
- package/dist/client/assets/{hooks-DwlYXenh.js → hooks-BBwQx9Hj.js} +1 -1
- package/dist/client/assets/{import-from-deco-dialog-D3BPX6JW.js → import-from-deco-dialog-D3nDDNau.js} +1 -1
- package/dist/client/assets/{index-CKtGWWKI.js → index-28ylgXoe.js} +2 -2
- package/dist/client/assets/{index-DnokqHCE.js → index-B-wtw2cV.js} +3 -3
- package/dist/client/assets/{index-3BvM9m2F.js → index-BRqNUInJ.js} +1 -1
- package/dist/client/assets/{index-DJiEBchG.js → index-BYWWr4r7.js} +1 -1
- package/dist/client/assets/index-Bh2oT8fz.css +1 -0
- package/dist/client/assets/index-CuZWA4Jo.js +1 -0
- package/dist/client/assets/index-D4eNxtKO.js +503 -0
- package/dist/client/assets/{index-DR6YHYZo.js → index-DF_aAsrE.js} +1 -1
- package/dist/client/assets/{index-dCmm-GRp.js → index-DM3CipuA.js} +1 -1
- package/dist/client/assets/{index-C4YdUUl9.js → index-DUXTdmoE.js} +1 -1
- package/dist/client/assets/{index-UyzF2Wxm.js → index-DrM3Gy-E.js} +3 -3
- package/dist/client/assets/{index-DnjeTCJ0.js → index-Dtsr5F6p.js} +1 -1
- package/dist/client/assets/{index-BonkSf20.js → index-JnEot5Hj.js} +1 -1
- package/dist/client/assets/index-Y9nbouYw.js +1 -0
- package/dist/client/assets/{index-DnCrG3F_.js → index-_BBnqQdQ.js} +1 -1
- package/dist/client/assets/{index-redirect-CiKtg2BH.js → index-redirect-DmPoZnz_.js} +1 -1
- package/dist/client/assets/{input-CTZybS4f.js → input-BiM4A7Ep.js} +1 -1
- package/dist/client/assets/{integration-icon-CslqVkci.js → integration-icon-g_GK3RAr.js} +1 -1
- package/dist/client/assets/{label-Djcog1jo.js → label-CjJncELr.js} +1 -1
- package/dist/client/assets/{login-E5h2Z5UF.js → login-BOHERlR0.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BcPuGj2k.js → mcp-oauth-CEKI9gHX.js} +1 -1
- package/dist/client/assets/{members-w9nno9lo.js → members-BRt8WHan.js} +1 -1
- package/dist/client/assets/{monaco-editor-DnGtg8Ra.js → monaco-editor-BiUexVQ3.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-BqgDsRP3.js → monitoring-stats-row-CwoDwl1p.js} +1 -1
- package/dist/client/assets/{oauth-callback-azsKM8N9.js → oauth-callback-BuVPnEYV.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-DUI7fLPI.js → oauth-callback-ai-provider-YJv6IQM9.js} +1 -1
- package/dist/client/assets/{onboarding-DQTGvP19.js → onboarding-CYpSkBDm.js} +1 -1
- package/dist/client/assets/{org-install-BIHuRdOB.js → org-install-DCy7wocy.js} +1 -1
- package/dist/client/assets/{org-layout-enkFWMsq.js → org-layout-RT_U7zH8.js} +1 -1
- package/dist/client/assets/{organization-choice-CqCgStKm.js → organization-choice-bTsrQb1b.js} +1 -1
- package/dist/client/assets/page-seo-form-oftq8ir_.js +1 -0
- package/dist/client/assets/page-seo-sheet-CAgRh54V.js +1 -0
- package/dist/client/assets/{popover-DG0h5msu.js → popover-CdhOYhn4.js} +1 -1
- package/dist/client/assets/post-editor-B3gQokNp.js +1 -0
- package/dist/client/assets/{preview-dialog-Bnu3vr0P.js → preview-dialog-vDgojfWg.js} +2 -2
- package/dist/client/assets/{primitives-BVa9_bXR.js → primitives-CPVg2JCk.js} +1 -1
- package/dist/client/assets/{profile-Dp5DSYPN.js → profile-C8hjNf5c.js} +1 -1
- package/dist/client/assets/project-app-view-CVZVC5T9.js +1 -0
- package/dist/client/assets/record-editor-BZDypwa5.js +1 -0
- package/dist/client/assets/registry-BSMljcPA.js +2 -0
- package/dist/client/assets/{registry-layout-DSIR5CP1.js → registry-layout-BuJ69l8z.js} +1 -1
- package/dist/client/assets/{require-capability-Cj0iYy81.js → require-capability-7xlqOMAl.js} +1 -1
- package/dist/client/assets/{required-auth-layout-clm6boiC.js → required-auth-layout-DMkbzFqw.js} +1 -1
- package/dist/client/assets/{reset-password-B-IQNmbh.js → reset-password-CANGclZQ.js} +1 -1
- package/dist/client/assets/{roles-Cba1TfDM.js → roles-BsbFpQdA.js} +1 -1
- package/dist/client/assets/{save-status-CDIs_R_V.js → save-status-BZrjQZNL.js} +1 -1
- package/dist/client/assets/{scroll-area-BBReqUns.js → scroll-area-DaDHqFsI.js} +2 -2
- package/dist/client/assets/{search-input-D9asghaf.js → search-input-CA0juGKQ.js} +1 -1
- package/dist/client/assets/{secrets-CN8bUJoZ.js → secrets-2KI9BQIB.js} +1 -1
- package/dist/client/assets/sections-editor-DAz_riff.js +2 -0
- package/dist/client/assets/{select-CYFnhI-Q.js → select-lfhjFS6i.js} +1 -1
- package/dist/client/assets/{select-model-35S1fWTq.js → select-model-DhPTkTLZ.js} +1 -1
- package/dist/client/assets/seo-editor-qYixYUVP.js +1 -0
- package/dist/client/assets/{settings-layout-BBO5MmT3.js → settings-layout-D8_yU3Dv.js} +1 -1
- package/dist/client/assets/{settings-section-DOlV_atx.js → settings-section-uGwPOE8T.js} +1 -1
- package/dist/client/assets/{sheet-DALs-qBg.js → sheet-nKeubIDJ.js} +1 -1
- package/dist/client/assets/{shell-controls-B6QkcDFu.js → shell-controls-Nhg6txWq.js} +1 -1
- package/dist/client/assets/{shell-layout-Ch8BfEKU.js → shell-layout-DJP1UAvL.js} +1 -1
- package/dist/client/assets/{shell-route-loading-RsrwOcS1.js → shell-route-loading-BQkX9uZV.js} +1 -1
- package/dist/client/assets/{sidebar-hZIrovG4.js → sidebar-BDxhgXc-.js} +1 -1
- package/dist/client/assets/{skeleton-BqZgigOh.js → skeleton-CQjs3VsL.js} +1 -1
- package/dist/client/assets/sortable.esm-DaR8hxU_.js +5 -0
- package/dist/client/assets/{sso-BXwKoXqN.js → sso-hQT21VNe.js} +1 -1
- package/dist/client/assets/{store-CRZGNrMb.js → store-BEmqzV80.js} +1 -1
- package/dist/client/assets/store-registry-BoeF7jFP.js +2 -0
- package/dist/client/assets/{studio-tools-C1AZbzwg.js → studio-tools-CAUx-JUt.js} +1 -1
- package/dist/client/assets/{switch-DRDIUTD7.js → switch-Vf_P6Fjw.js} +1 -1
- package/dist/client/assets/{table-tYYVDDAQ.js → table-Df43OI16.js} +1 -1
- package/dist/client/assets/{tabs-D__sk4iN.js → tabs-B7LOh75O.js} +1 -1
- package/dist/client/assets/{task-status-CftQiZKN.js → task-status-CNl7XTqg.js} +1 -1
- package/dist/client/assets/{textarea-DmmCVjU6.js → textarea-CoSni5ST.js} +1 -1
- package/dist/client/assets/{toggle-group-5CInie8P.js → toggle-group-Dpya1ElG.js} +1 -1
- package/dist/client/assets/{toolbar-Bm-rdLjh.js → toolbar-C-FtiPvy.js} +1 -1
- package/dist/client/assets/{tooltip-C7L4o0rn.js → tooltip-Cs_BNuMF.js} +1 -1
- package/dist/client/assets/{types-CppGS_VJ.js → types-GBPItn3L.js} +1 -1
- package/dist/client/assets/{use-ai-providers-Deso-Vyj.js → use-ai-providers-Cyy4e6Er.js} +1 -1
- package/dist/client/assets/{use-automations-DdPVJNl5.js → use-automations-jx__re2k.js} +1 -1
- package/dist/client/assets/{use-capability-CGVlaZtI.js → use-capability-_e3uVe_7.js} +1 -1
- package/dist/client/assets/{use-clock-tick-Bp0qVbdD.js → use-clock-tick-g2v6P087.js} +1 -1
- package/dist/client/assets/{use-collections-CXeEMOwb.js → use-collections-B_GMLsdD.js} +1 -1
- package/dist/client/assets/{use-connection-DqvYiUe3.js → use-connection-DKt0DY8s.js} +1 -1
- package/dist/client/assets/{use-copy-H4KuRxx2.js → use-copy-CgtuLhVL.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp--tV5feR-.js → use-create-virtual-mcp-3Gcq1gem.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-Ct9kek4B.js → use-debounced-autosave-EPMbx34N.js} +1 -1
- package/dist/client/assets/{use-delete-connection-B2XplI5F.js → use-delete-connection-CWY-Tuh_.js} +1 -1
- package/dist/client/assets/{use-file-configs-CJ5VKJt7.js → use-file-configs-Ci1h3IZS.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BpnVw1p2.js → use-infinite-scroll-Dt6SxdrG.js} +1 -1
- package/dist/client/assets/{use-join-requests-rgaNUN9B.js → use-join-requests-Dtt8rzJS.js} +1 -1
- package/dist/client/assets/{use-mcp-client-Cv0jyhEU.js → use-mcp-client-lyJJArps.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-CPZOOi8c.js → use-mcp-prompts-82Xtua4M.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-z50pjVux.js → use-mcp-tools-CdHM3tvY.js} +1 -1
- package/dist/client/assets/{use-members-jM6HOjam.js → use-members-CR5Y6qBg.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-CytgRfBH.js → use-navigate-to-agent-DKc1WVEH.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-DjPrRX3t.js → use-org-auth-client-DyCA15LL.js} +1 -1
- package/dist/client/assets/{use-org-sso-QBVELOwd.js → use-org-sso-DzO_wPSE.js} +1 -1
- package/dist/client/assets/{use-organization-roles-DHxcYiQL.js → use-organization-roles-CfNQzskd.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DPqJ7ETy.js → use-organization-settings-DmFrFel5.js} +1 -1
- package/dist/client/assets/{use-registry-connections-DQ1fpeHW.js → use-registry-connections-grv_p5nm.js} +1 -1
- package/dist/client/assets/{use-secrets-C3RMGjE2.js → use-secrets-DzWb-lJi.js} +1 -1
- package/dist/client/assets/{use-status-sounds-BaJ0EN3G.js → use-status-sounds-CeAiKW9f.js} +1 -1
- package/dist/client/assets/{use-view-mode-DMk0VP0I.js → use-view-mode-PWJQxDpL.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-iRRxKkRN.js → use-virtual-mcp-Bglvu7_H.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-v9qNAGwf.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-Bu3QWDEr.js +1 -0
- package/dist/client/assets/{variant-calendar-Cn9DL04u.js → variant-calendar-BwPeBwqf.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-DnLJJSFI.js → view-mode-toggle-B_Gx2-J_.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/add-section-modal-BBef0kzW.js +0 -1
- package/dist/client/assets/app-editor-DB3LZKk9.js +0 -1
- package/dist/client/assets/automation-runs-CNqGFhXQ.js +0 -1
- package/dist/client/assets/calendar-Cof0eQRR.js +0 -1
- package/dist/client/assets/category-editor-CqVdn-A-.js +0 -1
- package/dist/client/assets/collection-detail-CGFO7Nxa.js +0 -1
- package/dist/client/assets/connection-detail-jhV3T5Vf.js +0 -1
- package/dist/client/assets/connections-RSAnGIGn.js +0 -1
- package/dist/client/assets/context-menu-CwmbYH1X.js +0 -1
- package/dist/client/assets/file-explorer-pkuer-wd.js +0 -2
- package/dist/client/assets/image-field-ycul5miD.js +0 -1
- package/dist/client/assets/index-BB0hMJf7.js +0 -1
- package/dist/client/assets/index-Bcj3iVpr.js +0 -1
- package/dist/client/assets/index-CqVkj8du.js +0 -502
- package/dist/client/assets/index-wICsQ-2V.css +0 -1
- package/dist/client/assets/page-seo-form-CLI6M5cV.js +0 -1
- package/dist/client/assets/page-seo-sheet-ClPikk0g.js +0 -1
- package/dist/client/assets/post-editor-BVwj0umw.js +0 -1
- package/dist/client/assets/project-app-view-r7Nmocf7.js +0 -1
- package/dist/client/assets/record-editor-DoT_RQtf.js +0 -1
- package/dist/client/assets/registry-Do0X3IQW.js +0 -2
- package/dist/client/assets/save-referenced-block-BJospazn.js +0 -1
- package/dist/client/assets/schema-form-B6Wg-hy1.js +0 -2
- package/dist/client/assets/sections-editor-BojFR4GO.js +0 -2
- package/dist/client/assets/seo-editor-DBNUZ0fG.js +0 -1
- package/dist/client/assets/sortable.esm-BtnRUgUU.js +0 -5
- package/dist/client/assets/store-registry-C5xb_cZe.js +0 -2
- package/dist/client/assets/use-deco-credits-rzfxapgg.js +0 -1
- package/dist/client/assets/useInfiniteQuery-DVN2QYOz.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-BKCXXvPp.js +0 -1
|
@@ -1,502 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sections-editor-BojFR4GO.js","assets/index-UyzF2Wxm.js","assets/index-wICsQ-2V.css","assets/ChevronDown-C_njLrOU.js","assets/ChevronLeft-ByQFERqp.js","assets/ChevronRight-D1duQehP.js","assets/ChevronUp-_gM_dQkt.js","assets/agent-icon-BMQHBhP6.js","assets/AlertCircle-Diz6uT7Y.js","assets/Tool01-BgzvuPeY.js","assets/SwitchHorizontal01-vo5MpXEz.js","assets/Settings02-BvivcyYL.js","assets/XCircle-B88UxHjD.js","assets/ArrowUpRight-Bo4YThIl.js","assets/ZapSquare-BfSTQonf.js","assets/Users03-ClWrctLP.js","assets/CheckCircle-BSFt0_RZ.js","assets/DotsVertical-BJnhQ8u0.js","assets/Stars02-CVb_b-OZ.js","assets/Eye-SUXNGsVY.js","assets/ZoomOut-Csc4IU4b.js","assets/Globe01-CNw0uMhK.js","assets/FilterLines-CxIQYlMz.js","assets/Star01-Ds91SJzA.js","assets/Globe04-B24hCYmg.js","assets/HardDrive-IPJJMMij.js","assets/Key01-CES8n-fG.js","assets/LayoutLeft-D3mZzNi0.js","assets/LinkExternal01-B8zRpPza.js","assets/Monitor01-Uh-3HvZI.js","assets/Sun-tLN4vA6M.js","assets/Palette-Du66341h.js","assets/Play-CVoFjR5I.js","assets/Plus-DoMNANl8.js","assets/SearchMd-B-bL1wjq.js","assets/Shield01-BewRt7sw.js","assets/Stars01-PS518Jif.js","assets/Trash01-D84eyfFz.js","assets/Upload01-BA5iKtAl.js","assets/User01-CeCQHgwg.js","assets/Users01-DtmLcsFN.js","assets/XClose-DcfEQwVh.js","assets/X-2HGWB7Oo.js","assets/Zap-BeB31T8Y.js","assets/scroll-area-BBReqUns.js","assets/use-clock-tick-Bp0qVbdD.js","assets/differenceInSeconds-NQ4PDo0z.js","assets/use-copy-H4KuRxx2.js","assets/tooltip-C7L4o0rn.js","assets/file-type-icon-BOraV8Gq.js","assets/dialog-AE8ChAe3.js","assets/tab-id-BptcWVWa.js","assets/content-blocks-o63cs2vh.js","assets/types-CppGS_VJ.js","assets/use-mcp-client-Cv0jyhEU.js","assets/auth-CCI_mhgC.js","assets/chat-context-Dqu5Dj_J.js","assets/hooks-DwlYXenh.js","assets/decopilot-sse-pool-_mJQvJZ7.js","assets/backoff-CrEUbyZT.js","assets/delay-CnY5UFtP.js","assets/use-virtual-mcp-iRRxKkRN.js","assets/use-collections-CXeEMOwb.js","assets/use-ai-providers-Deso-Vyj.js","assets/studio-tools-C1AZbzwg.js","assets/use-organization-settings-DPqJ7ETy.js","assets/shell-layout-Ch8BfEKU.js","assets/avatar-CtVVLapD.js","assets/required-auth-layout-clm6boiC.js","assets/use-org-sso-QBVELOwd.js","assets/sheet-DALs-qBg.js","assets/integration-icon-CslqVkci.js","assets/use-navigate-to-agent-CytgRfBH.js","assets/use-connection-DqvYiUe3.js","assets/use-mcp-prompts-CPZOOi8c.js","assets/form-teSq_9QK.js","assets/label-Djcog1jo.js","assets/input-CTZybS4f.js","assets/select-CYFnhI-Q.js","assets/dropdown-menu-ecBYljKf.js","assets/sortable.esm-BtnRUgUU.js","assets/schema-form-B6Wg-hy1.js","assets/calendar-Cof0eQRR.js","assets/popover-DG0h5msu.js","assets/textarea-DmmCVjU6.js","assets/switch-DRDIUTD7.js","assets/image-field-ycul5miD.js","assets/skeleton-BqZgigOh.js","assets/tabs-D__sk4iN.js","assets/use-file-configs-CJ5VKJt7.js","assets/useInfiniteQuery-DVN2QYOz.js","assets/use-infinite-scroll-BpnVw1p2.js","assets/command-DhLgZpjn.js","assets/index-DnCrG3F_.js","assets/page-seo-form-CLI6M5cV.js","assets/add-section-modal-BBef0kzW.js","assets/index-CKtGWWKI.js","assets/drawer-Di9WrlRG.js","assets/collection-search-D6nD206z.js","assets/toggle-group-5CInie8P.js","assets/use-deco-credits-rzfxapgg.js","assets/connection-slug-eyAPH6o3.js","assets/connection-card-BwnCXxRf.js","assets/use-registry-connections-DQ1fpeHW.js","assets/extract-connection-data-BumzxLvt.js","assets/card-DZtTT5Es.js","assets/collection-tabs-cs02GObx.js","assets/badge-BFvLiE20.js","assets/connection-form-helpers-Csy5hutj.js","assets/authenticate-and-persist-oauth-eSHjAd3t.js","assets/mcp-oauth-BcPuGj2k.js","assets/useSuspenseInfiniteQuery-BKCXXvPp.js","assets/connect-desktop-dialog-DNAK4U2K.js","assets/decopilot-CLVJpS6M.js","assets/checkbox-CHXOcnVE.js","assets/ai-providers-logos-DD3qZ33J.js","assets/settings-section-DOlV_atx.js","assets/question-004-sINsf4GQ.js","assets/use-status-sounds-BaJ0EN3G.js","assets/empty-state-CegPWPc0.js","assets/toolbar-Bm-rdLjh.js","assets/preview-dialog-Bnu3vr0P.js","assets/index-DR6YHYZo.js","assets/use-mcp-tools-z50pjVux.js","assets/use-capability-CGVlaZtI.js","assets/shell-route-loading-RsrwOcS1.js","assets/index-C4YdUUl9.js","assets/alert-dialog-0uOi3HqZ.js","assets/use-debounced-autosave-Ct9kek4B.js","assets/index-DJiEBchG.js","assets/sidebar-hZIrovG4.js","assets/search-input-D9asghaf.js","assets/github-repo-picker-LA1Jld2f.js","assets/use-secrets-C3RMGjE2.js","assets/formatDistanceToNow-Cb2QZZJn.js","assets/view-mode-toggle-DnLJJSFI.js","assets/select-model-35S1fWTq.js","assets/use-automations-DdPVJNl5.js","assets/monaco-editor-DnGtg8Ra.js","assets/automation-runs-CNqGFhXQ.js","assets/table-tYYVDDAQ.js","assets/use-members-jM6HOjam.js","assets/use-org-auth-client-DjPrRX3t.js","assets/task-status-CftQiZKN.js","assets/automation-list-row-Ct9jaHYX.js","assets/save-referenced-block-BJospazn.js","assets/page-seo-sheet-ClPikk0g.js","assets/file-explorer-pkuer-wd.js","assets/context-menu-CwmbYH1X.js","assets/app-editor-DB3LZKk9.js","assets/save-status-CDIs_R_V.js","assets/post-editor-BVwj0umw.js","assets/primitives-BVa9_bXR.js","assets/block-document-CZwjF0EN.js","assets/record-editor-DoT_RQtf.js","assets/category-editor-CqVdn-A-.js","assets/seo-editor-DBNUZ0fG.js","assets/variant-calendar-Cn9DL04u.js","assets/project-app-view-r7Nmocf7.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{c as H,r as P,l as le,j as n,i as Ne,v as Re,a as vi,a2 as Jt,b as Mt,u as wn,e as Nh,s as rm,L as nm,k as As,K as Tt,m as Gs,a3 as Cn,a4 as om,a5 as am,t as ae,B as oe,a6 as Eh,a7 as lm,a8 as cm,q as Ie,a9 as Th,aa as hm,ab as kn,ac as lr,ad as Dt,ae as dm,E as Ph,C as um,x as fm,af as It,P as Ah,ag as mm,U as pm,$ as Rh,W as gm,ah as _m,Q as vm,ai as xm,d as xi,y as Fr,aj as Ki,z as Yt,ak as Ut}from"./index-UyzF2Wxm.js";import{C as Ue,a as bm,w as ym,u as ya,s as bo,T as Sm,b as wm,g as Cm,c as km}from"./index-CKtGWWKI.js";import{u as Ys,a as ys,b as Sa,c as Dh,S as wa,t as jm,d as Nm}from"./chat-context-Dqu5Dj_J.js";import{i as vr}from"./AlertCircle-Diz6uT7Y.js";import{i as Ih}from"./CheckCircle-BSFt0_RZ.js";import{n as Dl}from"./ChevronLeft-ByQFERqp.js";import{a as Em,i as Tm}from"./XCircle-B88UxHjD.js";import{s as Ps}from"./XClose-DcfEQwVh.js";import{a as ds,u as Ca,b as Lh,c as Pm}from"./use-virtual-mcp-iRRxKkRN.js";import{c as Am,u as Rm,a as Bh,O as Dm,t as yo,S as jn,T as Im,b as Mh,R as Lm,C as Bm,G as Mm,g as Om,s as $m,d as zm,e as Fm,f as Hm}from"./scroll-area-BBReqUns.js";import{I as us}from"./integration-icon-CslqVkci.js";import{a as Oh,u as vt,S as ka,b as Wm,c as Um,i as Km,d as $h}from"./use-mcp-client-Cv0jyhEU.js";import{a as Vm}from"./Users03-ClWrctLP.js";import{t as Rs}from"./ChevronDown-C_njLrOU.js";import{u as qm,h as Gm,a as xr,c as zh,d as Us,g as Ym,A as Xm,f as Jm,e as Zm}from"./use-deco-credits-rzfxapgg.js";import{u as Fh}from"./use-ai-providers-Deso-Vyj.js";import{u as Qm}from"./connect-desktop-dialog-DNAK4U2K.js";import{r as ep,b as ja,i as tp}from"./shell-layout-Ch8BfEKU.js";import{u as Na,T as Ce,a as ke,b as je,c as Hh}from"./tooltip-C7L4o0rn.js";import{u as sp}from"./use-status-sounds-BaJ0EN3G.js";import{E as Yr}from"./empty-state-CegPWPc0.js";import{r as So,a as ip,p as Wh,f as Il,b as Uh,c as Kh,d as Vh,e as rp,F as np,i as op,g as ap,h as qh,j as Gh}from"./tab-id-BptcWVWa.js";import{u as Yh,a as Xh}from"./hooks-DwlYXenh.js";import{T as Ll,a as Vi}from"./toolbar-Bm-rdLjh.js";import{u as lp,a as cp,b as hp,c as dp,g as up,d as Jh,e as Bl,F as fp,f as mp,h as pp,i as gp,j as _p,k as vp,l as xp,H as bp,L as yp,R as Zh,m as Sp,n as wp,T as Ea,o as Cp,p as kp}from"./preview-dialog-Bnu3vr0P.js";import{g as cr,h as Ta,j as Qh,k as jp,p as Nn,l as En,m as Pa,n as ed,o as wo,q as Hn,r as Ml,A as Ol,s as Np,t as Ep,u as Tp,v as Pp,w as Ap,x as Rp,y as Dp,z as Ip,B as Lp,C as Bp,D as Tn,E as Mp,F as $l,G as zl,H as Op,d as $p,I as zp,J as Fp,K as Aa,L as Xr,M as Ra,N as Co,O as Pn,P as Hp,Q as Wp,R as Up,S as Kp,T as Vp,U as qp,V as Gp,W as Fl,X as Yp,Y as Xp,Z as Jp,_ as td,$ as Zp}from"./agent-icon-BMQHBhP6.js";import{i as br,n as Qp}from"./Globe01-CNw0uMhK.js";import{i as sd}from"./Monitor01-Uh-3HvZI.js";import{u as yr,a as Da,b as id}from"./use-connection-DqvYiUe3.js";import{u as An,a as rd,b as nd}from"./use-mcp-tools-z50pjVux.js";import{g as od}from"./types-CppGS_VJ.js";import{u as bi}from"./studio-tools-C1AZbzwg.js";import{u as eg}from"./use-capability-CGVlaZtI.js";import{F as ui,M as Ia,O as tg}from"./file-type-icon-BOraV8Gq.js";import{P as Xs,a as Js,b as Zs}from"./popover-DG0h5msu.js";import{b as jt,c as Lt,S as Nt,a as Ye,d as Et}from"./select-CYFnhI-Q.js";import{D as os,a as as,b as ls,c as We,d as ko,e as jo,f as No,g as tr,h as hr,i as Wn,j as Un}from"./dropdown-menu-ecBYljKf.js";import{d as Kt,c as Vt,D as fs,a as ms,e as Qs,b as Rn}from"./dialog-AE8ChAe3.js";import{I as tt}from"./input-CTZybS4f.js";import{T as $s,a as La,b as sr,c as Ba}from"./tabs-D__sk4iN.js";import{T as Jr}from"./textarea-DmmCVjU6.js";import{a as bs,s as sg}from"./Eye-SUXNGsVY.js";import{t as zs}from"./Stars01-PS518Jif.js";import{l as ig,w as rg}from"./index-DR6YHYZo.js";import{i as ad}from"./ChevronRight-D1duQehP.js";import{a as Eo,b as ld}from"./ZoomOut-Csc4IU4b.js";import{S as ng}from"./shell-route-loading-RsrwOcS1.js";import{a as og}from"./extract-connection-data-BumzxLvt.js";import{A as Kn}from"./avatar-CtVVLapD.js";import{T as cd,u as hd,I as ag,R as lg,a as cg}from"./index-C4YdUUl9.js";import{a as hg,i as Hl}from"./mcp-oauth-BcPuGj2k.js";import{s as dd,g as dg}from"./connection-slug-eyAPH6o3.js";import{f as Zr,a as Qr,b as en,c as tn,d as sn,e as rn,A as nn,g as on}from"./alert-dialog-0uOi3HqZ.js";import{C as Ma,a as an}from"./card-DZtTT5Es.js";import{L as _t}from"./label-Djcog1jo.js";import{S as ln}from"./switch-DRDIUTD7.js";import{i as fi}from"./Play-CVoFjR5I.js";import{s as Bt}from"./Plus-DoMNANl8.js";import{a as ug,i as ud}from"./Settings02-BvivcyYL.js";import{s as Ks}from"./Trash01-D84eyfFz.js";import{u as cn}from"./use-debounced-autosave-Ct9kek4B.js";import{i as dr}from"./SearchMd-B-bL1wjq.js";import{i as fg}from"./Upload01-BA5iKtAl.js";import{i as mg}from"./LayoutLeft-D3mZzNi0.js";import{P as Zt}from"./index-DJiEBchG.js";import{C as yi}from"./checkbox-CHXOcnVE.js";import{S as fd}from"./search-input-D9asghaf.js";import{C as md}from"./collection-tabs-cs02GObx.js";import{u as pg}from"./use-mcp-prompts-CPZOOi8c.js";import{b as gg,a as _g,D as vg}from"./drawer-Di9WrlRG.js";import{i as Si}from"./ChevronUp-_gM_dQkt.js";import{i as Oa}from"./Key01-CES8n-fG.js";import{a as pd,G as xg}from"./github-repo-picker-LA1Jld2f.js";import{S as gd}from"./skeleton-BqZgigOh.js";import{s as bg}from"./User01-CeCQHgwg.js";import{t as Dn}from"./Users01-DtmLcsFN.js";import{u as yg,a as Sg}from"./use-secrets-C3RMGjE2.js";import{f as wg}from"./formatDistanceToNow-Cb2QZZJn.js";import{n as wi}from"./LinkExternal01-B8zRpPza.js";import{s as mi}from"./Star01-Ds91SJzA.js";import{i as _d,s as ir}from"./Stars02-CVb_b-OZ.js";import{V as Cg}from"./view-mode-toggle-DnLJJSFI.js";import{n as To}from"./ZapSquare-BfSTQonf.js";import{i as $a,a as kg,b as za}from"./Tool01-BgzvuPeY.js";import{c as vd,i as jg}from"./SwitchHorizontal01-vo5MpXEz.js";import{i as xd}from"./X-2HGWB7Oo.js";import{i as Ng}from"./DotsVertical-BJnhQ8u0.js";import{B as Eg}from"./badge-BFvLiE20.js";import{C as Tg,e as Wl,d as Pg,b as Ag,c as Rg,a as Dg}from"./command-DhLgZpjn.js";import{M as Ig}from"./select-model-35S1fWTq.js";import{u as Sr,a as Lg,b as Bg,c as Mg,d as Og}from"./use-automations-DdPVJNl5.js";import{i as ur}from"./Zap-BeB31T8Y.js";import{M as $g}from"./monaco-editor-DnGtg8Ra.js";import{A as zg}from"./automation-runs-CNqGFhXQ.js";import{A as Fg}from"./automation-list-row-Ct9jaHYX.js";function Di(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function Ul(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 Hg(t){return t?t.replace(/-\d{8}(?:-[a-z0-9]+)*$/i,"").replace(/-/g," "):"—"}function Wg(t){const e=H.c(4),{items:s}=t;let i;e[0]!==s?(i=s.map(Ug),e[0]=s,e[1]=i):i=e[1];let r;return e[2]!==i?(r=n.jsx("div",{className:"grid grid-cols-2 gap-x-8 gap-y-6",children:i}),e[2]=i,e[3]=r):r=e[3],r}function Ug(t){return n.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[n.jsx("span",{className:"text-xs text-muted-foreground truncate",children:t.label}),n.jsx("span",{className:"text-sm text-foreground tabular-nums truncate",children:t.value})]},t.label)}function Kg(t){const e=H.c(30),{userTokens:s,assistantTokens:i,otherTokens:r}=t,o=s+i+r,a=o>0?s/o*100:0,l=o>0?i/o*100:0,h=o>0?r/o*100:0;let c;e[0]!==a?(c=a>0&&n.jsx("div",{className:"h-full bg-chart-1",style:{width:`${a}%`}}),e[0]=a,e[1]=c):c=e[1];let d;e[2]!==l?(d=l>0&&n.jsx("div",{className:"h-full bg-chart-2",style:{width:`${l}%`}}),e[2]=l,e[3]=d):d=e[3];let u;e[4]!==h?(u=h>0&&n.jsx("div",{className:"h-full bg-muted-foreground/30",style:{width:`${h}%`}}),e[4]=h,e[5]=u):u=e[5];let f;e[6]!==c||e[7]!==d||e[8]!==u?(f=n.jsxs("div",{className:"flex h-2 w-full overflow-hidden rounded-full bg-muted",children:[c,d,u]}),e[6]=c,e[7]=d,e[8]=u,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=n.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=n.jsxs("div",{className:"flex items-center gap-1.5",children:[m,n.jsxs("span",{className:"text-xs text-muted-foreground",children:["User ",p,"%"]})]}),e[13]=p,e[14]=g):g=e[14];let v;e[15]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-2 shrink-0"}),e[15]=v):v=e[15];let b;e[16]!==l?(b=l.toFixed(1),e[16]=l,e[17]=b):b=e[17];let x;e[18]!==b?(x=n.jsxs("div",{className:"flex items-center gap-1.5",children:[v,n.jsxs("span",{className:"text-xs text-muted-foreground",children:["Assistant ",b,"%"]})]}),e[18]=b,e[19]=x):x=e[19];let _;e[20]!==h||e[21]!==r?(_=r>0&&n.jsxs("div",{className:"flex items-center gap-1.5",children:[n.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-muted-foreground/30 shrink-0"}),n.jsxs("span",{className:"text-xs text-muted-foreground",children:["Other ",h.toFixed(1),"%"]})]}),e[20]=h,e[21]=r,e[22]=_):_=e[22];let y;e[23]!==x||e[24]!==_||e[25]!==g?(y=n.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[g,x,_]}),e[23]=x,e[24]=_,e[25]=g,e[26]=y):y=e[26];let S;return e[27]!==y||e[28]!==f?(S=n.jsxs("div",{className:"flex flex-col gap-2",children:[f,y]}),e[27]=y,e[28]=f,e[29]=S):S=e[29],S}function Vg(t){const e=H.c(11),{agentId:s,isError:i}=t,r=ds(s),o=r?.title??"Subtask",a=r?.icon??null;let l;e[0]!==a||e[1]!==o?(l=n.jsx(us,{icon:a,name:o,size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=a,e[1]=o,e[2]=l):l=e[2];const h=i?"text-destructive":"text-foreground";let c;e[3]!==h?(c=le("shrink-0 font-medium",h),e[3]=h,e[4]=c):c=e[4];let d;e[5]!==o||e[6]!==c?(d=n.jsx("span",{className:c,children:o}),e[5]=o,e[6]=c,e[7]=d):d=e[7];let u;return e[8]!==l||e[9]!==d?(u=n.jsxs(n.Fragment,{children:[l,d]}),e[8]=l,e[9]=d,e[10]=u):u=e[10],u}function qg(t){const e=H.c(5),{isError:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx(us,{icon:null,name:"Subtask",size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=i):i=e[0];const r=s?"text-destructive":"text-foreground";let o;e[1]!==r?(o=le("shrink-0 font-medium",r),e[1]=r,e[2]=o):o=e[2];let a;return e[3]!==o?(a=n.jsxs(n.Fragment,{children:[i,n.jsx("span",{className:o,children:"Subtask"})]}),e[3]=o,e[4]=a):a=e[4],a}function Gg(t){const e=H.c(18),{part:s}=t,i=s.input?.agent_id,r=s.state==="input-streaming"||s.state==="input-available"||s.state==="output-available"&&s.preliminary===!0,o=s.state==="output-error",a=s.state==="approval-requested";let l;e[0]!==o?(l=n.jsx(qg,{isError:o}),e[0]=o,e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==o?(h=n.jsx(Vg,{agentId:i,isError:o}),e[2]=i,e[3]=o,e[4]=h):h=e[4];let c;e[5]!==l||e[6]!==h?(c=n.jsx(P.Suspense,{fallback:l,children:h}),e[5]=l,e[6]=h,e[7]=c):c=e[7];let d;e[8]!==s.input?(d=s.input?.prompt&&n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-muted-foreground/50",children:"·"}),n.jsx("span",{className:"truncate text-muted-foreground",children:s.input.prompt})]}),e[8]=s.input,e[9]=d):d=e[9];let u;e[10]!==a||e[11]!==o||e[12]!==r?(u=n.jsx("span",{className:"ml-auto shrink-0",children:r?n.jsx(Ne,{size:12,className:"animate-spin text-muted-foreground"}):o?n.jsx(Em,{size:12,className:"text-destructive"}):a?n.jsx(vr,{size:12,className:"text-warning"}):n.jsx(Ih,{size:12,className:"text-emerald-500"})}),e[10]=a,e[11]=o,e[12]=r,e[13]=u):u=e[13];let f;return e[14]!==c||e[15]!==d||e[16]!==u?(f=n.jsxs("div",{className:"flex items-center gap-2 text-xs min-w-0",children:[c,d,u]}),e[14]=c,e[15]=d,e[16]=u,e[17]=f):f=e[17],f}function Yg(t){const e=H.c(55),{onClose:s,back:i,className:r}=t,[o,a]=P.useState(null),{messages:l}=Ys(),{activeTask:h}=ys(),{selectedModel:c,selectedVirtualMcp:d}=Sa();let u,f,m,p,g,v,b,x;if(e[0]!==h||e[1]!==i||e[2]!==r||e[3]!==l||e[4]!==s||e[5]!==o?.id||e[6]!==c||e[7]!==d?.title){x=Symbol.for("react.early_return_sentinel");e:{const S=Am(l),w=[...l].reverse().find(o_),j=w?.metadata?.usage,E=w?.metadata?.modelLimits?.contextWindow??c?.limits?.contextWindow??null,T=j?.contextTokens??0,A=E&&E>0?(T/E*100).toFixed(1):null,R=l;let k;e[16]!==R?(k=R.filter(n_).reduce(r_,0),e[16]=R,e[17]=k):k=e[17];const C=k,D=l;let N;e[18]!==D?(N=D.filter(i_).reduce(s_,0),e[18]=D,e[19]=N):N=e[19];const L=N,B=Math.max(0,S.totalTokens-C-L),I=l[0],M=l.at(-1),O=I?.metadata?.created_at??h?.created_at,F=M?.metadata?.created_at??h?.updated_at,z=l.filter(t_),K=l.flatMap(Qg),G=c?.modelId?Hg(c.modelId):"—",X=d?.title??"Decopilot",ie=[{label:"Session",value:h?.title??"New chat"},{label:"Messages",value:z.length},{label:"Agent",value:X},{label:"Model",value:G},{label:"Context Limit",value:E?Di(E):"—"},{label:"Session Tokens (billed)",value:S.totalTokens>0?Di(S.totalTokens):"0"},{label:"Usage",value:A!==null?`${A}%`:"—"},{label:"Input Tokens",value:S.inputTokens>0?Di(S.inputTokens):"0"},{label:"Output Tokens",value:S.outputTokens>0?Di(S.outputTokens):"0"},{label:"Reasoning Tokens",value:S.reasoningTokens>0?Di(S.reasoningTokens):"0"},{label:"Cost",value:S.cost>0?`$${S.cost<.001?S.cost.toFixed(6):S.cost.toFixed(4)}`:"$0.00"},{label:"Session Created",value:Ul(O)},{label:"Last Activity",value:Ul(F)}];if(!h&&z.length===0){let $;e[20]!==r?($=le("flex flex-col h-full w-full border-l border-border bg-background",r),e[20]=r,e[21]=$):$=e[21];let Z;e[22]===Symbol.for("react.memo_cache_sentinel")?(Z=n.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[22]=Z):Z=e[22];let U;e[23]!==i?(U=i?n.jsx(Dl,{size:14,className:"text-muted-foreground"}):n.jsx(Ps,{size:14,className:"text-muted-foreground"}),e[23]=i,e[24]=U):U=e[24];let ee;e[25]!==s||e[26]!==U?(ee=n.jsxs("div",{className:"h-11 px-4 flex items-center justify-between shrink-0 border-b border-border/50",children:[Z,n.jsx("button",{type:"button",onClick:s,className:"flex size-6 items-center justify-center rounded hover:bg-accent transition-colors",children:U})]}),e[25]=s,e[26]=U,e[27]=ee):ee=e[27];let Q;e[28]===Symbol.for("react.memo_cache_sentinel")?(Q=n.jsx("div",{className:"flex-1 flex items-center justify-center px-4 text-center",children:n.jsx("p",{className:"text-xs text-muted-foreground",children:"Start a conversation to see context"})}),e[28]=Q):Q=e[28];let fe;e[29]!==$||e[30]!==ee?(fe=n.jsxs("div",{className:$,children:[ee,Q]}),e[29]=$,e[30]=ee,e[31]=fe):fe=e[31],x=fe;break e}e[32]!==r?(v=le("flex flex-col h-full w-full border-l border-border bg-background overflow-y-auto",r),e[32]=r,e[33]=v):v=e[33];let W;e[34]===Symbol.for("react.memo_cache_sentinel")?(W=n.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[34]=W):W=e[34];let Y;e[35]!==i?(Y=i?n.jsx(Dl,{size:14}):n.jsx(Ps,{size:14}),e[35]=i,e[36]=Y):Y=e[36],e[37]!==s||e[38]!==Y?(b=n.jsxs("div",{className:"flex h-11 shrink-0 items-center justify-between border-b border-border/50 px-4",children:[W,n.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:Y})]}),e[37]=s,e[38]=Y,e[39]=b):b=e[39],u="flex flex-col gap-8 p-6",f=K.length>0&&n.jsxs("div",{className:"flex flex-col gap-3",children:[n.jsx("span",{className:"text-xs text-muted-foreground",children:"Subtasks"}),n.jsx("div",{className:"flex flex-col gap-1",children:K.map(Zg)})]}),m=n.jsx(Wg,{items:ie});let ne;e[40]===Symbol.for("react.memo_cache_sentinel")?(ne=n.jsx("span",{className:"text-xs text-muted-foreground",children:"Context Breakdown"}),e[40]=ne):ne=e[40],e[41]!==L||e[42]!==B||e[43]!==C?(p=n.jsxs("div",{className:"flex flex-col gap-3",children:[ne,n.jsx(Kg,{userTokens:C,assistantTokens:L,otherTokens:B})]}),e[41]=L,e[42]=B,e[43]=C,e[44]=p):p=e[44],g=z.length>0&&n.jsxs("div",{className:"flex flex-col gap-3",children:[n.jsx("span",{className:"text-xs text-muted-foreground",children:"Raw messages"}),n.jsx("div",{className:"flex flex-col gap-1",children:z.map($=>{const Z=$.metadata?.created_at,U=o?.id===$.id;return n.jsxs("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[n.jsxs("button",{type:"button",onClick:()=>a(U?null:$),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:[n.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[n.jsx("span",{className:le("shrink-0 font-medium",$.role==="user"?"text-chart-1":"text-chart-2"),children:$.role}),n.jsx("span",{className:"text-muted-foreground",children:"•"}),n.jsx("span",{className:"truncate text-muted-foreground font-mono",children:$.id})]}),Z&&n.jsx("span",{className:"shrink-0 text-muted-foreground tabular-nums",children:new Date(Z).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})})]}),U&&n.jsxs(n.Fragment,{children:[$.role==="assistant"&&(()=>{const ee=$.metadata?._request;if(!ee)return null;const Q=ee.systemSections??[],fe=Math.max(1,...Q.map(Jg)),me=Q.reduce(Xg,0);return n.jsxs("div",{className:"border-t border-border/50 px-3 py-2.5 text-xs space-y-2.5",children:[n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("span",{className:"font-medium text-foreground",children:"Request"}),n.jsxs("span",{className:"text-muted-foreground tabular-nums",children:[ee.activeTools??0," / ",ee.tools??0," ","tools active"]})]}),Q.length>0&&n.jsxs("div",{className:"space-y-1.5",children:[n.jsxs("div",{className:"text-muted-foreground",children:["System prompt"," ",n.jsxs("span",{className:"tabular-nums",children:["~",Math.round(me/4).toLocaleString()," ","tok"]})]}),Q.map((ve,J)=>{const se=ve.preview.match(/^<([a-z-]+)/i)?.[1]??`section ${J}`,pe=ve.chars/fe*100,ge=Math.round(ve.chars/4);return n.jsxs("div",{className:"space-y-0.5",children:[n.jsxs("div",{className:"flex items-center justify-between gap-2",children:[n.jsx("span",{className:"font-mono text-foreground truncate",children:se}),n.jsxs("span",{className:"text-muted-foreground tabular-nums shrink-0",children:["~",ge.toLocaleString()," tok"]})]}),n.jsx("div",{className:"h-1 w-full rounded-full bg-muted overflow-hidden",children:n.jsx("div",{className:"h-full rounded-full bg-chart-3",style:{width:`${pe}%`}})})]},J)})]})]})})(),n.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($,null,2)})]})]},$.id)})})]})}e[0]=h,e[1]=i,e[2]=r,e[3]=l,e[4]=s,e[5]=o?.id,e[6]=c,e[7]=d?.title,e[8]=u,e[9]=f,e[10]=m,e[11]=p,e[12]=g,e[13]=v,e[14]=b,e[15]=x}else u=e[8],f=e[9],m=e[10],p=e[11],g=e[12],v=e[13],b=e[14],x=e[15];if(x!==Symbol.for("react.early_return_sentinel"))return x;let _;e[45]!==u||e[46]!==f||e[47]!==m||e[48]!==p||e[49]!==g?(_=n.jsxs("div",{className:u,children:[f,m,p,g]}),e[45]=u,e[46]=f,e[47]=m,e[48]=p,e[49]=g,e[50]=_):_=e[50];let y;return e[51]!==v||e[52]!==b||e[53]!==_?(y=n.jsxs("div",{className:v,children:[b,_]}),e[51]=v,e[52]=b,e[53]=_,e[54]=y):y=e[54],y}function Xg(t,e){return t+e.chars}function Jg(t){return t.chars}function Zg(t,e){return n.jsx(Gg,{part:t},e)}function Qg(t){return(t.parts??[]).filter(e_)}function e_(t){return t.type==="tool-subtask"}function t_(t){return t.role!=="system"}function s_(t,e){const s=e.metadata?.usage;return t+(s?.outputTokens??0)}function i_(t){return t.role==="assistant"}function r_(t,e){const s=e.metadata?.usage;return t+(s?.inputTokens??0)}function n_(t){return t.role==="user"}function o_(t){return t.role==="assistant"&&t.metadata?.usage}function a_(t){const e=H.c(13),{readOnly:s,identity:i,aboveRow:r,input:o,iceBreakers:a}=t,l=!s&&i?i:null;let h;e[0]!==r||e[1]!==s?(h=!s&&r?n.jsx("div",{"data-chat-above-row":"true",className:"@container/chat-bottom flex justify-start gap-1",children:r}):null,e[0]=r,e[1]=s,e[2]=h):h=e[2];let c;e[3]!==o||e[4]!==h?(c=n.jsxs("div",{className:"flex flex-col gap-2",children:[h,o]}),e[3]=o,e[4]=h,e[5]=c):c=e[5];let d;e[6]!==a||e[7]!==s?(d=!s&&a?n.jsx("div",{className:"w-full",children:a}):null,e[6]=a,e[7]=s,e[8]=d):d=e[8];let u;return e[9]!==l||e[10]!==c||e[11]!==d?(u=n.jsx("div",{"data-chat-centered":"true",className:"h-full w-full flex flex-col items-center justify-center px-4 gap-6",children:n.jsxs("div",{className:"w-full max-w-3xl flex flex-col gap-6",children:[l,c,d]})}),e[9]=l,e[10]=c,e[11]=d,e[12]=u):u=e[12],u}function l_(t){const e=H.c(25),{onOpenContextPanel:s}=t,{org:i}=Re(),{selectedVirtualMcp:r}=Sa();let o;e[0]!==i.id?(o=Oh(i.id),e[0]=i.id,e[1]=o):o=e[1];const l=r??o,h=ds(l.id),c=Dh(),{data:d}=vi.useSession(),u=d?.user?.id,f=c?.activeTask??null,m=!!(u&&f?.created_by&&f.created_by!==u);let p;e[2]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(Vm,{size:32}),e[2]=p):p=e[2];let g;e[3]!==l.icon||e[4]!==l.title?(g=n.jsx(us,{icon:l.icon,name:l.title,size:"lg",fallbackIcon:p,className:"size-10 min-w-10 md:size-[60px]! md:min-w-[60px] rounded-xl md:rounded-[18px]!"}),e[3]=l.icon,e[4]=l.title,e[5]=g):g=e[5];let v;e[6]!==l.title?(v=n.jsx("h3",{className:"text-base md:text-xl font-medium text-foreground",children:l.title}),e[6]=l.title,e[7]=v):v=e[7];const b=l.description??"Ask anything about configuring model providers or using MCP Mesh.";let x;e[8]!==b?(x=n.jsx("div",{className:"text-muted-foreground text-center text-base max-w-md line-clamp-2",children:b}),e[8]=b,e[9]=x):x=e[9];let _;e[10]!==g||e[11]!==v||e[12]!==x?(_=n.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 md:gap-4 text-center",children:[g,v,x]}),e[10]=g,e[11]=v,e[12]=x,e[13]=_):_=e[13];const y=c?.currentBranch??null;let S;e[14]!==h||e[15]!==y?(S=n.jsx(bm,{virtualMcp:h,currentBranch:y}),e[14]=h,e[15]=y,e[16]=S):S=e[16];let w;e[17]!==s?(w=n.jsx(Ue.Input,{onOpenContextPanel:s}),e[17]=s,e[18]=w):w=e[18];let j;e[19]===Symbol.for("react.memo_cache_sentinel")?(j=n.jsx(Ue.IceBreakers,{}),e[19]=j):j=e[19];let E;return e[20]!==m||e[21]!==w||e[22]!==_||e[23]!==S?(E=n.jsx(a_,{readOnly:m,identity:_,aboveRow:S,input:w,iceBreakers:j}),e[20]=m,e[21]=w,e[22]=_,e[23]=S,e[24]=E):E=e[24],E}function Kl(t){const e=H.c(17),{outputs:s,collapsed:i,onToggle:r,variant:o}=t,a=o==="card"?"rounded-xl border border-border bg-muted/95 shadow-sm backdrop-blur-sm":"border-b border-border bg-background";let l;e[0]!==a?(l=le(a),e[0]=a,e[1]=l):l=e[1];let h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx("span",{className:"text-sm font-medium text-foreground",children:"Files in this task"}),e[2]=h):h=e[2];const c=i&&"-rotate-90";let d;e[3]!==c?(d=le("size-4 text-muted-foreground transition-transform",c),e[3]=c,e[4]=d):d=e[4];let u;e[5]!==d?(u=n.jsx(Rs,{className:d}),e[5]=d,e[6]=u):u=e[6];let f;e[7]!==r||e[8]!==u?(f=n.jsxs("button",{type:"button",onClick:r,className:"flex w-full items-center justify-between px-3 py-2.5 text-left",children:[h,u]}),e[7]=r,e[8]=u,e[9]=f):f=e[9];let m;e[10]!==i||e[11]!==s?(m=!i&&n.jsx("div",{className:"flex max-h-72 flex-col gap-1.5 overflow-y-auto px-2 pb-2",children:s.map(c_)}),e[10]=i,e[11]=s,e[12]=m):m=e[12];let p;return e[13]!==l||e[14]!==f||e[15]!==m?(p=n.jsxs("div",{className:l,children:[f,m]}),e[13]=l,e[14]=f,e[15]=m,e[16]=p):p=e[16],p}function c_(t){return n.jsx(Dm,{file:t},t.key)}function h_(){const t=H.c(13),e=Dh()?.taskId??null,s=Rm();let i;t[0]!==s?(i={enabled:s},t[0]=s,t[1]=i):i=t[1];const{data:r}=Bh(e,i),[o,a]=P.useState(!1),[l,h]=P.useState(!0);if(!e||!r||r.length===0)return null;let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=()=>a(u_),t[2]=c):c=t[2];let d;t[3]!==o||t[4]!==r?(d=n.jsx("div",{className:"absolute top-2 right-2 z-10 hidden w-72 @[1280px]:block",children:n.jsx(Kl,{variant:"card",outputs:r,collapsed:o,onToggle:c})}),t[3]=o,t[4]=r,t[5]=d):d=t[5];let u;t[6]===Symbol.for("react.memo_cache_sentinel")?(u=()=>h(d_),t[6]=u):u=t[6];let f;t[7]!==l||t[8]!==r?(f=n.jsx("div",{className:"shrink-0 @[1280px]:hidden",children:n.jsx(Kl,{variant:"bar",outputs:r,collapsed:l,onToggle:u})}),t[7]=l,t[8]=r,t[9]=f):f=t[9];let m;return t[10]!==d||t[11]!==f?(m=n.jsxs(n.Fragment,{children:[d,f]}),t[10]=d,t[11]=f,t[12]=m):m=t[12],m}function d_(t){return!t}function u_(t){return!t}function f_(){const t=H.c(26),{org:e}=Re(),s=Fh(),{isChatEmpty:i}=Ys(),[r,o]=P.useState("chat"),a=qm(),l=Qm();if(s.length===0&&!Gm(l)){let S;return t[0]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(Ue,{className:"animate-in fade-in-0 duration-200",children:n.jsx(Ue.Main,{className:"flex flex-col items-center",children:n.jsx(Ue.EmptyState,{children:n.jsx(Ue.NoAiProviderEmptyState,{})})})}),t[0]=S):S=t[0],S}let c;t[1]!==a.hasDecoKey||t[2]!==a.hasOnlyDecoProvider||t[3]!==a.isLoading||t[4]!==a.isZeroBalance||t[5]!==i||t[6]!==e?(c=a.hasDecoKey&&a.isZeroBalance&&a.hasOnlyDecoProvider&&!a.isLoading&&i&&!ym(e.id),t[1]=a.hasDecoKey,t[2]=a.hasOnlyDecoProvider,t[3]=a.isLoading,t[4]=a.isZeroBalance,t[5]=i,t[6]=e,t[7]=c):c=t[7];const d=c;let u;t[8]!==d?(u=d&&n.jsx(Ue.CreditsEmptyState,{}),t[8]=d,t[9]=u):u=t[9];const f=r!=="chat"?"opacity-0 pointer-events-none":"opacity-100";let m;t[10]!==f?(m=le("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",f),t[10]=f,t[11]=m):m=t[11];let p;t[12]!==i?(p=i?n.jsx(Ue.Main,{children:n.jsx(l_,{onOpenContextPanel:()=>o("context")})}):n.jsxs(n.Fragment,{children:[n.jsxs(Ue.Main,{className:"relative flex flex-col overflow-hidden @container",children:[n.jsx(h_,{}),n.jsx("div",{className:"min-h-0 flex-1",children:n.jsx(Ue.Messages,{})})]}),n.jsx(Ue.Footer,{children:n.jsx(Ue.Input,{onOpenContextPanel:()=>o("context")})})]}),t[12]=i,t[13]=p):p=t[13];let g;t[14]!==m||t[15]!==p?(g=n.jsx("div",{className:m,children:p}),t[14]=m,t[15]=p,t[16]=g):g=t[16];const v=r==="context"?"opacity-100":"opacity-0 pointer-events-none";let b;t[17]!==v?(b=le("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",v),t[17]=v,t[18]=b):b=t[18];let x;t[19]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(Yg,{back:!0,onClose:()=>o("chat")}),t[19]=x):x=t[19];let _;t[20]!==b?(_=n.jsx("div",{className:b,children:x}),t[20]=b,t[21]=_):_=t[21];let y;return t[22]!==u||t[23]!==g||t[24]!==_?(y=n.jsxs(Ue,{className:"relative overflow-hidden animate-in fade-in-0 duration-200",children:[u,g,_]}),t[22]=u,t[23]=g,t[24]=_,t[25]=y):y=t[25],y}function bd(){const t=H.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(Ue.Skeleton,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Jt,{fallback:e,children:n.jsx(P.Suspense,{fallback:n.jsx(Ue.Skeleton,{}),children:n.jsx(f_,{})})}),t[1]=s):s=t[1],s}function m_(t){const e=t.entityMetadata?.defaultMainView??null,s=e==null||e.type==="chat",i=t.mainParamPresent?t.mainParamValue!=="0":!s,r=s?!0:t.entityMetadata?.chatDefaultOpen??!1;return{mainOpen:i,chatOpen:r}}function Vl(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 p_(t,e){return t===1?!0:t===0?!1:e}function g_(t,e){const s=Mt(),i=wn({strict:!1}),r=Nh({strict:!1}),{create:o}=Yh(),{locator:a}=Re(),{virtualMcpId:l,orgSlug:h,isAgentRoute:c}=e,d=m_({entityMetadata:t,mainParamPresent:i.main!==void 0,mainParamValue:i.main}),u=p_(i.chat,d.chatOpen),f=d.mainOpen,m=P.useRef(crypto.randomUUID()),p=r.taskId??m.current,g="/$org/$taskId",v=T=>({org:h,taskId:T}),b=c?{virtualmcpid:l}:{},x=(T,A)=>{s({to:g,params:v(p),search:R=>({...R,...T}),replace:A?.replace??!1})},_=(T,A)=>{s({to:g,params:v(T),search:R=>{const k={};return A?k.virtualmcpid=A:c&&(k.virtualmcpid=l),k}})},y=()=>{f?x({main:"0"},{replace:!0}):x({main:So(t)},{replace:!0})},S=()=>{x({chat:u?0:1},{replace:!0})},w=()=>{u||x({chat:1},{replace:!0})},j=async()=>{const T=crypto.randomUUID(),A=ep(h,a,p);try{await o({id:T,virtual_mcp_id:l,...A?{branch:A}:{}})}catch{}s({to:g,params:v(T),search:R=>({...b,chat:1})})},E=T=>{x({main:T},{replace:!0})};return{taskId:p,mainOpen:f,chatOpen:u,mainParam:i.main,setTaskId:_,toggleMain:y,toggleChat:S,openChat:w,createNewTask:j,openTab:E}}const Fa=45;function yd(t,e=Fa){const s=typeof t=="number"?t:Number(t);return!Number.isFinite(s)||s<=0||s>=100?e:s}function __(t){return yd(t,Fa)}function v_(){const t=H.c(6);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=nm.decoChatPanelWidth(),t[0]=e):e=t[0];const[s,i]=rm(e,__);let r;t[1]!==s?(r=yd(s,Fa),t[1]=s,t[2]=r):r=t[2];const o=r;let a;return t[3]!==i||t[4]!==o?(a=[o,i],t[3]=i,t[4]=o,t[5]=a):a=t[5],a}function x_(t){try{return JSON.parse(t)}catch{return null}}function b_(t){if(!t||typeof t!="object")return null;const e=t,s=e.content?.find(o=>o.type==="text")?.text,i=s?x_(s):null,r=e.structuredContent;return r==null?i:typeof r=="object"&&!Array.isArray(r)&&Object.keys(r).length===0?i??r:r}function ei(t){const e=b_(t);return e===null?null:e}function Ha(t){if(!t)return null;const e=t.match(/\/pull\/(\d+)\b/);if(!e)return null;const s=Number(e[1]);return Number.isFinite(s)&&s>0?s:null}function y_(t){if(!t||typeof t!="object")return null;const e=t.content?.find(r=>r.type==="text")?.text;if(!e)return null;const s=e.match(/https:\/\/github\.com\/[^\s"]+\/pull\/\d+/)?.[0],i=Ha(s);return!i||!s?null:{number:i,htmlUrl:s}}const ql=/[\r\n<>]/,S_=/^[^\s@<>]+@[^\s@<>]+\.[^\s@<>]+$/;function wr(t){const e=t?.userName?.trim();if(!e||ql.test(e))return null;const s=t?.userEmail?.trim();return!s||ql.test(s)?{userName:e}:S_.test(s)?{userName:e,userEmail:s}:{userName:e}}function w_(t){return t.split(`
|
|
3
|
-
`).filter(e=>!/^Co-authored-by:\s/i.test(e)).join(`
|
|
4
|
-
`).trimEnd()}function C_(t){const e=t.userName.trim(),s=t.userEmail?.trim();return s?`Co-authored-by: ${e} <${s}>`:`Co-authored-by: ${e}`}function Sd(t,e){const s=wr(e);if(!s)return t;const i=w_(t),r=C_(s);if(i.includes(r))return i;const o=i.trimEnd();return o.length>0?`${o}
|
|
5
|
-
|
|
6
|
-
${r}`:r}function wd(t,e){const s=t?.trim();return s?Sd(s,e):s||void 0}const k_=["dev","start"];function j_(t){if(!t||typeof t!="object")return null;const e=t;return e.isError?e.content?.find(i=>i.type==="text")?.text?.trim()||"GitHub MCP tool returned an error":null}function Wa(t){const e=j_(t);if(e)throw new Error(e)}function Cd(t,e){for(const s of e){const i=t[s];if(typeof i=="string"&&i.length>0)return i}}function kd(t,e){for(const s of e){const i=t[s];if(typeof i=="number"&&Number.isFinite(i)&&i>0)return i;if(typeof i=="string"&&/^\d+$/.test(i)){const r=Number(i);if(r>0)return r}}}function N_(t){const s=t.head?.ref;return typeof s=="string"&&s.length>0?s:null}function E_(t,e){return N_(t)===e}function jd(t){const e=ei(t);if(Array.isArray(e))return e.filter(s=>s!=null&&typeof s=="object");if(e&&typeof e=="object"){const s=e;for(const i of["pull_requests","items","data"]){const r=s[i];if(Array.isArray(r))return r.filter(o=>o!=null&&typeof o=="object")}}return[]}function T_(t){const e=Cd(t,["html_url","htmlUrl","url","URL"]),s=kd(t,["number","pullNumber"])??Ha(e);return!s||!e?null:{number:s,htmlUrl:e}}function P_(t){Wa(t);const e=y_(t);if(e)return e;const s=ei(t);if(s&&typeof s=="object"){const i=Cd(s,["url","URL","html_url","htmlUrl"]),r=kd(s,["number","pullNumber"])??Ha(i);if(r&&i)return{number:r,htmlUrl:i}}throw new Error("Failed to open pull request")}function A_(t){return/already exists|pull request already/i.test(t)}async function R_(t,e){const s=await t.callTool({name:"list_pull_requests",arguments:{owner:e.owner,repo:e.repo,state:"open",...e.head?{head:e.head}:{},perPage:10}});return Wa(s),jd(s)}async function Gl(t,e){const s=[`${e.owner}:${e.branch}`,e.branch];for(const i of s){const o=(await R_(t,{owner:e.owner,repo:e.repo,head:i})).find(l=>E_(l,e.branch)),a=o?T_(o):null;if(a)return a}return null}async function D_(t,e){const s=wd(e.body,wr(e.coAuthor));if(s)try{await t.callTool({name:"update_pull_request",arguments:{owner:e.owner,repo:e.repo,pullNumber:e.pullNumber,body:s}})}catch{}}async function I_(t,e){const s=wd(e.body,wr(e.coAuthor)),i=await t.callTool({name:"create_pull_request",arguments:{owner:e.owner,repo:e.repo,title:e.title,body:s||void 0,head:e.head,base:e.base}});return P_(i)}async function Yl(t,e){const s=await Gl(t,{owner:e.owner,repo:e.repo,branch:e.branch});if(s)return await D_(t,{owner:e.owner,repo:e.repo,pullNumber:s.number,body:e.body,coAuthor:e.coAuthor}),s;try{return await I_(t,{owner:e.owner,repo:e.repo,title:e.title,body:e.body,head:e.branch,base:e.base,coAuthor:e.coAuthor})}catch(i){const r=i instanceof Error?i.message:String(i);if(!A_(r))throw i;const o=await Gl(t,{owner:e.owner,repo:e.repo,branch:e.branch});if(o)return o;throw i}}async function Nd(t,e){const s=wr(e.coAuthor),i=s?Sd(e.commitMessage?.trim()??"",s):e.commitMessage?.trim()||void 0,r=await t.callTool({name:"merge_pull_request",arguments:{owner:e.owner,repo:e.repo,pullNumber:e.pullNumber,merge_method:"squash",...e.commitTitle?{commit_title:e.commitTitle}:{},...i?{commit_message:i}:{}}});Wa(r);const o=ei(r);if(!o||o.merged!==!0)throw new Error(o?.message??"Failed to merge pull request");return{merged:!0,message:o.message??"Pull request merged"}}const Ua=6e4,Ka=3e4;function Va(t){const e=H.c(15);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=vt(s);let r;e[4]!==t.branch||e[5]!==t.owner?(r=t.branch?{head:`${t.owner}:${t.branch}`}:{},e[4]=t.branch,e[5]=t.owner,e[6]=r):r=e[6];let o;e[7]!==t.owner||e[8]!==t.repo||e[9]!==r?(o={owner:t.owner,repo:t.repo,state:"all",...r,perPage:1},e[7]=t.owner,e[8]=t.repo,e[9]=r,e[10]=o):o=e[10];const a=!!t.branch&&!!t.connectionId&&!!t.owner&&!!t.repo;let l;return e[11]!==i||e[12]!==o||e[13]!==a?(l={client:i,toolName:"list_pull_requests",toolArguments:o,enabled:a,refetchInterval:Ua,refetchIntervalInBackground:!1,staleTime:Ka,select:L_},e[11]=i,e[12]=o,e[13]=a,e[14]=l):l=e[14],An(l)}function L_(t){const e=jd(t);if(e.length===0)return null;const s=e[0],i=s.base,r=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:r?.ref??"",headSha:r?.sha??"",htmlUrl:s.html_url??"",author:o?.login??""}}function Ed(t){const e=H.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=vt(s),r=t.prNumber??0;let o;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(o={method:"get_check_runs",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=o):o=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==o||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:Ua,refetchIntervalInBackground:!1,staleTime:Ka,select:B_},e[8]=i,e[9]=o,e[10]=a,e[11]=l):l=e[11],An(l)}function B_(t){const e=ei(t);return(Array.isArray(e)?e:e?.check_runs??[]).map(M_)}function M_(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 O_(t){const e=H.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=vt(s),r=t.prNumber??0;let o;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(o={method:"get_comments",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=o):o=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==o||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:Ua,refetchIntervalInBackground:!1,staleTime:Ka,select:$_},e[8]=i,e[9]=o,e[10]=a,e[11]=l):l=e[11],An(l)}function $_(t){const e=ei(t);return Array.isArray(e)?e.map(z_):[]}function z_(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 Td(t){try{const{hostname:e}=new URL(t);return e==="localhost"||e.endsWith(".localhost")||e==="127.0.0.1"||e==="::1"}catch{return!1}}function F_(){if(typeof document>"u")return null;const t=Array.from(document.querySelectorAll("iframe"));for(const e of t){const s=e.getAttribute("src");if(s&&Td(s))return s}return null}function H_(t){const e=t.previewUrl??t.getFallbackPreviewUrl?.()??F_();if(e&&Td(e))return new URL("/.decofile",e).toString();const s=new URLSearchParams({path:"/.decofile"});return`/api/${t.orgSlug}/sandbox/${encodeURIComponent(t.virtualMcpId)}/${encodeURIComponent(t.branch)}/preview-fetch?${s.toString()}`}function qa(t,e){const s=H.c(8),i=t?`${t.orgSlug}/${t.virtualMcpId}/${t.branch}`:"",r=e?.fetchEnabled??!0;let o;s[0]!==i?(o=Tt.decofile(i),s[0]=i,s[1]=o):o=s[1];let a;s[2]!==t?(a=async()=>{const c=await fetch(H_(t),{cache:"no-store"});if(!c.ok){const d=new Error(`Failed to fetch decofile: ${c.status}`);throw d.status=c.status,d}return await c.json()},s[2]=t,s[3]=a):a=s[3];const l=!!t&&r;let h;return s[4]!==o||s[5]!==a||s[6]!==l?(h={queryKey:o,queryFn:a,enabled:l,staleTime:3e4,retry:U_,retryDelay:W_},s[4]=o,s[5]=a,s[6]=l,s[7]=h):h=s[7],As(h)}function W_(t){return Math.min(1e3*2**t,5e3)}function U_(t,e){return e.status!==502&&t<2}function Ga(t,e){const s=H.c(9),i=t?`${t.orgSlug}/${t.virtualMcpId}/${t.branch}/${t.previewUrl??""}`:"",r=e?.fetchEnabled??!0,o=t?.previewUrl;let a;s[0]!==i?(a=Tt.liveMeta(i),s[0]=i,s[1]=a):a=s[1];let l;s[2]!==o?(l=async()=>{const u=new URL("/live/_meta",o).href,f=await fetch(u,{cache:"no-store"});if(!f.ok){const m=new Error(`Failed to fetch live meta: ${f.status}`);throw m.status=f.status,m}return await f.json()},s[2]=o,s[3]=l):l=s[3];const h=!!t&&!!o&&r,c=e?.refetchInterval;let d;return s[4]!==a||s[5]!==l||s[6]!==h||s[7]!==c?(d={queryKey:a,queryFn:l,enabled:h,refetchInterval:c,refetchIntervalInBackground:!1,staleTime:3e5,retry:V_,retryDelay:K_},s[4]=a,s[5]=l,s[6]=h,s[7]=c,s[8]=d):d=s[8],As(d)}function K_(t){return Math.min(1e3*2**t,5e3)}function V_(t,e){return e.status!==502&&t<3}function q_(t){if(!t.startsWith("#")||!t.includes("@"))return null;const e=t.indexOf("@");return{moduleResolveType:t.slice(1,e),blockId:t.slice(e+1)}}function xj(t){return t.includes("@")}function Xl(t){const e=t.lastIndexOf("@");return e<0||e===t.length-1?null:t.slice(e+1)}function bj(t,e){if(t===e)return!0;const s=Xl(t);return s?e===s||Xl(e)===s:!1}function Ya(t,e){const s=t.manifest?.blocks??{};for(const[i,r]of Object.entries(s))if(e in r)return i;return null}function Pd(t,e){const s=Ya(t,e);return s!==null&&s.includes("sections")}function G_(t,e){const s=Ya(t,e);return s!==null&&s.includes("apps")}function Y_(t,e){const s=Ya(t,e);return s!==null&&s.includes("matchers")}function fr(t){return!(/\.\w+$/.test(t)||t==="__proto__"||t==="constructor")}function Ad(t){try{return decodeURIComponent(t).startsWith("Preview ")}catch{return t.startsWith("Preview ")}}const yj="oklch(0.7278 0.151 289)",X_="website/matchers/always.ts",Xa="website/matchers/never.ts",Cr="website/flags/multivariate.ts",Ja="website/flags/multivariate/section.ts";function Za(){return{__resolveType:X_}}function Fs(t){const e=t.split("/");return(e[e.length-1]??t).replace(/\.(tsx?|jsx?)$/,"").replace(/[-_]/g," ").replace(/\b\w/g,i=>i.toUpperCase())||t}const J_=12,ii=8;function Z_(t){const e=t.type;return e==="array"||Array.isArray(e)&&e.includes("array")}function Q_(t,e){let s=t.items;if(!s)return!1;if(typeof s.$ref=="string"&&(s=e(s.$ref)),Array.isArray(s.anyOf)||Array.isArray(s.oneOf))return!0;const r=s.properties?.__resolveType?.enum;return Array.isArray(r)&&typeof r[0]=="string"}const ev="VideoWidget";function Rd(t){return typeof btoa=="function"?btoa(t):Buffer.from(t).toString("base64")}function Qa(t){const e=t.match(/^site\/apps\/([^/]+)\/([^/.]+)\.tsx?$/);return e?{vendor:e[1],app:e[2]}:null}function el(t){const e=t.match(/^([^/]+)\/apps\/([^/.]+)\.tsx?$/);return e?{vendor:e[1],app:e[2]}:null}function Dd(t,e){return[`site/apps/${t}/${e}.ts`,`site/apps/${t}/${e}.tsx`,`${t}/apps/${e}.ts`,`${t}/apps/${e}.tsx`]}function Id(t,e){const s=e.manifest?.blocks??{};for(const l of Object.values(s))if(l[t])return l[t];const i=Qa(t)??el(t);if(i){for(const l of Dd(i.vendor,i.app))for(const h of Object.values(s))if(h[l])return h[l]}const r=Rd(t);for(const l of Object.values(s))if(l[r])return l[r];const o=e.schema??{};return(o.$defs??o.definitions??{})[r]?{$ref:`#/definitions/${r}`}:{}}function Ld(t,e){if(G_(t,e))return!0;const s=Qa(e)??el(e);if(!s)return!1;const i=t.manifest?.blocks?.apps??{};if(Dd(s.vendor,s.app).some(a=>a in i))return!0;const r=Rd(e),o=t.schema?.$defs??t.schema?.definitions??{};return r in o}function Bd(t){return t==="site/apps/site.ts"?!1:Qa(t)!==null||el(t)!==null}function Md(t,e){const s=e.schema??{},i=Id(t,e),r=s.$defs??s.definitions??{},o=v=>{const b=v.split("/").pop()??"";return r[b]??{}};let a;typeof i.$ref=="string"?a=o(i.$ref):Object.keys(i).length>0?a=i:a=s;const l=v=>typeof v.$ref=="string"?o(v.$ref):v,h=v=>{const x=l(v).properties?.type;if(x){if(typeof x.const=="string")return x.const;if(typeof x.default=="string")return x.default;if(Array.isArray(x.enum)&&typeof x.enum[0]=="string")return x.enum[0]}},c=(v,b)=>{const x=l(v);return typeof x.title=="string"&&!x.title.startsWith("#")?x.title:b},d=(v,b=new Set)=>{if(typeof v.$ref!="string"||v.properties||v.anyOf||v.allOf||v.oneOf||v.type)return v;const x=v.$ref.split("/").pop()??"";return!x||b.has(x)?v:d(o(v.$ref),new Set([...b,x]))},u=v=>{const b=v.hide;return b===!0||b==="true"},f=(v,b=new Set,x=0)=>{if(x>J_)return{};if(typeof v.$ref=="string"){const y=v.$ref.split("/").pop()??"";return b.has(y)?{}:f(o(v.$ref),new Set([...b,y]),x+1)}let _={};if(v.properties&&typeof v.properties=="object"&&(_={..._,...v.properties}),Array.isArray(v.required)){const y=Array.isArray(_.__required)?_.__required:[];_.__required=[...y,...v.required]}for(const y of["allOf","anyOf","oneOf"]){const S=v[y];if(Array.isArray(S))for(const w of S)_={..._,...f(w,b,x+1)}}return _},m=(v,b=0)=>{let x=v;typeof v.$ref=="string"&&(x=o(v.$ref),(v.$ref.split("/").pop()??"")===ev&&!x.format&&(x={...x,format:"video-uri"})),x=d(x);let _;{const A=x.anyOf??x.oneOf;if(Array.isArray(A)){const R=A.filter(C=>!(C.type==="null"||C.type===null)),k=C=>{if(typeof C.const=="string"||typeof C.const=="number")return C.const;if(Array.isArray(C.enum)&&C.enum.length===1&&(typeof C.enum[0]=="string"||typeof C.enum[0]=="number"))return C.enum[0]};R.length>0&&R.every(C=>k(C)!==void 0)&&(_=R.map(C=>k(C)))}}let y,S;if(x.type)y=Array.isArray(x.type)?String(x.type.find(A=>A!=="null")??x.type[0]):String(x.type);else if(x.anyOf||x.allOf||x.oneOf){const R=(x.anyOf??x.allOf??x.oneOf).filter(k=>!(k.type==="null"||k.type===null));if(R.length===0)y="null";else if(R.length===1){const k=R[0];S=k,y=k.type?Array.isArray(k.type)?String(k.type[0]):String(k.type):typeof k.$ref=="string"?"object":"string"}else{if(_)return{type:"string",title:typeof x.title=="string"?x.title:void 0,description:typeof x.description=="string"?x.description:void 0,enum:_};const k=R.filter(I=>{const M=I.properties?.__resolveType?.enum;return Array.isArray(M)&&typeof M[0]=="string"}),C=R.find(Z_),D=k.some(I=>{const M=I.properties?.__resolveType?.enum;return Array.isArray(M)&&M[0]===Cr});if(C){if(!Q_(C,o)&&R.length>1){const M=m(C,b+1);return{...M,type:"array",title:typeof x.title=="string"?x.title:M.title,description:typeof x.description=="string"?x.description:M.description}}if(D){const M=m(C,b+1);return{...M,type:"array",title:typeof x.title=="string"?x.title:M.title,description:typeof x.description=="string"?x.description:M.description}}}if(k.length>0){const I=k.map(F=>{const K=F.properties?.__resolveType?.enum??[],G=String(K[0]);return{resolveType:G,title:typeof F.title=="string"?F.title:Fs(G),description:typeof F.description=="string"?F.description:void 0,schema:b+1<ii?m(F,b+1):void 0}}),M=R.filter(F=>!k.includes(F)),O=M.length===1&&b+1<ii?m(M[0],b+1):void 0;return{type:"block-ref",title:typeof x.title=="string"?x.title:void 0,description:typeof x.description=="string"?x.description:void 0,anyOfRefs:I,plainSchema:O,hidden:u(x)||u(v)?!0:void 0}}const N=R.map(I=>h(I));if(R.length>1&&N.every(I=>typeof I=="string")){const I=R.map((M,O)=>{const F=l(M),z=N[O];return{resolveType:z,title:c(M,z),description:typeof F.description=="string"?F.description:void 0,discriminatorValue:z,schema:b+1<ii?m(F,b+1):void 0}});return{type:"block-ref",title:typeof v.title=="string"?v.title:typeof x.title=="string"?x.title:void 0,description:typeof v.description=="string"?v.description:typeof x.description=="string"?x.description:void 0,discriminatorKey:"type",anyOfRefs:I,hidden:u(x)||u(v)?!0:void 0}}if(R.every(I=>typeof I.$ref=="string")){const I=[];for(const M of R){const O=o(M.$ref);let F,z;if(typeof O.title=="string"){const G=q_(O.title);G&&(F=G.blockId,z=G.blockId)}if(!F&&Array.isArray(O.allOf))for(const G of O.allOf){const W=((G.properties??{}).__resolveType??{}).enum;if(Array.isArray(W)&&typeof W[0]=="string"){F=W[0];break}}if(!F){const X=O.properties?.__resolveType?.enum;Array.isArray(X)&&typeof X[0]=="string"&&(F=X[0])}F||(F=M.$ref.split("/").pop()??"");const K=h(M);I.push({resolveType:K??F,title:z??(typeof O.title=="string"&&!O.title.startsWith("#")?O.title:Fs(F)),description:typeof O.description=="string"?O.description:void 0,discriminatorValue:K,schema:b+1<ii?m(O,b+1):void 0})}return{type:"block-ref",title:typeof x.title=="string"?x.title:void 0,description:typeof x.description=="string"?x.description:void 0,anyOfRefs:I,hidden:u(x)||u(v)?!0:void 0}}y="object"}}else typeof v.$ref=="string"&&(y="object");let w;if(b<ii){const A=f(x),R=Object.entries(A).filter(([k])=>!k.startsWith("__")&&k!=="@type");if(R.length>0){w={};for(const[k,C]of R)w[k]=m(C,b+1)}}let j;if((y==="array"||x.type==="array")&&b<ii){let A=x.items;A&&(typeof A.$ref=="string"&&(A=o(A.$ref)),j=m(A,b+1),typeof A.title=="string"&&A.title.includes("{{")&&(j.titleBy=A.title))}const E=A=>{const R=S?.[A];return typeof R=="string"?R:void 0},T=()=>{if("default"in v)return v.default;if("default"in x)return x.default;if(S&&"default"in S)return S.default};return{type:y??"string",title:typeof v.title=="string"?v.title:typeof x.title=="string"?x.title:E("title"),description:typeof v.description=="string"?v.description:typeof x.description=="string"?x.description:E("description"),default:T(),enum:Array.isArray(x.enum)?x.enum:_??void 0,format:typeof x.format=="string"?x.format:E("format"),properties:w,items:j,hidden:u(x)||u(v)?!0:void 0,titleBy:typeof x.titleBy=="string"?x.titleBy:E("titleBy"),image:typeof x.image=="string"?x.image:E("image"),options:typeof x.options=="string"?x.options:E("options")}},p=f(a),g={};for(const[v,b]of Object.entries(p))v.startsWith("__")||v==="@type"||(g[v]=m(b,0));return Object.keys(g).length===0?null:{type:"object",title:typeof a.title=="string"?a.title:void 0,properties:g}}function Ci(t,e){const s=e.schema??{},i=Id(t,e),r=s.$defs??s.definitions??{},o=typeof i.$ref=="string"?r[i.$ref.split("/").pop()??""]??{}:Object.keys(i).length>0?i:{...s,...i},a=o.icon,l=o.logo;return{title:typeof o.title=="string"?o.title:void 0,description:typeof o.description=="string"?o.description:void 0,icon:typeof a=="string"?a:void 0,logo:typeof l=="string"?l:void 0}}function hi(t){return t.replace(/\/+$/,"")||"/"}function tv(t){const e=t.trim();return!(!e.startsWith("/")||e.startsWith("//")||e.includes("..")||e.includes("\\"))}function tl(t){const e=t.trim();return e?tv(e)?null:"Path must start with / and must not contain .. or //.":"Path is required."}const sv=["website/sections/Rendering/Lazy.tsx","website/sections/Rendering/SingleDeferred.tsx"],Jl="website/sections/Rendering/Lazy.tsx";function Qt(t){return sv.some(e=>t.endsWith(e))}const Od=["website/pages/Page.tsx","$live/pages/LivePage.tsx"],$d=new Set(Od),iv=new Set(["site/sections/Theme/Theme.tsx"]);function sl(t){return!!(iv.has(t)||Qt(t)||t.toLowerCase().includes("preview"))}function zd(t){const e=t.manifest?.blocks??{};for(const s of Object.values(e))for(const i of Object.keys(s))if($d.has(i))return i;return Od[0]}function Po(t){if(!t)return[];if(t.anyOfRefs?.length)return t.anyOfRefs;if(t.items)return Po(t.items);if(t.properties){const e=[];for(const s of Object.values(t.properties))e.push(...Po(s));return e}return[]}function rv(t){const e=t.manifest?.blocks??{},s=[];for(const[i,r]of Object.entries(e))if(i.includes("sections"))for(const o of Object.keys(r)){if(sl(o))continue;const a=Ci(o,t);s.push({resolveType:o,title:a.title??Fs(o),description:a.description,previewBlock:o,isSavedBlock:!1})}return s}function Fd(t,e){const s=[];for(const[i,r]of Object.entries(e)){if(i.includes("/")||Ad(i)||!r||typeof r!="object"||Array.isArray(r))continue;const o=r,a=o.__resolveType;typeof a=="string"&&($d.has(a)||typeof o.path!="string"&&(sl(a)||Pd(t,a)&&s.push({resolveType:i,title:i,description:typeof o.name=="string"?o.name:void 0,previewBlock:i,isSavedBlock:!0})))}return s}function nv(t,e){const s=fr(e.resolveType),i=s?{}:Ci(e.resolveType,t);return{resolveType:e.resolveType,title:e.title||i.title||Fs(e.resolveType),description:e.description??i.description,previewBlock:e.resolveType,isSavedBlock:s}}function Sj(t,e){const s=zd(t),i=Md(s,t),r=Po(i?.properties?.sections),o=new Map,a=l=>{if(!sl(l.resolveType)){if(fr(l.resolveType)){Ad(l.resolveType)||o.set(l.resolveType,l);return}Pd(t,l.resolveType)&&(o.has(l.resolveType)||o.set(l.resolveType,l))}};for(const l of rv(t))a(l);for(const l of r)a(nv(t,l));for(const l of Fd(t,e))a(l);return[...o.values()].sort((l,h)=>l.title.localeCompare(h.title))}function wj(t){const e=t.site;if(!e||typeof e!="object"||Array.isArray(e))return;const s=e.theme;if(!(!s||typeof s!="object"||Array.isArray(s)))return s}function ov(t){let e=t;e.startsWith("pages-")&&(e=e.slice(6)),e=e.replace(/-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,""),e=e.replace(/-[0-9a-f]{8,}$/i,"");try{return decodeURIComponent(e)}catch{return e}}function av(t,e,s){const i=hi;if(s){const o=t.find(a=>a.key===s);if(o)return o}const r=t.filter(o=>i(o.path)===i(e));return r.length===0?null:r.length===1?r[0]??null:[...r].sort((o,a)=>o.key.localeCompare(a.key))[0]??null}const Hd=new Set(["website/pages/Page.tsx","$live/pages/LivePage.tsx"]),qi="site",il="site/apps/site.ts";function hn(t,e){return t===qi?!0:e.__resolveType===il}function rl(t,e){return t?nl(t).length>0?!0:e?ol(t,e).length>0||Ao(t,e)?!0:lv(t,e).length>0:!1:!1}function nl(t){const e=[];for(const[s,i]of Object.entries(t))if(i&&typeof i=="object"&&!Array.isArray(i)){const r=i;typeof r.__resolveType=="string"&&Hd.has(r.__resolveType)&&typeof r.path=="string"&&e.push({key:s,name:typeof r.name=="string"?r.name:ov(s),path:r.path})}return e}function Wd(t,e){if(typeof e.name=="string"){const s=e.name.trim();if(s)return s}return t.replace(/[-_]/g," ").replace(/\b\w/g,s=>s.toUpperCase())}function dn(t,e,s){const i=typeof e.__resolveType=="string"?e.__resolveType:"",r=i?Ci(i,s):{};if(r.title)return r.title;if(typeof e.name=="string"){const o=e.name.trim();if(o)return o}return t.replace(/[-_]/g," ").replace(/\b\w/g,o=>o.toUpperCase())}function Ao(t,e){const s=t[qi];if(s&&typeof s=="object"&&!Array.isArray(s)){const i=s,r=i.__resolveType;if(typeof r=="string"&&(hn(qi,i)||Ld(e,r)))return{key:qi,name:dn(qi,i,e),resolveType:r}}for(const[i,r]of Object.entries(t)){if(i.includes("/")||!r||typeof r!="object"||Array.isArray(r))continue;const o=r;if(!hn(i,o))continue;const a=typeof o.__resolveType=="string"?o.__resolveType:il;return{key:i,name:dn(i,o,e),resolveType:a}}return null}function lv(t,e){const s=[];for(const[i,r]of Object.entries(t)){if(i.includes("/")||!r||typeof r!="object"||Array.isArray(r))continue;const o=r,a=o.__resolveType;typeof a=="string"&&(Hd.has(a)||typeof o.path!="string"&&(hn(i,o)||!Ld(e,a)&&!Bd(a)||s.push({key:i,name:dn(i,o,e),resolveType:a})))}return s.sort((i,r)=>i.name.localeCompare(r.name))}function ol(t,e){return Fd(e,t).map(s=>{const i=t[s.resolveType],r=typeof i.__resolveType=="string"?i.__resolveType:"";return{key:s.resolveType,name:s.description??Wd(s.resolveType,i),resolveType:r}}).sort((s,i)=>s.name.localeCompare(i.name))}const cv={phase:null,lifecycle:{phase:"idle"},status:{state:"running"},branch:{kind:"unknown"},notFound:!1,scripts:[],activeProcesses:[],getBuffer:()=>"",hasData:()=>!1,subscribeChunks:()=>()=>{},subscribeReload:()=>()=>{}},Ud=P.createContext(cv),Zl=16384;class hv{data="";append(e){this.data+=e,this.data.length>Zl&&(this.data=this.data.slice(this.data.length-Zl))}get(){return this.data}clear(){this.data=""}}const dv=1e3,uv=3e4,fv=3e3,Ql=["lifecycle","status","tasks","scripts","branch","reload","file-changed"],ec="log";function mv(t){if(!t)return null;try{return new URL("/_sandbox/events",t).href}catch{return null}}function pv(t){return t===404}async function gv(t){try{const e=await fetch(t,{headers:{Accept:"text/event-stream"},cache:"no-store",signal:AbortSignal.timeout(fv)});return await e.body?.cancel().catch(()=>{}),pv(e.status)}catch{return!1}}function _v({virtualMcpId:t,branch:e,previewUrl:s=null,enabled:i=!0,children:r}){const{org:o}=Re(),a=Gs(),[l,h]=P.useState(null),[c,d]=P.useState({phase:"idle"}),[u,f]=P.useState({state:"running"}),[m,p]=P.useState({kind:"unknown"}),[g,v]=P.useState(!1),[b,x]=P.useState([]),[_,y]=P.useState([]),[,S]=P.useState(0),w=P.useRef(new Map),j=P.useRef(new Set),E=P.useRef(new Set),T=P.useRef(null),A=mv(s),R=C=>{let D=w.current.get(C);return D||(D=new hv,w.current.set(C,D)),D};P.useEffect(()=>{if(h(null),d({phase:"idle"}),f({state:"running"}),p({kind:"unknown"}),T.current=null,v(!1),x([]),y([]),w.current.clear(),!t||!e||!i)return;const C=`/api/${encodeURIComponent(o.slug)}/sandbox/${encodeURIComponent(t)}/${encodeURIComponent(e)}/events`;let D=!1,N=0,L=null,B=null,I=null,M=null;const O=Y=>{try{const ne=JSON.parse(Y.data);h(ne),ne.kind!=="failed"&&(v(!1),N=0),ne.kind==="ready"&&X()}catch(ne){console.warn("[vm-events] bad phase payload",ne)}},F=()=>{v(!0),h(null),d({phase:"idle"}),f({state:"running"}),p({kind:"unknown"}),x([]),y([]),w.current.clear()},z=Y=>{try{const ne=JSON.parse(Y.data);if(typeof ne.data!="string")return;N=0;const $=ne.data.replace(/\r?\n/g,`\r
|
|
7
|
-
`);R(ne.source).append($);for(const Z of j.current)try{Z(ne.source,$)}catch{}S(Z=>Z+1)}catch{}},K=Y=>{const ne=Y.type;try{const $=JSON.parse(Y.data);switch(N=0,ne){case"lifecycle":{const Z=$;d(Z.state);const U=Z.state.phase==="running"?Z.state.port:null,ee=T.current;if(T.current=U,ee!==null&&U!==null&&ee!==U)for(const Q of E.current)try{Q()}catch{}return}case"status":f($);return;case"tasks":{const U=$.active.map(ee=>ee.logName??"").filter(Boolean);y(U);return}case"scripts":x($.scripts);return;case"branch":{const Z=$.meta;p(Z);return}case"reload":for(const Z of E.current)try{Z()}catch{}return;case"file-changed":{const{path:Z}=$,U=`${o.slug}/${t}/${e}`;Z.startsWith(".deco/")?a.invalidateQueries({queryKey:Tt.decofile(U)}):(B&&clearTimeout(B),B=setTimeout(()=>{B=null,a.invalidateQueries({predicate:ee=>{const Q=ee.queryKey;return Q[0]==="live-meta"&&typeof Q[1]=="string"&&Q[1].startsWith(`${U}/`)}})},1e3));return}}}catch{}};function G(){if(D)return;const Y=new EventSource(C);I=Y,Y.onopen=()=>{},Y.onerror=()=>{I===Y&&Y.readyState===EventSource.CLOSED&&W("studio")},Y.addEventListener("phase",O),Y.addEventListener("gone",F),Y.addEventListener(ec,z);for(const ne of Ql)Y.addEventListener(ne,K)}function X(){if(D||!A||M)return;const Y=new EventSource(A);M=Y;let ne=!1;Y.onopen=()=>{if(D||M!==Y)return;ne=!0,N=0;const $=I;I=null,$?.close()},Y.onerror=()=>{M===Y&&Y.readyState===EventSource.CLOSED&&ie(Y,ne)},Y.addEventListener(ec,z);for(const $ of Ql)Y.addEventListener($,K)}async function ie(Y,ne){const $=A?await gv(A):!1;if(!(D||M!==Y)){if(Y.close(),M=null,$){F(),I||G();return}ne&&W("direct")}}function W(Y){if(D||L)return;const ne=Math.min(dv*2**N,uv);N++,L=setTimeout(()=>{if(L=null,!D){if(Y==="direct"){M?.close(),M=null,X();return}I?.close(),I=null,G()}},ne)}return G(),()=>{D=!0,I?.close(),M?.close(),L&&clearTimeout(L),B&&clearTimeout(B)}},[t,e,o.slug,i,A,a]);const k={phase:l,lifecycle:c,status:u,branch:m,notFound:g,scripts:b,activeProcesses:_,getBuffer:C=>w.current.get(C)?.get()??"",hasData:C=>(w.current.get(C)?.get().length??0)>0,subscribeChunks:C=>(j.current.add(C),()=>{j.current.delete(C)}),subscribeReload:C=>(E.current.add(C),()=>{E.current.delete(C)})};return n.jsx(Ud,{value:k,children:r})}function ps(){return P.use(Ud)}function Kd(t){const{subscribeChunks:e}=ps(),s=P.useRef(t);s.current=t,P.useEffect(()=>e((o,a)=>{s.current?.(o,a)}),[e])}function vv(t){const{subscribeReload:e}=ps(),s=P.useRef(t);s.current=t,P.useEffect(()=>e(()=>{s.current?.()}),[e])}function Vd(t){const e=Object.values(t),[s]=e;return s?e.find(i=>i.sandboxProviderKind!=="user-desktop")??s:null}function qd(t){return t.appPaused||t.userStopped?{kind:"suspended"}:t.previewUrl?{kind:"iframe",previewUrl:t.previewUrl}:{kind:"starting"}}function xv(t){return t.hasActiveGithubRepo&&!!t.userId&&!t.vmEntry&&!t.userStopped&&!t.isPending&&!t.attempted}function bv(t){return t.notFound&&!!t.deadVmId&&!t.isPending&&!t.userStopped&&t.deadVmId!==t.lastDeadVmId}function yv(t){switch(t.kind){case"suspended":return"suspended";case"iframe":return"running";case"starting":return"starting"}}const Sv={branch:null,previewState:{kind:"starting"},status:"idle",vmEntry:null,previewUrl:null,userStopped:!1,start:()=>{},stop:async()=>{},restart:async()=>{},retry:()=>{},resume:()=>{}},Gd=P.createContext(Sv);function al(){return P.use(Gd)}function wv({virtualMcpId:t,branch:e,userId:s,hasActiveGithubRepo:i,sandboxMap:r,sandboxProviderKind:o,children:a}){const{org:l}=Re(),{setCurrentTaskBranch:h}=ys(),c=ps(),d=Gs(),u=vt({connectionId:ka,orgId:l.id,orgSlug:l.slug}),f=ya(u),{mutate:m,reset:p}=f,g=P.useRef(new Set),v=P.useRef(null),b=s&&e?Cn(r?.[s]?.[e]):{},x=o?b[o]??null:Vd(b),_=x?.previewUrl??null,y=!!t&&!!e&&bo.isStopped(t,e),S=c.status.state==="paused",w=qd({previewUrl:_,appPaused:S,userStopped:y}),j=yv(w),E=e??"",T=g.current.has(E),A=xv({hasActiveGithubRepo:i,userId:s,vmEntry:x,userStopped:y,isPending:f.isPending,attempted:T});P.useEffect(()=>{if(!A||!t)return;g.current.add(E);const M={virtualMcpId:t};e&&(M.branch=e),o&&(M.sandboxProviderKind=o),m(M,{onSuccess:O=>{O?.branch&&!e&&h(O.branch)},onError:O=>{console.error("[sandbox-lifecycle] auto-start failed:",O)}})},[A,E,e,t,o,m,h]);const R=c.notFound?x?.sandboxHandle??null:null,k=bv({notFound:c.notFound,deadVmId:R,lastDeadVmId:v.current,isPending:f.isPending,userStopped:y});P.useEffect(()=>{if(!k||!R||!t)return;v.current=R;const M={virtualMcpId:t};e&&(M.branch=e),o&&(M.sandboxProviderKind=o),m(M,{onSuccess:O=>{O?.branch&&!e&&h(O.branch)},onError:O=>{console.error("[sandbox-lifecycle] self-heal failed:",O)}})},[k,R,t,e,o,m,h]);const C=()=>{if(!t)return;const M={virtualMcpId:t};e&&(M.branch=e),m(M,{onSuccess:O=>{O?.branch&&!e&&h(O.branch)},onError:O=>{console.error("[sandbox-lifecycle] user start failed:",O)}})},D=async()=>{if(!t||!e)return;const M=x?.sandboxProviderKind;if(M){bo.mark(t,e);try{await u.callTool({name:"SANDBOX_DELETE",arguments:{virtualMcpId:t,branch:e,sandboxProviderKind:M}})}catch{}om(d)}},N=async()=>{await D(),C()},L=()=>{g.current=new Set,v.current=null,p(),C()},I={branch:e,previewState:w,status:j,vmEntry:x,previewUrl:_,userStopped:y,start:C,stop:D,restart:N,retry:L,resume:L};return n.jsx(Gd,{value:I,children:a})}const Cv={settings:jp,automations:Qh,preview:br,content:Ta,git:cr};function tc(t){const e=Nn(t);if(e.type==="icon"){const s=En(e.name);return s?{kind:"component",Component:s}:null}return e.type==="url"?{kind:"url",src:e.url}:null}function Vn(t){if(t.kind==="system")return{kind:"component",Component:Cv[t.tabId]};const e=tc(t.iconUrl);if(e)return e;if(!t.appId)return{kind:"fallback"};const s=t.connections.find(r=>r.id===t.appId);if(!s)return{kind:"fallback"};const i=tc(s.icon);return i||{kind:"fallback"}}function kv(t){const{org:e}=Re(),s=bi(),i=Xh(),r=P.useSyncExternalStore(i.threads.subscribe,i.threads.get),o=t?r.find(l=>l.id===t)??null:null,{data:a}=am({queryKey:Tt.ensureTask(e.id,t),queryFn:async()=>{if(!t)return null;try{const{item:l}=await s.call("COLLECTION_THREADS_GET",{id:t});return l??null}catch{return null}},select:l=>l?.metadata??null,staleTime:3e4});return o?.metadata??a??null}function ll(t){const e=H.c(35),s=Mt();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},e[0]=i):i=e[0];const r=wn(i),o=ds(t.virtualMcpId),a=kv(t.taskId),{org:l}=Re(),{currentBranch:h}=ys();let c;e[1]!==o?(c=xr(o),e[1]=o,e[2]=c):c=e[2];const d=c,u=d?.connectionId??"",f=d?.owner??"",m=d?.name??"",p=d?h:null;let g;e[3]!==l.id||e[4]!==l.slug||e[5]!==u||e[6]!==f||e[7]!==m||e[8]!==p?(g={orgId:l.id,orgSlug:l.slug,connectionId:u,owner:f,repo:m,branch:p},e[3]=l.id,e[4]=l.slug,e[5]=u,e[6]=f,e[7]=m,e[8]=p,e[9]=g):g=e[9];const v=Va(g),b=v.data?.state==="open",x=o?.metadata?.ui??null,_=x?.layout??null,y=_?.tabs??[],S=o?.id?Wm(o.id):null,w=a?.expanded_tools??[],j=zh(o),E=o?.metadata;let T;e[10]!==E?(T=Us(E),e[10]=E,e[11]=T):T=e[11];const A=T,{granted:R}=eg("agents:manage");let k;e[12]===Symbol.for("react.memo_cache_sentinel")?(k={includeVirtual:!0},e[12]=k):k=e[12];const C=yr(k),D=ps(),{vmEntry:N,previewUrl:L}=al(),B=D.lifecycle.phase==="running";let I;e[13]!==L||e[14]!==N?.sandboxProviderKind?(I=N?.sandboxProviderKind==="user-desktop"&&L?`${L.replace(/\/+$/,"")}/api/mcp`:void 0,e[13]=L,e[14]=N?.sandboxProviderKind,e[15]=I):I=e[15];const M=I,O=Um({connectionId:S??void 0,orgId:l.id,orgSlug:l.slug,mcpUrl:M}),F=O,z=!!O&&B;let K;e[16]!==F||e[17]!==z?(K={client:F,enabled:z},e[16]=F,e[17]=z,e[18]=K):K=e[18];const{data:G}=rd(K),X=S&&B?(G?.tools??[]).filter(Ev).map(de=>({connectionId:S,toolName:de.name,label:yo(de.name),icon:null})):[],ie=X[0],W=ie?X:x?.pinnedViews??[],Y=ie&&S?{type:"ext-apps",id:S,toolName:ie.toolName}:_?.defaultMainView??null;let ne;e[19]!==h||e[20]!==o||e[21]!==A||e[22]!==l.slug||e[23]!==L?(ne=A&&o?.id&&h?{orgSlug:l.slug,virtualMcpId:o.id,branch:h,previewUrl:L}:null,e[19]=h,e[20]=o,e[21]=A,e[22]=l.slug,e[23]=L,e[24]=ne):ne=e[24];const $=ne;let Z;e[25]!==B?(Z={fetchEnabled:B},e[25]=B,e[26]=Z):Z=e[26];const{data:U}=qa($,Z);let ee;e[27]!==B?(ee={fetchEnabled:B},e[27]=B,e[28]=ee):ee=e[28];const{data:Q}=Ga($,ee),fe=rl(U,Q),{activeTab:me,mainOpen:ve}=ip({mainParam:r.main,metadata:Y||_?{defaultMainView:Y,tabs:y.map(Nv)}:null}),J=j&&(b||v.isPending&&me==="git"),se=Y||_?{defaultMainView:Y,tabs:y.map(jv)}:null,pe=me==="git"&&!J&&!v.isPending?So(se):me==="content"&&!fe?So(se):me,ge=me==="git"&&!J&&!v.isPending?!1:ve,Be=Wh(pe),Le=[];A&&(Le.push({id:"preview",title:"Preview"}),fe&&Le.push({id:"content",title:"Content"})),J&&Le.push({id:"git",title:"Review changes"}),R&&Le.push({id:"settings",title:"Settings"}),Le.push({id:"automations",title:"Automations"});const Ee=new Map;for(const de of w){const Te=Il(de.appId,de.toolName);Ee.set(Te,{id:Te,title:de.toolName,appId:de.appId,iconKey:de.toolName})}for(const de of W){const Te=Il(de.connectionId,de.toolName);Ee.set(Te,{id:Te,title:de.label||de.toolName,appId:de.connectionId,iconKey:de.toolName,iconUrl:de.icon??null})}const Ze=Uh(pe),ct=Ze?Ze.key.split("/").pop()??Ze.key:null,yt=ct?[{id:pe,title:ct,kind:"file",icon:{kind:"component",Component:de=>P.createElement(ui,{filename:ct,...de})}}]:[],mt=Kh(pe),St=mt?[{id:pe,title:(mt.path.split("/").pop()??mt.path).replace(/\.html$/i,""),kind:"file",icon:{kind:"component",Component:de=>P.createElement(mt.path.startsWith("pages/")?br:sd,de)}}]:[],qe=Vh(pe),wt=qe?qe.path.split("/").pop()??qe.path:null,qt=wt?[{id:pe,title:wt,kind:"file",icon:{kind:"component",Component:de=>P.createElement(ui,{filename:wt,...de})}}]:[];let pt;e[29]!==C?(pt=de=>({id:de.id,title:de.title,kind:"agent",icon:Vn({tabId:de.id,kind:"agent",appId:de.view.appId,connections:C})}),e[29]=C,e[30]=pt):pt=e[30];const Ot=[...yt,...St,...qt,...y.map(pt),...Array.from(Ee.values()).map(de=>({id:de.id,title:de.title,kind:"expanded",icon:Vn({tabId:de.iconKey,kind:"expanded",appId:de.appId,iconUrl:de.iconUrl,connections:C})})),...Le.map(de=>({id:de.id,title:de.title,kind:"system",icon:Vn({tabId:de.id,kind:"system",connections:C})}))];let Ct;return e[31]!==pe||e[32]!==ge||e[33]!==s?(Ct=de=>{const Te=rp({clickedId:de,activeTab:pe,mainOpen:ge});s({to:".",search:ze=>({...ze,main:Te}),replace:!0})},e[31]=pe,e[32]=ge,e[33]=s,e[34]=Ct):Ct=e[34],{activeTab:pe,mainOpen:ge,setActiveTab:Ct,systemTabs:Le,layoutTabs:y,expandedTools:w,automationTabParsed:Be,tabs:Ot}}function jv(t){return{id:t.id}}function Nv(t){return{id:t.id}}function Ev(t){return!!od(t._meta)}function Yd(t){const{managerAgentId:e,managerName:s,kind:i,id:r,instructions:o}=t,a=` to improve the instructions of ${i} "${r}". Here are its current instructions.
|
|
8
|
-
<current_instructions>${o}</current_instructions>`;return{type:"doc",content:[{type:"paragraph",content:[{type:"text",text:"Use "},{type:"mention",attrs:{id:e,name:s,char:"@",metadata:{agentId:e,title:s}}},{type:"text",text:a}]}]}}function Tv(t){const e=H.c(9),s=bi();let i;e[0]!==t?(i=Tt.user(t),e[0]=t,e[1]=i):i=e[1];let r;e[2]!==s||e[3]!==t?(r=async()=>{const{user:l}=await s.call("USER_GET",{id:t});return l},e[2]=s,e[3]=t,e[4]=r):r=e[4];const o=!!t;let a;return e[5]!==i||e[6]!==r||e[7]!==o?(a={queryKey:i,queryFn:r,staleTime:3e5,retry:1,enabled:o},e[5]=i,e[6]=r,e[7]=o,e[8]=a):a=e[8],As(a)}function Xd(t){const e=H.c(36),{id:s,size:i,showEmail:r,avatarOnly:o,className:a}=t,l=i===void 0?"xs":i,h=r===void 0?!1:r,c=o===void 0?!1:o,{data:d,isLoading:u,isError:f}=Tv(s);if(u){let x;e[0]!==a?(x=le("flex items-center gap-2",a),e[0]=a,e[1]=x):x=e[1];let _;e[2]!==l?(_=n.jsx(Kn.Skeleton,{shape:"circle",size:l}),e[2]=l,e[3]=_):_=e[3];let y;e[4]!==c||e[5]!==h?(y=!c&&n.jsxs("div",{className:"flex flex-col gap-1",children:[n.jsx("div",{className:"h-3 w-24 bg-muted animate-pulse rounded"}),h&&n.jsx("div",{className:"h-2 w-32 bg-muted animate-pulse rounded"})]}),e[4]=c,e[5]=h,e[6]=y):y=e[6];let S;return e[7]!==x||e[8]!==_||e[9]!==y?(S=n.jsxs("div",{className:x,children:[_,y]}),e[7]=x,e[8]=_,e[9]=y,e[10]=S):S=e[10],S}if(f||!d){let x;e[11]!==a?(x=le("flex items-center gap-2",a),e[11]=a,e[12]=x):x=e[12];let _;e[13]!==l?(_=n.jsx(Kn,{shape:"circle",size:l,fallback:"?",muted:!0}),e[13]=l,e[14]=_):_=e[14];let y;e[15]!==c?(y=!c&&n.jsx("div",{className:"flex flex-col",children:n.jsx("div",{className:"text-sm text-muted-foreground",children:"Unknown User"})}),e[15]=c,e[16]=y):y=e[16];let S;return e[17]!==x||e[18]!==_||e[19]!==y?(S=n.jsxs("div",{className:x,children:[_,y]}),e[17]=x,e[18]=_,e[19]=y,e[20]=S):S=e[20],S}let m;e[21]!==a?(m=le("flex items-center gap-2",a),e[21]=a,e[22]=m):m=e[22];const p=d.image??void 0;let g;e[23]!==l||e[24]!==p||e[25]!==d.name?(g=n.jsx(Kn,{shape:"circle",size:l,url:p,fallback:d.name}),e[23]=l,e[24]=p,e[25]=d.name,e[26]=g):g=e[26];let v;e[27]!==c||e[28]!==h||e[29]!==d.email||e[30]!==d.name?(v=!c&&n.jsxs("div",{className:"flex flex-col",children:[n.jsx("div",{className:"text-sm font-medium",children:d.name}),h&&n.jsx("div",{className:"text-xs text-muted-foreground",children:d.email})]}),e[27]=c,e[28]=h,e[29]=d.email,e[30]=d.name,e[31]=v):v=e[31];let b;return e[32]!==m||e[33]!==g||e[34]!==v?(b=n.jsxs("div",{className:m,children:[g,v]}),e[32]=m,e[33]=g,e[34]=v,e[35]=b):b=e[35],b}function Pv(t){const e=H.c(86),{value:s,onChange:i,onColorChange:r,name:o,size:a,className:l,avatarClassName:h,showHoverOverlay:c,disabled:d}=t,u=a===void 0?"lg":a,f=c===void 0?!0:c,m=d===void 0?!1:d,[p,g]=P.useState(!1),[v,b]=P.useState("icons"),[x,_]=P.useState(""),[y,S]=P.useState("blue");let w;e[0]!==s?(w=Nn(s),e[0]=s,e[1]=w):w=e[1];const j=w,E=j.type==="icon"||j.type==="url"&&j.color?j.color:y;let T;e[2]!==i||e[3]!==E?(T=Ee=>{i(Hn(Ee,E))},e[2]=i,e[3]=E,e[4]=T):T=e[4];const A=T;let R;e[5]!==i||e[6]!==r||e[7]!==j.name||e[8]!==j.type||e[9]!==j.url?(R=Ee=>{S(Ee),r?.(Ee),j.type==="icon"?i(Hn(j.name,Ee)):j.type==="url"&&i(Ml(j.url,Ee))},e[5]=i,e[6]=r,e[7]=j.name,e[8]=j.type,e[9]=j.url,e[10]=R):R=e[10];const k=R;let C;e[11]!==i||e[12]!==E?(C=Ee=>{i(Ml(Ee,E)),g(!1)},e[11]=i,e[12]=E,e[13]=C):C=e[13];const D=C;let N;e[14]!==i||e[15]!==E?(N=()=>{const Ee=Pa(),Ze=Ee[Math.floor(Math.random()*Ee.length)];i(Hn(Ze,E))},e[14]=i,e[15]=E,e[16]=N):N=e[16];const L=N;let B,I,M,O,F,z,K,G,X;if(e[17]!==l||e[18]!==m||e[19]!==p||e[20]!==u){const Ee={xs:"rounded-md",sm:"rounded-lg","sm+":"rounded-xl",md:"rounded-xl",lg:"rounded-2xl",xl:"rounded-2xl"};I=Xs,K=m?!1:p,G=g,B=Js,z=!0,X="button",M="icon-picker-trigger",O=m,F=le("relative group overflow-hidden",m?"cursor-default opacity-50":"cursor-pointer",Ee[u],l),e[17]=l,e[18]=m,e[19]=p,e[20]=u,e[21]=B,e[22]=I,e[23]=M,e[24]=O,e[25]=F,e[26]=z,e[27]=K,e[28]=G,e[29]=X}else B=e[21],I=e[22],M=e[23],O=e[24],F=e[25],z=e[26],K=e[27],G=e[28],X=e[29];let ie;e[30]!==h||e[31]!==o||e[32]!==u||e[33]!==s?(ie=n.jsx(Ol,{icon:s,name:o,size:u,className:h}),e[30]=h,e[31]=o,e[32]=u,e[33]=s,e[34]=ie):ie=e[34];let W;e[35]!==m||e[36]!==f?(W=f&&!m&&n.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity",children:n.jsx(Ta,{size:16,className:"text-white"})}),e[35]=m,e[36]=f,e[37]=W):W=e[37];let Y;e[38]!==M||e[39]!==O||e[40]!==F||e[41]!==ie||e[42]!==W||e[43]!==X?(Y=n.jsxs("button",{type:X,"data-testid":M,disabled:O,className:F,children:[ie,W]}),e[38]=M,e[39]=O,e[40]=F,e[41]=ie,e[42]=W,e[43]=X,e[44]=Y):Y=e[44];let ne;e[45]!==B||e[46]!==z||e[47]!==Y?(ne=n.jsx(B,{asChild:z,children:Y}),e[45]=B,e[46]=z,e[47]=Y,e[48]=ne):ne=e[48];let $;e[49]!==o||e[50]!==s?($=n.jsx("div",{className:"flex items-center justify-center py-4",children:n.jsx(Ol,{icon:s,name:o,size:"xl"})}),e[49]=o,e[50]=s,e[51]=$):$=e[51];let Z;e[52]===Symbol.for("react.memo_cache_sentinel")?(Z=()=>b("icons"),e[52]=Z):Z=e[52];const U=v==="icons"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let ee;e[53]!==U?(ee=le("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",U),e[53]=U,e[54]=ee):ee=e[54];let Q;e[55]!==ee?(Q=n.jsx("button",{type:"button",onClick:Z,className:ee,children:"Icons"}),e[55]=ee,e[56]=Q):Q=e[56];let fe;e[57]===Symbol.for("react.memo_cache_sentinel")?(fe=()=>b("upload"),e[57]=fe):fe=e[57];const me=v==="upload"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let ve;e[58]!==me?(ve=le("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",me),e[58]=me,e[59]=ve):ve=e[59];let J;e[60]!==ve?(J=n.jsx("button",{type:"button",onClick:fe,className:ve,children:"Upload"}),e[60]=ve,e[61]=J):J=e[61];let se;e[62]===Symbol.for("react.memo_cache_sentinel")?(se=n.jsx("div",{className:"flex-1"}),e[62]=se):se=e[62];let pe;e[63]!==Q||e[64]!==J?(pe=n.jsxs("div",{className:"flex items-center border-b border-border px-3",children:[Q,J,se]}),e[63]=Q,e[64]=J,e[65]=pe):pe=e[65];let ge;e[66]!==k||e[67]!==L||e[68]!==A||e[69]!==D||e[70]!==j.name||e[71]!==j.type||e[72]!==x||e[73]!==E||e[74]!==v?(ge=v==="icons"?n.jsx(Iv,{search:x,onSearchChange:_,selectedColor:E,onColorChange:k,onSelectIcon:A,onRandom:L,currentIconName:j.type==="icon"?j.name:null}):n.jsx(Lv,{onUpload:D}),e[66]=k,e[67]=L,e[68]=A,e[69]=D,e[70]=j.name,e[71]=j.type,e[72]=x,e[73]=E,e[74]=v,e[75]=ge):ge=e[75];let Be;e[76]!==$||e[77]!==pe||e[78]!==ge?(Be=n.jsx(Zs,{align:"start",className:"w-80 p-0",onOpenAutoFocus:Av,children:n.jsxs("div",{className:"flex flex-col",children:[$,pe,ge]})}),e[76]=$,e[77]=pe,e[78]=ge,e[79]=Be):Be=e[79];let Le;return e[80]!==I||e[81]!==K||e[82]!==G||e[83]!==ne||e[84]!==Be?(Le=n.jsxs(I,{open:K,onOpenChange:G,children:[ne,Be]}),e[80]=I,e[81]=K,e[82]=G,e[83]=ne,e[84]=Be,e[85]=Le):Le=e[85],Le}function Av(t){return t.preventDefault()}function Rv(t){const e=H.c(27),{selectedColor:s,onColorChange:i}=t,[r,o]=P.useState(!1);let a,l,h,c,d,u,f;if(e[0]!==r||e[1]!==s){const x=ed(s);l=Xs,u=r,f=o,a=Js,d=!0,h="button",c=le("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]=r,e[1]=s,e[2]=a,e[3]=l,e[4]=h,e[5]=c,e[6]=d,e[7]=u,e[8]=f}else a=e[2],l=e[3],h=e[4],c=e[5],d=e[6],u=e[7],f=e[8];let m;e[9]!==h||e[10]!==c?(m=n.jsx("button",{type:h,className:c,title:"Change color"}),e[9]=h,e[10]=c,e[11]=m):m=e[11];let p;e[12]!==a||e[13]!==d||e[14]!==m?(p=n.jsx(a,{asChild:d,children:m}),e[12]=a,e[13]=d,e[14]=m,e[15]=p):p=e[15];let g;e[16]!==i||e[17]!==s?(g=Ep.map(x=>n.jsx("button",{type:"button",onClick:()=>{i(x.name),o(!1)},className:le("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 v;e[19]!==g?(v=n.jsx(Zs,{align:"start",side:"right",sideOffset:8,className:"w-auto p-2",onOpenAutoFocus:Dv,children:n.jsx("div",{className:"grid grid-cols-4 gap-1",children:g})}),e[19]=g,e[20]=v):v=e[20];let b;return e[21]!==l||e[22]!==u||e[23]!==f||e[24]!==p||e[25]!==v?(b=n.jsxs(l,{open:u,onOpenChange:f,children:[p,v]}),e[21]=l,e[22]=u,e[23]=f,e[24]=p,e[25]=v,e[26]=b):b=e[26],b}function Dv(t){return t.preventDefault()}function Iv(t){const e=H.c(44),{search:s,onSearchChange:i,selectedColor:r,onColorChange:o,onSelectIcon:a,onRandom:l,currentIconName:h}=t;let c,d,u,f,m,p,g;if(e[0]!==h||e[1]!==o||e[2]!==l||e[3]!==i||e[4]!==a||e[5]!==s||e[6]!==r){const y=Pa(),S=ed(r);d=s.trim()?y.filter(k=>{const C=wo(k),D=s.toLowerCase();return C.includes(D)||k.toLowerCase().includes(D)}):y,p="flex flex-col";let w;e[14]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(dr,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[14]=w):w=e[14];let j;e[15]!==i?(j=k=>i(k.target.value),e[15]=i,e[16]=j):j=e[16];let E;e[17]!==s||e[18]!==j?(E=n.jsxs("div",{className:"relative flex-1",children:[w,n.jsx(tt,{value:s,onChange:j,placeholder:"Filter...",className:"h-8 text-xs pl-7"})]}),e[17]=s,e[18]=j,e[19]=E):E=e[19];let T;e[20]===Symbol.for("react.memo_cache_sentinel")?(T=n.jsx(Np,{size:14,className:"text-muted-foreground"}),e[20]=T):T=e[20];let A;e[21]!==l?(A=n.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:T}),e[21]=l,e[22]=A):A=e[22];let R;e[23]!==o||e[24]!==r?(R=n.jsx(Rv,{selectedColor:r,onColorChange:o}),e[23]=o,e[24]=r,e[25]=R):R=e[25],e[26]!==A||e[27]!==R||e[28]!==E?(g=n.jsxs("div",{className:"flex items-center gap-2 px-3 py-2",children:[E,A,R]}),e[26]=A,e[27]=R,e[28]=E,e[29]=g):g=e[29],c=jn,m="h-56",u="grid grid-cols-9 gap-0.5 px-2 pb-2",f=d.map(k=>{const C=En(k);return C?n.jsx("button",{type:"button",onClick:()=>a(k),className:le("h-8 w-8 flex items-center justify-center rounded-md transition-colors cursor-pointer",h===k?le(S.bg,S.text):le(S.text,"hover:bg-accent")),title:k,children:n.jsx(C,{size:18})},k):null}),e[0]=h,e[1]=o,e[2]=l,e[3]=i,e[4]=a,e[5]=s,e[6]=r,e[7]=c,e[8]=d,e[9]=u,e[10]=f,e[11]=m,e[12]=p,e[13]=g}else c=e[7],d=e[8],u=e[9],f=e[10],m=e[11],p=e[12],g=e[13];let v;e[30]!==u||e[31]!==f?(v=n.jsx("div",{className:u,children:f}),e[30]=u,e[31]=f,e[32]=v):v=e[32];let b;e[33]!==d.length?(b=d.length===0&&n.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No icons found"}),e[33]=d.length,e[34]=b):b=e[34];let x;e[35]!==c||e[36]!==m||e[37]!==v||e[38]!==b?(x=n.jsxs(c,{className:m,children:[v,b]}),e[35]=c,e[36]=m,e[37]=v,e[38]=b,e[39]=x):x=e[39];let _;return e[40]!==p||e[41]!==g||e[42]!==x?(_=n.jsxs("div",{className:p,children:[g,x]}),e[40]=p,e[41]=g,e[42]=x,e[43]=_):_=e[43],_}function Lv(t){const e=H.c(27),{onUpload:s}=t,i=P.useRef(null);let r;e[0]!==s?(r=w=>{const j=w.target.files?.[0];if(!j)return;if(j.size>2097152){ae.error("Image must be smaller than 2MB"),w.target.value="";return}const E=new FileReader;E.onerror=()=>{ae.error("Failed to read image file"),i.current&&(i.current.value="")},E.onloadend=()=>{E.readyState===FileReader.DONE&&E.result&&s(E.result),i.current&&(i.current.value="")},E.readAsDataURL(j)},e[0]=s,e[1]=r):r=e[1];const o=r,[a,l]=P.useState("");let h;e[2]!==s||e[3]!==a?(h=()=>{const w=a.trim();w&&(s(w),l(""))},e[2]=s,e[3]=a,e[4]=h):h=e[4];const c=h;let d;e[5]!==o?(d=n.jsx("input",{type:"file",ref:i,className:"hidden",accept:"image/*",onChange:o}),e[5]=o,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=()=>i.current?.click(),e[7]=u):u=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsxs("button",{type:"button",onClick:u,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:[n.jsx(fg,{size:20}),n.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=n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("span",{className:"text-xs text-muted-foreground",children:"or"}),n.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=w=>l(w.target.value),e[10]=p):p=e[10];let g;e[11]!==c?(g=w=>{w.key==="Enter"&&(w.preventDefault(),c())},e[11]=c,e[12]=g):g=e[12];let v;e[13]!==a||e[14]!==g?(v=n.jsx(tt,{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]=v):v=e[15];let b;e[16]!==a?(b=a.trim(),e[16]=a,e[17]=b):b=e[17];const x=!b;let _;e[18]!==c||e[19]!==x?(_=n.jsx(oe,{variant:"outline",size:"sm",className:"h-8 px-3 text-xs shrink-0",onClick:c,disabled:x,children:"Apply"}),e[18]=c,e[19]=x,e[20]=_):_=e[20];let y;e[21]!==_||e[22]!==v?(y=n.jsxs("div",{className:"flex items-center gap-1.5",children:[v,_]}),e[21]=_,e[22]=v,e[23]=y):y=e[23];let S;return e[24]!==y||e[25]!==d?(S=n.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[d,f,m,y]}),e[24]=y,e[25]=d,e[26]=S):S=e[26],S}function Bv(t){const e=H.c(5),{value:s}=t;let i;if(e[0]!==s){i=Symbol.for("react.early_return_sentinel");e:{const o=Nn(s);if(o.type==="icon"){const a=En(o.name);if(a){let l;e[2]!==a?(l=n.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 r;return e[4]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx(mg,{size:16,className:"text-muted-foreground"}),e[4]=r):r=e[4],r}function Mv(t){const e=H.c(66),{value:s,onChange:i,className:r,disabled:o}=t,[a,l]=P.useState(!1),[h,c]=P.useState("");let d;e[0]!==s?(d=Nn(s),e[0]=s,e[1]=d):d=e[1];const u=d,f=u.type==="icon"?u.name:null;let m,p,g,v,b,x,_,y,S,w,j,E,T,A,R;if(e[2]!==r||e[3]!==f||e[4]!==o||e[5]!==i||e[6]!==a||e[7]!==h||e[8]!==s){const I=Pa();v=h.trim()?I.filter(X=>{const ie=h.toLowerCase();return wo(X).includes(ie)||X.toLowerCase().includes(ie)}):I,g=Xs,b=o?!1:a,x=l;const M=o?"cursor-default opacity-50":"cursor-pointer hover:bg-accent";let O;e[24]!==r||e[25]!==M?(O=le("size-7 shrink-0 rounded-md transition-colors flex items-center justify-center",M,r),e[24]=r,e[25]=M,e[26]=O):O=e[26];let F;e[27]!==s?(F=n.jsx(Bv,{value:s}),e[27]=s,e[28]=F):F=e[28],e[29]!==o||e[30]!==O||e[31]!==F?(_=n.jsx(Js,{asChild:!0,children:n.jsx("button",{type:"button",disabled:o,className:O,children:F})}),e[29]=o,e[30]=O,e[31]=F,e[32]=_):_=e[32],p=Zs,T="start",A="w-64 p-0",R=Ov,j="flex flex-col";let z;e[33]===Symbol.for("react.memo_cache_sentinel")?(z=n.jsx(dr,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[33]=z):z=e[33];let K;e[34]===Symbol.for("react.memo_cache_sentinel")?(K=X=>c(X.target.value),e[34]=K):K=e[34],e[35]!==h?(E=n.jsx("div",{className:"px-2 py-2",children:n.jsxs("div",{className:"relative",children:[z,n.jsx(tt,{value:h,onChange:K,placeholder:"Filter...",className:"h-7 text-xs pl-7"})]})}),e[35]=h,e[36]=E):E=e[36],m=jn,w="h-48",y="grid grid-cols-8 gap-0.5 px-2 pb-2";let G;e[37]!==f||e[38]!==i?(G=X=>{const ie=En(X);return ie?n.jsx("button",{type:"button",onClick:()=>{i(`icon://${X}`),l(!1)},className:le("h-7 w-7 flex items-center justify-center rounded-md transition-colors cursor-pointer",f===X?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"),title:wo(X),children:n.jsx(ie,{size:16})},X):null},e[37]=f,e[38]=i,e[39]=G):G=e[39],S=v.map(G),e[2]=r,e[3]=f,e[4]=o,e[5]=i,e[6]=a,e[7]=h,e[8]=s,e[9]=m,e[10]=p,e[11]=g,e[12]=v,e[13]=b,e[14]=x,e[15]=_,e[16]=y,e[17]=S,e[18]=w,e[19]=j,e[20]=E,e[21]=T,e[22]=A,e[23]=R}else m=e[9],p=e[10],g=e[11],v=e[12],b=e[13],x=e[14],_=e[15],y=e[16],S=e[17],w=e[18],j=e[19],E=e[20],T=e[21],A=e[22],R=e[23];let k;e[40]!==y||e[41]!==S?(k=n.jsx("div",{className:y,children:S}),e[40]=y,e[41]=S,e[42]=k):k=e[42];let C;e[43]!==v.length?(C=v.length===0&&n.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:"No icons found"}),e[43]=v.length,e[44]=C):C=e[44];let D;e[45]!==m||e[46]!==k||e[47]!==C||e[48]!==w?(D=n.jsxs(m,{className:w,children:[k,C]}),e[45]=m,e[46]=k,e[47]=C,e[48]=w,e[49]=D):D=e[49];let N;e[50]!==D||e[51]!==j||e[52]!==E?(N=n.jsxs("div",{className:j,children:[E,D]}),e[50]=D,e[51]=j,e[52]=E,e[53]=N):N=e[53];let L;e[54]!==p||e[55]!==N||e[56]!==T||e[57]!==A||e[58]!==R?(L=n.jsx(p,{align:T,className:A,onOpenAutoFocus:R,children:N}),e[54]=p,e[55]=N,e[56]=T,e[57]=A,e[58]=R,e[59]=L):L=e[59];let B;return e[60]!==g||e[61]!==b||e[62]!==x||e[63]!==_||e[64]!==L?(B=n.jsxs(g,{open:b,onOpenChange:x,children:[_,L]}),e[60]=g,e[61]=b,e[62]=x,e[63]=_,e[64]=L,e[65]=B):B=e[65],B}function Ov(t){return t.preventDefault()}const $v=25*1024*1024,qn="home",Gn="knowledge";function sc(t){return t==null?"":t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(0)} KB`:`${(t/(1024*1024)).toFixed(1)} MB`}function Is(t){return t.split("/").pop()??t}function zv(t){const e=H.c(52),{form:s}=t,{upload:i}=lp(qn),r=cp(),o=P.useRef(null),[a,l]=P.useState(!1),[h,c]=P.useState(""),[d,u]=P.useState(!1);let f;e[0]!==a?(f={enabled:a},e[0]=a,e[1]=f):f=e[1];const{data:m}=hp(60,f),p=m===void 0?[]:m;let g;e[2]!==a?(g={enabled:a},e[2]=a,e[3]=g):g=e[3];const{data:v}=dp(g),b=v===void 0?[]:v;let x;e[4]!==s?(x=()=>s.getValues("metadata.knowledge")??[],e[4]=s,e[5]=x):x=e[5];const[_,y]=P.useState(x);let S;e[6]!==s?(S=J=>{y(J),s.setValue("metadata.knowledge",J,{shouldDirty:!0})},e[6]=s,e[7]=S):S=e[7];const w=S;let j;e[8]!==r||e[9]!==_||e[10]!==w||e[11]!==i?(j=async J=>{if(!J||J.length===0)return;const se=Array.from(J).filter(Kv);if(se.length!==0){try{await i.mutateAsync({dir:Gn,files:se})}catch(pe){const ge=pe;ae.error(ge instanceof Error?ge.message:"Failed to upload file.");return}w([..._,...se.map(pe=>({id:crypto.randomUUID(),name:pe.name,volume:qn,path:`${Gn}/${pe.name}`,url:r(qn,`${Gn}/${pe.name}`),contentType:pe.type||null,size:pe.size,addedAt:new Date().toISOString()}))])}},e[8]=r,e[9]=_,e[10]=w,e[11]=i,e[12]=j):j=e[12];const E=j;let T;e[13]!==r||e[14]!==_||e[15]!==w?(T=J=>{_.some(se=>se.volume===J.volume&&se.path===J.path)||(w([..._,{id:crypto.randomUUID(),name:Is(J.path),volume:J.volume,path:J.path,url:r(J.volume,J.path),contentType:null,size:J.size??null,addedAt:new Date().toISOString()}]),l(!1))},e[13]=r,e[14]=_,e[15]=w,e[16]=T):T=e[16];const A=T;let R;e[17]!==r||e[18]!==_||e[19]!==w?(R=J=>{_.some(se=>se.volume===J.volume&&se.path===J.path)||(w([..._,{id:crypto.randomUUID(),name:Is(J.path),kind:"skill",volume:J.volume,path:J.path,url:r(J.volume,J.path),contentType:null,size:null,addedAt:new Date().toISOString()}]),l(!1))},e[17]=r,e[18]=_,e[19]=w,e[20]=R):R=e[20];const k=R;let C;e[21]!==_||e[22]!==w?(C=J=>{w(_.filter(se=>se.id!==J))},e[21]=_,e[22]=w,e[23]=C):C=e[23];const D=C;let N;e[24]===Symbol.for("react.memo_cache_sentinel")?(N=J=>{l(J),J&&c("")},e[24]=N):N=e[24];const L=N;let B;e[25]!==_?(B=new Set(_.map(Uv)),e[25]=_,e[26]=B):B=e[26];const I=B,M=h.toLowerCase();let O;e[27]!==I?(O=J=>!I.has(`${J.volume}/${J.path}`),e[27]=I,e[28]=O):O=e[28];const F=p.filter(Wv).filter(O).filter(J=>Is(J.path).toLowerCase().includes(M)).slice(0,5);let z;e[29]!==I?(z=J=>!I.has(`${J.volume}/${J.path}`),e[29]=I,e[30]=z):z=e[30];const K=b.filter(z).filter(J=>Is(J.path).toLowerCase().includes(M)).slice(0,5),G=J=>n.jsxs(os,{open:a,onOpenChange:L,children:[n.jsx(as,{asChild:!0,children:J}),n.jsxs(ls,{align:"end",className:"w-56",children:[n.jsxs(We,{onSelect:()=>{o.current?.click()},children:[n.jsx(Tp,{size:16}),"Upload file"]}),n.jsxs(ko,{children:[n.jsxs(jo,{className:"gap-2 [&_svg:not([class*='text-'])]:text-muted-foreground",children:[n.jsx(Eo,{size:16}),"Select file or folder"]}),n.jsxs(No,{className:"w-72 p-0",children:[n.jsxs("div",{className:"flex items-center gap-2 border-b px-3",children:[n.jsx(dr,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("input",{value:h,onChange:se=>c(se.target.value),onKeyDown:Hv,placeholder:"Search files...",className:"h-10 w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground"})]}),n.jsx("div",{className:"max-h-64 overflow-y-auto p-1",children:F.length===0?n.jsx("p",{className:"px-2 py-3 text-center text-sm text-muted-foreground",children:"No files found."}):F.map(se=>n.jsxs(We,{onSelect:()=>A(se),children:[n.jsx(ui,{filename:Is(se.path),className:"h-5 w-4 shrink-0"}),n.jsx("span",{className:"flex-1 truncate",children:Is(se.path)}),se.size!=null&&n.jsx("span",{className:"text-xs text-muted-foreground",children:sc(se.size)})]},`${se.volume}/${se.path}`))})]})]}),n.jsxs(ko,{children:[n.jsxs(jo,{className:"gap-2 [&_svg:not([class*='text-'])]:text-muted-foreground",children:[n.jsx(zs,{size:16}),"Select skill"]}),n.jsxs(No,{className:"w-72 p-0",children:[n.jsxs("div",{className:"flex items-center gap-2 border-b px-3",children:[n.jsx(dr,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("input",{value:h,onChange:se=>c(se.target.value),onKeyDown:Fv,placeholder:"Search skills...",className:"h-10 w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground"})]}),n.jsx("div",{className:"max-h-64 overflow-y-auto p-1",children:K.length===0?n.jsx("p",{className:"px-2 py-3 text-center text-sm text-muted-foreground",children:"No skills found."}):K.map(se=>n.jsxs(We,{onSelect:()=>k(se),children:[n.jsx(zs,{size:16,className:"shrink-0"}),n.jsx("span",{className:"flex-1 truncate",children:Is(se.path)})]},`${se.volume}/${se.path}`))})]})]})]})]}),X="flex flex-col gap-3";let ie;e[31]===Symbol.for("react.memo_cache_sentinel")?(ie=n.jsxs("div",{className:"flex flex-col gap-1",children:[n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Files and skills"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Attach files and skills the agent can always reference."})]}),e[31]=ie):ie=e[31];const W=_.length>0&&G(n.jsxs(oe,{variant:"outline",size:"sm",disabled:i.isPending,children:[i.isPending?n.jsx(wa,{size:"xs"}):n.jsx(Bt,{size:14}),"Add"]}));let Y;e[32]!==W?(Y=n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[ie,W]}),e[32]=W,e[33]=Y):Y=e[33];let ne;e[34]!==E?(ne=n.jsx("input",{ref:o,type:"file",multiple:!0,className:"hidden",onChange:J=>{E(J.target.files),J.target.value=""}}),e[34]=E,e[35]=ne):ne=e[35];let $,Z;e[36]===Symbol.for("react.memo_cache_sentinel")?($=J=>{J.preventDefault(),u(!0)},Z=()=>u(!1),e[36]=$,e[37]=Z):($=e[36],Z=e[37]);let U;e[38]!==E?(U=J=>{J.preventDefault(),u(!1),E(J.dataTransfer.files)},e[38]=E,e[39]=U):U=e[39];const ee=d&&"outline outline-2 outline-dashed outline-primary";let Q;e[40]!==ee?(Q=le("flex flex-col gap-2 rounded-lg",ee),e[40]=ee,e[41]=Q):Q=e[41];const fe=_.length===0?G(n.jsxs("button",{type:"button",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:[n.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:n.jsx(Bt,{size:16})}),n.jsx("span",{className:"text-sm text-muted-foreground flex-1",children:"No files or skills yet. Add one or drag and drop here."})]})):_.map(J=>n.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 rounded-xl border bg-card",children:[J.kind==="skill"?n.jsx("div",{className:"flex items-center justify-center h-8 w-6.5 shrink-0 rounded-md bg-muted text-muted-foreground",children:n.jsx(zs,{size:16})}):n.jsx(ui,{filename:J.name,className:"h-8 w-6.5 shrink-0"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("p",{className:"text-sm font-medium truncate",children:J.name}),n.jsx("p",{className:"text-xs text-muted-foreground",children:J.kind==="skill"?"Skill":J.size!=null?sc(J.size):"File"})]}),n.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>D(J.id),"aria-label":`Remove ${J.name}`,children:n.jsx(Ks,{size:16})})]},J.id));let me;e[42]!==$||e[43]!==Z||e[44]!==U||e[45]!==Q||e[46]!==fe?(me=n.jsx("div",{onDragOver:$,onDragLeave:Z,onDrop:U,className:Q,children:fe}),e[42]=$,e[43]=Z,e[44]=U,e[45]=Q,e[46]=fe,e[47]=me):me=e[47];let ve;return e[48]!==Y||e[49]!==ne||e[50]!==me?(ve=n.jsxs("section",{className:X,children:[Y,ne,me]}),e[48]=Y,e[49]=ne,e[50]=me,e[51]=ve):ve=e[51],ve}function Fv(t){return t.stopPropagation()}function Hv(t){return t.stopPropagation()}function Wv(t){return t.kind!=="dir"}function Uv(t){return`${t.volume}/${t.path}`}function Kv(t){return t.size<=$v}function Vv(t){return t==null?"all":t.length===0?"self":"selected"}function qv(t){const e=H.c(65),{form:s,currentAgentId:i}=t,{org:r}=Re(),o=Ca(),[a,l]=P.useState(!1);let h;e[0]!==s?(h=s.getValues("metadata.subAgents")??null,e[0]=s,e[1]=h):h=e[1];const c=h;let d;e[2]!==c?(d=()=>Vv(c),e[2]=c,e[3]=d):d=e[3];const[u,f]=P.useState(d);let m;e[4]!==c?(m=c??[],e[4]=c,e[5]=m):m=e[5];const[p,g]=P.useState(m);let v,b,x,_,y,S;if(e[6]!==o||e[7]!==i||e[8]!==s||e[9]!==u||e[10]!==r||e[11]!==p){let T;e[18]!==i||e[19]!==r?(T=W=>W.id!==i&&W.id!==r.id&&W.status==="active",e[18]=i,e[19]=r,e[20]=T):T=e[20],v=o.filter(T);let A;e[21]!==p?(A=W=>p.includes(W.id),e[21]=p,e[22]=A):A=e[22];const R=v.filter(A);let k;e[23]!==s?(k=(W,Y)=>s.setValue("metadata.subAgents",W==="all"?null:W==="self"?[]:Y,{shouldDirty:!0}),e[23]=s,e[24]=k):k=e[24];const C=k;let D;e[25]!==C||e[26]!==p?(D=W=>{f(W),C(W,p)},e[25]=C,e[26]=p,e[27]=D):D=e[27];const N=D;let L;e[28]!==C||e[29]!==p?(L=W=>{const Y=p.includes(W)?p.filter(ne=>ne!==W):[...p,W];g(Y),C("selected",Y)},e[28]=C,e[29]=p,e[30]=L):L=e[30],b=L,y="flex flex-col gap-3";let B;e[31]===Symbol.for("react.memo_cache_sentinel")?(B=n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Sub-agents"}),e[31]=B):B=e[31];let I;e[32]!==u?(I=u==="all"&&n.jsx("p",{className:"text-sm text-muted-foreground",children:"Can delegate to any agent in the organization."}),e[32]=u,e[33]=I):I=e[33];let M;e[34]!==u?(M=u==="self"&&n.jsx("p",{className:"text-sm text-muted-foreground",children:"Can only delegate to a fresh copy of itself, no other agents."}),e[34]=u,e[35]=M):M=e[35];let O;e[36]!==I||e[37]!==M?(O=n.jsxs("div",{className:"flex flex-col gap-1",children:[B,I,M]}),e[36]=I,e[37]=M,e[38]=O):O=e[38];const F=u==="selected"&&R.length>0&&n.jsxs(oe,{variant:"outline",size:"sm",onClick:()=>l(!0),children:[n.jsx(Bt,{size:14}),"Add sub-agent"]});let z;e[39]!==N?(z=W=>N(W),e[39]=N,e[40]=z):z=e[40];let K;e[41]===Symbol.for("react.memo_cache_sentinel")?(K=n.jsx(jt,{size:"sm",className:"w-auto",children:n.jsx(Lt,{})}),e[41]=K):K=e[41];let G;e[42]===Symbol.for("react.memo_cache_sentinel")?(G=n.jsxs(Nt,{align:"end",children:[n.jsx(Ye,{value:"all",children:"Any agent"}),n.jsx(Ye,{value:"selected",children:"Specific agents"}),n.jsx(Ye,{value:"self",children:"Only itself"})]}),e[42]=G):G=e[42];let X;e[43]!==u||e[44]!==z?(X=n.jsxs(Et,{value:u,onValueChange:z,children:[K,G]}),e[43]=u,e[44]=z,e[45]=X):X=e[45];let ie;e[46]!==F||e[47]!==X?(ie=n.jsxs("div",{className:"flex items-center gap-2",children:[F,X]}),e[46]=F,e[47]=X,e[48]=ie):ie=e[48],e[49]!==O||e[50]!==ie?(S=n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[O,ie]}),e[49]=O,e[50]=ie,e[51]=S):S=e[51],x="flex flex-col gap-2",_=u==="selected"&&(R.length>0?R.map(W=>n.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 rounded-xl border bg-background",children:[n.jsx(us,{icon:W.icon,name:W.title,size:"sm",className:"shrink-0"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("p",{className:"text-sm font-medium truncate",children:W.title}),W.description&&n.jsx("p",{className:"text-xs text-muted-foreground truncate",children:W.description})]}),n.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>b(W.id),children:n.jsx(Ps,{size:16})})]},W.id)):n.jsxs("button",{type:"button",onClick:()=>l(!0),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:[n.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:n.jsx(Bt,{size:16})}),n.jsx("span",{className:"text-sm text-muted-foreground",children:"No sub-agents selected yet. Add one — until then this agent can only delegate to itself."})]})),e[6]=o,e[7]=i,e[8]=s,e[9]=u,e[10]=r,e[11]=p,e[12]=v,e[13]=b,e[14]=x,e[15]=_,e[16]=y,e[17]=S}else v=e[12],b=e[13],x=e[14],_=e[15],y=e[16],S=e[17];let w;e[52]!==x||e[53]!==_?(w=n.jsx("div",{className:x,children:_}),e[52]=x,e[53]=_,e[54]=w):w=e[54];let j;e[55]!==v||e[56]!==b||e[57]!==a||e[58]!==p?(j=n.jsx(Gv,{open:a,onOpenChange:l,candidates:v,selectedIds:p,onToggle:b}),e[55]=v,e[56]=b,e[57]=a,e[58]=p,e[59]=j):j=e[59];let E;return e[60]!==y||e[61]!==S||e[62]!==w||e[63]!==j?(E=n.jsxs("section",{className:y,children:[S,w,j]}),e[60]=y,e[61]=S,e[62]=w,e[63]=j,e[64]=E):E=e[64],E}function Gv(t){const e=H.c(32),{open:s,onOpenChange:i,candidates:r,selectedIds:o,onToggle:a}=t,[l,h]=P.useState("");let c,d,u,f,m,p,g,v,b;if(e[0]!==r||e[1]!==i||e[2]!==a||e[3]!==s||e[4]!==l||e[5]!==o){const S=l.toLowerCase(),w=r.filter(j=>j.title.toLowerCase().includes(S)||j.description?.toLowerCase().includes(S));d=Kt,v=s,b=i,c=Vt,m="max-w-md",e[15]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(fs,{children:n.jsx(ms,{children:"Sub-agents"})}),e[15]=p):p=e[15],e[16]!==l?(g=n.jsx(fd,{value:l,onChange:h,placeholder:"Search agents...",className:"w-full"}),e[16]=l,e[17]=g):g=e[17],u="flex flex-col gap-1 max-h-80 overflow-y-auto",f=w.length===0?n.jsx("p",{className:"text-sm text-muted-foreground px-1 py-4 text-center",children:"No agents found."}):w.map(j=>n.jsxs("button",{type:"button",onClick:()=>a(j.id),className:"flex items-center gap-3 px-2 py-2 rounded-lg hover:bg-accent/50 transition-colors cursor-pointer w-full text-left",children:[n.jsx(yi,{checked:o.includes(j.id),className:"pointer-events-none",tabIndex:-1}),n.jsx(us,{icon:j.icon,name:j.title,size:"sm",className:"shrink-0"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("p",{className:"text-sm font-medium truncate",children:j.title}),j.description&&n.jsx("p",{className:"text-xs text-muted-foreground truncate",children:j.description})]})]},j.id)),e[0]=r,e[1]=i,e[2]=a,e[3]=s,e[4]=l,e[5]=o,e[6]=c,e[7]=d,e[8]=u,e[9]=f,e[10]=m,e[11]=p,e[12]=g,e[13]=v,e[14]=b}else c=e[6],d=e[7],u=e[8],f=e[9],m=e[10],p=e[11],g=e[12],v=e[13],b=e[14];let x;e[18]!==u||e[19]!==f?(x=n.jsx("div",{className:u,children:f}),e[18]=u,e[19]=f,e[20]=x):x=e[20];let _;e[21]!==c||e[22]!==m||e[23]!==p||e[24]!==g||e[25]!==x?(_=n.jsxs(c,{className:m,children:[p,g,x]}),e[21]=c,e[22]=m,e[23]=p,e[24]=g,e[25]=x,e[26]=_):_=e[26];let y;return e[27]!==d||e[28]!==v||e[29]!==b||e[30]!==_?(y=n.jsx(d,{open:v,onOpenChange:b,children:_}),e[27]=d,e[28]=v,e[29]=b,e[30]=_,e[31]=y):y=e[31],y}function Gi(){const t=H.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{className:"flex items-center justify-center h-32",children:n.jsx(Ne,{className:"animate-spin text-muted-foreground",size:24})}),t[0]=e):e=t[0],e}function Pr(t){return({error:e})=>e?.message?.includes("Method not found")||e?.code===-32601?n.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:n.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:t})}):n.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center h-full p-6 text-center space-y-4",children:[n.jsx("div",{className:"bg-destructive/10 p-3 rounded-full",children:n.jsx(Eh,{className:"h-6 w-6 text-destructive"})}),n.jsxs("div",{className:"space-y-2",children:[n.jsx("h3",{className:"text-lg font-medium",children:"Something went wrong"}),n.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 Jd(t){const e=H.c(23),{item:s,isSelected:i,onToggle:r,disabled:o}=t,a=o?"cursor-not-allowed opacity-50":"cursor-pointer",l=i?"bg-accent/25":"hover:bg-muted/50";let h;e[0]!==a||e[1]!==l?(h=le("flex items-start gap-3 p-4 rounded-lg transition-colors",a,l),e[0]=a,e[1]=l,e[2]=h):h=e[2];let c;e[3]!==s.name?(c=n.jsx("p",{className:"text-sm font-medium leading-none truncate",children:s.name}),e[3]=s.name,e[4]=c):c=e[4];let d;e[5]!==s.tags?(d=s.tags&&n.jsx("span",{className:"shrink-0",children:s.tags}),e[5]=s.tags,e[6]=d):d=e[6];let u;e[7]!==c||e[8]!==d?(u=n.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[c,d]}),e[7]=c,e[8]=d,e[9]=u):u=e[9];let f;e[10]!==s.description?(f=s.description&&n.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]!==u||e[13]!==f?(m=n.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[u,f]}),e[12]=u,e[13]=f,e[14]=m):m=e[14];let p;e[15]!==o||e[16]!==i||e[17]!==r?(p=n.jsx(yi,{checked:i,onCheckedChange:r,disabled:o,className:"mt-0.5"}),e[15]=o,e[16]=i,e[17]=r,e[18]=p):p=e[18];let g;return e[19]!==h||e[20]!==m||e[21]!==p?(g=n.jsxs("label",{className:h,children:[m,p]}),e[19]=h,e[20]=m,e[21]=p,e[22]=g):g=e[22],g}function cl(t){const e=H.c(13),{items:s,selections:i,onToggle:r,emptyMessage:o,disabled:a}=t;let l,h,c;if(e[0]!==a||e[1]!==o||e[2]!==s||e[3]!==r||e[4]!==i){c=Symbol.for("react.early_return_sentinel");e:{const u=s.map(Yv);if(s.length===0){let f;e[8]!==o?(f=n.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:n.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],c=f;break e}l="flex-1 overflow-auto px-4 py-3 space-y-1",h=s.map(f=>n.jsx(Jd,{item:f,isSelected:i===null||i?.includes(f.id),onToggle:()=>r(f.id,u),disabled:a},f.id))}e[0]=a,e[1]=o,e[2]=s,e[3]=r,e[4]=i,e[5]=l,e[6]=h,e[7]=c}else l=e[5],h=e[6],c=e[7];if(c!==Symbol.for("react.early_return_sentinel"))return c;let d;return e[10]!==l||e[11]!==h?(d=n.jsx("div",{className:l,children:h}),e[10]=l,e[11]=h,e[12]=d):d=e[12],d}function Yv(t){return t.id}function Xv(t){const e=H.c(18),{connectionId:s,toolSelections:i,onToggleTool:r}=t,{org:o}=Re();let a;e[0]!==s||e[1]!==o.id||e[2]!==o.slug?(a={connectionId:s,orgId:o.id,orgSlug:o.slug},e[0]=s,e[1]=o.id,e[2]=o.slug,e[3]=a):a=e[3];const l=vt(a);let h;e[4]!==l?(h={client:l},e[4]=l,e[5]=h):h=e[5];const{data:c}=nd(h),d=c.tools;let u,f,m;if(e[6]!==c.tools||e[7]!==r||e[8]!==i){m=Symbol.for("react.early_return_sentinel");e:{const g=d.map(Zv);let v;e[12]!==i?(v=_=>i===null||i.includes(_.name),e[12]=i,e[13]=v):v=e[13];const x=c.tools.filter(v).map(Jv);if(x.length===0){let _;e[14]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:n.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:"No active tools selected"})}),e[14]=_):_=e[14],m=_;break e}u="flex-1 overflow-auto px-4 py-3 space-y-1",f=x.map(_=>n.jsx(Jd,{item:_,isSelected:!0,onToggle:()=>r(_.id,g)},_.id))}e[6]=c.tools,e[7]=r,e[8]=i,e[9]=u,e[10]=f,e[11]=m}else u=e[9],f=e[10],m=e[11];if(m!==Symbol.for("react.early_return_sentinel"))return m;let p;return e[15]!==u||e[16]!==f?(p=n.jsx("div",{className:u,children:f}),e[15]=u,e[16]=f,e[17]=p):p=e[17],p}function Jv(t){return{id:t.name,name:t.name,description:t.description,tags:n.jsx(cd,{annotations:t.annotations,_meta:t._meta})}}function Zv(t){return t.name}function Qv(t){const e=H.c(13),{connectionId:s,selections:i,onToggle:r,disabled:o}=t,{org:a}=Re();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=vt(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=nd(c);let u;e[6]!==d.tools?(u=d.tools.map(e1),e[6]=d.tools,e[7]=u):u=e[7];const f=u;let m;return e[8]!==o||e[9]!==f||e[10]!==r||e[11]!==i?(m=n.jsx(cl,{items:f,selections:i,onToggle:r,emptyMessage:"No tools available",disabled:o}),e[8]=o,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function e1(t){return{id:t.name,name:t.name,description:t.description,tags:n.jsx(cd,{annotations:t.annotations,_meta:t._meta})}}function t1(t){const e=H.c(13),{connectionId:s,selections:i,onToggle:r,disabled:o}=t,{org:a}=Re();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=vt(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=lm(c);let u;e[6]!==d.resources?(u=d.resources.map(s1),e[6]=d.resources,e[7]=u):u=e[7];const f=u;let m;return e[8]!==o||e[9]!==f||e[10]!==r||e[11]!==i?(m=n.jsx(cl,{items:f,selections:i,onToggle:r,emptyMessage:"No resources available",disabled:o}),e[8]=o,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function s1(t){return{id:t.name||t.uri,name:t.name||t.uri,description:t.description}}function i1(t){const e=H.c(13),{connectionId:s,selections:i,onToggle:r,disabled:o}=t,{org:a}=Re();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=vt(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=pg(c);let u;e[6]!==d.prompts?(u=d.prompts.map(r1),e[6]=d.prompts,e[7]=u):u=e[7];const f=u;let m;return e[8]!==o||e[9]!==f||e[10]!==r||e[11]!==i?(m=n.jsx(cl,{items:f,selections:i,onToggle:r,emptyMessage:"No prompts available",disabled:o}),e[8]=o,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function r1(t){return{id:t.name,name:t.name,description:t.description}}function n1(t){const e=H.c(61),{currentConnection:s,activeTab:i,selectedId:r,formData:o,toggleTool:a,toggleResource:l,togglePrompt:h,toggleAllTools:c,toggleAllResources:d,toggleAllPrompts:u,onTabChange:f}=t,m=o[r],p=i==="tools"?m?.tools===null:i==="resources"?m?.resources===null:i==="prompts"?m?.prompts===null:!1,g=i!=="active";let v;e[0]!==i||e[1]!==r||e[2]!==u||e[3]!==d||e[4]!==c?(v=()=>{i==="tools"?c(r):i==="resources"?d(r):i==="prompts"&&u(r)},e[0]=i,e[1]=r,e[2]=u,e[3]=d,e[4]=c,e[5]=v):v=e[5];const b=v;let x;e[6]!==s.icon||e[7]!==s.title?(x=n.jsx(us,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[6]=s.icon,e[7]=s.title,e[8]=x):x=e[8];let _;e[9]!==s.title?(_=n.jsx("h2",{className:"text-base font-semibold truncate",children:s.title}),e[9]=s.title,e[10]=_):_=e[10];let y;e[11]!==s.description?(y=s.description&&n.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s.description}),e[11]=s.description,e[12]=y):y=e[12];let S;e[13]!==_||e[14]!==y?(S=n.jsxs("div",{className:"flex-1 min-w-0",children:[_,y]}),e[13]=_,e[14]=y,e[15]=S):S=e[15];let w;e[16]!==x||e[17]!==S?(w=n.jsx("div",{className:"px-6 pt-5 pb-4 shrink-0",children:n.jsxs("div",{className:"flex items-center gap-3",children:[x,S]})}),e[16]=x,e[17]=S,e[18]=w):w=e[18];let j;e[19]===Symbol.for("react.memo_cache_sentinel")?(j=[{id:"tools",label:"Tools"},{id:"active",label:"Active"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[19]=j):j=e[19];let E;e[20]!==f?(E=I=>f(I),e[20]=f,e[21]=E):E=e[21];let T;e[22]!==i||e[23]!==E?(T=n.jsx(md,{tabs:j,activeTab:i,onTabChange:E}),e[22]=i,e[23]=E,e[24]=T):T=e[24];let A;e[25]!==b||e[26]!==p||e[27]!==g?(A=g&&n.jsx("button",{type:"button",onClick:b,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:p?"Deselect all":"Select all"}),e[25]=b,e[26]=p,e[27]=g,e[28]=A):A=e[28];let R;e[29]!==A||e[30]!==T?(R=n.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-t border-border shrink-0",children:[T,A]}),e[29]=A,e[30]=T,e[31]=R):R=e[31];let k;e[32]!==i||e[33]!==o||e[34]!==r||e[35]!==a?(k=i==="active"&&n.jsx(Jt,{fallback:Pr("Tools not supported by this server"),children:n.jsx(P.Suspense,{fallback:n.jsx(Gi,{}),children:n.jsx(Xv,{connectionId:r,toolSelections:o[r]?o[r].tools:[],onToggleTool:(I,M)=>a(r,I,M)})})}),e[32]=i,e[33]=o,e[34]=r,e[35]=a,e[36]=k):k=e[36];let C;e[37]!==i||e[38]!==o||e[39]!==r||e[40]!==a?(C=i==="tools"&&n.jsx(Jt,{fallback:Pr("Tools not supported by this server"),children:n.jsx(P.Suspense,{fallback:n.jsx(Gi,{}),children:n.jsx(Qv,{connectionId:r,selections:o[r]?o[r].tools:[],onToggle:(I,M)=>a(r,I,M)})})}),e[37]=i,e[38]=o,e[39]=r,e[40]=a,e[41]=C):C=e[41];let D;e[42]!==i||e[43]!==o||e[44]!==r||e[45]!==l?(D=i==="resources"&&n.jsx(Jt,{fallback:Pr("Resources not supported by this server"),children:n.jsx(P.Suspense,{fallback:n.jsx(Gi,{}),children:n.jsx(t1,{connectionId:r,selections:o[r]?o[r].resources:[],onToggle:(I,M)=>l(r,I,M)})})}),e[42]=i,e[43]=o,e[44]=r,e[45]=l,e[46]=D):D=e[46];let N;e[47]!==i||e[48]!==o||e[49]!==r||e[50]!==h?(N=i==="prompts"&&n.jsx(Jt,{fallback:Pr("Prompts not supported by this server"),children:n.jsx(P.Suspense,{fallback:n.jsx(Gi,{}),children:n.jsx(i1,{connectionId:r,selections:o[r]?o[r].prompts:[],onToggle:(I,M)=>h(r,I,M)})})}),e[47]=i,e[48]=o,e[49]=r,e[50]=h,e[51]=N):N=e[51];let L;e[52]!==k||e[53]!==C||e[54]!==D||e[55]!==N?(L=n.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[k,C,D,N]}),e[52]=k,e[53]=C,e[54]=D,e[55]=N,e[56]=L):L=e[56];let B;return e[57]!==R||e[58]!==L||e[59]!==w?(B=n.jsxs(n.Fragment,{children:[w,R,L]}),e[57]=R,e[58]=L,e[59]=w,e[60]=B):B=e[60],B}function o1(t){const e=H.c(11),{connectionId:s,onAuthenticate:i,children:r}=t;let o;e[0]!==s?(o={connectionId:s},e[0]=s,e[1]=o):o=e[1];const a=hd(o);if(a.supportsOAuth&&!a.isAuthenticated){let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx("div",{className:"flex items-center justify-center size-12 rounded-full bg-muted",children:n.jsx(Pp,{size:22,className:"text-muted-foreground"})}),e[2]=c):c=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsxs("div",{className:"space-y-1",children:[n.jsx("p",{className:"text-sm font-medium",children:"Authorization required"}),n.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]=d):d=e[3];let u;e[4]!==s||e[5]!==i?(u=i&&n.jsx(oe,{variant:"outline",size:"sm",onClick:()=>i(s),children:"Authorize"}),e[4]=s,e[5]=i,e[6]=u):u=e[6];let f;return e[7]!==u?(f=n.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 p-8 text-center",children:[c,d,u]}),e[7]=u,e[8]=f):f=e[8],f}let h;return e[9]!==r?(h=n.jsx(n.Fragment,{children:r}),e[9]=r,e[10]=h):h=e[10],h}function a1(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 ic(t){return Object.entries(t).map(([e,s])=>({connection_id:e,selected_tools:s.tools,selected_resources:s.resources,selected_prompts:s.prompts}))}function l1(t,e){return e.type==="SET_ACTIVE_TAB"?{...t,activeTab:e.payload}:t}function c1(t){const e=H.c(49),{open:s,onOpenChange:i,selectedId:r,form:o,connections:a,onAuthenticate:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h={activeTab:"tools"},e[0]=h):h=e[0];const[c,d]=P.useReducer(l1,h),u=Da(r??"");let f;e[1]!==a?(f=a??[],e[1]=a,e[2]=f):f=e[2];let m;e[3]!==f?(m=a1(f),e[3]=f,e[4]=m):m=e[4];const p=m;let g;e[5]!==o||e[6]!==p?(g=(z,K,G,X)=>{const ie=p[z]?.[K];let W;ie===null?W=X.filter(ne=>ne!==G):ie?.includes(G)?W=ie.filter(ne=>ne!==G):(W=[...ie??[],G],W.length===X.length&&(W=null));const Y={...p};Y[z]?Y[z]={...Y[z]}:Y[z]={tools:null,resources:null,prompts:null},Y[z][K]=W,o.setValue("connections",ic(Y),{shouldDirty:!0,shouldTouch:!0})},e[5]=o,e[6]=p,e[7]=g):g=e[7];const v=g;let b;e[8]!==o||e[9]!==p?(b=(z,K)=>{const X=p[z]?.[K]===null?[]:null,ie={...p};ie[z]?ie[z]={...ie[z]}:ie[z]={tools:null,resources:null,prompts:null},ie[z][K]=X,o.setValue("connections",ic(ie),{shouldDirty:!0,shouldTouch:!0})},e[8]=o,e[9]=p,e[10]=b):b=e[10];const x=b;let _;e[11]!==v?(_=(z,K,G)=>v(z,"tools",K,G),e[11]=v,e[12]=_):_=e[12];const y=_;let S;e[13]!==v?(S=(z,K,G)=>v(z,"resources",K,G),e[13]=v,e[14]=S):S=e[14];const w=S;let j;e[15]!==v?(j=(z,K,G)=>v(z,"prompts",K,G),e[15]=v,e[16]=j):j=e[16];const E=j;let T;e[17]!==x?(T=z=>x(z,"tools"),e[17]=x,e[18]=T):T=e[18];const A=T;let R;e[19]!==x?(R=z=>x(z,"resources"),e[19]=x,e[20]=R):R=e[20];const k=R;let C;e[21]!==x?(C=z=>x(z,"prompts"),e[21]=x,e[22]=C):C=e[22];const D=C;if(!r||!u)return null;let N;e[23]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(Gi,{}),e[23]=N):N=e[23];let L;e[24]===Symbol.for("react.memo_cache_sentinel")?(L=z=>d({type:"SET_ACTIVE_TAB",payload:z}),e[24]=L):L=e[24];let B;e[25]!==u||e[26]!==c.activeTab||e[27]!==p||e[28]!==r||e[29]!==D||e[30]!==k||e[31]!==A||e[32]!==E||e[33]!==w||e[34]!==y?(B=n.jsx(n1,{currentConnection:u,activeTab:c.activeTab,selectedId:r,formData:p,toggleTool:y,toggleResource:w,togglePrompt:E,toggleAllTools:A,toggleAllResources:k,toggleAllPrompts:D,onTabChange:L},r),e[25]=u,e[26]=c.activeTab,e[27]=p,e[28]=r,e[29]=D,e[30]=k,e[31]=A,e[32]=E,e[33]=w,e[34]=y,e[35]=B):B=e[35];let I;e[36]!==l||e[37]!==r||e[38]!==B?(I=n.jsx(P.Suspense,{fallback:N,children:n.jsx(o1,{connectionId:r,onAuthenticate:l,children:B})}),e[36]=l,e[37]=r,e[38]=B,e[39]=I):I=e[39];let M;e[40]!==i?(M=n.jsx(Qs,{className:"px-6 py-4 border-t border-border shrink-0",children:n.jsx(oe,{variant:"outline",onClick:()=>i(!1),children:"Done"})}),e[40]=i,e[41]=M):M=e[41];let O;e[42]!==I||e[43]!==M?(O=n.jsxs(Vt,{className:"sm:max-w-2xl h-[75vh] max-h-[75vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[I,M]}),e[42]=I,e[43]=M,e[44]=O):O=e[44];let F;return e[45]!==i||e[46]!==s||e[47]!==O?(F=n.jsx(Kt,{open:s,onOpenChange:i,children:O}),e[45]=i,e[46]=s,e[47]=O,e[48]=F):F=e[48],F}const Yn={tools:null,resources:null,prompts:null},h1=cm.pick({status:!0,title:!0,description:!0,icon:!0,metadata:!0,connections:!0});function d1(t){const s=new TextEncoder().encode(t),i=Array.from(s,r=>String.fromCharCode(r)).join("");return btoa(i)}function u1(t){const e=H.c(11),{url:s,agentId:i}=t,[r,o]=P.useState(!1);let a;e[0]!==i||e[1]!==s?(a=async()=>{Ie("agent_connect_action",{agent_id:i,action:"copy_url"}),await navigator.clipboard.writeText(s),o(!0),ae.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 h;e[3]!==r?(h=r?n.jsx(Si,{size:20,className:"text-green-600"}):n.jsx(bs,{size:20}),e[3]=r,e[4]=h):h=e[4];const c=r?"Copied!":"Copy URL";let d;e[5]!==c?(d=n.jsx("span",{className:"text-xs font-medium",children:c}),e[5]=c,e[6]=d):d=e[6];let u;return e[7]!==l||e[8]!==h||e[9]!==d?(u=n.jsxs(oe,{type:"button",variant:"outline",onClick:l,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[h,d]}),e[7]=l,e[8]=h,e[9]=d,e[10]=u):u=e[10],u}function f1(t){const e=H.c(8),{url:s,serverName:i,agentId:r}=t;let o;e[0]!==r||e[1]!==i||e[2]!==s?(o=()=>{Ie("agent_connect_action",{agent_id:r,action:"install_cursor"});const d=dd(i),f=d1(JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Cursor"}},null,2)),m=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(d)}&config=${encodeURIComponent(f)}`;window.open(m,"_blank"),ae.success("Opening Cursor...")},e[0]=r,e[1]=i,e[2]=s,e[3]=o):o=e[3];const a=o;let l,h;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=n.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%)"}}),h=n.jsx("span",{className:"text-xs font-medium",children:"Install on Cursor"}),e[4]=l,e[5]=h):(l=e[4],h=e[5]);let c;return e[6]!==a?(c=n.jsxs(oe,{type:"button",variant:"outline",onClick:a,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[l,h]}),e[6]=a,e[7]=c):c=e[7],c}function m1(t){const e=H.c(12),{url:s,serverName:i,agentId:r}=t,[o,a]=P.useState(!1);let l;e[0]!==r||e[1]!==i||e[2]!==s?(l=async()=>{Ie("agent_connect_action",{agent_id:r,action:"install_claude_code"});const m=dd(i),g=JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Claude Code"}},null,2),v=`claude mcp add-json "${m}" '${g.replace(/'/g,"'\\''")}' --scope user`;await navigator.clipboard.writeText(v),a(!0),ae.success("Claude Code command copied to clipboard"),setTimeout(()=>a(!1),2e3)},e[0]=r,e[1]=i,e[2]=s,e[3]=l):l=e[3];const h=l;let c;e[4]!==o?(c=o?n.jsx(Si,{size:20,className:"text-green-600"}):n.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]=c):c=e[5];const d=o?"Copied!":"Install on Claude Code";let u;e[6]!==d?(u=n.jsx("span",{className:"text-xs font-medium",children:d}),e[6]=d,e[7]=u):u=e[7];let f;return e[8]!==h||e[9]!==c||e[10]!==u?(f=n.jsxs(oe,{type:"button",variant:"outline",onClick:h,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[c,u]}),e[8]=h,e[9]=c,e[10]=u,e[11]=f):f=e[11],f}function p1({virtualMcp:t}){const e=bi(),[s,i]=P.useState(null),[r,o]=P.useState(!1),[a,l]=P.useState(!1),h=t.id,c=t.title||`agent-${h.slice(0,8)}`,d=s?`bunx @decocms/typegen@latest --mcp ${h} --key ${s} --output client.ts`:`bunx @decocms/typegen@latest --mcp ${h} --key <api-key> --output client.ts`,u=async()=>{o(!0);try{const{key:m}=await e.call("API_KEY_CREATE",{name:`typegen-${c}`,permissions:{[h]:["*"]}});if(!m)throw new Error("No key in response");i(m),Ie("agent_typegen_key_generated",{agent_id:h})}catch{Ie("agent_typegen_key_failed",{agent_id:h}),ae.error("Failed to generate API key")}finally{o(!1)}},f=async()=>{Ie("agent_connect_action",{agent_id:h,action:"typegen_copy_command",has_api_key:!!s}),await navigator.clipboard.writeText(d),l(!0),ae.success("Command copied to clipboard"),setTimeout(()=>l(!1),2e3)};return n.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[n.jsxs("div",{className:"flex items-start justify-between gap-3",children:[n.jsxs("div",{className:"flex flex-col gap-0.5",children:[n.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Generate typed client"}),n.jsxs("p",{className:"text-xs text-muted-foreground",children:["Introspects this agent and writes a typed"," ",n.jsx("code",{className:"font-mono",children:"client.ts"})," you can import directly."]})]}),!s&&n.jsxs(oe,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:u,disabled:r,children:[r?n.jsx(Ne,{size:14,className:"animate-spin"}):n.jsx(Oa,{size:14}),n.jsx("span",{children:r?"Generating…":"Generate API key"})]})]}),s&&n.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."}),n.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Generate client"}),n.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:n.jsxs("div",{className:"flex items-start gap-2",children:[n.jsx("code",{className:"min-w-0 flex-1 break-all font-mono text-xs text-muted-foreground",children:d}),n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:f,children:a?n.jsx(Si,{size:12,className:"text-green-600"}):n.jsx(bs,{size:12})})]})}),n.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Runtime variables"}),n.jsx(g1,{apiKey:s,agentId:h})]})}function g1(t){const e=H.c(21),{apiKey:s,agentId:i}=t,[r,o]=P.useState(!1),a=window.location.origin,l=s?`MESH_API_KEY=${s}`:"MESH_API_KEY=<api-key>",h=`MESH_BASE_URL=${a}`,c=`${l}
|
|
9
|
-
${h}`;let d;e[0]!==i||e[1]!==s||e[2]!==c?(d=async()=>{Ie("agent_connect_action",{agent_id:i,action:"typegen_copy_env",has_api_key:!!s}),await navigator.clipboard.writeText(c),o(!0),setTimeout(()=>o(!1),2e3)},e[0]=i,e[1]=s,e[2]=c,e[3]=d):d=e[3];const u=d,f=!s;let m;e[4]!==f?(m=le({"opacity-50":f}),e[4]=f,e[5]=m):m=e[5];let p;e[6]!==l||e[7]!==m?(p=n.jsx("span",{className:m,children:l}),e[6]=l,e[7]=m,e[8]=p):p=e[8];let g,v;e[9]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx("br",{}),v=n.jsx("span",{children:h}),e[9]=g,e[10]=v):(g=e[9],v=e[10]);let b;e[11]!==p?(b=n.jsxs("code",{className:"min-w-0 flex-1 font-mono text-xs text-muted-foreground",children:[p,g,v]}),e[11]=p,e[12]=b):b=e[12];let x;e[13]!==r?(x=r?n.jsx(Si,{size:12,className:"text-green-600"}):n.jsx(bs,{size:12}),e[13]=r,e[14]=x):x=e[14];let _;e[15]!==u||e[16]!==x?(_=n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:u,children:x}),e[15]=u,e[16]=x,e[17]=_):_=e[17];let y;return e[18]!==b||e[19]!==_?(y=n.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:n.jsxs("div",{className:"flex items-start gap-2",children:[b,_]})}),e[18]=b,e[19]=_,e[20]=y):y=e[20],y}function _1(t){const e=H.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=n.jsx(P.Suspense,{fallback:i,children:n.jsx(p1,{virtualMcp:s})}),e[1]=s,e[2]=r):r=e[2],r}const v1={self:["COLLECTION_THREADS_CREATE","COLLECTION_THREADS_GET","COLLECTION_THREAD_MESSAGES_LIST","COLLECTION_THREADS_LIST"]},x1=3600*24*90;function b1({virtualMcp:t}){const e=bi(),{org:s}=Re(),[i,r]=P.useState(null),[o,a]=P.useState(!1),[l,h]=P.useState(!1),c=t.id,d=t.title||`agent-${c.slice(0,8)}`,f=[`MESH_BASE_URL=${window.location.origin}`,`MESH_ORG=${s.slug}`,`MESH_AGENT_ID=${c}`,`MESH_API_KEY=${i??"<api-key>"}`].join(`
|
|
10
|
-
`),m=async()=>{a(!0);try{const{key:g}=await e.call("API_KEY_CREATE",{name:`chat-bridge-${d}`,permissions:v1,expiresIn:x1});if(!g)throw new Error("No key in response");r(g),Ie("agent_chat_bridge_key_generated",{agent_id:c})}catch{Ie("agent_chat_bridge_key_failed",{agent_id:c}),ae.error("Failed to create API key")}finally{a(!1)}},p=async()=>{Ie("agent_connect_action",{agent_id:c,action:"chat_bridge_copy_env",has_api_key:!!i}),await navigator.clipboard.writeText(f),h(!0),ae.success("Connection details copied to clipboard"),setTimeout(()=>h(!1),2e3)};return n.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[n.jsxs("div",{className:"flex items-start justify-between gap-3",children:[n.jsxs("div",{className:"flex flex-col gap-0.5",children:[n.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Call from your app"}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"Create a scoped API key to start a thread, run this agent, and stream results from an external system (e.g. a chatbot webhook)."})]}),!i&&n.jsxs(oe,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:m,disabled:o,children:[o?n.jsx(Ne,{size:14,className:"animate-spin"}):n.jsx(Oa,{size:14}),n.jsx("span",{children:o?"Creating…":"Create API key"})]})]}),i&&n.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."}),n.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Connection details"}),n.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:n.jsxs("div",{className:"flex items-start gap-2",children:[n.jsx("code",{className:"min-w-0 flex-1 whitespace-pre-wrap break-all font-mono text-xs text-muted-foreground",children:f}),n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:p,children:l?n.jsx(Si,{size:12,className:"text-green-600"}):n.jsx(bs,{size:12})})]})})]})}function y1(t){const e=H.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=n.jsx(P.Suspense,{fallback:i,children:n.jsx(b1,{virtualMcp:s})}),e[1]=s,e[2]=r):r=e[2],r}function S1(t){const e=H.c(41),{open:s,onOpenChange:i,virtualMcp:r}=t,{org:o}=Re(),a=`/api/${o.slug}/mcp/virtual-mcp/${r.id}`;let l;e[0]!==a?(l=new URL(a,window.location.origin),e[0]=a,e[1]=l):l=e[1];const h=l;let c;e[2]!==r.id||e[3]!==r.title?(c=r.title||`agent-${r.id?.slice(0,8)??"default"}`,e[2]=r.id,e[3]=r.title,e[4]=c):c=e[4];const d=c,u=Na();let f;e[5]!==r.id||e[6]!==h.href?(f=n.jsx(u1,{url:h.href,agentId:r.id}),e[5]=r.id,e[6]=h.href,e[7]=f):f=e[7];let m,p;e[8]!==d||e[9]!==r.id||e[10]!==h.href?(m=n.jsx(f1,{url:h.href,serverName:d,agentId:r.id}),p=n.jsx(m1,{url:h.href,serverName:d,agentId:r.id}),e[8]=d,e[9]=r.id,e[10]=h.href,e[11]=m,e[12]=p):(m=e[11],p=e[12]);let g;e[13]!==f||e[14]!==m||e[15]!==p?(g=n.jsx("div",{className:"flex flex-col gap-3 pt-2",children:n.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[f,m,p]})}),e[13]=f,e[14]=m,e[15]=p,e[16]=g):g=e[16];let v;e[17]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("div",{className:"border-t border-border"}),e[17]=v):v=e[17];let b;e[18]!==r?(b=n.jsx(_1,{virtualMcp:r}),e[18]=r,e[19]=b):b=e[19];let x;e[20]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx("div",{className:"border-t border-border"}),e[20]=x):x=e[20];let _;e[21]!==r?(_=n.jsx(y1,{virtualMcp:r}),e[21]=r,e[22]=_):_=e[22];let y;e[23]!==_||e[24]!==g||e[25]!==b?(y=n.jsxs("div",{className:"flex flex-col gap-6",children:[g,v,b,x,_]}),e[23]=_,e[24]=g,e[25]=b,e[26]=y):y=e[26];const S=y;if(u){let T;e[27]===Symbol.for("react.memo_cache_sentinel")?(T=n.jsx(gg,{className:"mt-4 mb-4 text-base font-semibold",children:"Connect"}),e[27]=T):T=e[27];let A;e[28]!==S?(A=n.jsx(_g,{children:n.jsxs("div",{className:"flex-1 overflow-y-auto px-4 pb-6 [touch-action:pan-y]",children:[T,S]})}),e[28]=S,e[29]=A):A=e[29];let R;return e[30]!==i||e[31]!==s||e[32]!==A?(R=n.jsx(vg,{open:s,onOpenChange:i,children:A}),e[30]=i,e[31]=s,e[32]=A,e[33]=R):R=e[33],R}let w;e[34]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(fs,{children:n.jsx(ms,{children:"Connect"})}),e[34]=w):w=e[34];let j;e[35]!==S?(j=n.jsxs(Vt,{className:"max-h-[80vh] overflow-y-auto sm:max-w-2xl",children:[w,S]}),e[35]=S,e[36]=j):j=e[36];let E;return e[37]!==i||e[38]!==s||e[39]!==j?(E=n.jsx(Kt,{open:s,onOpenChange:i,children:j}),e[37]=i,e[38]=s,e[39]=j,e[40]=E):E=e[40],E}function w1(t){const e=H.c(43),{virtualMcp:s}=t,i=Ca(),r=Lh(),[o,a]=P.useState(!1);let l,h,c,d,u,f,m,p,g;if(e[0]!==r||e[1]!==i||e[2]!==s.id||e[3]!==s.metadata){g=Symbol.for("react.early_return_sentinel");e:{const S=Ym(i);if(Km(s.id)||Us(s.metadata)||S.has(s.id)){g=null;break e}let w;e[13]!==i||e[14]!==s.id?(w=(i??[]).find(N=>N.metadata?.liveAgentId===s.id)??null,e[13]=i,e[14]=s.id,e[15]=w):w=e[15];const j=w,E=j?.id??null;let T;e[16]!==r.update?(T=(N,L)=>r.update.mutateAsync({id:N,data:{metadata:{liveAgentId:L}}}).catch(k1),e[16]=r.update,e[17]=T):T=e[17];const A=T;let R;e[18]!==A||e[19]!==s.id?(R=N=>{A(N,s.id)},e[18]=A,e[19]=s.id,e[20]=R):R=e[20],c=R;let k;e[21]!==E||e[22]!==A?(k=()=>{E&&A(E,null)},e[21]=E,e[22]=A,e[23]=k):k=e[23];const C=k,D=(i??[]).filter(N=>N.id!==s.id&&Us(N.metadata)&&!S.has(N.id));m="flex flex-col gap-3",e[24]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Development agent"}),e[24]=p):p=e[24],h=Ma,f="p-6 gap-4",l=an,d="p-0 space-y-4",u=E?n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[n.jsxs("div",{className:"flex flex-col gap-0.5 min-w-0",children:[n.jsx("span",{className:"text-sm text-foreground truncate",children:j?j.title:E}),n.jsx("span",{className:"text-xs text-muted-foreground",children:"Linked dev agent — its sandbox dev server powers the Develop/Live toggle in the header."})]}),n.jsx(oe,{variant:"outline",size:"sm",className:"shrink-0",onClick:C,children:"Unlink"})]}):n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-xs text-muted-foreground",children:"Link a GitHub-backed dev agent. Its sandbox dev server powers a Develop/Live toggle so you can develop and test this agent's MCP app."}),n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsxs(oe,{variant:"outline",size:"sm",className:"gap-2",onClick:()=>a(!0),children:[n.jsx(pd,{className:"size-4"}),"Import from GitHub"]}),D.length>0?n.jsxs(Et,{onValueChange:c,children:[n.jsx(jt,{size:"sm",className:"w-56",children:n.jsx(Lt,{placeholder:"Or link an existing dev agent…"})}),n.jsx(Nt,{children:D.map(C1)})]}):null]})]})}e[0]=r,e[1]=i,e[2]=s.id,e[3]=s.metadata,e[4]=l,e[5]=h,e[6]=c,e[7]=d,e[8]=u,e[9]=f,e[10]=m,e[11]=p,e[12]=g}else l=e[4],h=e[5],c=e[6],d=e[7],u=e[8],f=e[9],m=e[10],p=e[11],g=e[12];if(g!==Symbol.for("react.early_return_sentinel"))return g;let v;e[25]!==l||e[26]!==d||e[27]!==u?(v=n.jsx(l,{className:d,children:u}),e[25]=l,e[26]=d,e[27]=u,e[28]=v):v=e[28];let b;e[29]!==h||e[30]!==f||e[31]!==v?(b=n.jsx(h,{className:f,children:v}),e[29]=h,e[30]=f,e[31]=v,e[32]=b):b=e[32];let x;e[33]!==c?(x=S=>{const{virtualMcpId:w}=S;a(!1),c(w)},e[33]=c,e[34]=x):x=e[34];let _;e[35]!==o||e[36]!==x?(_=n.jsx(xg,{open:o,onOpenChange:a,title:"Import a dev agent from GitHub",onImportComplete:x}),e[35]=o,e[36]=x,e[37]=_):_=e[37];let y;return e[38]!==_||e[39]!==m||e[40]!==p||e[41]!==b?(y=n.jsxs("div",{className:m,children:[p,b,_]}),e[38]=_,e[39]=m,e[40]=p,e[41]=b,e[42]=y):y=e[42],y}function C1(t){return n.jsx(Ye,{value:t.id,children:t.title},t.id)}function k1(){}const j1=/^[A-Za-z_][A-Za-z0-9_]*$/;function N1(t){const e={},s=t.split(/\r?\n/);for(let i=0;i<s.length;i++){let r=(s[i]??"").trim();if(!r||r.startsWith("#"))continue;r.startsWith("export ")&&(r=r.slice(7).trim());const o=r.indexOf("=");if(o<0)throw new Error(`Line ${i+1}: missing '='`);const a=r.slice(0,o).trim();if(!j1.test(a))throw new Error(`Line ${i+1}: invalid key "${a}"`);let l=r.slice(o+1).trim();l.length>=2&&(l.startsWith('"')&&l.endsWith('"')||l.startsWith("'")&&l.endsWith("'"))&&(l=l.slice(1,-1)),e[a]=l}return e}const E1=/^[A-Za-z0-9_.-]+$/;function T1(t){const e=H.c(14),{control:s,form:i,virtualMcpId:r,orgSlug:o}=t;let a,l;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx("div",{className:"flex items-baseline justify-between gap-2",children:n.jsx(_t,{className:"font-normal text-foreground",children:"Environment variables"})}),l=n.jsx("p",{className:"text-xs text-muted-foreground",children:"Injected into the sandbox on every start. Reference an org/user secret to keep values out of metadata; literals are stored inline."}),e[0]=a,e[1]=l):(a=e[0],l=e[1]);let h;e[2]!==s||e[3]!==i||e[4]!==o||e[5]!==r?(h=n.jsx(A1,{control:s,form:i,virtualMcpId:r,orgSlug:o}),e[2]=s,e[3]=i,e[4]=o,e[5]=r,e[6]=h):h=e[6];let c;e[7]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(gd,{className:"h-9 w-full"}),e[7]=c):c=e[7];let d;e[8]!==s||e[9]!==i?(d=n.jsx(Jt,{fallback:P1,children:n.jsx(P.Suspense,{fallback:c,children:n.jsx(D1,{control:s,form:i})})}),e[8]=s,e[9]=i,e[10]=d):d=e[10];let u;return e[11]!==h||e[12]!==d?(u=n.jsxs("div",{className:"space-y-2",children:[a,l,h,d]}),e[11]=h,e[12]=d,e[13]=u):u=e[13],u}function P1(t){const{error:e}=t;return n.jsx("div",{className:"rounded-md border border-destructive/40 bg-destructive/5 px-3 py-2 text-xs text-destructive",children:e?.message??"Failed to load secrets"})}function A1(t){const e=H.c(24),{control:s,form:i,virtualMcpId:r,orgSlug:o}=t,l=vi.useSession().data?.user?.id,h="metadata.runtime.env",c="metadata.sandboxMap";let d;e[0]!==i?(d=()=>JSON.stringify(rc(i.getValues(h))),e[0]=i,e[1]=d):d=e[1];const[u,f]=P.useState(d);let m;e[2]!==s?(m={control:s,name:h},e[2]=s,e[3]=m):m=e[3];const p=Th(m);let g;e[4]!==p?(g=JSON.stringify(rc(p)),e[4]=p,e[5]=g):g=e[5];const v=g,b=v!==u;let x;e[6]!==i?(x=i.getValues(c),e[6]=i,e[7]=x):x=e[7];const _=x;let y;e[8]!==_||e[9]!==l?(y=l?Object.keys(_?.[l]??{}):[],e[8]=_,e[9]=l,e[10]=y):y=e[10];const S=y,w=S.length>0,[j,E]=P.useState(!1);if(!b||!w)return null;let T;e[11]!==v||e[12]!==o||e[13]!==S||e[14]!==r?(T=async()=>{E(!0);const N=await Promise.allSettled(S.map(async B=>{const I=`/api/${encodeURIComponent(o)}/sandbox/${encodeURIComponent(r)}/${encodeURIComponent(B)}/setup/start`,M=await fetch(I,{method:"POST"});if(!M.ok){const O=await M.text().catch(()=>M.statusText);throw new Error(O||M.statusText)}}));E(!1);const L=N.filter(R1).length;L===0?(f(v),ae.success(S.length===1?"Restarted dev with new env":`Restarted ${S.length} branches with new env`)):ae.error(`Failed to restart ${L} of ${S.length} branch(es)`)},e[11]=v,e[12]=o,e[13]=S,e[14]=r,e[15]=T):T=e[15];const A=T;let R;e[16]===Symbol.for("react.memo_cache_sentinel")?(R=n.jsxs("div",{className:"flex min-w-0 items-center gap-2 text-amber-900 dark:text-amber-200",children:[n.jsx(Eh,{className:"size-3.5 shrink-0"}),n.jsx("span",{className:"truncate",children:"Your sandbox is running. Restart the dev script to apply the new env."})]}),e[16]=R):R=e[16];let k;e[17]!==j?(k=j?n.jsx(Ne,{className:"size-3.5 animate-spin"}):n.jsx(lr,{className:"size-3.5"}),e[17]=j,e[18]=k):k=e[18];const C=j?"Restarting…":"Restart dev";let D;return e[19]!==A||e[20]!==j||e[21]!==k||e[22]!==C?(D=n.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs dark:border-amber-900/40 dark:bg-amber-950/30",children:[R,n.jsxs(oe,{type:"button",variant:"outline",size:"sm",onClick:A,disabled:j,className:"shrink-0",children:[k,C]})]}),e[19]=A,e[20]=j,e[21]=k,e[22]=C,e[23]=D):D=e[23],D}function R1(t){return t.status==="rejected"}function D1(t){const e=H.c(48),{control:s,form:i}=t,r="metadata.runtime.env";let o;e[0]!==s?(o={control:s,name:r},e[0]=s,e[1]=o):o=e[1];const a=hm(o),{fields:l,append:h,remove:c}=a;let d;e[2]!==i?(d=(N,L)=>{i.setValue(`${r}.${N}`,L,{shouldDirty:!0,shouldTouch:!0})},e[2]=i,e[3]=d):d=e[3];const u=d,f=yg();let m;if(e[4]!==f){m=new Map;for(const N of f)m.set(N.id,N);e[4]=f,e[5]=m}else m=e[5];const[p,g]=P.useState(null);let v;e[6]!==h?(v=()=>{h({key:"",kind:"literal",value:""})},e[6]=h,e[7]=v):v=e[7];const b=v;let x;e[8]!==h||e[9]!==i?(x=async()=>{let N;try{N=await navigator.clipboard.readText()}catch{ae.error("Couldn't read clipboard");return}if(!N.trim()){ae.error("Clipboard is empty");return}let L;try{L=N1(N)}catch(z){const K=z;ae.error(K.message);return}const B=Object.entries(L);if(B.length===0){ae.error("Nothing to add");return}const I=i.getValues(r)??[],M=new Set;for(const z of I){const K=(z.key??"").trim();K&&M.add(K)}let O=0,F=0;for(const[z,K]of B){if(M.has(z)){F++;continue}h({key:z,kind:"literal",value:K}),M.add(z),O++}O===0&&F>0?ae.message(`All ${F} key${F===1?"":"s"} already exist`):ae.success(F>0?`Added ${O} var${O===1?"":"s"} (${F} already existed)`:`Added ${O} var${O===1?"":"s"}`)},e[8]=h,e[9]=i,e[10]=x):x=e[10];const _=x;let y;if(e[11]!==s||e[12]!==l||e[13]!==i||e[14]!==c||e[15]!==m||e[16]!==f||e[17]!==u){let N;e[19]!==s||e[20]!==i||e[21]!==c||e[22]!==m||e[23]!==f||e[24]!==u?(N=(L,B)=>n.jsx("li",{className:"rounded-md border border-border bg-background",children:n.jsx(I1,{index:B,control:s,form:i,onUpdateEntry:u,fieldPath:r,secrets:f,secretById:m,onSaveAsSecret:(I,M)=>g({kind:"save-literal",index:B,presetKey:I,presetValue:M}),onCreateNewSecret:I=>g({kind:"create-new",index:B,presetKey:I}),onRemove:()=>c(B)})},L.id),e[19]=s,e[20]=i,e[21]=c,e[22]=m,e[23]=f,e[24]=u,e[25]=N):N=e[25],y=l.map(N),e[11]=s,e[12]=l,e[13]=i,e[14]=c,e[15]=m,e[16]=f,e[17]=u,e[18]=y}else y=e[18];let S;e[26]!==y?(S=n.jsx("ul",{className:"space-y-2",children:y}),e[26]=y,e[27]=S):S=e[27];let w;e[28]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(Bt,{className:"size-3.5"}),e[28]=w):w=e[28];let j;e[29]!==b?(j=n.jsxs(oe,{type:"button",variant:"outline",size:"sm",onClick:b,className:"flex-1",children:[w,"Add env var"]}),e[29]=b,e[30]=j):j=e[30];let E;e[31]===Symbol.for("react.memo_cache_sentinel")?(E=n.jsx(Ap,{className:"size-3.5"}),e[31]=E):E=e[31];let T;e[32]!==_?(T=n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{type:"button",variant:"outline",size:"sm",onClick:_,"aria-label":"Paste .env",children:[E,"Paste .env"]})}),e[32]=_,e[33]=T):T=e[33];let A;e[34]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsx(ke,{children:"Read a .env blob from the clipboard. Each pair is staged as a literal — save individual rows as secrets after."}),e[34]=A):A=e[34];let R;e[35]!==T?(R=n.jsxs(je,{children:[T,A]}),e[35]=T,e[36]=R):R=e[36];let k;e[37]!==R||e[38]!==j?(k=n.jsxs("div",{className:"flex items-center gap-2",children:[j,R]}),e[37]=R,e[38]=j,e[39]=k):k=e[39];let C;e[40]!==p||e[41]!==i||e[42]!==u?(C=p!==null?n.jsx(M1,{mode:p,onClose:()=>g(null),onSaved:N=>{const L=i.getValues(`${r}.${p.index}.key`)?.trim()??"";u(p.index,{key:L,kind:"secret",secretId:N}),g(null)}}):null,e[40]=p,e[41]=i,e[42]=u,e[43]=C):C=e[43];let D;return e[44]!==k||e[45]!==C||e[46]!==S?(D=n.jsxs("div",{className:"space-y-2",children:[S,k,C]}),e[44]=k,e[45]=C,e[46]=S,e[47]=D):D=e[47],D}function I1(t){const e=H.c(55),{index:s,control:i,form:r,onUpdateEntry:o,fieldPath:a,secrets:l,secretById:h,onSaveAsSecret:c,onCreateNewSecret:d,onRemove:u}=t,f=`${a}.${s}.key`,m=`${a}.${s}.value`,p=`${a}.${s}.secretId`,g=`${a}.${s}.kind`;let v;e[0]!==i||e[1]!==g?(v={control:i,name:g},e[0]=i,e[1]=g,e[2]=v):v=e[2];const x=Th(v)==="secret"?"secret":"literal";let _;e[3]!==r||e[4]!==s||e[5]!==f||e[6]!==c||e[7]!==o||e[8]!==m?(_=O=>{const F=r.getValues(f)?.trim()??"";if(O==="literal"){o(s,{key:F,kind:"literal",value:""});return}const z=r.getValues(m)??"";if(z.length>0){c(F,z);return}o(s,{key:F,kind:"secret",secretId:""})},e[3]=r,e[4]=s,e[5]=f,e[6]=c,e[7]=o,e[8]=m,e[9]=_):_=e[9];const y=_;let S;e[10]!==s?(S=O=>{const{field:F}=O,z=(F.value??"").trim(),K=z.length>0&&!kn.test(z);return n.jsxs("div",{className:"space-y-1",children:[n.jsx(tt,{...F,value:F.value??"",placeholder:"KEY",spellCheck:!1,autoComplete:"off",autoCapitalize:"off",autoCorrect:"off",className:le("font-mono",K&&"border-destructive focus-visible:ring-destructive"),"aria-invalid":K,"aria-label":`Env var ${s+1} key`,onBlur:G=>{const X=G.target.value.trim();F.onChange(X),F.onBlur()}}),K?n.jsx("p",{className:"text-[11px] text-destructive",children:"Letters, digits, underscores. Must start with a letter or underscore."}):null]})},e[10]=s,e[11]=S):S=e[11];let w;e[12]!==i||e[13]!==f||e[14]!==S?(w=n.jsx("div",{className:"flex-1 min-w-0",children:n.jsx(Dt,{control:i,name:f,render:S})}),e[12]=i,e[13]=f,e[14]=S,e[15]=w):w=e[15];let j;e[16]!==y?(j=O=>y(O),e[16]=y,e[17]=j):j=e[17];let E;e[18]===Symbol.for("react.memo_cache_sentinel")?(E=n.jsx(jt,{className:"h-9 w-[110px]",children:n.jsx(Lt,{})}),e[18]=E):E=e[18];let T;e[19]===Symbol.for("react.memo_cache_sentinel")?(T=n.jsx(Ye,{value:"literal",children:n.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[n.jsx(Oa,{className:"size-3.5"}),"Literal"]})}),e[19]=T):T=e[19];let A;e[20]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsxs(Nt,{children:[T,n.jsx(Ye,{value:"secret",children:n.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[n.jsx(dm,{className:"size-3.5"}),"Secret"]})})]}),e[20]=A):A=e[20];let R;e[21]!==x||e[22]!==j?(R=n.jsx("div",{className:"shrink-0",children:n.jsxs(Et,{value:x,onValueChange:j,children:[E,A]})}),e[21]=x,e[22]=j,e[23]=R):R=e[23];let k;e[24]!==i||e[25]!==r||e[26]!==s||e[27]!==f||e[28]!==x||e[29]!==d||e[30]!==h||e[31]!==p||e[32]!==l||e[33]!==m?(k=n.jsx("div",{className:"flex flex-[2] min-w-0 items-center gap-1",children:x==="literal"?n.jsx(Dt,{control:i,name:m,render:O=>{const{field:F}=O;return n.jsx(tt,{...F,value:F.value??"",type:"password",placeholder:"value",spellCheck:!1,autoComplete:"off",className:"font-mono","aria-label":`Env var ${s+1} value`,onBlur:z=>{F.onChange(z.target.value),F.onBlur()}})}}):n.jsxs(n.Fragment,{children:[n.jsx(Dt,{control:i,name:p,render:O=>{const{field:F}=O;return n.jsxs(Et,{value:F.value||"",onValueChange:z=>F.onChange(z),children:[n.jsx(jt,{className:le("h-9 w-full",!F.value&&"text-muted-foreground"),children:n.jsx(Lt,{placeholder:"Pick a secret…",children:n.jsx(B1,{field:F,secretById:h})})}),n.jsx(Nt,{children:l.length===0?n.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:"No secrets yet. Use the “+” to create one."}):l.map(L1)})]})}}),n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon","aria-label":"Create new secret",onClick:()=>{const O=r.getValues(f)?.trim()??"";d(O)},children:n.jsx(Bt,{className:"size-3.5"})})}),n.jsx(ke,{children:"Create new secret"})]})]})}),e[24]=i,e[25]=r,e[26]=s,e[27]=f,e[28]=x,e[29]=d,e[30]=h,e[31]=p,e[32]=l,e[33]=m,e[34]=k):k=e[34];let C;e[35]!==r||e[36]!==f||e[37]!==x||e[38]!==c||e[39]!==m?(C=x==="literal"?n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon","aria-label":"Save value as secret",onClick:()=>{const O=r.getValues(f)?.trim()??"",F=r.getValues(m)??"";c(O,F)},children:n.jsx(Rp,{className:"size-3.5"})})}),n.jsx(ke,{children:"Save value as secret"})]}):null,e[35]=r,e[36]=f,e[37]=x,e[38]=c,e[39]=m,e[40]=C):C=e[40];let D;e[41]===Symbol.for("react.memo_cache_sentinel")?(D=n.jsx(Ks,{className:"size-3.5"}),e[41]=D):D=e[41];let N;e[42]!==u?(N=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon","aria-label":"Remove env var",onClick:u,children:D})}),e[42]=u,e[43]=N):N=e[43];let L;e[44]===Symbol.for("react.memo_cache_sentinel")?(L=n.jsx(ke,{children:"Remove"}),e[44]=L):L=e[44];let B;e[45]!==N?(B=n.jsxs(je,{children:[N,L]}),e[45]=N,e[46]=B):B=e[46];let I;e[47]!==C||e[48]!==B?(I=n.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[C,B]}),e[47]=C,e[48]=B,e[49]=I):I=e[49];let M;return e[50]!==k||e[51]!==I||e[52]!==w||e[53]!==R?(M=n.jsxs("div",{className:"flex flex-col gap-2 p-2 sm:flex-row sm:items-center",children:[w,R,k,I]}),e[50]=k,e[51]=I,e[52]=w,e[53]=R,e[54]=M):M=e[54],M}function L1(t){return n.jsx(Ye,{value:t.id,children:n.jsxs("span",{className:"inline-flex items-center gap-2",children:[n.jsx(Zd,{scope:t.scope}),n.jsx("span",{className:"font-mono",children:t.name})]})},t.id)}function B1(t){const e=H.c(12),{field:s,secretById:i}=t,r=s.value||"";if(!r)return null;let o;e[0]!==r||e[1]!==i?(o=i.get(r),e[0]=r,e[1]=i,e[2]=o):o=e[2];const a=o;if(!a){let d;return e[3]!==r?(d=n.jsxs("span",{className:"text-destructive",children:["Missing secret (",r,")"]}),e[3]=r,e[4]=d):d=e[4],d}let l;e[5]!==a.scope?(l=n.jsx(Zd,{scope:a.scope}),e[5]=a.scope,e[6]=l):l=e[6];let h;e[7]!==a.name?(h=n.jsx("span",{className:"truncate font-mono",children:a.name}),e[7]=a.name,e[8]=h):h=e[8];let c;return e[9]!==l||e[10]!==h?(c=n.jsxs("span",{className:"inline-flex items-center gap-1.5 truncate",children:[l,h]}),e[9]=l,e[10]=h,e[11]=c):c=e[11],c}function Zd(t){const e=H.c(2),{scope:s}=t,i=s==="user"?bg:Dn;let r;return e[0]!==i?(r=n.jsx(i,{className:"size-3 text-muted-foreground"}),e[0]=i,e[1]=r):r=e[1],r}function M1({mode:t,onClose:e,onSaved:s}){const i=t.kind==="save-literal"?t.presetValue:"",r=t.presetKey,[o,a]=P.useState(()=>O1(r)),[l,h]=P.useState("organization"),[c,d]=P.useState(i),[u,f]=P.useState(""),m=Sg(),p=o.trim(),g=c.length>0&&p.length>0&&E1.test(p),v=async _=>{if(_.preventDefault(),!!g)try{const y=await m.mutateAsync({scope:l,name:p,value:c,description:u.trim()||void 0});ae.success(`Saved secret "${y.name}"`),s(y.id)}catch(y){ae.error(y instanceof Error?y.message:"Failed to save")}},b=t.kind==="save-literal"?"Save value as secret":"Create new secret",x=t.kind==="save-literal"?"Move this value into the encrypted vault. The env var will then reference the secret by id — its value never leaves the server.":"Stored encrypted in the credential vault. The env var will reference the new secret by id.";return n.jsx(Kt,{open:!0,onOpenChange:_=>{_||e()},children:n.jsxs(Vt,{className:"sm:max-w-md",children:[n.jsxs(fs,{children:[n.jsx(ms,{children:b}),n.jsx(Rn,{children:x})]}),n.jsxs("form",{onSubmit:v,className:"space-y-4",children:[n.jsxs("div",{className:"space-y-1.5",children:[n.jsx(_t,{htmlFor:"save-secret-scope",children:"Scope"}),n.jsxs(Et,{value:l,onValueChange:_=>h(_),children:[n.jsx(jt,{id:"save-secret-scope",children:n.jsx(Lt,{})}),n.jsxs(Nt,{children:[n.jsx(Ye,{value:"organization",children:"Organization — visible to all members"}),n.jsx(Ye,{value:"user",children:"Private — only visible to me"})]})]})]}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsx(_t,{htmlFor:"save-secret-name",children:"Name"}),n.jsx(tt,{id:"save-secret-name",value:o,onChange:_=>a(_.target.value),placeholder:"STRIPE_API_KEY",autoComplete:"off",required:!0}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"Letters, digits, underscore, dot, hyphen. Independent of the env var key."})]}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsx(_t,{htmlFor:"save-secret-value",children:"Value"}),n.jsx(tt,{id:"save-secret-value",type:"password",value:c,onChange:_=>d(_.target.value),placeholder:"secret value",autoComplete:"new-password",required:!0})]}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsx(_t,{htmlFor:"save-secret-description",children:"Description (optional)"}),n.jsx(Jr,{id:"save-secret-description",value:u,onChange:_=>f(_.target.value),rows:2,placeholder:"What is this secret used for?"})]}),n.jsxs(Qs,{children:[n.jsx(oe,{type:"button",variant:"outline",onClick:e,disabled:m.isPending,children:"Cancel"}),n.jsx(oe,{type:"submit",disabled:!g||m.isPending,children:m.isPending?"Saving…":"Save secret"})]})]})]})})}function rc(t){if(!Array.isArray(t))return[];const e=[];for(const s of t){if(!s||typeof s!="object")continue;const i=s,r=(i.key??"").trim();if(!(!r||!kn.test(r))){if(i.kind==="literal"){e.push({key:r,kind:"literal",value:i.value??""});continue}i.kind==="secret"&&i.secretId&&e.push({key:r,kind:"secret",secretId:i.secretId})}}return e}function O1(t){const e=t.trim();return e&&kn.test(e)?e:""}function $1(t){const e=H.c(12),{repo:s,className:i}=t;let r;e[0]!==i?(r=le("space-y-2",i),e[0]=i,e[1]=r):r=e[1];let o;e[2]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx(_t,{children:"Repository"}),e[2]=o):o=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(pd,{size:20,className:"shrink-0 text-foreground/60"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=n.jsx(Ce,{asChild:!0,children:n.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-border bg-background px-4 py-3",tabIndex:0,children:[a,n.jsx("div",{className:"min-w-0 flex-1",children:s?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"truncate text-sm font-medium",children:[s.owner,"/",s.name]}),n.jsx("div",{className:"truncate text-xs text-muted-foreground",children:s.url})]}):n.jsx("div",{className:"text-sm text-muted-foreground",children:"No repository connected"})})]})}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(ke,{children:"The connected GitHub repository for this agent. Manage in Connections."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=n.jsxs(je,{children:[l,h]}),e[7]=l,e[8]=c):c=e[8];let d;return e[9]!==r||e[10]!==c?(d=n.jsxs("div",{className:r,children:[o,c]}),e[9]=r,e[10]=c,e[11]=d):d=e[11],d}const z1={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"}};function F1(t){const e=t.trim();if(e==="")return{ok:!0,value:null};if(!/^\d+$/.test(e))return{ok:!1};const s=Number(e);return s<1||s>65535?{ok:!1}:{ok:!0,value:String(s)}}const H1=Object.keys(z1),Xn="__none__";function W1(t){const e=H.c(20),{control:s}=t,i=P.useRef(null);let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx(_t,{htmlFor:"runtime-pm",children:"Package manager"}),e[0]=r):r=e[0];let o;e[1]!==s?(o=n.jsxs("div",{className:"space-y-2",children:[r,n.jsx(Dt,{control:s,name:"metadata.runtime.selected",render:K1})]}),e[1]=s,e[2]=o):o=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(_t,{htmlFor:"runtime-path",children:"Package path"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=n.jsx(Dt,{control:s,name:"metadata.runtime.path",render:U1}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx("p",{className:"text-xs text-muted-foreground",children:"Path (relative to repo root) to the directory containing package.json. Leave blank for the repo root."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=n.jsxs("div",{className:"space-y-2",children:[a,l,h]}),e[7]=l,e[8]=c):c=e[8];let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(_t,{htmlFor:"runtime-port",children:"Dev server port"}),e[9]=d):d=e[9];let u;e[10]===Symbol.for("react.memo_cache_sentinel")?(u=v=>{const{field:b}=v;return n.jsx(tt,{ref:i,id:"runtime-port",inputMode:"numeric",placeholder:"Auto",defaultValue:b.value??"",onBlur:x=>{const _=F1(x.target.value);_.ok?b.onChange(_.value):i.current&&(i.current.value=b.value??"")}})},e[10]=u):u=e[10];let f;e[11]!==s?(f=n.jsx(Dt,{control:s,name:"metadata.runtime.port",render:u}),e[11]=s,e[12]=f):f=e[12];let m;e[13]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx("p",{className:"text-xs text-muted-foreground",children:"Leave blank to let the runner pick."}),e[13]=m):m=e[13];let p;e[14]!==f?(p=n.jsxs("div",{className:"space-y-2",children:[d,f,m]}),e[14]=f,e[15]=p):p=e[15];let g;return e[16]!==p||e[17]!==o||e[18]!==c?(g=n.jsxs("div",{className:"space-y-5",children:[o,c,p]}),e[16]=p,e[17]=o,e[18]=c,e[19]=g):g=e[19],g}function U1(t){const{field:e}=t;return n.jsx(tt,{id:"runtime-path",placeholder:".",defaultValue:e.value??"",onBlur:s=>{const i=s.target.value.trim();e.onChange(i===""?null:i)}})}function K1(t){const{field:e}=t;return n.jsxs(Et,{value:e.value??Xn,onValueChange:s=>e.onChange(s===Xn?null:s),children:[n.jsx(jt,{id:"runtime-pm",children:n.jsx(Lt,{placeholder:"Auto-detect"})}),n.jsxs(Nt,{children:[n.jsx(Ye,{value:Xn,children:"Auto-detect"}),H1.map(V1)]})]})}function V1(t){return n.jsx(Ye,{value:t,children:t},t)}function q1(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 G1(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0,instructionsLength:null},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1,instructionsLength:e.instructionsLength??s.instructionsLength}}case"reset":return null}}function Y1(t){const e=t.metadata?.runtime?.env;if(!e||e.length===0)return t;const s=e.filter(i=>{if(!i||typeof i!="object")return!1;const r=(i.key??"").trim();return!r||!kn.test(r)?!1:i.kind==="literal"?!0:i.kind==="secret"?!!i.secretId:!1});return s.length===e.length?t:{...t,metadata:{...t.metadata,runtime:{...t.metadata?.runtime??{},env:s}}}}function X1(t){const e=H.c(23),{connection_id:s,usedConnectionIds:i,onOpenSettings:r,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}=t,c=Da(s),{org:d}=Re();if(!c)return null;let u;e[0]!==c?(u=dg(c),e[0]=c,e[1]=u):u=e[1];const f=u;let m;e[2]!==s?(m=n.jsx(ex,{connection_id:s}),e[2]=s,e[3]=m):m=e[3];let p;e[4]!==c.app_name||e[5]!==c.connection_type||e[6]!==c.description||e[7]!==c.icon||e[8]!==c.status||e[9]!==c.title||e[10]!==s||e[11]!==a||e[12]!==h||e[13]!==r||e[14]!==o||e[15]!==l||e[16]!==d.slug||e[17]!==f||e[18]!==i?(p=n.jsx(Q1,{connection_id:s,connectionTitle:c.title,connectionDescription:c.description,connectionIcon:c.icon,connectionType:c.connection_type,connectionStatus:c.status,slug:f,orgSlug:d.slug,appName:c.app_name,usedConnectionIds:i,onOpenSettings:r,onRemove:o,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}),e[4]=c.app_name,e[5]=c.connection_type,e[6]=c.description,e[7]=c.icon,e[8]=c.status,e[9]=c.title,e[10]=s,e[11]=a,e[12]=h,e[13]=r,e[14]=o,e[15]=l,e[16]=d.slug,e[17]=f,e[18]=i,e[19]=p):p=e[19];let g;return e[20]!==m||e[21]!==p?(g=n.jsx(P.Suspense,{fallback:m,children:p}),e[20]=m,e[21]=p,e[22]=g):g=e[22],g}const nc="__new_instance__";async function J1(t,e){const s=t?.idToken??null;if(s){const r=oc(s);if(r)return r}const i=t?.userinfoEndpoint??null;if(i)try{const r=await fetch(i,{headers:{Authorization:`Bearer ${e}`}});if(r.ok){const o=await r.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 oc(e)}function oc(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 Z1(t){const e=H.c(23),{appName:s,connectionId:i,usedConnectionIds:r,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 h=yr(l);if(h.length<=1)return null;let c;e[2]!==i||e[3]!==a||e[4]!==o?(c=g=>{g===nc?a?.():o(i,g)},e[2]=i,e[3]=a,e[4]=o,e[5]=c):c=e[5];let d;e[6]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(jt,{size:"sm",className:"w-auto text-xs gap-1 px-2 shadow-none",children:n.jsx(Lt,{})}),e[6]=d):d=e[6];let u;if(e[7]!==i||e[8]!==h||e[9]!==r){let g;e[11]!==i||e[12]!==r?(g=v=>n.jsx(Ye,{value:v.id,className:"text-xs",disabled:v.id!==i&&r.has(v.id),children:v.title},v.id),e[11]=i,e[12]=r,e[13]=g):g=e[13],u=h.map(g),e[7]=i,e[8]=h,e[9]=r,e[10]=u}else u=e[10];let f;e[14]!==a?(f=a&&n.jsx(Ye,{value:nc,className:"text-xs text-muted-foreground",children:"+ New instance"}),e[14]=a,e[15]=f):f=e[15];let m;e[16]!==u||e[17]!==f?(m=n.jsxs(Nt,{children:[u,f]}),e[16]=u,e[17]=f,e[18]=m):m=e[18];let p;return e[19]!==i||e[20]!==c||e[21]!==m?(p=n.jsxs(Et,{value:i,onValueChange:c,children:[d,m]}),e[19]=i,e[20]=c,e[21]=m,e[22]=p):p=e[22],p}function Q1({connection_id:t,connectionTitle:e,connectionDescription:s,connectionIcon:i,connectionType:r,connectionStatus:o,slug:a,orgSlug:l,appName:h,usedConnectionIds:c,onOpenSettings:d,onRemove:u,onAuthenticate:f,onSwitchInstance:m,onNewInstance:p}){const g=hd({connectionId:t}),v=id(),x=!(r==="VIRTUAL")&&g.supportsOAuth&&!g.isAuthenticated,_=o!=="active",y=async S=>{try{await v.update.mutateAsync({id:t,data:{status:S}}),ae.success(S==="active"?"Connection enabled":"Connection disabled")}catch{ae.error("Failed to update connection")}};return n.jsxs("div",{className:le("rounded-xl border overflow-hidden transition-colors",x||_?"border-destructive/50 bg-destructive/5":"border-border bg-card"),children:[n.jsxs(fm,{to:"/$org/settings/connections/$appSlug",params:{org:l,appSlug:a},className:"flex items-center gap-3 px-4 py-3 cursor-pointer hover:bg-muted/50 transition-colors",children:[n.jsx(us,{icon:i,name:e,size:"sm",className:"shrink-0"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("p",{className:"text-sm font-medium truncate",children:e}),x?n.jsx("span",{className:"text-xs text-destructive font-medium",children:"Needs authorization"}):_?n.jsx("span",{className:"text-xs text-destructive font-medium",children:o==="error"?"Disabled (error)":"Disabled"}):s&&n.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s})]}),x?n.jsx(oe,{variant:"outline",size:"sm",className:"h-7 text-xs shrink-0",onClick:S=>{S.preventDefault(),S.stopPropagation(),f(t)},children:"Authorize"}):_?n.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 text-xs gap-1.5 shrink-0",onClick:S=>{S.preventDefault(),S.stopPropagation(),y("active")},children:[n.jsx(Ip,{size:13}),"Enable"]}):n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.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:n.jsx(ug,{size:16})})}),n.jsx(ke,{side:"bottom",children:"Connection settings"})]})]}),n.jsxs("div",{className:"flex items-center gap-3 px-4 py-2 border-t border-border bg-muted/25",children:[h&&n.jsx(Z1,{appName:h,connectionId:t,usedConnectionIds:c,onSwitchInstance:m,onNewInstance:p}),n.jsxs("div",{className:"flex items-center gap-0.5 ml-auto",children:[n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:d,"aria-label":"Configure resources",children:n.jsx(Lp,{size:13})})}),n.jsx(ke,{side:"bottom",children:"Configure resources"})]}),!_&&n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground",onClick:()=>y("inactive"),"aria-label":"Disable connection",children:n.jsx(Bp,{size:13})})}),n.jsx(ke,{side:"bottom",children:"Disable"})]}),n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-destructive",onClick:u,"aria-label":"Remove connection",children:n.jsx(Ps,{size:13})})}),n.jsx(ke,{side:"bottom",children:"Remove"})]})]})]})]})}function ex(t){const e=H.c(17),{connection_id:s}=t,i=Da(s);if(!i){let u;return e[0]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(Qd,{}),e[0]=u):u=e[0],u}let r;e[1]!==i.icon||e[2]!==i.title?(r=n.jsx(us,{icon:i.icon,name:i.title,size:"sm",className:"shrink-0"}),e[1]=i.icon,e[2]=i.title,e[3]=r):r=e[3];let o;e[4]!==i.title?(o=n.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&&n.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=n.jsxs("div",{className:"flex-1 min-w-0",children:[o,a]}),e[8]=o,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==r||e[12]!==l?(h=n.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[r,l]}),e[11]=r,e[12]=l,e[13]=h):h=e[13];let c;e[14]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:n.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})}),e[14]=c):c=e[14];let d;return e[15]!==h?(d=n.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[h,c]}),e[15]=h,e[16]=d):d=e[16],d}function Qd(){const t=H.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.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=n.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[e,n.jsxs("div",{className:"flex-1 space-y-1.5",children:[n.jsx("div",{className:"h-4 w-32 rounded bg-muted animate-pulse"}),n.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=n.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[s,n.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:n.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})})]}),t[2]=i):i=t[2],i}function tx({virtualMcpId:t,form:e,flushAndSave:s}){const i=bi(),r=ds(t),o=(r?.connections??[]).map(k=>k.connection_id).sort(),{data:a}=As({queryKey:Tt.projectConnectionDetails(t,o),enabled:o.length>0,queryFn:async()=>await Promise.all(o.map(async C=>{try{const{item:D}=await i.call("COLLECTION_CONNECTIONS_GET",{id:C}),N=(D?.tools??[]).flatMap(L=>{const B=od(L._meta);return B?[{name:L.name,title:L.title,description:L.description,resourceUri:B}]:[]});return{fetchOk:!0,id:C,title:D?.title??C,icon:D?.icon??null,uiTools:N}}catch{return{fetchOk:!1,id:C,title:C,icon:null,uiTools:[]}}}))}),l=(a??[]).filter(k=>k.uiTools.length>0),h=new Set(np),c=e.watch("metadata.ui.pinnedViews")??[],d=e.watch("metadata.ui.layout")??null,u=d?.defaultMainView??null,f=d?.chatDefaultOpen??!1,m=!u||u.type==="chat"?"chat":u.type==="instructions"||u.type==="connections"||u.type==="layout"?"settings":h.has(u.type)?u.type:`${u.type}:${u.id??""}:${u.toolName??""}`,p=k=>{const[C,D,N]=k.split(":");return C?C==="chat"?{type:C}:h.has(C)?{type:C}:C==="ext-apps"&&D?{type:"ext-apps",id:D,toolName:N||void 0}:null:null},g=k=>{e.setValue("metadata.ui.pinnedViews",k,{shouldDirty:!0})},v=k=>{e.setValue("metadata.ui.layout",{...d,...k},{shouldDirty:!0})},b=P.useRef(!1);if(a&&a.length>0&&!b.current){b.current=!0;const k=new Set((a??[]).filter(N=>N.fetchOk).map(N=>N.id)),C=new Set(l.flatMap(N=>N.uiTools.map(L=>`${N.id}:${L.name}`))),D=c.filter(N=>!k.has(N.connectionId)||C.has(`${N.connectionId}:${N.toolName}`));D.length!==c.length&&(g(D),u?.type==="ext-apps"&&!D.some(N=>N.connectionId===u.id&&N.toolName===u.toolName)&&v({defaultMainView:{type:"chat"}}))}const x=(k,C)=>{if(c.some(N=>N.connectionId===k&&N.toolName===C)){const N=c.filter(B=>!(B.connectionId===k&&B.toolName===C));g(N);const L=`ext-apps:${k}:${C}`;m===L&&v({defaultMainView:{type:"chat"}})}else{const N=l.find(L=>L.id===k)?.uiTools.find(L=>L.name===C)?.title;g([...c,{connectionId:k,toolName:C,label:N??yo(C),icon:null}])}s()},_=(k,C,D)=>{g(c.map(N=>N.connectionId===k&&N.toolName===C?{...N,label:D}:N))},y=()=>{s()},S=(k,C,D)=>{g(c.map(N=>N.connectionId===k&&N.toolName===C?{...N,icon:D}:N)),s()},w=k=>{v({defaultMainView:p(k)}),s()},j=o.length===0,E=a&&l.length===0,T=Us(r?.metadata),A=[{value:"chat",label:"Chat"},{value:"settings",label:"Settings"},{value:"automations",label:"Automations"}];T&&A.push({value:"preview",label:"Preview"});for(const k of c)A.push({value:`ext-apps:${k.connectionId}:${k.toolName}`,label:k.label||k.toolName});const R=l.length>0||j||E;return n.jsxs("div",{className:"flex flex-col gap-3",children:[n.jsx("div",{className:"flex items-center justify-between gap-3",children:n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Layout"})}),n.jsxs(Ma,{className:"p-6 gap-5",children:[n.jsxs(an,{className:"p-0 space-y-5",children:[n.jsxs("div",{className:"flex items-center justify-between gap-4",children:[n.jsxs("div",{className:"space-y-0.5 min-w-0",children:[n.jsx(_t,{className:"font-normal text-foreground",children:"Main view"}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"What users see when they first open this agent."})]}),n.jsxs(Et,{value:m,onValueChange:w,children:[n.jsx(jt,{className:"w-44 h-8 text-sm capitalize shrink-0",children:n.jsx(Lt,{})}),n.jsx(Nt,{children:A.map(k=>n.jsx(Ye,{value:k.value,className:"capitalize",children:k.label},k.value))})]})]}),n.jsxs("div",{className:"flex items-center justify-between gap-4",children:[n.jsxs("div",{className:"space-y-0.5 min-w-0",children:[n.jsx(_t,{className:"font-normal text-foreground",children:"Show chat"}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"Display the chat panel alongside the main view."})]}),n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.jsx("span",{className:"shrink-0",children:n.jsx(ln,{checked:m==="chat"?!0:f,disabled:m==="chat",onCheckedChange:k=>{v({chatDefaultOpen:k}),s()}})})}),m==="chat"&&n.jsx(ke,{side:"top",children:"Chat is always shown when it is the default view"})]})]})]}),R&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"border-t border-border -mx-6"}),n.jsxs(an,{className:"p-0 space-y-3",children:[n.jsx("div",{className:"flex items-center justify-between gap-4",children:n.jsxs("div",{className:"space-y-0.5 min-w-0",children:[n.jsx(_t,{className:"font-normal text-foreground",children:"Pinned views"}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"Surface interactive tools as top-level tabs in the agent."})]})}),j&&n.jsx("p",{className:"text-xs text-muted-foreground",children:"Add a connection above to configure pinned views."}),E&&!j&&n.jsx("p",{className:"text-xs text-muted-foreground",children:"None of the connected servers expose interactive tools."}),l.length>0&&n.jsx("div",{className:"space-y-4 pt-1",children:l.map((k,C)=>n.jsxs("div",{children:[C>0&&n.jsx("div",{className:"border-t border-border -mx-6 mb-4"}),n.jsxs("div",{className:"flex items-center gap-2 mb-2.5",children:[n.jsx(us,{icon:k.icon,name:k.title,size:"xs",className:"shrink-0"}),n.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:k.title})]}),n.jsx("div",{className:"space-y-1.5",children:k.uiTools.map(D=>{const N=c.some(B=>B.connectionId===k.id&&B.toolName===D.name),L=c.find(B=>B.connectionId===k.id&&B.toolName===D.name);return n.jsxs("div",{className:le("flex items-center justify-between gap-3 px-3 py-2 rounded-lg border transition-colors",N?"bg-accent/40 border-border":"bg-transparent border-border"),children:[n.jsxs("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[n.jsx(Mv,{value:L?.icon??null,onChange:B=>S(k.id,D.name,B),disabled:!N}),n.jsx(tt,{value:N&&L?L.label:D.title??yo(D.name),onChange:B=>_(k.id,D.name,B.target.value),onBlur:y,className:"h-7 text-sm w-40",disabled:!N,readOnly:!N})]}),n.jsx(ln,{checked:N,onCheckedChange:()=>x(k.id,D.name)})]},D.name)})})]},k.id))})]})]})]})]})}function sx({virtualMcp:t,hideOwnTitle:e}){const{org:s}=Re(),i=Lh(),{data:r}=Pm([t.id]),o=r?.get(t.id)?.last_used_at,a=id(),l=Gs(),h=bi(),c=Ph({resolver:um(h1),defaultValues:t}),d=c.watch("connections"),u=zh(t),f=xr(t),m=f?{owner:f.owner,name:f.name,url:f.url}:null,[p,g]=P.useReducer(q1,{shareDialogOpen:!1,addDialogOpen:!1,settingsDialogOpen:!1,settingsConnectionId:null}),[v,b]=P.useState(!1),[x,_]=P.useState(!1),{createNewTask:y,setChatOpen:S}=ja(),{sendMessage:w}=Ys(),j=async()=>{if(x)return;const $=c.getValues("metadata.instructions");if($?.trim()){_(!0);try{C(),Ie("agent_instructions_improve_clicked",{agent_id:t.id,instructions_length:$.length}),S(!0),await w({tiptapDoc:Yd({managerAgentId:$h.AGENT_MANAGER(s.id),managerName:"Agent Manager",kind:"agent",id:t.id,instructions:$})})}finally{_(!1)}}},E=()=>{C(),Ie("agent_test_clicked",{agent_id:t.id}),y()},[T,A]=P.useReducer(G1,null),R=()=>{T!==null&&(Ie("agent_updated",{agent_id:t.id,fields:Array.from(T.fields),instructions_length:T.instructionsLength,save_count:T.saveCount,edit_duration_ms:Date.now()-T.start}),A({type:"reset"}))},{schedule:k,flush:C}=cn({delayMs:3e4,save:async()=>R()}),D=async()=>{const $=Object.keys(c.control._formState.dirtyFields);if($.length===0)return;const Z=$.includes("metadata"),U=c.getValues();c.reset(U,{keepValues:!0});const ee=Y1(U);await i.update.mutateAsync({id:t.id,data:ee}),A({type:"accumulate",now:Date.now(),fields:$,instructionsLength:Z?U.metadata?.instructions?.length??0:null}),k()},{schedule:N,flush:L}=cn({save:D});P.useEffect(()=>{const $=c.watch(()=>N());return()=>$.unsubscribe()},[]);const B=()=>{Ie("connections_dialog_opened",{source:"agent_settings",mode:"add"}),g({type:"SET_ADD_DIALOG_OPEN",payload:!0})},I=async $=>{const Z=c.getValues("connections");if(Z.some(Q=>Q.connection_id===$))return;c.setValue("connections",[...Z,{connection_id:$,selected_tools:Yn.tools,selected_resources:Yn.resources,selected_prompts:Yn.prompts}],{shouldDirty:!0}),g({type:"SET_ADD_DIALOG_OPEN",payload:!1});const U=new URL(`/api/${s.slug}/mcp/${$}`,window.location.origin),ee=await Hl({url:U.href,token:null,orgId:s.id});ee.supportsOAuth&&!ee.isAuthenticated&&await K($)},M=$=>{const U=c.getValues("connections").filter(ee=>ee.connection_id!==$);c.setValue("connections",U,{shouldDirty:!0})},O=($,Z)=>{const U=c.getValues("connections");if(U.some(ee=>ee.connection_id===Z)){ae.error("This instance is already added to the agent");return}c.setValue("connections",U.map(ee=>ee.connection_id===$?{...ee,connection_id:Z}:ee),{shouldDirty:!0})},F=async $=>{if(c.getValues("connections").find(U=>U.connection_id===$))try{const{item:U}=await h.call("COLLECTION_CONNECTIONS_GET",{id:$});if(!U)return;const ee=U.title.replace(/\s*\(.*?\)\s*$/,""),Q=og("conn"),fe=`${ee} (${Date.now().toString(36).slice(-4)})`;await a.create.mutateAsync({id:Q,title:fe,description:U.description??null,connection_type:U.connection_type,connection_url:U.connection_url??null,connection_token:null,icon:U.icon??null,app_name:U.app_name??null,app_id:U.app_id??null,connection_headers:U.connection_headers??null});const me=new URL(`/api/${s.slug}/mcp/${Q}`,window.location.origin),ve=await Hl({url:me.href,token:null,orgId:s.id});if(ve.supportsOAuth&&!ve.isAuthenticated){const J=await K(Q);if(!J){await a.delete.mutateAsync(Q);return}await a.update.mutateAsync({id:Q,data:{title:`${ee} (${J})`}})}O($,Q),ae.success("New instance created")}catch(U){console.error("Failed to create instance:",U),ae.error("Failed to create instance")}},z=$=>{g({type:"OPEN_SETTINGS",payload:$})},K=async $=>{const{token:Z,tokenInfo:U,error:ee}=await hg({connectionId:$,orgSlug:s.slug,scope:"offline_access"});if(ee||!Z)return ae.error(`Authentication failed: ${ee}`),null;if(U)try{const fe=await fetch(`/api/${s.slug}/connections/${$}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:U.accessToken,refreshToken:U.refreshToken,expiresIn:U.expiresIn,scope:U.scope,clientId:U.clientId,clientSecret:U.clientSecret,tokenEndpoint:U.tokenEndpoint})});if(!fe.ok)console.error("Failed to save OAuth token:",await fe.text()),await a.update.mutateAsync({id:$,data:{connection_token:Z}});else try{await a.update.mutateAsync({id:$,data:{}})}catch(me){console.warn("Failed to refresh connection tools after OAuth:",me)}}catch(fe){console.error("Error saving OAuth token:",fe),await a.update.mutateAsync({id:$,data:{connection_token:Z}})}else await a.update.mutateAsync({id:$,data:{connection_token:Z}});const Q=new URL(`/api/${s.slug}/mcp/${$}`,window.location.origin);return await l.invalidateQueries({queryKey:Tt.isMCPAuthenticated(Q.href,null)}),ae.success("Authentication successful"),J1(U,Z)},G=()=>{const $=c.getValues("metadata.instructions")??"",Z=`<role>
|
|
11
|
-
Define who this agent is and what it specializes in.
|
|
12
|
-
Example: You are a support triage agent for B2B merchants.
|
|
13
|
-
</role>
|
|
14
|
-
|
|
15
|
-
<capabilities>
|
|
16
|
-
List what this agent can do using its connected tools.
|
|
17
|
-
- Investigate issues using connected data sources.
|
|
18
|
-
- Summarize findings and recommend next steps.
|
|
19
|
-
</capabilities>
|
|
20
|
-
|
|
21
|
-
<constraints>
|
|
22
|
-
Set clear boundaries on what the agent must not do.
|
|
23
|
-
- Do not perform destructive actions without confirmation.
|
|
24
|
-
- Escalate to a human when the request is outside your expertise.
|
|
25
|
-
</constraints>
|
|
26
|
-
|
|
27
|
-
<workflows>
|
|
28
|
-
Define step-by-step how the agent should handle requests.
|
|
29
|
-
|
|
30
|
-
## Default workflow
|
|
31
|
-
1. Read the user's request and gather context.
|
|
32
|
-
2. Use the appropriate tools to investigate or act.
|
|
33
|
-
3. Summarize the result and propose next steps.
|
|
34
|
-
4. Ask for confirmation before making any changes.
|
|
35
|
-
</workflows>`,U=$.trim()?`${$}
|
|
36
|
-
|
|
37
|
-
${Z}`:Z;c.setValue("metadata.instructions",U,{shouldDirty:!0})},X=new Set(d.map($=>$.connection_id)),ie=Mt(),[W,Y]=P.useState(!1),ne=async()=>{C();try{await i.delete.mutateAsync(t.id),Ie("agent_deleted",{agent_id:t.id,source:"agent_detail"}),ae.success(`Deleted "${t.title}"`),ie({to:"/$org",params:{org:s.slug}})}catch{}};return n.jsxs(Zt,{children:[n.jsx(Zt.Content,{children:n.jsx(Zt.Body,{children:n.jsxs("div",{className:"flex flex-col gap-10",children:[!e&&n.jsx(Zt.Title,{actions:n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs(oe,{variant:"outline",size:"sm",onClick:E,children:[n.jsx(fi,{size:14,className:"size-[14px]!"}),"Test Agent"]}),n.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive",onClick:()=>Y(!0),children:n.jsx(Ks,{size:14})})]}),children:"Settings"}),n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(Dt,{name:"icon",control:c.control,render:({field:$})=>n.jsx(Pv,{value:$.value??null,onChange:Z=>{$.onChange(Z),L()},onColorChange:Z=>{c.setValue("metadata.ui.themeColor",Z,{shouldDirty:!0}),L()},name:c.watch("title")||"Agent",size:"md",className:"shrink-0",avatarClassName:"[&_svg]:w-1/2 [&_svg]:h-1/2"})}),n.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[n.jsx(Dt,{name:"title",control:c.control,render:({field:$})=>n.jsx("input",{...$,type:"text",value:$.value??"",onChange:Z=>{$.onChange(Z)},onBlur:()=>{$.onBlur(),L()},disabled:u,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"})}),n.jsx(Dt,{name:"description",control:c.control,render:({field:$})=>n.jsx("input",{...$,type:"text",value:$.value??"",onChange:Z=>{$.onChange(Z)},onBlur:()=>{$.onBlur(),L()},disabled:u,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"})})]}),n.jsxs(oe,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>{Ie("agent_connect_modal_opened",{agent_id:t.id}),g({type:"SET_SHARE_DIALOG_OPEN",payload:!0})},children:[n.jsxs("span",{className:"flex items-center -space-x-1.5 mr-0.5",children:[n.jsx("span",{className:"inline-flex items-center justify-center size-4 rounded-full bg-black ring-1 ring-white/20 shrink-0",children:n.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"size-2.5 brightness-0 invert"})}),n.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:n.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude",className:"size-2.5 brightness-0 invert"})})]}),"Connect"]})]}),n.jsxs("div",{className:"flex items-center gap-2 -mt-6 text-sm text-muted-foreground",children:[n.jsx(Xd,{id:t.created_by,size:"2xs",className:"text-sm text-muted-foreground"}),n.jsx("span",{className:"text-muted-foreground/50",children:"·"}),n.jsxs("span",{children:["Created"," ",new Date(t.created_at).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})]}),n.jsx("span",{className:"text-muted-foreground/50",children:"·"}),n.jsx("span",{children:o?`Last used ${wg(new Date(o),{addSuffix:!0})}`:"Never used"})]}),n.jsxs("section",{className:"flex flex-col gap-3",children:[n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Connections"}),d.length>0&&n.jsxs(oe,{variant:"outline",size:"sm",onClick:B,children:[n.jsx(Bt,{size:14}),"Add connection"]})]}),n.jsx("div",{className:"flex flex-col gap-2",children:d.length===0?n.jsxs("button",{type:"button",onClick:B,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:[n.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:n.jsx(Bt,{size:16})}),n.jsx("span",{className:"text-sm text-muted-foreground",children:"No connections yet. Add one to get started."})]}):d.map($=>n.jsx(Jt,{fallback:()=>null,children:n.jsx(P.Suspense,{fallback:n.jsx(Qd,{}),children:n.jsx(X1,{connection_id:$.connection_id,usedConnectionIds:X,onOpenSettings:()=>z($.connection_id),onRemove:()=>M($.connection_id),onAuthenticate:K,onSwitchInstance:O,onNewInstance:()=>F($.connection_id)})})},$.connection_id))})]}),n.jsxs("section",{className:"flex flex-col gap-3",children:[n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Instructions"}),n.jsxs("div",{className:"flex items-center gap-2",children:[!c.watch("metadata.instructions")?.trim()&&n.jsx(oe,{variant:"outline",size:"sm",onClick:G,children:"+ Prompt template"}),n.jsxs(oe,{variant:"outline",size:"sm",disabled:x||!c.watch("metadata.instructions")?.trim(),onClick:j,children:[n.jsx(zs,{size:13}),"Improve"]})]})]}),n.jsx(Dt,{name:"metadata.instructions",control:c.control,render:({field:$})=>n.jsxs("div",{className:"relative rounded-xl card-shadow bg-card focus-within:ring-1 focus-within:ring-ring",children:[n.jsx(Jr,{...$,value:$.value??"",onChange:Z=>{$.onChange(Z)},onBlur:()=>{$.onBlur(),L()},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"}}),n.jsxs(je,{delayDuration:0,children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"absolute top-2 right-2 h-7 w-7 text-muted-foreground",onClick:()=>b(!0),"aria-label":"Open fullscreen editor",children:n.jsx(Dp,{size:14})})}),n.jsx(ke,{side:"left",children:"Fullscreen"})]})]})})]}),n.jsx(zv,{form:c}),n.jsx(Jt,{fallback:()=>null,children:n.jsx(P.Suspense,{fallback:n.jsxs("section",{className:"flex flex-col gap-3",children:[n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Sub-agents"}),n.jsx("div",{className:"h-16 rounded-lg border border-dashed border-border animate-pulse"})]}),children:n.jsx(qv,{form:c,currentAgentId:t.id})})}),n.jsx(tx,{virtualMcpId:t.id,form:c,flushAndSave:L}),n.jsx(w1,{virtualMcp:t}),n.jsxs("div",{className:"flex flex-col gap-3",children:[n.jsx("div",{className:"flex items-center justify-between gap-3",children:n.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Sandbox"})}),n.jsx(Ma,{className:"p-6 gap-5",children:n.jsxs(an,{className:"p-0 space-y-5",children:[n.jsx($1,{repo:m}),n.jsx(W1,{control:c.control}),n.jsx(T1,{control:c.control,form:c,virtualMcpId:t.id,orgSlug:s.slug})]})})]}),n.jsxs("section",{className:"flex items-center justify-between border-t border-border pt-6",children:[n.jsxs("div",{children:[n.jsx("p",{className:"text-sm font-medium",children:"Delete agent"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Permanently delete this agent and all its data."})]}),n.jsxs(oe,{variant:"outline",size:"sm",className:"text-destructive border-destructive/40 hover:bg-destructive/10 hover:text-destructive shrink-0",onClick:()=>Y(!0),children:[n.jsx(Ks,{size:14}),"Delete agent"]})]})]})})}),n.jsx(Zr,{open:W,onOpenChange:Y,children:n.jsxs(Qr,{children:[n.jsxs(en,{children:[n.jsx(tn,{children:"Delete Agent?"}),n.jsxs(sn,{children:["This action cannot be undone. This will permanently delete"," ",n.jsx("span",{className:"font-medium text-foreground",children:t.title}),"."]})]}),n.jsxs(rn,{children:[n.jsx(nn,{children:"Cancel"}),n.jsx(on,{onClick:ne,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),n.jsx(Xm,{open:p.addDialogOpen,onOpenChange:$=>g({type:"SET_ADD_DIALOG_OPEN",payload:$}),agentId:t.id,addedConnectionIds:X,onAdd:I}),n.jsx(c1,{open:p.settingsDialogOpen,onOpenChange:$=>{$||g({type:"CLOSE_SETTINGS"})},selectedId:p.settingsConnectionId,form:c,connections:d,onAuthenticate:K}),n.jsx(S1,{open:p.shareDialogOpen,onOpenChange:$=>g({type:"SET_SHARE_DIALOG_OPEN",payload:$}),virtualMcp:t}),n.jsx(Kt,{open:v,onOpenChange:b,children:n.jsxs(Vt,{className:"w-[90vw] sm:max-w-6xl h-[85vh] flex flex-col p-0 gap-0",children:[n.jsx(fs,{className:"px-6 pt-6 pb-3 border-b border-border shrink-0",children:n.jsx(ms,{children:"Instructions"})}),n.jsx("div",{className:"flex-1 min-h-0 p-6",children:n.jsx(Dt,{name:"metadata.instructions",control:c.control,render:({field:$})=>n.jsx(Jr,{...$,value:$.value??"",onChange:Z=>{$.onChange(Z)},onBlur:()=>{$.onBlur(),L()},disabled:u,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 ix(t){const e=H.c(9),{virtualMcpId:s,hideOwnTitle:i}=t,r=Mt(),{org:o}=Re(),a=ds(s);if(!a){let c;return e[0]!==r||e[1]!==o.slug?(c=n.jsx("div",{className:"flex h-full w-full bg-background",children:n.jsx(Yr,{title:"Space not found",description:"This space may have been deleted or you may not have access.",actions:n.jsx(oe,{variant:"outline",onClick:()=>r({to:"/$org",params:{org:o.slug}}),children:"Back to spaces"})})}),e[0]=r,e[1]=o.slug,e[2]=c):c=e[2],c}let l;e[3]!==a?(l=xr(a)?.connectionId??"",e[3]=a,e[4]=l):l=e[4];let h;return e[5]!==i||e[6]!==l||e[7]!==a?(h=n.jsx(sx,{virtualMcp:a,hideOwnTitle:i},l),e[5]=i,e[6]=l,e[7]=a,e[8]=h):h=e[8],h}function ac(t){const e=H.c(2),{virtualMcpId:s}=t;let i;return e[0]!==s?(i=n.jsx(ix,{virtualMcpId:s,hideOwnTitle:!0}),e[0]=s,e[1]=i):i=e[1],i}const rx={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function mr(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 rx[s]??e}):""}const nx=10;function ox(t){const e=t;if(e.isError)return null;const s=e.content?.find(r=>r.type==="resource"),i=s?.resource?.text??s?.text;if(!i)return null;try{const r=JSON.parse(i);return typeof r=="string"?r:r&&typeof r=="object"&&"content"in r&&typeof r.content=="string"?r.content:JSON.stringify(r,null,2)}catch{return i}}async function Ar(t,e,s){try{const i=await t.callTool({name:"get_file_contents",arguments:{owner:e.owner,repo:e.repo,path:e.path,...s}});return ox(i)}catch{return null}}function ax(t){const e=ei(t);return Array.isArray(e)?e.map(s=>{const i=Number(s.additions??0),r=Number(s.changes??i),o=Number(s.deletions??Math.max(0,r-i));return{filename:String(s.filename??""),status:s.status??"modified",additions:i,deletions:o,blobUrl:typeof s.blob_url=="string"?s.blob_url:null}}):[]}async function lx(t,e,s){if(t.length===0)return;let i=0;async function r(){for(;i<t.length;){const o=i++;await s(t[o])}}await Promise.all(Array.from({length:Math.min(e,t.length)},()=>r()))}async function lc(t,e){const s=await t.callTool({name:"pull_request_read",arguments:{method:"get_files",owner:e.owner,repo:e.repo,pullNumber:e.pullNumber,perPage:100}}),i=ax(s).filter(a=>a.filename.length>0),r={},o=e.mergeBaseSha?{sha:e.mergeBaseSha}:{ref:e.base};return await lx(i,nx,async a=>{const l=a.filename;if(a.status==="added"){r[l]={from:null,to:await Ar(t,{owner:e.owner,repo:e.repo,path:l},{sha:e.headSha})};return}if(a.status==="removed"){r[l]={from:await Ar(t,{owner:e.owner,repo:e.repo,path:l},o),to:null};return}const[h,c]=await Promise.all([Ar(t,{owner:e.owner,repo:e.repo,path:l},o),Ar(t,{owner:e.owner,repo:e.repo,path:l},{sha:e.headSha})]);r[l]={from:h,to:c}}),{diffs:r}}function eu(t){return t?Object.keys(t.diffs).length:0}function ki(t,e,s,i){return`/api/${t}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/git/${i}`}class tu extends Error{constructor(e,s){super(e),this.status=s,this.name="SandboxGitError"}status}function hl(t){return t instanceof tu&&(t.status===503||t.status===410||t.status===404)}async function ji(t){const e=await t.json();if(!t.ok)throw new tu(typeof e.error=="string"?e.error:`Request failed (${t.status})`,t.status);return e}function Ni(t,e){return fetch(t,{cache:"no-store",...e})}async function Hr(t,e,s){const i=await Ni(ki(t,e,s,"status"));return ji(i)}async function su(t,e,s,i){const r=i?.base||i?.headSha?{...i.base?{base:i.base}:{},...i.headSha?{headSha:i.headSha}:{}}:void 0,o=await Ni(ki(t,e,s,"diff"),{method:"POST",headers:r?{"content-type":"application/json"}:void 0,body:r?JSON.stringify(r):void 0});return ji(o)}async function cc(t,e,s,i){const r=await Ni(ki(t,e,s,"suggest-commit"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(i??{})});return ji(r)}async function Jn(t,e,s,i){const r=await Ni(ki(t,e,s,"publish"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({message:i})});await ji(r)}async function cx(t,e,s,i){const r=await Ni(ki(t,e,s,"rebase"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({base:i})});await ji(r)}function hx(t){return t==="blocks.gen.json"||t.endsWith("/blocks.gen.json")}function dx(t){return t==="static/tailwind.css"||t.endsWith("/static/tailwind.css")}function hc(t){if(!t)return!1;const e=Object.keys(t.diffs);return e.length===0?!1:e.every(s=>s===".deco"||s.startsWith(".deco/")||hx(s)||dx(s))}const ux="Code changes can't be published directly — use Submit for review";async function dc(t,e,s,i){const r=await Ni(ki(t,e,s,"discard"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({filepaths:i})});await ji(r)}const fx="current";function dl(t){return t?.[fx]??null}function mx(t,e,s){return["sandbox-git-status",t,e,s]}function iu(t){return t?t.modified.length+t.created.length+t.deleted.length+t.not_added.length+t.renamed.length:0}function ru(t){return t?iu(t)>0||t.staged.length>0||t.conflicted.length>0:!1}function nu(t){return t?ru(t)||t.ahead>0||(t.unpushed??0)>0?!0:t.unpushed===void 0&&(t.aheadOfBase??0)>0&&t.tracking==null:!1}function px(t,e){return t?nu(t)||e!=null&&Object.keys(e.diffs).length>0:!1}function gx(t){return Math.max(t.unpushed??0,t.ahead)}function _x(t){return t.aheadOfBase??0}function vx(t){return t.behindBase??0}function xx(t,e){if(!e)return t;const s=ru(e),i=dl(e),r=gx(e),o=_x(e),a=vx(e),l=e.base??"main",h=e.headSha??"";return t.kind==="ready"?{...t,branch:i??t.branch,base:e.base??t.base,workingTreeDirty:s,unpushed:Math.max(t.unpushed,r),aheadOfBase:Math.max(t.aheadOfBase,o),behindBase:e.behindBase!==void 0?Math.max(t.behindBase,a):t.behindBase,headSha:h||t.headSha}:!s&&o===0&&r===0?t:{kind:"ready",branch:i??"",base:l,workingTreeDirty:s,unpushed:r,aheadOfBase:o,behindBase:a,headSha:h}}function bx(t,e,s,i,r,o,a){return["pr-diff",t,e,s,i,r,o,a]}function yx(t){const e=H.c(26),{orgSlug:s,orgId:i,virtualMcpId:r,branch:o,base:a,headSha:l,pullNumber:h,connectionId:c,owner:d,repo:u,enabled:f}=t,m=f===void 0?!0:f;let p;e[0]!==c||e[1]!==i||e[2]!==s?(p={connectionId:c,orgId:i,orgSlug:s},e[0]=c,e[1]=i,e[2]=s,e[3]=p):p=e[3];const g=vt(p);let v;e[4]!==a||e[5]!==o||e[6]!==c||e[7]!==l||e[8]!==s||e[9]!==h||e[10]!==r?(v=bx(s,r,o,a,l,h,c),e[4]=a,e[5]=o,e[6]=c,e[7]=l,e[8]=s,e[9]=h,e[10]=r,e[11]=v):v=e[11];let b;e[12]!==a||e[13]!==o||e[14]!==g||e[15]!==l||e[16]!==s||e[17]!==d||e[18]!==h||e[19]!==u||e[20]!==r?(b=async()=>{try{const y=await su(s,r,o,{base:a,headSha:l});return eu(y)>0?y:lc(g,{owner:d,repo:u,pullNumber:h,base:a,headSha:l,mergeBaseSha:y.mergeBaseSha})}catch{return lc(g,{owner:d,repo:u,pullNumber:h,base:a,headSha:l})}},e[12]=a,e[13]=o,e[14]=g,e[15]=l,e[16]=s,e[17]=d,e[18]=h,e[19]=u,e[20]=r,e[21]=b):b=e[21];const x=m&&!!o&&!!l&&!!c;let _;return e[22]!==v||e[23]!==b||e[24]!==x?(_={queryKey:v,queryFn:b,enabled:x,refetchInterval:3e4,staleTime:1e4},e[22]=v,e[23]=b,e[24]=x,e[25]=_):_=e[25],As(_)}ig.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});function Sx(){return document.documentElement.classList.contains("dark")?"vs-dark":"vs"}function ou(t){const e=H.c(9),{diff:s,emptyMessage:i,rowClassName:r,onDiscardFile:o}=t,a=i===void 0?"No file changes in the working tree":i,l=r===void 0?"px-6":r,[h,c]=P.useState(null),[d,u]=P.useState(null);let f;e[0]===Symbol.for("react.memo_cache_sentinel")?(f=Sx(),e[0]=f):f=e[0];const m=f;if(!s||Object.keys(s.diffs).length===0){let g;return e[1]!==a?(g=n.jsx("div",{className:"flex items-center justify-center py-10 text-sm text-muted-foreground",children:a}),e[1]=a,e[2]=g):g=e[2],g}let p;return e[3]!==s.diffs||e[4]!==d||e[5]!==h||e[6]!==o||e[7]!==l?(p=n.jsx("div",{className:"divide-y",children:Object.entries(s.diffs).map(g=>{const[v,b]=g,{from:x,to:_}=b,y=h===v,S=x===null,w=_===null,j=v.startsWith("/")?v.slice(1):v,E=j.lastIndexOf("/"),T=E>=0?j.slice(E+1):j,A=E>=0?j.slice(0,E):null,R=up(v),k=S?"bg-green-500":w?"bg-red-500":"bg-amber-500";return n.jsxs("div",{children:[n.jsxs("div",{className:le("flex items-center gap-3 py-3 hover:bg-muted/30",l),children:[n.jsx("button",{type:"button",className:"flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground transition-transform hover:text-foreground",onClick:()=>c(y?null:v),children:n.jsx(ad,{className:le("h-3.5 w-3.5 transition-transform",y&&"rotate-90")})}),n.jsx("div",{className:le("h-2.5 w-2.5 shrink-0 rounded-full",k)}),n.jsx(ld,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate text-sm font-medium",children:T}),A&&n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:A}),o?n.jsxs(os,{children:[n.jsx(as,{asChild:!0,children:n.jsx("button",{type:"button",className:"flex h-6 w-6 shrink-0 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-foreground",children:n.jsx(Tn,{className:"h-3.5 w-3.5"})})}),n.jsx(ls,{align:"end",children:n.jsx(We,{className:"text-destructive focus:text-destructive",onSelect:()=>u(v),children:"Discard changes"})})]}):null]}),d===v&&o?n.jsxs("div",{className:le("flex items-center justify-between gap-3 border-t bg-destructive/5 py-2.5",l),children:[n.jsxs("span",{className:"text-xs text-destructive",children:["Discard all changes to"," ",n.jsx("span",{className:"font-medium",children:T}),"? This cannot be undone."]}),n.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[n.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2 text-xs",onClick:()=>u(null),children:"Cancel"}),n.jsx(oe,{type:"button",size:"sm",className:"h-7 bg-destructive px-2 text-xs text-destructive-foreground hover:bg-destructive/90",onClick:()=>{u(null),o(v)},children:"Discard"})]})]}):null,y&&n.jsx("div",{className:"border-t",children:n.jsx(rg,{original:x??"",modified:_??"",language:R,theme:m,height:"380px",options:{readOnly:!0,renderSideBySide:!1,minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:12}})})]},v)})}),e[3]=s.diffs,e[4]=d,e[5]=h,e[6]=o,e[7]=l,e[8]=p):p=e[8],p}function wx(t){const e=H.c(4),{diffQuery:s}=t;if(s.isLoading){let r;return e[0]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsxs("div",{className:"flex items-center justify-center gap-2 py-16 text-muted-foreground",children:[n.jsx(Ne,{className:"h-4 w-4 animate-spin"}),n.jsx("span",{className:"text-sm",children:"Loading changes…"})]}),e[0]=r):r=e[0],r}if(s.isError){let r;return e[1]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx("div",{className:"py-10 text-sm text-destructive",children:"Couldn't load PR changes."}),e[1]=r):r=e[1],r}let i;return e[2]!==s.data?(i=n.jsx(ou,{diff:s.data,rowClassName:"px-0",emptyMessage:"No committed changes in this pull request"}),e[2]=s.data,e[3]=i):i=e[3],i}const ti="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 Cx(t){return`Reopen PR #${t.prNumber}. ${ti}`}function kx(t){return`Rebase \`${t.branch}\` on the latest base and force-push with --force-with-lease. ${ti}`}function jx(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. ${ti}`}function Nx(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. ${ti}`}function Ex(t){return`Mark PR #${t.prNumber} ready for review. ${ti}`}function Tx(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. ${ti}`}function Px(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. ${ti}`}function Ax(t){const e=H.c(24),{pr:s,connectionId:i,owner:r,repo:o}=t,{org:a}=Re(),l=Ys();let h;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==o?(h={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=o,e[6]=h):h=e[6];const c=Ed(h);let d;e[7]!==l||e[8]!==s.number?(d=v=>l.sendMessage({parts:[{type:"text",text:jx({prNumber:s.number,checkName:v})}]}),e[7]=l,e[8]=s.number,e[9]=d):d=e[9];const u=d;if(c.isLoading){let v;return e[10]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading checks…"}),e[10]=v):v=e[10],v}if(c.isError){let v;return e[11]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load check runs."}),e[11]=v):v=e[11],v}let f;e[12]!==c.data?(f=c.data??[],e[12]=c.data,e[13]=f):f=e[13];const m=f;if(m.length===0){let v;return e[14]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("div",{className:"text-sm text-muted-foreground",children:"No check runs on the PR head commit."}),e[14]=v):v=e[14],v}let p;if(e[15]!==l||e[16]!==m||e[17]!==u){let v;e[19]!==l||e[20]!==u?(v=b=>n.jsxs("li",{className:"flex items-center justify-between gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[n.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[n.jsx(Rx,{check:b}),n.jsx("span",{className:"truncate",children:b.name}),b.durationMs!=null&&n.jsx("span",{className:"text-xs text-muted-foreground",children:Dx(b.durationMs)})]}),n.jsxs("span",{className:"flex shrink-0 items-center gap-1",children:[b.htmlUrl&&n.jsx("a",{href:b.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:n.jsx(wi,{className:"h-3.5 w-3.5"})}),b.conclusion==="failure"&&n.jsx(oe,{size:"sm",variant:"ghost",disabled:l.isStreaming,onClick:()=>u(b.name),children:"Re-run"})]})]},b.id),e[19]=l,e[20]=u,e[21]=v):v=e[21],p=m.map(v),e[15]=l,e[16]=m,e[17]=u,e[18]=p}else p=e[18];let g;return e[22]!==p?(g=n.jsx("ul",{className:"flex flex-col gap-0.5",children:p}),e[22]=p,e[23]=g):g=e[23],g}function Rx(t){const e=H.c(5),{check:s}=t;if(s.status!=="completed"){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=n.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=n.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=n.jsx("span",{className:"text-destructive","aria-label":"Failure",children:"✗"}),e[2]=o):o=e[2],o}const i=s.conclusion??"—";let r;return e[3]!==i?(r=n.jsx("span",{className:"text-muted-foreground","aria-label":i,children:"—"}),e[3]=i,e[4]=r):r=e[4],r}function Dx(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.round(e/60)}m`}var es="Accordion",Ix=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[ul,Lx,Bx]=mm(es),[In]=pm(es,[Bx,Mh]),fl=Mh(),au=It.forwardRef((t,e)=>{const{type:s,...i}=t,r=i,o=i;return n.jsx(ul.Provider,{scope:t.__scopeAccordion,children:s==="multiple"?n.jsx(zx,{...o,ref:e}):n.jsx($x,{...r,ref:e})})});au.displayName=es;var[lu,Mx]=In(es),[cu,Ox]=In(es,{collapsible:!1}),$x=It.forwardRef((t,e)=>{const{value:s,defaultValue:i,onValueChange:r=()=>{},collapsible:o=!1,...a}=t,[l,h]=Rh({prop:s,defaultProp:i??"",onChange:r,caller:es});return n.jsx(lu,{scope:t.__scopeAccordion,value:It.useMemo(()=>l?[l]:[],[l]),onItemOpen:h,onItemClose:It.useCallback(()=>o&&h(""),[o,h]),children:n.jsx(cu,{scope:t.__scopeAccordion,collapsible:o,children:n.jsx(hu,{...a,ref:e})})})}),zx=It.forwardRef((t,e)=>{const{value:s,defaultValue:i,onValueChange:r=()=>{},...o}=t,[a,l]=Rh({prop:s,defaultProp:i??[],onChange:r,caller:es}),h=It.useCallback(d=>l((u=[])=>[...u,d]),[l]),c=It.useCallback(d=>l((u=[])=>u.filter(f=>f!==d)),[l]);return n.jsx(lu,{scope:t.__scopeAccordion,value:a,onItemOpen:h,onItemClose:c,children:n.jsx(cu,{scope:t.__scopeAccordion,collapsible:!0,children:n.jsx(hu,{...o,ref:e})})})}),[Fx,Ln]=In(es),hu=It.forwardRef((t,e)=>{const{__scopeAccordion:s,disabled:i,dir:r,orientation:o="vertical",...a}=t,l=It.useRef(null),h=gm(l,e),c=Lx(s),u=_m(r)==="ltr",f=vm(t.onKeyDown,m=>{if(!Ix.includes(m.key))return;const p=m.target,g=c().filter(E=>!E.ref.current?.disabled),v=g.findIndex(E=>E.ref.current===p),b=g.length;if(v===-1)return;m.preventDefault();let x=v;const _=0,y=b-1,S=()=>{x=v+1,x>y&&(x=_)},w=()=>{x=v-1,x<_&&(x=y)};switch(m.key){case"Home":x=_;break;case"End":x=y;break;case"ArrowRight":o==="horizontal"&&(u?S():w());break;case"ArrowDown":o==="vertical"&&S();break;case"ArrowLeft":o==="horizontal"&&(u?w():S());break;case"ArrowUp":o==="vertical"&&w();break}const j=x%b;g[j].ref.current?.focus()});return n.jsx(Fx,{scope:s,disabled:i,direction:r,orientation:o,children:n.jsx(ul.Slot,{scope:s,children:n.jsx(Ah.div,{...a,"data-orientation":o,ref:h,onKeyDown:i?void 0:f})})})}),un="AccordionItem",[Hx,ml]=In(un),du=It.forwardRef((t,e)=>{const{__scopeAccordion:s,value:i,...r}=t,o=Ln(un,s),a=Mx(un,s),l=fl(s),h=xm(),c=i&&a.value.includes(i)||!1,d=o.disabled||t.disabled;return n.jsx(Hx,{scope:s,open:c,disabled:d,triggerId:h,children:n.jsx(Lm,{"data-orientation":o.orientation,"data-state":_u(c),...l,...r,ref:e,disabled:d,open:c,onOpenChange:u=>{u?a.onItemOpen(i):a.onItemClose(i)}})})});du.displayName=un;var uu="AccordionHeader",fu=It.forwardRef((t,e)=>{const{__scopeAccordion:s,...i}=t,r=Ln(es,s),o=ml(uu,s);return n.jsx(Ah.h3,{"data-orientation":r.orientation,"data-state":_u(o.open),"data-disabled":o.disabled?"":void 0,...i,ref:e})});fu.displayName=uu;var Ro="AccordionTrigger",mu=It.forwardRef((t,e)=>{const{__scopeAccordion:s,...i}=t,r=Ln(es,s),o=ml(Ro,s),a=Ox(Ro,s),l=fl(s);return n.jsx(ul.ItemSlot,{scope:s,children:n.jsx(Im,{"aria-disabled":o.open&&!a.collapsible||void 0,"data-orientation":r.orientation,id:o.triggerId,...l,...i,ref:e})})});mu.displayName=Ro;var pu="AccordionContent",gu=It.forwardRef((t,e)=>{const{__scopeAccordion:s,...i}=t,r=Ln(es,s),o=ml(pu,s),a=fl(s);return n.jsx(Bm,{role:"region","aria-labelledby":o.triggerId,"data-orientation":r.orientation,...a,...i,ref:e,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...t.style}})});gu.displayName=pu;function _u(t){return t?"open":"closed"}var Wx=au,Ux=du,Kx=fu,Vx=mu,qx=gu;function Gx(t){const e=H.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=n.jsx(Wx,{"data-slot":"accordion",...s}),e[2]=s,e[3]=i):i=e[3],i}function Yx(t){const e=H.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 r;e[3]!==s?(r=le("border-b last:border-b-0",s),e[3]=s,e[4]=r):r=e[4];let o;return e[5]!==i||e[6]!==r?(o=n.jsx(Ux,{"data-slot":"accordion-item",className:r,...i}),e[5]=i,e[6]=r,e[7]=o):o=e[7],o}function Xx(t){const e=H.c(11);let s,i,r;e[0]!==t?({className:i,children:s,...r}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=r):(s=e[1],i=e[2],r=e[3]);let o;e[4]!==i?(o=le("focus-visible:border-ring focus-visible:ring-ring/20 flex flex-1 items-center justify-between gap-4 py-4 text-left text-sm font-medium transition-all outline-none hover:bg-accent/50 focus-visible:ring-[2px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-90",i),e[4]=i,e[5]=o):o=e[5];let a;e[6]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(ad,{className:"text-muted-foreground pointer-events-none size-4 shrink-0 transition-transform duration-200"}),e[6]=a):a=e[6];let l;return e[7]!==s||e[8]!==r||e[9]!==o?(l=n.jsx(Kx,{className:"flex",children:n.jsxs(Vx,{"data-slot":"accordion-trigger",className:o,...r,children:[s,a]})}),e[7]=s,e[8]=r,e[9]=o,e[10]=l):l=e[10],l}function Jx(t){const e=H.c(12);let s,i,r;e[0]!==t?({className:i,children:s,...r}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=r):(s=e[1],i=e[2],r=e[3]);let o;e[4]!==i?(o=le("pt-0 pb-4",i),e[4]=i,e[5]=o):o=e[5];let a;e[6]!==s||e[7]!==o?(a=n.jsx("div",{className:o,children:s}),e[6]=s,e[7]=o,e[8]=a):a=e[8];let l;return e[9]!==r||e[10]!==a?(l=n.jsx(qx,{"data-slot":"accordion-content",className:"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",...r,children:a}),e[9]=r,e[10]=a,e[11]=l):l=e[11],l}function Zx(t){const e=H.c(10),{comments:s,isLoading:i,isError:r}=t;if(i||r||!s||s.length===0)return null;const o=s.length===1?"":"s";let a;e[0]!==s.length||e[1]!==o?(a=n.jsxs(Xx,{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(Qx),e[3]=s,e[4]=l):l=e[4];let h;e[5]!==l?(h=n.jsx(Jx,{className:"space-y-3 pb-3",children:l}),e[5]=l,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=n.jsx(Gx,{type:"single",collapsible:!0,className:"border-t border-border",children:n.jsxs(Yx,{value:"comments",className:"border-b-0",children:[a,h]})}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}function Qx(t){return n.jsxs("div",{className:"rounded-md border border-border p-3",children:[n.jsxs("div",{className:"mb-1 text-xs text-muted-foreground",children:["@",t.author," · ",eb(t.createdAt)]}),n.jsx(Ia,{id:`pr-comment-${t.id}`,text:mr(t.body)})]},t.id)}function eb(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 r=Math.floor(s/36e5);if(r>0)return`${r}h ago`;const o=Math.floor(s/6e4);return`${Math.max(1,o)}m ago`}function tb(t){const e=H.c(19),{pr:s,connectionId:i,owner:r,repo:o}=t,{org:a}=Re();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==o?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:o,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=o,e[6]=l):l=e[6];const h=O_(l);let c;e[7]!==s.body||e[8]!==s.number?(c=s.body&&n.jsx("div",{className:"text-sm",children:n.jsx(Ia,{id:`pr-body-${s.number}`,text:mr(s.body)})}),e[7]=s.body,e[8]=s.number,e[9]=c):c=e[9];let d;e[10]!==h.data?(d=h.data??[],e[10]=h.data,e[11]=d):d=e[11];let u;e[12]!==h.isError||e[13]!==h.isLoading||e[14]!==d?(u=n.jsx(Zx,{comments:d,isLoading:h.isLoading,isError:h.isError}),e[12]=h.isError,e[13]=h.isLoading,e[14]=d,e[15]=u):u=e[15];let f;return e[16]!==c||e[17]!==u?(f=n.jsxs("div",{className:"space-y-8",children:[c,u]}),e[16]=c,e[17]=u,e[18]=f):f=e[18],f}function sb(t){const e=H.c(68),{pr:s,virtualMcpId:i,branch:r,connectionId:o,owner:a,repo:l}=t,{org:h}=Re();let c;e[0]!==r||e[1]!==o||e[2]!==h.id||e[3]!==h.slug||e[4]!==a||e[5]!==s.base||e[6]!==s.headSha||e[7]!==s.number||e[8]!==l||e[9]!==i?(c={orgSlug:h.slug,orgId:h.id,virtualMcpId:i,branch:r,base:s.base,headSha:s.headSha,pullNumber:s.number,connectionId:o,owner:a,repo:l},e[0]=r,e[1]=o,e[2]=h.id,e[3]=h.slug,e[4]=a,e[5]=s.base,e[6]=s.headSha,e[7]=s.number,e[8]=l,e[9]=i,e[10]=c):c=e[10];const d=yx(c);let u;e[11]!==d.data?(u=d.data?eu(d.data):void 0,e[11]=d.data,e[12]=u):u=e[12];const f=u,[m,p]=P.useState("changes");let g;e[13]!==s.title?(g=mr(s.title),e[13]=s.title,e[14]=g):g=e[14];let v;e[15]!==g?(v=n.jsx("h1",{className:"text-lg font-semibold leading-tight",children:g}),e[15]=g,e[16]=v):v=e[16];const b=`Open PR #${s.number} on GitHub`;let x;e[17]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(wi,{className:"h-3.5 w-3.5"}),e[17]=x):x=e[17];let _;e[18]!==s.htmlUrl||e[19]!==s.number||e[20]!==b?(_=n.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":b,className:"inline-flex items-center gap-1 hover:text-foreground",children:["PR #",s.number,x]}),e[18]=s.htmlUrl,e[19]=s.number,e[20]=b,e[21]=_):_=e[21];let y;e[22]!==s.author?(y=s.author?n.jsxs(n.Fragment,{children:[n.jsx("span",{children:"·"}),n.jsxs("span",{children:["@",s.author]})]}):null,e[22]=s.author,e[23]=y):y=e[23];let S;e[24]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx("span",{children:"·"}),e[24]=S):S=e[24];let w;e[25]!==s.base?(w=n.jsx("span",{className:"font-mono text-xs",children:s.base}),e[25]=s.base,e[26]=w):w=e[26];let j;e[27]===Symbol.for("react.memo_cache_sentinel")?(j=n.jsx("span",{children:"←"}),e[27]=j):j=e[27];let E;e[28]!==s.head?(E=n.jsx("span",{className:"font-mono text-xs",children:s.head}),e[28]=s.head,e[29]=E):E=e[29];let T;e[30]!==w||e[31]!==E||e[32]!==_||e[33]!==y?(T=n.jsxs("div",{className:"flex flex-wrap items-center gap-x-1.5 text-sm text-muted-foreground",children:[_,y,S,w,j,E]}),e[30]=w,e[31]=E,e[32]=_,e[33]=y,e[34]=T):T=e[34];let A;e[35]!==T||e[36]!==v?(A=n.jsx("div",{className:"shrink-0 space-y-3 pb-4",children:n.jsxs("div",{className:"space-y-1",children:[v,T]})}),e[35]=T,e[36]=v,e[37]=A):A=e[37];let R;e[38]===Symbol.for("react.memo_cache_sentinel")?(R=K=>p(K),e[38]=R):R=e[38];let k;e[39]===Symbol.for("react.memo_cache_sentinel")?(k=n.jsx($s,{value:"description",className:"px-3 text-xs",children:"Description"}),e[39]=k):k=e[39];const C=f!==void 0?` ${f}`:"";let D;e[40]!==C?(D=n.jsxs($s,{value:"changes",className:"px-3 text-xs",children:["Changes",C]}),e[40]=C,e[41]=D):D=e[41];let N;e[42]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx($s,{value:"checks",className:"px-3 text-xs",children:"Checks"}),e[42]=N):N=e[42];let L;e[43]!==D?(L=n.jsxs(La,{className:"h-8 w-fit max-w-[600px] shrink-0",variant:"pill",children:[k,D,N]}),e[43]=D,e[44]=L):L=e[44];let B;e[45]!==o||e[46]!==a||e[47]!==s||e[48]!==l?(B=n.jsx(sr,{value:"description",className:"mt-0",children:n.jsx(tb,{pr:s,connectionId:o,owner:a,repo:l})}),e[45]=o,e[46]=a,e[47]=s,e[48]=l,e[49]=B):B=e[49];let I;e[50]!==d?(I=n.jsx(sr,{value:"changes",className:"mt-0",children:n.jsx(wx,{diffQuery:d})}),e[50]=d,e[51]=I):I=e[51];let M;e[52]!==o||e[53]!==a||e[54]!==s||e[55]!==l?(M=n.jsx(sr,{value:"checks",className:"mt-0",children:n.jsx(Ax,{pr:s,connectionId:o,owner:a,repo:l})}),e[52]=o,e[53]=a,e[54]=s,e[55]=l,e[56]=M):M=e[56];let O;e[57]!==B||e[58]!==I||e[59]!==M?(O=n.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto pt-5",children:[B,I,M]}),e[57]=B,e[58]=I,e[59]=M,e[60]=O):O=e[60];let F;e[61]!==m||e[62]!==L||e[63]!==O?(F=n.jsxs(Ba,{value:m,onValueChange:R,className:"flex min-h-0 flex-1 flex-col",children:[L,O]}),e[61]=m,e[62]=L,e[63]=O,e[64]=F):F=e[64];let z;return e[65]!==A||e[66]!==F?(z=n.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[A,F]}),e[65]=A,e[66]=F,e[67]=z):z=e[67],z}function ib(t){const e=H.c(5),{pr:s}=t,i=`Open PR #${s.number} on GitHub`;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx(wi,{className:"h-4 w-4 text-muted-foreground"}),e[0]=r):r=e[0];let o;return e[1]!==s.htmlUrl||e[2]!==s.number||e[3]!==i?(o=n.jsx("div",{className:"flex h-12 items-center border-b border-border px-4 shrink-0",children:n.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,r]})}),e[1]=s.htmlUrl,e[2]=s.number,e[3]=i,e[4]=o):o=e[4],o}function rb(t){const e=H.c(10),{virtualMcpId:s}=t,{org:i}=Re(),r=ds(s),{currentBranch:o}=ys(),a=r?.metadata?.githubRepo??null;if(!a?.connectionId){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=n.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]=h):h=e[0],h}if(!o){let h;return e[1]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-8 text-sm",children:[n.jsx(cr,{className:"h-6 w-6 text-muted-foreground"}),n.jsx("div",{className:"text-muted-foreground",children:"No branch selected."}),n.jsx("div",{className:"text-xs text-muted-foreground",children:"Pick a branch from the header to see PR status."})]}),e[1]=h):h=e[1],h}let l;return e[2]!==o||e[3]!==a.connectionId||e[4]!==a.name||e[5]!==a.owner||e[6]!==i.id||e[7]!==i.slug||e[8]!==s?(l=n.jsx(nb,{orgId:i.id,orgSlug:i.slug,virtualMcpId:s,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]=i.slug,e[8]=s,e[9]=l):l=e[9],l}function nb(t){const e=H.c(47),{orgId:s,orgSlug:i,virtualMcpId:r,connectionId:o,owner:a,repo:l,branch:h}=t;let c;e[0]!==h||e[1]!==o||e[2]!==s||e[3]!==i||e[4]!==a||e[5]!==l?(c={orgId:s,orgSlug:i,connectionId:o,owner:a,repo:l,branch:h},e[0]=h,e[1]=o,e[2]=s,e[3]=i,e[4]=a,e[5]=l,e[6]=c):c=e[6];const{data:d,isLoading:u,isError:f}=Va(c),m=ob;if(u){let _;return e[7]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"Loading PR state…"}),e[7]=_):_=e[7],_}if(f){let _;return e[8]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx("div",{className:"p-4 text-sm text-destructive",children:"Couldn't load PR state. The GitHub connection may be broken."}),e[8]=_):_=e[8],_}const p=`https://github.com/${a}/${l}/tree/${h}`;if(d&&d.state==="closed"){let _;e[9]!==d?(_=n.jsx(ib,{pr:d}),e[9]=d,e[10]=_):_=e[10];const y=d.merged?"✓ Merged":"✗ Closed";let S;e[11]!==d.mergedAt?(S=d.mergedAt&&n.jsxs(n.Fragment,{children:[" · ",new Date(d.mergedAt).toLocaleDateString()]}),e[11]=d.mergedAt,e[12]=S):S=e[12];let w;e[13]!==d.author?(w=d.author&&n.jsxs(n.Fragment,{children:[" · by @",d.author]}),e[13]=d.author,e[14]=w):w=e[14];let j;e[15]!==d.base||e[16]!==y||e[17]!==S||e[18]!==w?(j=n.jsxs("div",{className:"text-sm text-success",children:[y," into ",d.base,S,w]}),e[15]=d.base,e[16]=y,e[17]=S,e[18]=w,e[19]=j):j=e[19];let E;e[20]!==d.title?(E=mr(d.title),e[20]=d.title,e[21]=E):E=e[21];let T;e[22]!==E?(T=n.jsx("h1",{className:"text-lg font-semibold",children:E}),e[22]=E,e[23]=T):T=e[23];let A;e[24]!==d.body||e[25]!==d.number?(A=d.body&&n.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-3 text-sm",children:n.jsx(Ia,{id:`pr-body-${d.number}`,text:mr(d.body)})}),e[24]=d.body,e[25]=d.number,e[26]=A):A=e[26];let R;e[27]!==j||e[28]!==T||e[29]!==A?(R=n.jsxs("div",{className:"flex flex-col gap-4 p-4 overflow-auto",children:[j,T,A]}),e[27]=j,e[28]=T,e[29]=A,e[30]=R):R=e[30];let k;return e[31]!==_||e[32]!==R?(k=n.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[_,R]}),e[31]=_,e[32]=R,e[33]=k):k=e[33],k}if(d&&d.state==="open"){let _;return e[34]!==h||e[35]!==o||e[36]!==a||e[37]!==d||e[38]!==l||e[39]!==r?(_=n.jsx("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:n.jsx("div",{className:"flex min-h-0 w-full flex-1 flex-col px-6 py-5",children:n.jsx(sb,{pr:d,virtualMcpId:r,branch:h,connectionId:o,owner:a,repo:l})})}),e[34]=h,e[35]=o,e[36]=a,e[37]=d,e[38]=l,e[39]=r,e[40]=_):_=e[40],_}let g;e[41]===Symbol.for("react.memo_cache_sentinel")?(g=n.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[41]=g):g=e[41];let v;e[42]!==p?(v=()=>m(p),e[42]=p,e[43]=v):v=e[43];let b;e[44]===Symbol.for("react.memo_cache_sentinel")?(b=n.jsx(wi,{className:"mr-1.5 h-4 w-4"}),e[44]=b):b=e[44];let x;return e[45]!==v?(x=n.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[g,n.jsx("div",{className:"flex items-center gap-2",children:n.jsxs(oe,{size:"sm",variant:"outline",onClick:v,children:[b,"Open branch on GitHub"]})})]}),e[45]=v,e[46]=x):x=e[46],x}function ob(t){window.open(t,"_blank","noopener,noreferrer")}const ab=new Set(["website/pages/Page.tsx","$live/pages/LivePage.tsx"]);function lb(t){return t.includes("matchers")||t.includes("Match")}function cb(t,e){const s=t.__resolveType;return typeof s!="string"||!s||ab.has(s)?!1:e?Y_(e,s):lb(s)}function Ei(t,e,s){if(!t)return!1;const i=t.__resolveType;if(typeof i!="string"||!fr(i)||!Object.hasOwn(e,i))return!1;const r=e[i];return!r||typeof r!="object"||Array.isArray(r)?!1:cb(r,s)}function hb(t,e,s){return Ei(t,e,s)?t?.__resolveType??null:null}function vu(t,e,s){if(!t)return null;const i=t.__resolveType??"";if(!i)return null;if(Ei(t,e,s)){const a=e[i]??{},l=a.__resolveType??i,{__resolveType:h,name:c,...d}=a;return{resolveType:l,data:d,blockKey:i}}const{__resolveType:r,...o}=t;return{resolveType:i,data:o}}function db(t,e,s){const i=vu(t,e,s);return i?{__resolveType:i.resolveType,...i.data}:{__resolveType:""}}function Cj(t,e,s){if(t)return Ei(t,e,s)?db(t,e,s):t}function ub(t,e,s,i){if(!t)return"Default";if(Ei(t,e,i)){const r=t.__resolveType??"",o=e[r];return Wd(r,o)}return s(t)}function kj(t,e,s){return{__resolveType:t,...e,name:s}}function jj(t){return{__resolveType:t}}function Nj(t,e,s){const i=vu(t,e,s);return i?{resolveType:i.resolveType,formValue:i.data}:{resolveType:"",formValue:{}}}const uc="x-deco-matchers-override";function xu({pageKey:t,prefix:e,variants:s,selectedIndex:i,decofile:r,meta:o}){if(!t||i<0||i>=s.length)return[];const a=[];for(let l=0;l<=i;l++){const h=s[l];if(!h)continue;const c=h.rule,d=l===i?"1":"0",f=(Ei(c,r,o)?hb(c,r,o):null)??`${t}@${e}.${l}.rule`;a.push(`${f}=${d}`)}return a}function Ej(t,e,s,i){return!e.multivariate||e.variants.length<=1?[]:xu({pageKey:t,prefix:"sections.variants",variants:e.variants,selectedIndex:e.index,decofile:s,meta:i})}function Tj({pageKey:t,page:e,sectionIndex:s,sectionLazy:i,mvObj:r,selectedVariantIndex:o,decofile:a,meta:l}){if(s<0)return[];const c=`${e.multivariate?`sections.variants.${e.index}.value`:"sections"}.${s}${i?".section":""}.variants`,d=Array.isArray(r.variants)?r.variants:[];return xu({pageKey:t,prefix:c,variants:d,selectedIndex:o,decofile:a,meta:l})}function fb(t,e){if(e.length===0)return t;const s=new URL(t,"http://local");s.searchParams.delete(uc);for(const i of e)s.searchParams.append(uc,i);return t.startsWith("http")?s.toString():`${s.pathname}${s.search}${s.hash}`}function mb(t,e){return t.map((s,i)=>{const r=s.__resolveType??"",o=Qt(r);if(!o&&r!==""&&fr(r)&&r in e){const c=e[r],d=typeof c?.name=="string"&&c.name||r.replace(/[-_]/g," ").replace(/\b\w/g,u=>u.toUpperCase())||`Section ${i+1}`;return{index:i,resolveType:r,label:d,isLazy:!1,isSavedBlock:!0}}const a=o?s.section:void 0,l=o?a?.__resolveType??"":r;if(l===Cr||l===Ja){const c=o?a:s,d=Array.isArray(c?.variants)?c.variants:[];if(d.length===1&&(d[0]?.rule?.__resolveType??"")===Xa){const m=d[0]?.value??{};let p=m.__resolveType??"";const g=Qt(p);return g&&(p=m.section?.__resolveType??p),{index:i,resolveType:r,label:Fs(p)||`Section ${i+1}`,isHidden:!0,isLazy:g}}const u=d[0]?.value?.__resolveType,f=u?Fs(u):"Section";return{index:i,resolveType:r,label:`Variants of ${f}`,isMultivariate:!0,isLazy:o}}const h=o?s.section?.__resolveType??r:r;if(o&&h!==""&&fr(h)&&h in e){const c=e[h],d=typeof c?.name=="string"&&c.name||h.replace(/[-_]/g," ").replace(/\b\w/g,u=>u.toUpperCase())||`Section ${i+1}`;return{index:i,resolveType:r,label:d,isLazy:!0,isSavedBlock:!0}}return{index:i,resolveType:r,label:Fs(h)||`Section ${i+1}`,isLazy:o}})}function bu(t){const e=t.__resolveType??"";return Qt(e)?t.section??t:t}function fn(t){const r=(Qt(t.__resolveType??"")?t.section:t)?.variants?.[0];return r?.rule?.__resolveType!==Xa?null:r?.value??null}function Pj(t){const e=bu(t);return{__resolveType:Ja,variants:[{value:e,rule:{__resolveType:Xa}}]}}function Aj(t){const e=t.__resolveType??"";if(!e)return null;if(Qt(e))return t.section??null;const s=fn(t);return s?Qt(s.__resolveType??"")?s:{__resolveType:Jl,section:bu(s)}:{__resolveType:Jl,section:t}}function Rr(t){const e=t.__resolveType??"";if(!e)return null;if(Qt(e)){const s=t.section,i=s?.__resolveType??"";return!i||!s?null:{resolveType:i,data:s}}return{resolveType:e,data:t}}function Rj(t){const e=fn(t);if(e)return Rr(e);if(Qt(t.__resolveType??"")){const i=t.section;if(!i)return null;const r=fn(i);return Rr(r||i)}return Rr(t)}function Dj(t){return fn(t)}const pb=["website/matchers/always.ts","$live/matchers/MatchAlways.ts"];function yu(t){if(!t)return!1;const e=t.__resolveType??"";return e===""?Object.keys(t).length===0:pb.includes(e)||e.includes("always")}function gb(t){const e=t.variants??[];if(e.length===0)return-1;const s=e.findIndex(i=>yu(i.rule));return s!==-1?s:e.length-1}function Ij(t,e,s){const i=s.variants??[];if(i.length===0)return null;const r=gb(s),o=i[r]?.value;if(!o)return null;const a=structuredClone(o);return e.isLazy?{...t,section:a}:a}function Su(t,e){return e.isMultivariate?e.isLazy?t.section??null:t:null}function Lj(t,e){return Array.isArray(t.variants)?t.variants.map((s,i)=>({label:e(s.rule)||`Variant ${i+1}`,value:s.value??{},rule:s.rule})):[]}function Bj(t,e){const s=t.__resolveType??"";if(!s)return null;if(Qt(s)){const i=t.section??t,r=i.__resolveType??s;if(!r.includes("/")&&r in e){const o=e[r]??{};return{data:{...o},resolveType:o.__resolveType??r}}return{data:{...i},resolveType:r}}if(!s.includes("/")&&s in e){const i=e[s]??{};return{data:{...i},resolveType:i.__resolveType??s}}return{data:{...t},resolveType:s}}function _b(t,e){const s=t.__resolveType??"";return Qt(s)?{...t,section:e}:e}function vb(t,e,s){return e.isLazy?{...t,section:s}:s}function Mj(t,e,s){const i=[...t.variants??[]],r=i[e];if(!r)return t;const o=r.value??{};return i[e]={...r,value:_b(o,s)},{...t,variants:i}}function Oj(t,e,s){const i=[...t.variants??[]];return i[e]?(i[e]={...i[e],rule:s},{...t,variants:i}):t}function $j(t,e){const s=[...t.variants??[]],i=s[e];return i?(s.splice(e+1,0,structuredClone(i)),{...t,variants:s}):t}function zj(t,e,s){const i=[...t.variants??[]];if(e===s||e<0||s<0||e>=i.length||s>=i.length)return t;const[r]=i.splice(e,1);return r?(i.splice(s,0,r),{...t,variants:i}):t}function Fj(t,e){const s=[...t.variants??[]];return s.length<=1?null:(s.splice(e,1),{...t,variants:s})}function Do(t){return{rule:Za(),value:structuredClone(t)}}function wu(t,e){return{...e,__resolveType:Ja,variants:t}}function Hj(t){return t.isHidden!==!0&&t.isSavedBlock!==!0}function xb(t,e){if(e.isHidden)return null;if(e.isMultivariate){const i=Su(t,e)?.variants??[],r=i[i.length-1]?.value;return r?structuredClone(r):null}if(e.isLazy){const s=t.section;return s?structuredClone(s):null}return structuredClone(t)}function bb(t,e,s){if(e.isMultivariate||e.isHidden)return null;const i=xb(t,e);if(!i)return null;const r=wu([Do(i),Do(i)]);return e.isLazy?{...t,section:r}:r}function Wj(t,e,s){if(e.isHidden||e.isSavedBlock)return null;if(e.isMultivariate){const r=Su(t,e);if(!r)return null;const o=r.variants??[],a=o[o.length-1]?.value;if(!a)return null;const l=wu([...o,Do(a)],r);return{section:vb(t,e,l),newVariantIndex:o.length}}const i=bb(t,e);return i?{section:i,newVariantIndex:1}:null}const yb=new Set(["website/pages/Page.tsx","$live/pages/LivePage.tsx"]);function Uj(t){return t.anyOfRefs?.some(e=>e.resolveType!==Cr?!1:e.schema?.properties?.variants?.items?.properties?.value?.type==="array")??!1}function Cu(t){return!t||typeof t!="object"||Array.isArray(t)?!1:t.__resolveType===Cr}function Kj(t){if(!Cu(t))return null;const e=t.variants;if(!Array.isArray(e))return null;const s=e[0]?.value;return Array.isArray(s)?s:null}function Vj(t,e){if(!Cu(t))return e;const s=structuredClone(t),i=[...s.variants??[]];return i.length===0?i.push({rule:Za(),value:e}):i[0]={...i[0],value:e},{...s,variants:i}}function Sb(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;const e=t;return typeof e.__resolveType=="string"&&yb.has(e.__resolveType)&&typeof e.path=="string"}function ku(t,e){const i=t[e]?.sections;if(!i||Array.isArray(i))return 1;const r=i;return Array.isArray(r.variants)?r.variants.length:1}function ju(t,e,s){const r=t[e]?.sections;if(Array.isArray(r))return s===0?r:[];if(r&&typeof r=="object"){const o=r.variants;if(Array.isArray(o)){const a=o[s];return Array.isArray(a?.value)?a.value:[]}}return[]}function qj(t,e,s){if(Array.isArray(t))return[{label:"Default",sections:t}];if(t&&typeof t=="object"){const i=t;if(Array.isArray(i.variants)){const r=i.variants,o=r.map(h=>ub(h.rule,e,s)),a=o.reduce((h,c)=>(h[c]=(h[c]??0)+1,h),{}),l={};return r.map((h,c)=>{const d=o[c]??`Variant ${c+1}`,u=a[d]??1;let f=d;return u>1&&(l[d]=(l[d]??0)+1,f=`${d} ${l[d]}`),{label:f||`Variant ${c+1}`,sections:Array.isArray(h.value)?h.value:[],rule:h.rule}})}}return[]}function Ii(t){return{rule:Za(),value:t}}function di(t,e){return{...e,__resolveType:Cr,variants:t}}function wb(t,e){const s=structuredClone(e);if(Array.isArray(t))return di([Ii(t),Ii(s)]);if(t&&typeof t=="object"){const i=t;return Array.isArray(i.variants)?di([...i.variants,Ii(s)],i):null}return di([Ii([]),Ii(s)])}function Gj(t){const e=t.variants;return Array.isArray(e)?e.length-1:1}function Yj(t,e){if(e.length===0)return di([],t);if(e.length===1){const s=e[0],i=s?.rule;if(!yu(i))return di(e,t);if(Array.isArray(s?.value))return s.value}return di(e,t)}function Cb(t,e){for(const[s,i]of Object.entries(t)){if(!Sb(i))continue;const r=i.sections;if(Array.isArray(r)){e(void 0,s,0);continue}if(!r||typeof r!="object")continue;const o=r.variants;if(Array.isArray(o))for(let a=0;a<o.length;a++){const l=o[a];e(l?.rule,s,a)}}}function Xj(t,e,s){let i=0;return Cb(t,r=>{if(!r)return;(r.__resolveType??"")===e&&Ei(r,t,s)&&i++}),i}function Nu(t){return btoa(encodeURIComponent(t))}function kb(t,e,s){const i=new URL(t).origin,r=new URL(`/live/previews/${encodeURIComponent(e)}`,i);return r.searchParams.set("path","/"),r.searchParams.set("pathTemplate","/"),r.searchParams.set("props",Nu(JSON.stringify({path:"/",sections:[{__resolveType:s}]}))),r.searchParams.set("__cb",crypto.randomUUID()),r.toString()}function Jj(t,e,s,i){const r=new URL(t).origin,o=new URL(`/live/previews/${encodeURIComponent(e)}`,r);o.searchParams.set("__d","");const a=[{__resolveType:"preview",block:s}];return i&&a.push(i),o.searchParams.set("props",Nu(JSON.stringify({sections:a}))),o.toString()}const fc={resolveType:"website/pages/Page.tsx",seoResolveType:"website/sections/Seo/SeoV2.tsx"};function pl(t){return`pages-${encodeURIComponent(t)}-${crypto.randomUUID()}`}function Eu(t,e){return{name:t,path:e,sections:[],seo:{__resolveType:fc.seoResolveType},__resolveType:fc.resolveType}}const jb=700;function gl(t){const e=H.c(21),{orgSlug:s,virtualMcpId:i,branch:r}=t,o=Gs();let a;e[0]!==r||e[1]!==s||e[2]!==i?(a=async u=>{const{blockKey:f,data:m}=u,p=Jh(f),g=JSON.stringify(m,null,2),v=await fetch(`/api/${s}/sandbox/${encodeURIComponent(i)}/${encodeURIComponent(r)}/write`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:p,content:g})});if(!v.ok){const b=await v.json().catch(Nb);throw new Error(b.error??`Write failed (${v.status})`)}return v.json()},e[0]=r,e[1]=s,e[2]=i,e[3]=a):a=e[3];let l;e[4]!==r||e[5]!==s||e[6]!==o||e[7]!==i?(l=async u=>{const{blockKey:f,data:m}=u,p=`${s}/${i}/${r}`,g=Tt.decofile(p);await o.cancelQueries({queryKey:g});const v=o.getQueryData(g);return o.setQueryData(g,b=>({...b??{},[f]:m})),{previous:v,queryKey:g}},e[4]=r,e[5]=s,e[6]=o,e[7]=i,e[8]=l):l=e[8];let h;e[9]!==o?(h=(u,f,m)=>{m?.queryKey&&o.setQueryData(m.queryKey,m.previous)},e[9]=o,e[10]=h):h=e[10];let c;e[11]!==r||e[12]!==s||e[13]!==o||e[14]!==i?(c=(u,f)=>{const{blockKey:m,data:p}=f,g=`${s}/${i}/${r}`;o.setQueryData(Tt.decofile(g),v=>({...v??{},[m]:p}))},e[11]=r,e[12]=s,e[13]=o,e[14]=i,e[15]=c):c=e[15];let d;return e[16]!==a||e[17]!==l||e[18]!==h||e[19]!==c?(d={mutationFn:a,onMutate:l,onError:h,onSuccess:c},e[16]=a,e[17]=l,e[18]=h,e[19]=c,e[20]=d):d=e[20],xi(d)}function Nb(){return{}}function Zj(t,e){const s=H.c(15),i=gl(t);let r;s[0]===Symbol.for("react.memo_cache_sentinel")?(r=new Map,s[0]=r):r=s[0];const o=P.useRef(r);let a;s[1]===Symbol.for("react.memo_cache_sentinel")?(a=new Map,s[1]=a):a=s[1];const l=P.useRef(a);let h;s[2]!==e||s[3]!==i?(h=b=>{const x=o.current.get(b);if(!x)return;const _=typeof x=="function"?x():x;o.current.delete(b),_&&i.mutate({blockKey:b,data:_},{onSuccess:()=>e?.onSaved?.(),onError:Eb})},s[2]=e,s[3]=i,s[4]=h):h=s[4];const c=h;let d;s[5]!==c?(d=()=>{for(const b of l.current.values())clearTimeout(b);l.current.clear();for(const b of[...o.current.keys()])c(b)},s[5]=c,s[6]=d):d=s[6];const u=d;let f,m;s[7]===Symbol.for("react.memo_cache_sentinel")?(f=()=>{const b=l.current;return()=>{for(const x of b.values())clearTimeout(x)}},m=[],s[7]=f,s[8]=m):(f=s[7],m=s[8]),P.useEffect(f,m);let p;s[9]!==c?(p=(b,x)=>{o.current.set(b,x);const _=l.current.get(b);_&&clearTimeout(_),l.current.set(b,setTimeout(()=>{l.current.delete(b),c(b)},jb))},s[9]=c,s[10]=p):p=s[10];const g=p;let v;return s[11]!==u||s[12]!==g||s[13]!==i.isPending?(v={save:g,flush:u,isPending:i.isPending},s[11]=u,s[12]=g,s[13]=i.isPending,s[14]=v):v=s[14],v}function Eb(t){return ae.error(`Save failed: ${t.message}`)}function Tb(t){const e=H.c(5);let s;e[0]!==t?(s=t??{orgSlug:"",virtualMcpId:"",branch:""},e[0]=t,e[1]=s):s=e[1];const i=gl(s);let r;return e[2]!==t||e[3]!==i?(r={mutationFn:async o=>{const{name:a,path:l}=o;if(!t?.virtualMcpId||!t.branch)throw new Error("Sandbox not ready");const h=pl(a),c=Eu(a,l);return await i.mutateAsync({blockKey:h,data:c}),{key:h,name:a,path:l}}},e[2]=t,e[3]=i,e[4]=r):r=e[4],xi(r)}function Pb(t){const e=H.c(50),{open:s,onOpenChange:i,isPending:r,error:o,onSubmit:a}=t,l=r===void 0?!1:r,[h,c]=P.useState("My New Page"),[d,u]=P.useState("/example-path"),[f,m]=P.useState(null),[p,g]=P.useState(s);s!==p&&(g(s),s&&(c("My New Page"),u("/example-path"),m(null)));let v;e[0]!==l||e[1]!==i?(v=z=>{!z&&!l&&(m(null),i(!1))},e[0]=l,e[1]=i,e[2]=v):v=e[2];const b=v;let x;e[3]!==l||e[4]!==h||e[5]!==a||e[6]!==d?(x=async z=>{z.preventDefault();const K=h.trim(),G=d.trim();if(!K||!G||l)return;const X=tl(G);if(X){m(X);return}m(null),await a({name:K,path:G})},e[3]=l,e[4]=h,e[5]=a,e[6]=d,e[7]=x):x=e[7];const _=x,y=f??o;let S;e[8]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(fs,{children:n.jsx(ms,{children:"Create new page"})}),e[8]=S):S=e[8];let w;e[9]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx("label",{htmlFor:"new-page-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[9]=w):w=e[9];let j;e[10]===Symbol.for("react.memo_cache_sentinel")?(j=z=>c(z.target.value),e[10]=j):j=e[10];let E;e[11]!==l||e[12]!==h?(E=n.jsxs("div",{className:"space-y-1.5",children:[w,n.jsx(tt,{id:"new-page-name",value:h,onChange:j,placeholder:"My New Page",autoFocus:!0,disabled:l})]}),e[11]=l,e[12]=h,e[13]=E):E=e[13];let T;e[14]===Symbol.for("react.memo_cache_sentinel")?(T=n.jsx("label",{htmlFor:"new-page-path",className:"text-xs font-medium text-muted-foreground",children:"Path"}),e[14]=T):T=e[14];let A;e[15]===Symbol.for("react.memo_cache_sentinel")?(A=z=>u(z.target.value),e[15]=A):A=e[15];let R;e[16]!==l||e[17]!==d?(R=n.jsxs("div",{className:"space-y-1.5",children:[T,n.jsx(tt,{id:"new-page-path",value:d,onChange:A,placeholder:"/example-path",disabled:l})]}),e[16]=l,e[17]=d,e[18]=R):R=e[18];let k;e[19]!==y?(k=y&&n.jsx("p",{className:"text-xs text-destructive",children:y}),e[19]=y,e[20]=k):k=e[20];let C;e[21]!==R||e[22]!==k||e[23]!==E?(C=n.jsxs("div",{className:"space-y-4 py-4",children:[E,R,k]}),e[21]=R,e[22]=k,e[23]=E,e[24]=C):C=e[24];let D;e[25]!==i?(D=()=>i(!1),e[25]=i,e[26]=D):D=e[26];let N;e[27]!==l||e[28]!==D?(N=n.jsx(oe,{type:"button",variant:"outline",onClick:D,disabled:l,children:"Cancel"}),e[27]=l,e[28]=D,e[29]=N):N=e[29];let L;e[30]!==l||e[31]!==h||e[32]!==d?(L=!h.trim()||!d.trim()||l,e[30]=l,e[31]=h,e[32]=d,e[33]=L):L=e[33];let B;e[34]!==l?(B=l?n.jsxs(n.Fragment,{children:[n.jsx(Ne,{size:14,className:"animate-spin"}),"Creating…"]}):"Create",e[34]=l,e[35]=B):B=e[35];let I;e[36]!==L||e[37]!==B?(I=n.jsx(oe,{type:"submit",disabled:L,children:B}),e[36]=L,e[37]=B,e[38]=I):I=e[38];let M;e[39]!==N||e[40]!==I?(M=n.jsxs(Qs,{children:[N,I]}),e[39]=N,e[40]=I,e[41]=M):M=e[41];let O;e[42]!==_||e[43]!==C||e[44]!==M?(O=n.jsx(Vt,{className:"sm:max-w-md",children:n.jsxs("form",{onSubmit:_,children:[S,C,M]})}),e[42]=_,e[43]=C,e[44]=M,e[45]=O):O=e[45];let F;return e[46]!==b||e[47]!==s||e[48]!==O?(F=n.jsx(Kt,{open:s,onOpenChange:b,children:O}),e[46]=b,e[47]=s,e[48]=O,e[49]=F):F=e[49],F}const Ab=Fr({tag:Yt(),id:Yt(),classes:Yt(),text:Yt(),html:Yt(),manifestKey:Yt().nullable(),componentName:Yt().nullable(),parents:Yt(),url:Yt(),path:Yt(),viewport:Fr({width:Ki(),height:Ki()}),position:Fr({x:Ki(),y:Ki()})}),Rb=`(function() {
|
|
38
|
-
if (window.__visualEditorActive) return;
|
|
39
|
-
window.__visualEditorActive = true;
|
|
40
|
-
|
|
41
|
-
var cursorStyle = document.createElement("style");
|
|
42
|
-
cursorStyle.textContent = "* { cursor: default !important; }";
|
|
43
|
-
document.head.appendChild(cursorStyle);
|
|
44
|
-
|
|
45
|
-
var highlight = document.createElement("div");
|
|
46
|
-
highlight.style.cssText = "position:fixed;pointer-events:none;outline:2px solid #a855f7;background:rgba(168,85,247,0.08);border-radius:2px;z-index:2147483647;display:none;";
|
|
47
|
-
document.body.appendChild(highlight);
|
|
48
|
-
|
|
49
|
-
var badge = document.createElement("div");
|
|
50
|
-
badge.style.cssText = "position:fixed;pointer-events:none;background:#a855f7;color:white;font:11px/1 monospace;padding:2px 6px;border-radius:2px;z-index:2147483647;display:none;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;";
|
|
51
|
-
document.body.appendChild(badge);
|
|
52
|
-
|
|
53
|
-
var lastTarget = null;
|
|
54
|
-
var rafPending = false;
|
|
55
|
-
var moveHandler = function(e) {
|
|
56
|
-
if (rafPending) return;
|
|
57
|
-
rafPending = true;
|
|
58
|
-
var target = e.target;
|
|
59
|
-
requestAnimationFrame(function() {
|
|
60
|
-
rafPending = false;
|
|
61
|
-
var el = target;
|
|
62
|
-
if (!el || el === highlight || el === badge) return;
|
|
63
|
-
if (el === lastTarget) return;
|
|
64
|
-
lastTarget = el;
|
|
65
|
-
var r = el.getBoundingClientRect();
|
|
66
|
-
highlight.style.display = "block";
|
|
67
|
-
highlight.style.top = r.top + "px";
|
|
68
|
-
highlight.style.left = r.left + "px";
|
|
69
|
-
highlight.style.width = r.width + "px";
|
|
70
|
-
highlight.style.height = r.height + "px";
|
|
71
|
-
var tag = el.tagName.toLowerCase();
|
|
72
|
-
var id = el.id ? "#" + el.id : "";
|
|
73
|
-
var cls = el.className && typeof el.className === "string"
|
|
74
|
-
? "." + el.className.trim().split(/\\s+/).slice(0, 2).join(".")
|
|
75
|
-
: "";
|
|
76
|
-
badge.textContent = tag + id + cls;
|
|
77
|
-
badge.style.display = "block";
|
|
78
|
-
badge.style.top = Math.max(0, r.top - 20) + "px";
|
|
79
|
-
badge.style.left = r.left + "px";
|
|
80
|
-
});
|
|
81
|
-
};
|
|
82
|
-
document.addEventListener("mousemove", moveHandler, true);
|
|
83
|
-
|
|
84
|
-
var outHandler = function(e) {
|
|
85
|
-
if (!e.relatedTarget || e.relatedTarget === document.documentElement) {
|
|
86
|
-
highlight.style.display = "none";
|
|
87
|
-
badge.style.display = "none";
|
|
88
|
-
lastTarget = null;
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
document.addEventListener("mouseout", outHandler, true);
|
|
92
|
-
|
|
93
|
-
var clickHandler = function(e) {
|
|
94
|
-
e.preventDefault();
|
|
95
|
-
e.stopImmediatePropagation();
|
|
96
|
-
var el = e.target;
|
|
97
|
-
if (!el || el === highlight || el === badge) return;
|
|
98
|
-
|
|
99
|
-
highlight.style.outline = "2px solid #a855f7";
|
|
100
|
-
highlight.style.background = "rgba(168,85,247,0.15)";
|
|
101
|
-
setTimeout(function() {
|
|
102
|
-
highlight.style.outline = "2px solid #a855f7";
|
|
103
|
-
highlight.style.background = "rgba(168,85,247,0.08)";
|
|
104
|
-
}, 400);
|
|
105
|
-
|
|
106
|
-
var tag = el.tagName.toLowerCase();
|
|
107
|
-
var id = el.id || "";
|
|
108
|
-
var classes = el.className && typeof el.className === "string" ? el.className.trim() : "";
|
|
109
|
-
var text = (el.textContent || "").trim().slice(0, 200);
|
|
110
|
-
var html = (el.outerHTML || "").slice(0, 800).replace(/\\svalue=("[^"]*"|'[^']*'|\\S+)/gi, "");
|
|
111
|
-
|
|
112
|
-
var closestSection = el.closest("section[data-manifest-key]");
|
|
113
|
-
var manifestKey = closestSection ? closestSection.getAttribute("data-manifest-key") : null;
|
|
114
|
-
|
|
115
|
-
var ancestor = el;
|
|
116
|
-
var componentName = null;
|
|
117
|
-
for (var i = 0; i < 10 && ancestor; i++) {
|
|
118
|
-
if (ancestor.dataset) componentName = ancestor.dataset.componentName || componentName;
|
|
119
|
-
ancestor = ancestor.parentElement;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
var parents = [];
|
|
123
|
-
var p = el.parentElement;
|
|
124
|
-
for (var j = 0; j < 4 && p && p !== document.body; j++) {
|
|
125
|
-
var pTag = p.tagName ? p.tagName.toLowerCase() : "";
|
|
126
|
-
var pId = p.id ? "#" + p.id : "";
|
|
127
|
-
var pCls = p.className && typeof p.className === "string"
|
|
128
|
-
? "." + p.className.trim().split(/\\s+/)[0]
|
|
129
|
-
: "";
|
|
130
|
-
parents.unshift(pTag + pId + pCls);
|
|
131
|
-
p = p.parentElement;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
window.parent.postMessage({
|
|
135
|
-
type: "visual-editor::element-clicked",
|
|
136
|
-
payload: {
|
|
137
|
-
tag: tag, id: id, classes: classes, text: text, html: html,
|
|
138
|
-
manifestKey: manifestKey, componentName: componentName,
|
|
139
|
-
parents: parents.join(" > "),
|
|
140
|
-
url: window.location.href, path: window.location.pathname,
|
|
141
|
-
viewport: { width: window.innerWidth, height: window.innerHeight },
|
|
142
|
-
position: { x: Math.round(e.clientX), y: Math.round(e.clientY) }
|
|
143
|
-
}
|
|
144
|
-
}, "*");
|
|
145
|
-
};
|
|
146
|
-
document.addEventListener("click", clickHandler, true);
|
|
147
|
-
|
|
148
|
-
window.addEventListener("message", function(e) {
|
|
149
|
-
if (e.data && e.data.type === "visual-editor::deactivate") {
|
|
150
|
-
highlight.remove();
|
|
151
|
-
badge.remove();
|
|
152
|
-
cursorStyle.remove();
|
|
153
|
-
document.removeEventListener("mousemove", moveHandler, true);
|
|
154
|
-
document.removeEventListener("mouseout", outHandler, true);
|
|
155
|
-
document.removeEventListener("click", clickHandler, true);
|
|
156
|
-
window.__visualEditorActive = false;
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
})();`,Db=Fr({sectionIndex:Ki(),manifestKey:Yt()}),Ib=`(function() {
|
|
160
|
-
if (window.__cmsEditorActive) return;
|
|
161
|
-
window.__cmsEditorActive = true;
|
|
162
|
-
|
|
163
|
-
// Preserve scroll across variant-override navigations and save-reloads.
|
|
164
|
-
// Selecting a variant rebuilds the iframe src (new x-deco-matchers-override)
|
|
165
|
-
// or reloads it, which would otherwise jump to the top. We persist the scroll
|
|
166
|
-
// offset to sessionStorage (survives reload, same-origin) keyed by pathname
|
|
167
|
-
// (the override only changes the query, so the key is stable), then restore it
|
|
168
|
-
// on the next load — retried for ~1s so it outlasts re-hydration and lazy
|
|
169
|
-
// sections that grow the page after load. The recency guard avoids restoring a
|
|
170
|
-
// stale offset on a genuinely fresh visit.
|
|
171
|
-
var SCROLL_KEY = "__cms_preview_scroll:" + location.pathname;
|
|
172
|
-
var saveScroll = function() {
|
|
173
|
-
try {
|
|
174
|
-
sessionStorage.setItem(SCROLL_KEY, JSON.stringify({
|
|
175
|
-
x: window.scrollX, y: window.scrollY, t: Date.now()
|
|
176
|
-
}));
|
|
177
|
-
} catch (_) {}
|
|
178
|
-
};
|
|
179
|
-
var saveScrollPending = false;
|
|
180
|
-
window.addEventListener("scroll", function() {
|
|
181
|
-
if (saveScrollPending) return;
|
|
182
|
-
saveScrollPending = true;
|
|
183
|
-
requestAnimationFrame(function() { saveScrollPending = false; saveScroll(); });
|
|
184
|
-
}, { passive: true });
|
|
185
|
-
(function restoreScroll() {
|
|
186
|
-
var raw = null;
|
|
187
|
-
try { raw = sessionStorage.getItem(SCROLL_KEY); } catch (_) {}
|
|
188
|
-
if (!raw) return;
|
|
189
|
-
var saved = null;
|
|
190
|
-
try { saved = JSON.parse(raw); } catch (_) { return; }
|
|
191
|
-
if (!saved || (Date.now() - saved.t) > 10000) return;
|
|
192
|
-
if (!saved.x && !saved.y) return;
|
|
193
|
-
var attempts = 0;
|
|
194
|
-
var apply = function() {
|
|
195
|
-
attempts++;
|
|
196
|
-
window.scrollTo(saved.x || 0, saved.y || 0);
|
|
197
|
-
if (attempts < 8) setTimeout(apply, 120);
|
|
198
|
-
};
|
|
199
|
-
apply();
|
|
200
|
-
})();
|
|
201
|
-
|
|
202
|
-
var highlight = document.createElement("div");
|
|
203
|
-
highlight.style.cssText = "position:absolute;pointer-events:none;outline:2px solid #06b6d4;background:rgba(6,182,212,0.06);border-radius:2px;z-index:2147483647;display:none;";
|
|
204
|
-
document.body.appendChild(highlight);
|
|
205
|
-
|
|
206
|
-
var badge = document.createElement("div");
|
|
207
|
-
badge.style.cssText = "position:absolute;pointer-events:none;background:#06b6d4;color:white;font:11px/1 monospace;padding:2px 6px;border-radius:2px;z-index:2147483647;display:none;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;";
|
|
208
|
-
document.body.appendChild(badge);
|
|
209
|
-
|
|
210
|
-
var isTopLevelSection = function(el) {
|
|
211
|
-
return el && el.parentElement
|
|
212
|
-
? !el.parentElement.closest("section[data-manifest-key]")
|
|
213
|
-
: true;
|
|
214
|
-
};
|
|
215
|
-
|
|
216
|
-
// All top-level page sections in DOM order (deco renders page sections as
|
|
217
|
-
// <section data-manifest-key>; nested islands/sections carry the attribute
|
|
218
|
-
// too, hence the top-level filter). This is the full DOM run, framework
|
|
219
|
-
// sections included — getAllSections() narrows it to the editable window.
|
|
220
|
-
var topLevelSections = function() {
|
|
221
|
-
return Array.from(document.querySelectorAll("section[data-manifest-key]"))
|
|
222
|
-
.filter(isTopLevelSection);
|
|
223
|
-
};
|
|
224
|
-
|
|
225
|
-
// Candidate manifest keys per editable section, sent by the editor. Each
|
|
226
|
-
// entry is an array of acceptable DOM keys: [] = wildcard (e.g. multivariate,
|
|
227
|
-
// whose rendered key we can't predict); a Lazy lists both its loader key and
|
|
228
|
-
// the inner section's key, since the classic runtime keeps the Lazy wrapper
|
|
229
|
-
// at top level while TanStack renders the inner section directly.
|
|
230
|
-
var sectionCandidates = [];
|
|
231
|
-
|
|
232
|
-
// Best in-order assignment of editable sections to DOM sections, maximizing
|
|
233
|
-
// key matches (DP / LCS-style). deco injects framework sections (SEO, Theme,
|
|
234
|
-
// Session, …) that may lead, trail, OR interleave with the editable run; this
|
|
235
|
-
// skips whichever don't match, on any runtime — no hardcoded list.
|
|
236
|
-
var computeAlignment = function(tops) {
|
|
237
|
-
var N = sectionCandidates.length, M = tops.length;
|
|
238
|
-
if (!N || M < N) return tops.slice();
|
|
239
|
-
var domKeys = tops.map(function(s) { return s.getAttribute("data-manifest-key"); });
|
|
240
|
-
var match = function(i, j) {
|
|
241
|
-
var c = sectionCandidates[i];
|
|
242
|
-
if (!c || !c.length) return 1;
|
|
243
|
-
return c.indexOf(domKeys[j]) >= 0 ? 1 : 0;
|
|
244
|
-
};
|
|
245
|
-
var dp = [], bt = [], i, j;
|
|
246
|
-
for (i = 0; i <= N; i++) { dp.push(new Array(M + 1).fill(0)); bt.push(new Array(M + 1).fill(0)); }
|
|
247
|
-
for (i = 1; i <= N; i++) {
|
|
248
|
-
for (j = i; j <= M; j++) {
|
|
249
|
-
var assign = dp[i - 1][j - 1] + match(i - 1, j - 1);
|
|
250
|
-
var skip = dp[i][j - 1];
|
|
251
|
-
if (j - 1 >= i && skip >= assign) { dp[i][j] = skip; bt[i][j] = 0; }
|
|
252
|
-
else { dp[i][j] = assign; bt[i][j] = 1; }
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
var res = new Array(N);
|
|
256
|
-
i = N; j = M;
|
|
257
|
-
while (i > 0) {
|
|
258
|
-
if (bt[i][j] === 1) { res[i - 1] = tops[j - 1]; i--; j--; }
|
|
259
|
-
else { j--; }
|
|
260
|
-
}
|
|
261
|
-
return res;
|
|
262
|
-
};
|
|
263
|
-
|
|
264
|
-
// Editable sections, indexed to match the decofile array the panel uses.
|
|
265
|
-
// Recomputed from the live DOM each call (cheap, rAF-throttled) so it
|
|
266
|
-
// self-heals as client-rendered/lazy sections mount. Until the editor sends
|
|
267
|
-
// candidates, fall back to the full top-level run.
|
|
268
|
-
var getAllSections = function() {
|
|
269
|
-
var tops = topLevelSections();
|
|
270
|
-
return sectionCandidates.length ? computeAlignment(tops) : tops;
|
|
271
|
-
};
|
|
272
|
-
|
|
273
|
-
// Resolve to the OUTERMOST page-level section (clicking nested content still
|
|
274
|
-
// maps to the top-level section the panel indexes); null if it isn't in the
|
|
275
|
-
// aligned editable set (a framework section deco injected).
|
|
276
|
-
var findSection = function(el) {
|
|
277
|
-
var node = el;
|
|
278
|
-
var found = null;
|
|
279
|
-
while (node && node !== document.body) {
|
|
280
|
-
if (node.tagName === "SECTION" && node.hasAttribute && node.hasAttribute("data-manifest-key")) {
|
|
281
|
-
found = node;
|
|
282
|
-
}
|
|
283
|
-
node = node.parentElement;
|
|
284
|
-
}
|
|
285
|
-
if (!found) return null;
|
|
286
|
-
return getAllSections().indexOf(found) >= 0 ? found : null;
|
|
287
|
-
};
|
|
288
|
-
|
|
289
|
-
// Lazy sections async-render their real section inside a wrapper, so the
|
|
290
|
-
// wrapper's key is just the loader. Show the inner section's key instead
|
|
291
|
-
// (falling back to the wrapper while the content hasn't loaded yet).
|
|
292
|
-
var LAZY_KEY = "website/sections/Rendering/Lazy.tsx";
|
|
293
|
-
var displayKey = function(section) {
|
|
294
|
-
var key = section.getAttribute("data-manifest-key") || "section";
|
|
295
|
-
if (key === LAZY_KEY) {
|
|
296
|
-
var inner = section.querySelector("section[data-manifest-key]");
|
|
297
|
-
if (inner) return inner.getAttribute("data-manifest-key") || key;
|
|
298
|
-
}
|
|
299
|
-
return key;
|
|
300
|
-
};
|
|
301
|
-
|
|
302
|
-
// Per-section metadata sent by the editor, aligned by index with
|
|
303
|
-
// getAllSections(). labels: names the DOM can't carry (a global section or a
|
|
304
|
-
// global inside async rendering); kinds: section type that drives the color.
|
|
305
|
-
var sectionLabels = [];
|
|
306
|
-
var sectionKinds = [];
|
|
307
|
-
var labelFor = function(section) {
|
|
308
|
-
var idx = getAllSections().indexOf(section);
|
|
309
|
-
if (idx >= 0 && sectionLabels[idx]) return sectionLabels[idx];
|
|
310
|
-
return displayKey(section);
|
|
311
|
-
};
|
|
312
|
-
var kindFor = function(section) {
|
|
313
|
-
var idx = getAllSections().indexOf(section);
|
|
314
|
-
return (idx >= 0 && sectionKinds[idx]) || "normal";
|
|
315
|
-
};
|
|
316
|
-
|
|
317
|
-
// Highlight palette by section kind: global = light purple, variant = green,
|
|
318
|
-
// normal = blue.
|
|
319
|
-
var COLORS = {
|
|
320
|
-
normal: { solid: "#06b6d4", bg: "rgba(6,182,212,0.06)", active: "rgba(6,182,212,0.18)" },
|
|
321
|
-
global: { solid: "#c084fc", bg: "rgba(192,132,252,0.10)", active: "rgba(192,132,252,0.22)" },
|
|
322
|
-
variant: { solid: "#22c55e", bg: "rgba(34,197,94,0.08)", active: "rgba(34,197,94,0.20)" }
|
|
323
|
-
};
|
|
324
|
-
var applyColor = function(kind) {
|
|
325
|
-
var c = COLORS[kind] || COLORS.normal;
|
|
326
|
-
highlight.style.outline = "2px solid " + c.solid;
|
|
327
|
-
highlight.style.background = c.bg;
|
|
328
|
-
badge.style.background = c.solid;
|
|
329
|
-
};
|
|
330
|
-
|
|
331
|
-
var lastSection = null;
|
|
332
|
-
var lastLabel = "";
|
|
333
|
-
var lastKind = "normal";
|
|
334
|
-
var rafPending = false;
|
|
335
|
-
|
|
336
|
-
// Document-relative coordinates (rect + scroll) on absolutely-positioned
|
|
337
|
-
// nodes, so the browser scrolls the highlight together with the page
|
|
338
|
-
// natively — no per-frame JS repositioning, no scroll lag.
|
|
339
|
-
var positionHighlight = function(section) {
|
|
340
|
-
var r = section.getBoundingClientRect();
|
|
341
|
-
var top = r.top + window.scrollY;
|
|
342
|
-
var left = r.left + window.scrollX;
|
|
343
|
-
highlight.style.display = "block";
|
|
344
|
-
highlight.style.top = top + "px";
|
|
345
|
-
highlight.style.left = left + "px";
|
|
346
|
-
highlight.style.width = r.width + "px";
|
|
347
|
-
highlight.style.height = r.height + "px";
|
|
348
|
-
badge.textContent = lastLabel || displayKey(section);
|
|
349
|
-
badge.style.display = "block";
|
|
350
|
-
badge.style.top = Math.max(0, top - 20) + "px";
|
|
351
|
-
badge.style.left = left + "px";
|
|
352
|
-
};
|
|
353
|
-
|
|
354
|
-
var moveHandler = function(e) {
|
|
355
|
-
if (rafPending) return;
|
|
356
|
-
rafPending = true;
|
|
357
|
-
var target = e.target;
|
|
358
|
-
requestAnimationFrame(function() {
|
|
359
|
-
rafPending = false;
|
|
360
|
-
if (!target || target === highlight || target === badge) return;
|
|
361
|
-
var section = findSection(target);
|
|
362
|
-
if (section === lastSection) return;
|
|
363
|
-
lastSection = section;
|
|
364
|
-
if (!section) {
|
|
365
|
-
highlight.style.display = "none";
|
|
366
|
-
badge.style.display = "none";
|
|
367
|
-
return;
|
|
368
|
-
}
|
|
369
|
-
lastLabel = labelFor(section);
|
|
370
|
-
lastKind = kindFor(section);
|
|
371
|
-
applyColor(lastKind);
|
|
372
|
-
positionHighlight(section);
|
|
373
|
-
});
|
|
374
|
-
};
|
|
375
|
-
document.addEventListener("mousemove", moveHandler, true);
|
|
376
|
-
|
|
377
|
-
// Window scroll is handled natively by the absolute positioning above; this
|
|
378
|
-
// only re-syncs on resize and on scrolls inside nested scroll containers
|
|
379
|
-
// (capture=true catches those), where document coordinates do shift.
|
|
380
|
-
var reposition = function() {
|
|
381
|
-
if (!lastSection || highlight.style.display === "none") return;
|
|
382
|
-
if (rafPending) return;
|
|
383
|
-
rafPending = true;
|
|
384
|
-
requestAnimationFrame(function() {
|
|
385
|
-
rafPending = false;
|
|
386
|
-
if (lastSection && highlight.style.display !== "none") positionHighlight(lastSection);
|
|
387
|
-
});
|
|
388
|
-
};
|
|
389
|
-
window.addEventListener("scroll", reposition, { capture: true, passive: true });
|
|
390
|
-
window.addEventListener("resize", reposition, { passive: true });
|
|
391
|
-
|
|
392
|
-
var outHandler = function(e) {
|
|
393
|
-
if (!e.relatedTarget || e.relatedTarget === document.documentElement) {
|
|
394
|
-
highlight.style.display = "none";
|
|
395
|
-
badge.style.display = "none";
|
|
396
|
-
lastSection = null;
|
|
397
|
-
}
|
|
398
|
-
};
|
|
399
|
-
document.addEventListener("mouseout", outHandler, true);
|
|
400
|
-
|
|
401
|
-
var clickHandler = function(e) {
|
|
402
|
-
e.preventDefault();
|
|
403
|
-
e.stopImmediatePropagation();
|
|
404
|
-
var target = e.target;
|
|
405
|
-
if (!target || target === highlight || target === badge) return;
|
|
406
|
-
var section = findSection(target);
|
|
407
|
-
if (!section) return;
|
|
408
|
-
|
|
409
|
-
var sections = getAllSections();
|
|
410
|
-
var sectionIndex = sections.indexOf(section);
|
|
411
|
-
var manifestKey = section.getAttribute("data-manifest-key") || "";
|
|
412
|
-
|
|
413
|
-
var c = COLORS[lastKind] || COLORS.normal;
|
|
414
|
-
highlight.style.outline = "2px solid " + c.solid;
|
|
415
|
-
highlight.style.background = c.active;
|
|
416
|
-
setTimeout(function() {
|
|
417
|
-
highlight.style.background = c.bg;
|
|
418
|
-
}, 400);
|
|
419
|
-
|
|
420
|
-
window.parent.postMessage({
|
|
421
|
-
type: "cms-editor::section-clicked",
|
|
422
|
-
payload: { sectionIndex: sectionIndex, manifestKey: manifestKey }
|
|
423
|
-
}, "*");
|
|
424
|
-
};
|
|
425
|
-
document.addEventListener("click", clickHandler, true);
|
|
426
|
-
|
|
427
|
-
window.addEventListener("message", function(e) {
|
|
428
|
-
if (e.data && e.data.type === "cms-editor::set-labels" && Array.isArray(e.data.labels)) {
|
|
429
|
-
sectionLabels = e.data.labels;
|
|
430
|
-
if (Array.isArray(e.data.kinds)) sectionKinds = e.data.kinds;
|
|
431
|
-
if (Array.isArray(e.data.keys)) sectionCandidates = e.data.keys;
|
|
432
|
-
if (lastSection) {
|
|
433
|
-
lastLabel = labelFor(lastSection);
|
|
434
|
-
lastKind = kindFor(lastSection);
|
|
435
|
-
applyColor(lastKind);
|
|
436
|
-
if (highlight.style.display !== "none") positionHighlight(lastSection);
|
|
437
|
-
}
|
|
438
|
-
return;
|
|
439
|
-
}
|
|
440
|
-
if (e.data && e.data.type === "cms-editor::deactivate") {
|
|
441
|
-
highlight.remove();
|
|
442
|
-
badge.remove();
|
|
443
|
-
document.removeEventListener("mousemove", moveHandler, true);
|
|
444
|
-
document.removeEventListener("mouseout", outHandler, true);
|
|
445
|
-
document.removeEventListener("click", clickHandler, true);
|
|
446
|
-
window.removeEventListener("scroll", reposition, { capture: true });
|
|
447
|
-
window.removeEventListener("resize", reposition);
|
|
448
|
-
window.__cmsEditorActive = false;
|
|
449
|
-
}
|
|
450
|
-
});
|
|
451
|
-
})();`;function ri(t){return t.replace(/[`*_]/g,"\\$&")}function Lb(t,e){const s=[`The user selected an element on the live preview and asked: **"${ri(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:** \`${ri(t.manifestKey)}\``,"");const i=`<${t.tag}${t.classes?` class="${ri(t.classes)}"`:""}>`;s.push(`**Clicked element:** \`${i}\``),t.parents&&s.push(`**DOM breadcrumb:** ${ri(t.parents)} > ${t.tag}`),t.text&&s.push(`**Text content:** "${ri(t.text)}"`),t.componentName&&s.push(`**Component name:** ${ri(t.componentName)}`);const r=t.html.replace(/```/g,"`` `");return s.push("","**HTML snippet:**","```html",r,"```"),s.push("","Please read the source file, locate the element, and apply the requested change."),s.join(`
|
|
452
|
-
`)}function Bb(t,e,s=320,i=44,r=12){const{x:o,y:a}=t,{width:l,height:h}=e,c=Math.max(r,Math.min(o-s/2,l-s-r)),u=a/h>.68?Math.max(r,a-i-18):Math.min(a+18,h-i-r);return{leftPct:c/l*100,topPct:u/h*100}}function Mb(t){const e=H.c(32),{element:s,onDismiss:i}=t,[r,o]=P.useState(""),a=P.useRef(null),{sendMessage:l}=Ys(),{setChatOpen:h}=ja();let c;e[0]!==s||e[1]!==r||e[2]!==i||e[3]!==l||e[4]!==h?(c=()=>{if(!r.trim())return;const A=Lb(s,r);h(!0),l({parts:[{type:"text",text:A}]}),i()},e[0]=s,e[1]=r,e[2]=i,e[3]=l,e[4]=h,e[5]=c):c=e[5];const d=c;let u;e[6]!==s.position||e[7]!==s.viewport?(u=Bb(s.position,s.viewport),e[6]=s.position,e[7]=s.viewport,e[8]=u):u=e[8];const f=u,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 v;e[12]!==d?(v=A=>{A.preventDefault(),d()},e[12]=d,e[13]=v):v=e[13];let b;e[14]===Symbol.for("react.memo_cache_sentinel")?(b=A=>o(A.target.value),e[14]=b):b=e[14];let x;e[15]!==i?(x=A=>{A.key==="Escape"&&i()},e[15]=i,e[16]=x):x=e[16];let _;e[17]!==r||e[18]!==x?(_=n.jsx("input",{ref:a,autoFocus:!0,type:"text",value:r,onChange:b,onKeyDown:x,placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"}),e[17]=r,e[18]=x,e[19]=_):_=e[19];let y;e[20]!==r?(y=r.trim(),e[20]=r,e[21]=y):y=e[21];const S=!y;let w;e[22]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[n.jsx("title",{children:"Send"}),n.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e[22]=w):w=e[22];let j;e[23]!==S?(j=n.jsx("button",{type:"submit",disabled:S,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:w}),e[23]=S,e[24]=j):j=e[24];let E;e[25]!==j||e[26]!==v||e[27]!==_?(E=n.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:v,children:[_,j]}),e[25]=j,e[26]=v,e[27]=_,e[28]=E):E=e[28];let T;return e[29]!==E||e[30]!==g?(T=n.jsx("div",{className:"absolute z-30 pointer-events-none",style:g,children:E}),e[29]=E,e[30]=g,e[31]=T):T=e[31],T}const Tu={claiming:{long:"Reserving sandbox",short:"Reserving sandbox"},"waiting-for-capacity":{long:"Waiting for cluster capacity",short:"Waiting for capacity"},"pulling-image":{long:"Downloading sandbox image",short:"Downloading image"},"starting-container":{long:"Starting your sandbox",short:"Starting container"},"warming-daemon":{long:"Connecting to your sandbox",short:"Connecting to sandbox"}},Ob=["provision","cloning","install","dev"];function Pu(t){switch(t.lifecycle.phase){case"cloning":case"checking-out":return{step:"cloning",status:"doing"};case"clone-failed":return{step:"cloning",status:"failed"};case"installing":return{step:"install",status:"doing"};case"install-failed":return{step:"install",status:"failed"};case"starting":return{step:"dev",status:"doing"};case"running":return{step:"dev",status:"done"};case"start-failed":return{step:"dev",status:"failed"};case"crashed":return{step:"dev",status:"failed"};case"idle":return t.claimPhase&&t.claimPhase.kind!=="ready"&&t.claimPhase.kind!=="failed"?{step:"provision",status:"doing"}:{step:"cloning",status:"doing"}}}function $b(t){switch(t){case"starting":return"Starting your sandbox";case"suspended":return"Sandbox is paused"}}function zb(t){return Ob.indexOf(t.step)}const mc=48,Au=28,Ru=3,Fb=(()=>{const t=[];let e=0;for(let s=0;s<mc;s++)s===Au?t.push(null):(t.push(e/(mc-1)*Ru),e++);return t})(),Hb={provision:"Reserving sandbox",cloning:"Cloning your repo",install:"Installing packages",dev:"Starting your preview"};function Wb(t,e){return t.step==="provision"&&e!=null&&e.kind!=="ready"&&e.kind!=="failed"?Tu[e.kind].long:Hb[t.step]}const rs="bg-foreground/[0.05]",Ft="bg-foreground/[0.09]",Ub=Array.from({length:35},()=>Math.random()*1.8),Kb=Array.from({length:35},()=>Math.random()<.4);function Vb(t){const e=H.c(30),{progress:s,claimPhase:i}=t;let r;e[0]!==s?(r=zb(s),e[0]=s,e[1]=r):r=e[1];const o=r;let a;e[2]!==i||e[3]!==s?(a=Wb(s,i),e[2]=i,e[3]=s,e[4]=a):a=e[4];const l=a;let h;e[5]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(Mm,{}),e[5]=h):h=e[5];const c=`${s.step}-${l}`;let d;e[6]!==l||e[7]!==c?(d=n.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:[h,n.jsxs("span",{className:"animate-in fade-in text-[13px] font-medium text-foreground/85 duration-500",children:[l,"…"]},c)]}),e[6]=l,e[7]=c,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(qb,{}),e[9]=u):u=e[9];let f;e[10]!==o?(f=n.jsx(Dr,{phase:0,current:o,children:u}),e[10]=o,e[11]=f):f=e[11];let m;e[12]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(Yb,{}),e[12]=m):m=e[12];let p;e[13]!==o?(p=n.jsx(Dr,{phase:1,current:o,children:m}),e[13]=o,e[14]=p):p=e[14];let g;e[15]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx(Xb,{}),e[15]=g):g=e[15];let v;e[16]!==o?(v=n.jsx(Dr,{phase:2,current:o,children:g}),e[16]=o,e[17]=v):v=e[17];let b;e[18]===Symbol.for("react.memo_cache_sentinel")?(b=n.jsx(Zb,{}),e[18]=b):b=e[18];let x;e[19]!==o?(x=n.jsx(Dr,{phase:3,current:o,children:b}),e[19]=o,e[20]=x):x=e[20];let _;e[21]!==v||e[22]!==x||e[23]!==f||e[24]!==p?(_=n.jsxs("div",{className:"relative aspect-[4/3] w-[min(78%,560px)]",children:[f,p,v,x]}),e[21]=v,e[22]=x,e[23]=f,e[24]=p,e[25]=_):_=e[25];let y;e[26]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx("style",{children:`
|
|
453
|
-
@keyframes vm-pulse-soft {
|
|
454
|
-
0%, 100% { opacity: 0.25; }
|
|
455
|
-
50% { opacity: 1; }
|
|
456
|
-
}
|
|
457
|
-
@keyframes vm-breathe {
|
|
458
|
-
0%, 100% { opacity: 0.5; }
|
|
459
|
-
50% { opacity: 1; }
|
|
460
|
-
}
|
|
461
|
-
@keyframes vm-rack-scan {
|
|
462
|
-
0%, 100% { opacity: 0; }
|
|
463
|
-
8% { opacity: 1; }
|
|
464
|
-
22% { opacity: 0; }
|
|
465
|
-
}
|
|
466
|
-
`}),e[26]=y):y=e[26];let S;return e[27]!==_||e[28]!==d?(S=n.jsxs("div",{className:"relative flex w-full flex-col items-center justify-center gap-12 select-none [clip-path:inset(-24px_0_-200px_0)]",children:[d,_,y]}),e[27]=_,e[28]=d,e[29]=S):S=e[29],S}function Dr(t){const e=H.c(10),{phase:s,current:i,children:r}=t,o=s-i,a=o<0,l=o===0,h=a?90:o*-22,c=a?.94:1-Math.max(o,0)*.04,d=a?0:l?1:o===1?.8:.55,u=a?10:30-o,f=!l;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=le("absolute inset-0 overflow-hidden rounded-xl border border-foreground/10 bg-background shadow-[0_20px_60px_-20px_rgb(0_0_0_/_0.35)] transition-all ease-[cubic-bezier(0.22,1,0.36,1)]"),e[0]=m):m=e[0];const p=`translateY(${h}px) scale(${c})`,g=l?"auto":"none";let v;e[1]!==d||e[2]!==p||e[3]!==g||e[4]!==u?(v={transform:p,opacity:d,zIndex:u,transitionDuration:"1000ms",pointerEvents:g},e[1]=d,e[2]=p,e[3]=g,e[4]=u,e[5]=v):v=e[5];let b;return e[6]!==r||e[7]!==f||e[8]!==v?(b=n.jsx("div",{"aria-hidden":f,className:m,style:v,children:r}),e[6]=r,e[7]=f,e[8]=v,e[9]=b):b=e[9],b}function Bn(t){const e=H.c(7),{showUrl:s}=t,i=s===void 0?!1:s;let r,o,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx("div",{className:le("size-2.5 rounded-full",Ft)}),o=n.jsx("div",{className:le("size-2.5 rounded-full",Ft)}),a=n.jsx("div",{className:le("size-2.5 rounded-full",Ft)}),e[0]=r,e[1]=o,e[2]=a):(r=e[0],o=e[1],a=e[2]);let l;e[3]!==i?(l=i&&n.jsx("div",{className:le("ml-3 h-3.5 max-w-[220px] flex-1 rounded-sm",rs)}),e[3]=i,e[4]=l):l=e[4];let h;return e[5]!==l?(h=n.jsxs("div",{className:"flex h-7 shrink-0 items-center gap-1.5 px-3",children:[r,o,a,l]}),e[5]=l,e[6]=h):h=e[6],h}function qb(){const t=H.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(Bn,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsxs("div",{className:"flex h-full flex-col",children:[e,n.jsx("div",{className:"flex flex-1 px-8 py-5",children:n.jsx("div",{className:"grid h-full w-full grid-cols-8 grid-rows-6 gap-2",children:Fb.map(Gb)})})]}),t[1]=s):s=t[1],s}function Gb(t,e){if(e===Au)return n.jsx("div",{className:"rounded-md bg-chart-1/[0.55]",style:{animation:"vm-breathe 2.4s ease-in-out infinite"}},e);const s=t;return n.jsx("div",{className:le("relative rounded-md",Ft),children:n.jsx("div",{className:"absolute inset-0 rounded-md bg-chart-1/40 opacity-0",style:{animation:`vm-rack-scan ${Ru}s ease-in-out infinite`,animationDelay:`${s}s`}})},e)}function Yb(){const t=H.c(5);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(Bn,{}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx("div",{className:le("w-[18%] rounded-md",rs),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=n.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 r;t[3]===Symbol.for("react.memo_cache_sentinel")?(r=n.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]=r):r=t[3];let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsxs("div",{className:"flex h-full flex-col",children:[e,n.jsxs("div",{className:"flex min-h-0 flex-1 gap-1.5 p-3",children:[s,n.jsxs("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[i,n.jsxs("div",{className:"grid min-h-0 flex-1 grid-cols-5 gap-1.5",children:[r,n.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-1.5",children:[n.jsx("div",{className:le("rounded-md",rs),style:{animation:"vm-breathe 3s ease-in-out 1.2s infinite"}}),n.jsx("div",{className:le("rounded-md",rs),style:{animation:"vm-breathe 3s ease-in-out 1.6s infinite"}})]})]})]})]})]}),t[4]=o):o=t[4],o}function Xb(){const t=H.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(Bn,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsxs("div",{className:"flex h-full flex-col",children:[e,n.jsx("div",{className:"relative flex flex-1 items-center justify-center px-8 py-5",children:n.jsx("div",{className:"grid w-full gap-2",style:{gridTemplateColumns:"repeat(7, minmax(0, 1fr))"},children:Ub.map(Jb)})})]}),t[1]=s):s=t[1],s}function Jb(t,e){return n.jsx("div",{className:le("aspect-square rounded-md",Kb[e]?"bg-chart-2/70":Ft),style:{animation:`vm-pulse-soft 2.2s ease-in-out ${t}s infinite`}},e)}function Zb(){const t=H.c(11);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(Bn,{showUrl:!0}),t[0]=e):e=t[0];let s,i,r,o,a;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx("div",{className:"mb-2 h-5 rounded-md bg-chart-1/[0.10]"}),i=n.jsx("div",{className:le("h-1.5 w-[70%] rounded-sm",Ft)}),r=n.jsx("div",{className:le("h-1.5 w-[55%] rounded-sm",Ft)}),o=n.jsx("div",{className:le("h-1.5 w-[80%] rounded-sm",Ft)}),a=n.jsx("div",{className:le("h-1.5 w-[50%] rounded-sm",Ft)}),t[1]=s,t[2]=i,t[3]=r,t[4]=o,t[5]=a):(s=t[1],i=t[2],r=t[3],o=t[4],a=t[5]);let l;t[6]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsxs("div",{className:"flex w-[18%] shrink-0 flex-col gap-1.5 bg-chart-1/[0.05] p-2.5",children:[s,i,r,o,a,n.jsx("div",{className:"mt-auto",children:n.jsx("div",{className:le("h-4 rounded-md",Ft)})})]}),t[6]=l):l=t[6];let h;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx("div",{className:"relative h-[42%] shrink-0 overflow-hidden bg-chart-1/[0.10]",children:n.jsxs("div",{className:"absolute right-3 bottom-3 left-3 space-y-1.5",children:[n.jsx("div",{className:"h-3 w-[35%] rounded-sm bg-chart-1/[0.15]"}),n.jsx("div",{className:le("h-1.5 w-[55%] rounded-sm",rs)})]})}),t[7]=h):h=t[7];let c;t[8]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsxs("div",{className:"flex shrink-0 gap-1.5",children:[n.jsx("div",{className:"h-4 w-12 rounded-full bg-chart-1/[0.12]"}),n.jsx("div",{className:le("h-4 w-10 rounded-full",rs)}),n.jsx("div",{className:le("h-4 w-14 rounded-full",rs)})]}),t[8]=c):c=t[8];let d;t[9]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsxs("div",{className:le("col-span-3 flex flex-col justify-end gap-1 rounded-md p-2",rs),children:[n.jsx("div",{className:le("h-1.5 w-[50%] rounded-sm",Ft)}),n.jsx("div",{className:le("h-1 w-[75%] rounded-sm",Ft)})]}),t[9]=d):d=t[9];let u;return t[10]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsxs("div",{className:"flex h-full flex-col",children:[e,n.jsxs("div",{className:"flex min-h-0 flex-1",children:[l,n.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[h,n.jsxs("div",{className:"flex min-h-0 flex-1 flex-col gap-2.5 p-3",children:[c,n.jsxs("div",{className:"grid min-h-0 flex-1 grid-cols-5 gap-2",children:[d,n.jsxs("div",{className:"col-span-2 grid grid-rows-2 gap-2",children:[n.jsx("div",{className:le("rounded-md",rs)}),n.jsx("div",{className:le("rounded-md",rs)})]})]})]})]})]})]}),t[10]=u):u=t[10],u}function mn(t){const e=H.c(9);if(t.kind==="starting"){let l;return e[0]!==t.claimPhase||e[1]!==t.progress?(l=n.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:n.jsx(Vb,{progress:t.progress,claimPhase:t.claimPhase})}),e[0]=t.claimPhase,e[1]=t.progress,e[2]=l):l=e[2],l}let s;e[3]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Mp,{className:"size-12 text-blue-500"}),e[3]=s):s=e[3];let i,r;e[4]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("h3",{className:"text-lg font-medium",children:$b("suspended")}),r=n.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Resume to continue."}),e[4]=i,e[5]=r):(i=e[4],r=e[5]);let o;e[6]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx(fi,{className:"size-4"}),e[6]=o):o=e[6];let a;return e[7]!==t.onResume?(a=n.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:n.jsxs("div",{className:"flex w-full max-w-md flex-col items-center gap-4 text-center",children:[s,i,r,n.jsxs(oe,{onClick:t.onResume,className:"mt-2",children:[o," Resume"]})]})}),e[7]=t.onResume,e[8]=a):a=e[8],a}function Qb(t){const e=H.c(12),{orgSlug:s,virtualMcpId:i,branch:r,enabled:o}=t,a=o===void 0?!0:o;let l;e[0]!==r||e[1]!==s||e[2]!==i?(l=Tt.sandboxRepoDir(s,i,r),e[0]=r,e[1]=s,e[2]=i,e[3]=l):l=e[3];let h;e[4]!==r||e[5]!==s||e[6]!==i?(h=async()=>{const u=`/api/${s}/sandbox/${encodeURIComponent(i)}/${encodeURIComponent(r)}/config`,f=await fetch(u);return f.ok?(await f.json()).repoDir??null:null},e[4]=r,e[5]=s,e[6]=i,e[7]=h):h=e[7];let c;return e[8]!==a||e[9]!==l||e[10]!==h?(c={queryKey:l,queryFn:h,enabled:a,staleTime:1/0},e[8]=a,e[9]=l,e[10]=h,e[11]=c):c=e[11],As(c).data??null}const pc="https://decoims.com/decocms/01b321bd-4613-4b2c-9348-35058444d210/Visual_Studio_Code_1.35_icon.svg.png",gc="https://decoims.com/decocms/7583d3b5-81d0-4afb-becf-6a59bbb3a68e/cursor-logo-icon-freelogovectors.net_.png",ey=P.lazy(()=>Ut(()=>import("./sections-editor-BojFR4GO.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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145])).then(t=>({default:t.SectionsEditor}))),ty=P.lazy(()=>Ut(()=>import("./page-seo-sheet-ClPikk0g.js"),__vite__mapDeps([146,1,2,70,42,44,7,8,9,10,11,12,13,14,15,16,6,3,4,5,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,43,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,73,74,75,76,77,78,94,85,81,82,83,84,80,79,86,87,88,89,90,91,92,93,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.SeoSheet}))),sy=P.lazy(()=>Ut(()=>import("./file-explorer-pkuer-wd.js"),__vite__mapDeps([147,1,2,122,7,8,9,10,11,12,13,14,15,16,6,3,4,5,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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,127,148,121,87,79,83,96,97,98,88,99,100,101,102,103,90,91,104,105,106,107,84,108,109,110,111,112,113,114,115,116,92,93,117,118,119,120,123,124,125,126,85,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.FileExplorer}))),Zn=500,iy={mobile:375,tablet:768,desktop:null},Qn=["desktop","mobile","tablet"],ry={mobile:"Mobile (375px)",tablet:"Tablet (768px)",desktop:"Desktop"},ny="website/sections/Rendering/Lazy.tsx";function Io(t,e){let s=t,i=typeof s?.__resolveType=="string"?s.__resolveType:"";for(let r=0;i&&r<5;r++){const o=e[i];if(o&&typeof o=="object"&&"__resolveType"in o){const a=o.__resolveType;if(typeof a=="string"&&a&&a!==i){s=o,i=a;continue}}break}if(!i)return[];if(i.includes("flags/multivariate")){const r=Array.isArray(s.variants)?s.variants:[],o=[];for(const a of r){const l=a?.value;if(l&&typeof l=="object")for(const h of Io(l,e))o.includes(h)||o.push(h)}return o}if(i===ny){const r=s.section&&typeof s.section=="object"?Io(s.section,e):[];return r.length?[i,...r]:[i]}return[i]}function oy(t,e){const s=new URL(t,window.location.href);return s.searchParams.set("deviceHint",e),s.href}function ay(){const t=Tr(),{currentBranch:e}=ys(),[s,i]=P.useState("preview"),[r,o]=P.useState("desktop"),[a,l]=P.useState(null),h=P.useRef(null),c=s==="cms",[d,u]=P.useState(null),[f,m]=P.useState(null),[p,g]=P.useState(384),v=P.useRef(!1),b=P.useRef(0),x=P.useRef(0),_=P.useRef(null),[y,S]=P.useState(!1),[w,j]=P.useState(""),E=P.useRef(null),[T,A]=P.useState(!1),[R,k]=P.useState(),[C,D]=P.useState(null),[N,L]=P.useState(null),[B,I]=P.useState("/"),[M,O]=P.useState(null),[F,z]=P.useState(!1),[K,G]=P.useState(!1),[X,ie]=P.useState(null),W=t?.entity?.id??null,{org:Y}=Re(),ne=ps(),$=al(),Z=$.vmEntry,U=$.previewUrl,ee=ne.lifecycle.phase,Q=ee==="running",fe=Z?.sandboxProviderKind==="user-desktop",me=Qb({orgSlug:Y.slug,virtualMcpId:W??"",branch:e??"",enabled:fe&&Q&&!!W&&!!e}),ve=fe?me:null,J=W&&e&&Q?{orgSlug:Y.slug,virtualMcpId:W,branch:e,previewUrl:U}:null,{data:se}=qa(J,{fetchEnabled:Q}),{data:pe}=Ga(J,{fetchEnabled:Q}),ge=W&&e?{orgSlug:Y.slug,virtualMcpId:W,branch:e}:null,Be=Tb(ge),Le=se?nl(se).sort((te,ye)=>te.name.localeCompare(ye.name)):[],Ee=se&&pe?ol(se,pe):[],Ze=hi,ct=Le.filter(te=>{if(!w)return!0;const ye=w.toLowerCase();return te.name.toLowerCase().includes(ye)||te.path.toLowerCase().includes(ye)}),yt=Ee.filter(te=>{if(!w)return!0;const ye=w.toLowerCase();return te.name.toLowerCase().includes(ye)||te.key.toLowerCase().includes(ye)||te.resolveType.toLowerCase().includes(ye)}),mt=C?null:av(Le,B,M),St=C?C.name:mt?.name,qe=mt?.key??null,wt=se&&qe?ju(se,qe,0):[],qt=se?mb(wt,se):[],pt=qt.map(te=>te.isSavedBlock?te.label:""),Ot=qt.map(te=>te.isSavedBlock?"global":te.isMultivariate?"variant":"normal"),Ct=wt.map(te=>Io(te,se??{})),xe=P.useRef(null),de=P.useRef(null);vv(()=>{const te=h.current,ye=xe.current;!te||!ye||(te.src=ye)});const Te=ne.status.state==="paused",ze=ne.phase,Ae=Pu({claimPhase:ze,lifecycle:ne.lifecycle}),Me=$.previewState,q=$.userStopped,V=Me.kind==="starting"||Me.kind==="iframe"&&Ae.status==="doing",he=Me.kind==="iframe"?fb(oy(N??new URL(B,Me.previewUrl).href,r),c&&f?f:[]):null,[_e,Pe]=P.useState(null);if(Me.kind==="iframe"&&_e!==Me.previewUrl){const te=_e!==null;Pe(Me.previewUrl),te&&(de.current=null,I("/"),L(null),O(null),D(null))}xe.current=he;const it=!!W&&!!e&&!ne.notFound&&!q&&!Te&&(ze?.kind==="ready"||ee!=="idle"),Ds=Me.kind!=="iframe"&&(s==="visual"||s==="cms")?"preview":s;P.useEffect(()=>{if(!U)return;let te;try{te=new URL(U,window.location.href).origin}catch{return}const ye=ht=>{if(ht.origin===te){if(ht.data?.type==="visual-editor::element-clicked"){const dt=Ab.safeParse(ht.data.payload);dt.success&&l(dt.data)}else if(ht.data?.type==="cms-editor::section-clicked"){const dt=Db.safeParse(ht.data.payload);dt.success&&u(dt.data.sectionIndex)}}};return window.addEventListener("message",ye),()=>window.removeEventListener("message",ye)},[U]),P.useEffect(()=>{if(!y)return;const te=ye=>{E.current?.contains(ye.target)||(S(!1),j(""))};return document.addEventListener("pointerdown",te),()=>document.removeEventListener("pointerdown",te)},[y]),P.useEffect(()=>{if(!c)return;const te=ht=>{const dt=ht.target;dt&&dt!==h.current&&(_.current=dt)},ye=()=>{requestAnimationFrame(()=>{const ht=document.activeElement;(ht===document.body||ht===h.current)&&_.current&&_.current.focus()})};return document.addEventListener("focusin",te),document.addEventListener("blur",ye,!0),()=>{document.removeEventListener("focusin",te),document.removeEventListener("blur",ye,!0)}},[c]);const Ai=()=>{const te=h.current?.contentWindow;te&&te.postMessage({type:"visual-editor::activate",script:Rb},"*")},Kf=()=>{const te=h.current?.contentWindow;te&&te.postMessage({type:"visual-editor::deactivate"},"*")},Al=()=>{const te=h.current?.contentWindow;te&&(te.postMessage({type:"visual-editor::activate",script:Ib},"*"),te.postMessage({type:"cms-editor::set-labels",labels:pt,kinds:Ot,keys:Ct},"*"))},Vf=()=>{const te=h.current?.contentWindow;te&&te.postMessage({type:"cms-editor::deactivate"},"*")},Ri=te=>{const ye=s;i(te),l(null),te!=="code"&&ie(null),te!=="cms"&&(u(null),m(null)),ye==="visual"&&Kf(),ye==="cms"&&Vf(),te==="visual"&&Ai(),te==="cms"&&Al()},qf=()=>{if(!h.current||!he)return;const te=h.current;te.src=he},Gf=te=>{m(te)},Yf=()=>{const te=h.current;if(!te)return;const ye=document.activeElement,ht=te.tabIndex;te.tabIndex=-1,te.style.pointerEvents="none",te.blur();try{te.contentWindow?.location.reload()}catch{const Gt=xe.current;Gt&&(te.src=Gt)}const dt=()=>{te.tabIndex=ht,te.style.pointerEvents="",ye?.focus(),te.removeEventListener("load",dt)};te.addEventListener("load",dt),setTimeout(dt,3e3)},Xf=()=>{if(!h.current||!he)return;const te=he.includes("?")?"&":"?";h.current.src=`${he}${te}_r=${Date.now()}`},Jf=()=>{const te=Qn.indexOf(r);o(Qn[(te+1)%Qn.length])},Zf=()=>{const te=h.current?.contentWindow?.location?.href??he??U;te&&navigator.clipboard.writeText(te)},Qf=(()=>{if(!U)return"No server running";if(C)return C.name;try{const te=new URL(U),ye=B==="/"?"":B;return`${te.host}${ye}`}catch{return U}})(),Rl=te=>{de.current=te.path,D(null),L(null),O(te.key),I(te.path),u(null),z(!1)},em=te=>{if(!U||!pe){ae.error("Preview metadata not ready yet");return}de.current=null;const ye=zd(pe),ht=kb(U,ye,te.key);D(te),L(ht),u(null)},tm=async({name:te,path:ye})=>{if(!W||!e)return;const ht=tl(ye);if(ht){k(ht);return}const dt=ye.trim().startsWith("/")?ye.trim():`/${ye.trim()}`;if(Le.some(Gt=>Ze(Gt.path)===Ze(dt))){k(`A page with path "${dt}" already exists.`);return}k(void 0);try{const Gt=await Be.mutateAsync({name:te,path:dt});A(!1),ae.success(`Page "${te}" created`),await new Promise(im=>setTimeout(im,Zn)),Rl({key:Gt.key,name:Gt.name,path:Gt.path}),Ri("cms")}catch(Gt){k(Gt instanceof Error?Gt.message:"Failed to create page")}},sm=[{value:"preview",icon:n.jsx($l,{size:14}),tooltip:"Interactive"},...Me.kind==="iframe"?[{value:"visual",icon:n.jsx(zl,{size:14}),tooltip:"Visual editor"}]:[],...Me.kind==="iframe"&&rl(se,pe)?[{value:"cms",icon:n.jsx(Op,{size:14}),tooltip:"Sections editor"}]:[],{value:"code",icon:n.jsx($p,{size:14}),tooltip:"Code editor"}];return n.jsxs("div",{className:"flex flex-col w-full h-full",children:[it&&n.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-4 border-b border-border/60 px-3 md:px-4",children:[n.jsx("div",{className:"flex shrink-0 items-center gap-1",children:n.jsx(Cg,{value:Ds,onValueChange:Ri,options:sm,size:"sm",className:"shrink-0 bg-foreground/4.5"})}),Me.kind==="iframe"&&n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:le("flex min-w-0 flex-1 items-center gap-0.5 ml-2",s==="code"&&"hidden"),children:[n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:qf,children:n.jsx(lr,{size:14})})}),n.jsx(ke,{side:"bottom",children:"Refresh"})]}),n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:Jf,children:n.jsxs("span",{className:"flex items-center justify-center animate-device-icon-pop",children:[r==="mobile"&&n.jsx(zp,{size:14}),r==="tablet"&&n.jsx(Fp,{size:14}),r==="desktop"&&n.jsx($l,{size:14})]},r)})}),n.jsx(ke,{side:"bottom",children:ry[r]})]}),n.jsxs("div",{ref:E,className:"relative min-w-0 flex-1",children:[n.jsxs("button",{type:"button",className:"flex h-8 w-full min-w-0 items-center gap-1 rounded-md bg-background px-2 transition-colors duration-200 hover:bg-accent",onClick:()=>S(te=>!te),children:[C&&n.jsxs("span",{className:"shrink-0 inline-flex items-center gap-1 rounded bg-global-section/14 px-1.5 py-0.5 text-[11px] font-medium text-global-section-fg dark:text-global-section-fg-dark",children:[n.jsx(mi,{size:11}),"Global"]}),n.jsx("span",{className:"min-w-0 flex-1 truncate text-left text-[12px] text-foreground/88",children:Qf}),St&&!C&&n.jsx("span",{className:"shrink-0 text-[12px] text-muted-foreground",children:St}),n.jsx(Rs,{size:12,className:le("shrink-0 text-muted-foreground transition-transform",y&&"rotate-180")})]}),y&&n.jsxs("div",{className:"absolute left-0 right-0 top-full z-50 mt-1.5 overflow-hidden rounded-lg border bg-popover shadow-lg",children:[n.jsxs("div",{className:"px-2 h-10 flex items-center gap-2 border-b",children:[n.jsx(_d,{size:14,className:"shrink-0 text-muted-foreground","aria-hidden":!0}),n.jsx("input",{type:"text",value:w,onChange:te=>j(te.target.value),placeholder:"Search pages and components...",className:"w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground",autoFocus:!0})]}),n.jsx("div",{className:"p-1.5 border-b",children:n.jsxs("button",{type:"button",className:"flex w-full items-center gap-2.5 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:te=>{te.preventDefault(),S(!1),j(""),k(void 0),A(!0)},children:[n.jsx(Bt,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"flex-1 font-medium",children:"Create new page"})]})}),ct.length===0&&yt.length===0?n.jsx("div",{className:"px-4 py-5 text-center text-xs text-muted-foreground",children:Le.length===0&&Ee.length===0?"No pages found in this site.":"No results match your search."}):n.jsxs("div",{className:"max-h-80 overflow-y-auto overscroll-contain",children:[ct.length>0&&n.jsx("div",{className:"p-1.5",children:ct.map(te=>n.jsxs("button",{type:"button",className:"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:ye=>{ye.preventDefault(),S(!1),j(""),Rl(te)},children:[n.jsx(Aa,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium",children:te.name}),n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:te.path})]},te.key))}),yt.length>0&&n.jsxs("div",{className:le("p-1.5",ct.length>0&&"border-t"),children:[n.jsx("div",{className:"px-3 py-2 text-xs font-medium text-muted-foreground",children:"Global components"}),yt.map(te=>n.jsxs("button",{type:"button",className:"flex w-full items-center gap-3 rounded-md px-3 py-2.5 text-left text-sm hover:bg-accent hover:text-accent-foreground",onMouseDown:ye=>{ye.preventDefault(),S(!1),j(""),em(te)},children:[n.jsx(mi,{size:16,className:"shrink-0 text-muted-foreground"}),n.jsx("span",{className:"min-w-0 flex-1 truncate font-medium",children:te.name}),n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:te.resolveType.split("/").pop()?.replace(/\.tsx?$/,"")})]},te.key))]})]})]})]})]}),n.jsxs("div",{className:le("flex shrink-0 items-center gap-0.5",s==="code"&&"hidden"),children:[n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:()=>{const te=he??Me.previewUrl;te&&window.open(te,"_blank","noopener")},children:n.jsx(wi,{size:14})})}),n.jsx(ke,{side:"bottom",children:"Open in new tab"})]}),n.jsxs(os,{children:[n.jsx(as,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",children:n.jsx(Tn,{size:14})})}),n.jsxs(ls,{align:"end",className:"w-44",children:[n.jsx(We,{onClick:Xf,children:"Hard Reload"}),n.jsx(We,{onClick:Zf,children:"Copy Current URL"}),se&&pe&&n.jsxs(n.Fragment,{children:[n.jsx(tr,{}),qe&&n.jsxs(We,{onClick:()=>{z(!0),Ri("cms")},children:[n.jsx(Xr,{size:14}),"Edit SEO"]}),qe&&n.jsxs(We,{onClick:()=>{try{ie(Bl(qe)),Ri("code")}catch{ae.error("Invalid page block key")}},children:[n.jsx(Ra,{size:14}),"View JSON"]}),n.jsxs(We,{onClick:()=>G(!0),children:[n.jsx(Xr,{size:14}),"Site SEO"]})]}),ve&&n.jsxs(n.Fragment,{children:[n.jsx(tr,{}),n.jsxs(We,{onClick:()=>window.open(`vscode://file${ve}?windowId=_blank`),children:[n.jsx("img",{src:pc,alt:"VSCode",width:14,height:14}),"Open in VSCode"]}),n.jsxs(We,{onClick:()=>window.open(`cursor://file${ve}?windowId=_blank`),children:[n.jsx("img",{src:gc,alt:"Cursor",width:14,height:14}),"Open in Cursor"]})]})]})]})]})]}),s==="code"&&ve&&n.jsxs("div",{className:"ml-auto flex shrink-0 items-center gap-0.5",children:[n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon","aria-label":"Open in VSCode",onClick:()=>window.open(`vscode://file${ve}?windowId=_blank`),children:n.jsx("img",{src:pc,alt:"VSCode",width:14,height:14})})}),n.jsx(ke,{side:"bottom",children:"Open in VSCode"})]}),n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon","aria-label":"Open in Cursor",onClick:()=>window.open(`cursor://file${ve}?windowId=_blank`),children:n.jsx("img",{src:gc,alt:"Cursor",width:14,height:14})})}),n.jsx(ke,{side:"bottom",children:"Open in Cursor"})]})]})]}),n.jsxs("div",{className:"flex-1 flex overflow-hidden",children:[c&&U&&e&&W&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"shrink-0 border-r overflow-hidden",style:{width:p},children:n.jsx(P.Suspense,{fallback:n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:n.jsx(ey,{orgSlug:Y.slug,virtualMcpId:W,branch:e,previewReady:Q,previewUrl:U,currentPath:B,activePageBlockKey:qe,activeGlobalBlockKey:C?.key??null,externalSelectedIndex:C?null:d,onSaved:()=>{setTimeout(Yf,Zn)},initialEditSeo:F,onExitSeo:()=>z(!1),onViewJsonFile:te=>{try{ie(Bl(te)),Ri("code")}catch{ae.error("Invalid page block key")}},onVariantPreviewOverride:Gf})})}),n.jsx("div",{className:"w-1 shrink-0 cursor-col-resize bg-transparent hover:bg-border transition-colors",onPointerDown:te=>{v.current=!0,b.current=te.clientX,x.current=p,te.currentTarget.setPointerCapture(te.pointerId)},onPointerMove:te=>{if(!v.current)return;const ye=te.clientX-b.current;g(Math.max(240,Math.min(640,x.current+ye)))},onPointerUp:()=>{v.current=!1}})]}),n.jsxs("div",{className:le("flex-1 relative overflow-hidden",r!=="desktop"&&Me.kind==="iframe"&&s!=="code"&&"flex justify-center bg-muted/30"),children:[V&&n.jsx("div",{className:"absolute inset-0 z-30",children:n.jsx(mn,{kind:"starting",progress:Ae,claimPhase:ze})}),Me.kind==="suspended"&&n.jsx("div",{className:"absolute inset-0 z-30",children:n.jsx(mn,{kind:"suspended",onResume:$.resume})}),Ds==="visual"&&!a&&n.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:[n.jsx(zl,{size:12}),"Click any element to ask the AI"]}),Ds==="visual"&&a&&n.jsx(Mb,{element:a,onDismiss:()=>l(null)}),s==="code"&&it&&W&&e&&n.jsx("div",{className:"absolute inset-0 z-10 bg-background",children:n.jsx(P.Suspense,{fallback:n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:n.jsx(sy,{orgSlug:Y.slug,virtualMcpId:W,branch:e,openPath:X})})}),Me.kind==="iframe"&&he&&n.jsx("div",{className:le("h-full transition-[width] duration-250 [transition-timing-function:var(--ease-in-out-cubic)]",r!=="desktop"&&s!=="code"&&"w-full max-w-full border-x border-border bg-background shadow-sm"),style:{width:r==="desktop"||s==="code"?"100%":`${iy[r]}px`},children:n.jsx("iframe",{ref:h,src:he,className:le("w-full h-full border-0",s==="code"&&"invisible"),title:"Dev Server Preview",tabIndex:c?-1:void 0,onLoad:()=>{if(Ie("vm_preview_loaded",{view_mode:s,vm_id:Z?.sandboxHandle??null}),!C)try{const te=h.current?.contentWindow?.location?.pathname;if(!te)return;const ye=de.current;if(ye!==null){de.current=null,Ze(te)===Ze(ye)&&I(te);return}I(te)}catch{}s==="visual"&&Ai(),s==="cms"&&Al()}},Me.previewUrl)})]})]}),n.jsx(Pb,{open:T,onOpenChange:A,isPending:Be.isPending,error:R,onSubmit:tm}),K&&se&&pe&&n.jsx(P.Suspense,{fallback:null,children:n.jsx(ty,{open:K,onOpenChange:G,orgSlug:Y.slug,virtualMcpId:W??"",branch:e??"",decofile:se,meta:pe,onSaved:()=>{setTimeout(()=>{const te=h.current;if(te)try{te.contentWindow?.location.reload()}catch{const ye=xe.current;ye&&(te.src=ye)}},Zn)},target:{kind:"site"}})})]})}function ly(t){const e=H.c(2),{virtualMcpId:s}=t,i=ds(s);if(!Us(i?.metadata)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[n.jsx(vr,{size:24,className:"text-muted-foreground/60"}),n.jsx("div",{children:"No source to preview."}),n.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=n.jsx(ay,{}),e[1]=o):o=e[1],o}function cy(t){const e=H.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 r;e[3]!==s?(r=le("grid gap-3",s),e[3]=s,e[4]=r):r=e[4];let o;return e[5]!==i||e[6]!==r?(o=n.jsx(lg,{"data-slot":"radio-group",className:r,...i}),e[5]=i,e[6]=r,e[7]=o):o=e[7],o}function _c(t){const e=H.c(9);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 r;e[3]!==s?(r=le("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/20 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[2px] disabled:opacity-50",s),e[3]=s,e[4]=r):r=e[4];let o;e[5]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx(cg,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:n.jsx(Ng,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})}),e[5]=o):o=e[5];let a;return e[6]!==i||e[7]!==r?(a=n.jsx(ag,{"data-slot":"radio-group-item",className:r,...i,children:o}),e[6]=i,e[7]=r,e[8]=a):a=e[8],a}function hy(t,e){if(!t||!e?.length)return t;const s=Object.fromEntries(Object.entries(t.properties??{}).filter(([i])=>!e.includes(i)));return Object.keys(s).length>0?{...t,properties:s}:t}function dy(t,e,s){return typeof t!="string"?null:hy(Md(t,e),s)}function Du(t,e,s){if(!e||typeof t!="string")return!1;const i=dy(t,e,s);return!!i&&Object.keys(i.properties??{}).length>0}function uy({orgSlug:t,virtualMcpId:e,branch:s}){const i=Gs();return xi({mutationFn:async({blockKey:r})=>{const o=Jh(r),a=await fetch(`/api/${t}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/unlink`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:o})});if(!a.ok){const l=await a.json().catch(()=>({}));throw new Error(l.error??`Delete failed (${a.status})`)}return a.json()},onMutate:async({blockKey:r})=>{const o=`${t}/${e}/${s}`,a=Tt.decofile(o);await i.cancelQueries({queryKey:a});const l=i.getQueryData(a);return i.setQueryData(a,h=>{if(!h)return h;const{[r]:c,...d}=h;return d}),{previous:l,queryKey:a}},onError:(r,o,a)=>{a?.queryKey&&i.setQueryData(a.queryKey,a.previous)},onSuccess:()=>{const r=`${t}/${e}/${s}`;i.invalidateQueries({queryKey:Tt.liveMeta(r)})}})}function Mn(t,e){return`${t}-${e}`}function Iu(t,e){return`site/apps/${t}/${e}.ts`}function Lu(t){const e=t.match(/^site\/apps\/([^/]+)\/([^/.]+)\.tsx?$/);if(e)return{vendor:e[1],app:e[2]};const s=t.match(/^([^/]+)\/apps\/([^/.]+)\.tsx?$/);return s?{vendor:s[1],app:s[2]}:null}function fy(t){const e=t.match(/^([^-]+)-(.+)$/);return e?{vendor:e[1],app:e[2]}:null}function my(t){return t==="local"?"Custom":"Installed"}function Bu(t,e,s){const i=new Set([Mn(t,e),e].map(o=>o.toLowerCase())),r=Iu(t,e);for(const[o,a]of Object.entries(s)){if(o.includes("/")||!a||typeof a!="object"||Array.isArray(a))continue;const l=a;if(i.has(o.toLowerCase())||l.__resolveType===r)return o}return null}function py(t,e){const s=t.vendor.alias,i=t.name,r=Bu(s,i,e);return{id:Mn(s,i),app:i,vendor:s,title:t.title||t.name,description:t.description,category:t.category??"Other",logo:t.logo||void 0,resolveType:Iu(s,i),blockKey:r,installed:r!==null}}function gy(t,e,s){if(t===il)return null;const i=Lu(t);if(!i)return null;const{vendor:r,app:o}=i,a=Bu(r,o,s),l=Ci(t,e);return{id:Mn(r,o),app:o,vendor:r,title:l.title??o,description:l.description??"",category:"Others",logo:l.logo??l.icon,resolveType:t,blockKey:a,installed:a!==null}}function _y(t,e,s){const i=e.__resolveType;if(typeof i!="string"||hn(t,e)||!Bd(i))return null;const r=Lu(i)??fy(t);if(!r)return null;const o=Ci(i,s),{vendor:a,app:l}=r;return{id:Mn(a,l),app:l,vendor:a,title:o.title??dn(t,e,s),description:o.description??"",category:my(a),logo:o.logo??o.icon,resolveType:i,blockKey:t,installed:!0}}function vy(t,e,s){const i=new Map;for(const o of t){const a=py(o,s);i.set(a.id,a)}const r=e.manifest?.blocks?.apps??{};for(const o of Object.keys(r)){const a=gy(o,e,s);!a||i.has(a.id)||i.set(a.id,a)}for(const[o,a]of Object.entries(s)){if(o.includes("/")||!a||typeof a!="object"||Array.isArray(a))continue;const l=_y(o,a,e);!l||i.has(l.id)||i.set(l.id,l)}return[...i.values()].sort(xy)}function xy(t,e){return t.installed!==e.installed?t.installed?-1:1:t.title.localeCompare(e.title)}async function by(){const t=await fetch("/api/deco-apps");if(!t.ok)throw new Error(`Failed to fetch deco apps: ${t.status}`);return(await t.json()).apps??[]}function yy(t,e,s){const i=H.c(12),r=s?.enabled??!0;let o;i[0]===Symbol.for("react.memo_cache_sentinel")?(o=Tt.decoApps(),i[0]=o):o=i[0];let a;i[1]!==r?(a={queryKey:o,queryFn:by,staleTime:3e5,retry:1,enabled:r},i[1]=r,i[2]=a):a=i[2];const l=As(a);let h;i[3]!==e||i[4]!==t||i[5]!==l.data?(h=t&&e?vy(l.data??[],t,e):[],i[3]=e,i[4]=t,i[5]=l.data,i[6]=h):h=i[6];const c=h,d=l.isLoading&&!l.isError;let u;return i[7]!==c||i[8]!==l.isError||i[9]!==l.refetch||i[10]!==d?(u={catalog:c,isLoading:d,isError:l.isError,refetch:l.refetch},i[7]=c,i[8]=l.isError,i[9]=l.refetch,i[10]=d,i[11]=u):u=i[11],u}function vc(t,e){const s=e.replace(/\s*\(copy(?:\s+\d+)?\)\s*$/,"").trim(),i=`${s} (copy)`;if(!t.has(i))return i;for(let r=2;r<1e3;r++){const o=`${s} (copy ${r})`;if(!t.has(o))return o}return`${s} (copy ${Date.now()})`}function Sy(t,e){const s=hi,i=e.replace(/-copy(?:-\d+)?$/,""),r=`${i}-copy`;if(!t.has(s(r)))return r;for(let o=2;o<1e3;o++){const a=`${i}-copy-${o}`;if(!t.has(s(a)))return a}return`${i}-copy-${Date.now()}`}function Mu(t,e){const s=e.replace(/_copy(?:_\d+)?$/,""),i=`${s}_copy`;if(!Object.hasOwn(t,i))return i;for(let r=2;r<1e3;r++){const o=`${s}_copy_${r}`;if(!Object.hasOwn(t,o))return o}return`${s}_copy_${Date.now()}`}function wy(t){const e=pl(t.newName),s={...t.source,name:t.newName,path:t.newPath};return{key:e,data:s}}function Cy(t,e){return Eu(t,e)}const ky=1e3;function jy(t,e){for(let s=0;s<ky;s++){const i=pl(e);if(!Object.hasOwn(t,i))return i}throw new Error("Could not generate a unique page block key")}function Ny(t,e){const s=(t.title||t.resolveType.split("/").pop()||"").replace(/\.(tsx?|jsx?)$/,"").replace(/[^A-Za-z0-9_-]/g,""),i=/^[A-Za-z]/.test(s)&&s.length>0?s:"Section",r=Mu(e,i);return{blockKey:r,data:{__resolveType:t.resolveType,name:r}}}const Ey={create:"Create new page",duplicate:"Duplicate page",rename:"Rename page"},Ty={create:"Create",duplicate:"Duplicate",rename:"Save"},Py={create:"Creating…",duplicate:"Duplicating…",rename:"Saving…"};function Ay(t){const e=H.c(54),{open:s,mode:i,initialName:r,initialPath:o,isPending:a,error:l,validate:h,onSubmit:c,onOpenChange:d}=t,u=a===void 0?!1:a,[f,m]=P.useState(r),[p,g]=P.useState(o),[v,b]=P.useState(null),[x,_]=P.useState(s);s!==x&&(_(s),s&&(m(r),g(o),b(null)));let y;e[0]!==u||e[1]!==d?(y=W=>{!W&&!u&&(b(null),d(!1))},e[0]=u,e[1]=d,e[2]=y):y=e[2];const S=y;let w;e[3]!==u||e[4]!==f||e[5]!==c||e[6]!==p||e[7]!==h?(w=async W=>{W.preventDefault();const Y=f.trim(),ne=p.trim();if(!Y||!ne||u)return;const $=tl(ne);if($){b($);return}const Z=h?.({name:Y,path:ne});if(Z){b(Z);return}b(null),await c({name:Y,path:ne})},e[3]=u,e[4]=f,e[5]=c,e[6]=p,e[7]=h,e[8]=w):w=e[8];const j=w,E=v??l,T=Ey[i];let A;e[9]!==T?(A=n.jsx(fs,{children:n.jsx(ms,{children:T})}),e[9]=T,e[10]=A):A=e[10];let R;e[11]===Symbol.for("react.memo_cache_sentinel")?(R=n.jsx("label",{htmlFor:"page-form-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[11]=R):R=e[11];let k;e[12]===Symbol.for("react.memo_cache_sentinel")?(k=W=>m(W.target.value),e[12]=k):k=e[12];let C;e[13]!==u||e[14]!==f?(C=n.jsxs("div",{className:"space-y-1.5",children:[R,n.jsx(tt,{id:"page-form-name",value:f,onChange:k,placeholder:"My page",autoFocus:!0,disabled:u})]}),e[13]=u,e[14]=f,e[15]=C):C=e[15];let D;e[16]===Symbol.for("react.memo_cache_sentinel")?(D=n.jsx("label",{htmlFor:"page-form-path",className:"text-xs font-medium text-muted-foreground",children:"Path"}),e[16]=D):D=e[16];let N;e[17]===Symbol.for("react.memo_cache_sentinel")?(N=W=>g(W.target.value),e[17]=N):N=e[17];let L;e[18]!==u||e[19]!==p?(L=n.jsxs("div",{className:"space-y-1.5",children:[D,n.jsx(tt,{id:"page-form-path",value:p,onChange:N,placeholder:"/example",disabled:u})]}),e[18]=u,e[19]=p,e[20]=L):L=e[20];let B;e[21]!==E?(B=E&&n.jsx("p",{className:"text-xs text-destructive",children:E}),e[21]=E,e[22]=B):B=e[22];let I;e[23]!==L||e[24]!==B||e[25]!==C?(I=n.jsxs("div",{className:"space-y-4 py-4",children:[C,L,B]}),e[23]=L,e[24]=B,e[25]=C,e[26]=I):I=e[26];let M;e[27]!==d?(M=()=>d(!1),e[27]=d,e[28]=M):M=e[28];let O;e[29]!==u||e[30]!==M?(O=n.jsx(oe,{type:"button",variant:"outline",onClick:M,disabled:u,children:"Cancel"}),e[29]=u,e[30]=M,e[31]=O):O=e[31];let F;e[32]!==u||e[33]!==f||e[34]!==p?(F=!f.trim()||!p.trim()||u,e[32]=u,e[33]=f,e[34]=p,e[35]=F):F=e[35];let z;e[36]!==u||e[37]!==i?(z=u?n.jsxs(n.Fragment,{children:[n.jsx(Ne,{size:14,className:"animate-spin"}),Py[i]]}):Ty[i],e[36]=u,e[37]=i,e[38]=z):z=e[38];let K;e[39]!==F||e[40]!==z?(K=n.jsx(oe,{type:"submit",disabled:F,children:z}),e[39]=F,e[40]=z,e[41]=K):K=e[41];let G;e[42]!==O||e[43]!==K?(G=n.jsxs(Qs,{children:[O,K]}),e[42]=O,e[43]=K,e[44]=G):G=e[44];let X;e[45]!==j||e[46]!==I||e[47]!==G||e[48]!==A?(X=n.jsx(Vt,{className:"sm:max-w-md",children:n.jsxs("form",{onSubmit:j,children:[A,I,G]})}),e[45]=j,e[46]=I,e[47]=G,e[48]=A,e[49]=X):X=e[49];let ie;return e[50]!==S||e[51]!==s||e[52]!==X?(ie=n.jsx(Kt,{open:s,onOpenChange:S,children:X}),e[50]=S,e[51]=s,e[52]=X,e[53]=ie):ie=e[53],ie}function Ry(t){const e=H.c(43),{open:s,blockKey:i,initialName:r,isPending:o,onSubmit:a,onOpenChange:l}=t,h=o===void 0?!1:o,[c,d]=P.useState(r),[u,f]=P.useState(s);s!==u&&(f(s),s&&d(r));let m;e[0]!==h||e[1]!==l?(m=L=>{!L&&!h&&l(!1)},e[0]=h,e[1]=l,e[2]=m):m=e[2];const p=m;let g;e[3]!==h||e[4]!==c||e[5]!==a?(g=async L=>{L.preventDefault();const B=c.trim();!B||h||await a(B)},e[3]=h,e[4]=c,e[5]=a,e[6]=g):g=e[6];const v=g;let b;e[7]===Symbol.for("react.memo_cache_sentinel")?(b=n.jsxs(fs,{children:[n.jsx(ms,{children:"Rename section"}),n.jsx(Rn,{children:"Updates the display name. The internal key stays the same so pages referencing this section keep working."})]}),e[7]=b):b=e[7];let x;e[8]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx("label",{htmlFor:"section-rename-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[8]=x):x=e[8];let _;e[9]===Symbol.for("react.memo_cache_sentinel")?(_=L=>d(L.target.value),e[9]=_):_=e[9];let y;e[10]!==h||e[11]!==c?(y=n.jsxs("div",{className:"space-y-1.5",children:[x,n.jsx(tt,{id:"section-rename-name",value:c,onChange:_,autoFocus:!0,disabled:h})]}),e[10]=h,e[11]=c,e[12]=y):y=e[12];let S;e[13]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Key"}),e[13]=S):S=e[13];let w;e[14]!==i?(w=n.jsxs("div",{className:"space-y-1.5",children:[S,n.jsx(tt,{value:i,readOnly:!0,disabled:!0,className:"font-mono"})]}),e[14]=i,e[15]=w):w=e[15];let j;e[16]!==y||e[17]!==w?(j=n.jsxs("div",{className:"space-y-4 py-4",children:[y,w]}),e[16]=y,e[17]=w,e[18]=j):j=e[18];let E;e[19]!==l?(E=()=>l(!1),e[19]=l,e[20]=E):E=e[20];let T;e[21]!==h||e[22]!==E?(T=n.jsx(oe,{type:"button",variant:"outline",onClick:E,disabled:h,children:"Cancel"}),e[21]=h,e[22]=E,e[23]=T):T=e[23];let A;e[24]!==h||e[25]!==c?(A=!c.trim()||h,e[24]=h,e[25]=c,e[26]=A):A=e[26];let R;e[27]!==h?(R=h?n.jsxs(n.Fragment,{children:[n.jsx(Ne,{size:14,className:"animate-spin"}),"Saving…"]}):"Save",e[27]=h,e[28]=R):R=e[28];let k;e[29]!==A||e[30]!==R?(k=n.jsx(oe,{type:"submit",disabled:A,children:R}),e[29]=A,e[30]=R,e[31]=k):k=e[31];let C;e[32]!==T||e[33]!==k?(C=n.jsxs(Qs,{children:[T,k]}),e[32]=T,e[33]=k,e[34]=C):C=e[34];let D;e[35]!==v||e[36]!==j||e[37]!==C?(D=n.jsx(Vt,{className:"sm:max-w-md",children:n.jsxs("form",{onSubmit:v,children:[b,j,C]})}),e[35]=v,e[36]=j,e[37]=C,e[38]=D):D=e[38];let N;return e[39]!==p||e[40]!==s||e[41]!==D?(N=n.jsx(Kt,{open:s,onOpenChange:p,children:D}),e[39]=p,e[40]=s,e[41]=D,e[42]=N):N=e[42],N}const eo={post:"blog/loaders/Blogpost.ts",author:"blog/loaders/Author.ts",category:"blog/loaders/Category.ts"},_l=["posts","authors","categories"],rr={posts:"post",authors:"author",categories:"category"};function nr(t){return _l.includes(t)}const vl={posts:"post",authors:"author",categories:"category"},Ou={posts:eo.post,authors:eo.author,categories:eo.category},Dy=Object.fromEntries(Object.entries(Ou).map(([t,e])=>[e,t]));function Iy(t){return typeof t=="string"?Dy[t]??null:null}function pi(t){return t&&typeof t=="object"&&!Array.isArray(t)?t:null}function Xt(t){return typeof t=="string"?t:""}function Ly(t,e){switch(t){case"posts":return{label:Xt(e.title)||"Untitled post",subtitle:Xt(e.slug)};case"authors":return{label:Xt(e.name)||"Unnamed author",subtitle:Xt(e.email)};case"categories":return{label:Xt(e.name)||"Unnamed category",subtitle:Xt(e.slug)};default:{const s=t;throw new Error(`Unhandled blog kind: ${String(s)}`)}}}function $u(t){const e={posts:[],authors:[],categories:[]};for(const[s,i]of Object.entries(t)){const r=pi(i);if(!r)continue;const o=Iy(r.__resolveType);if(!o)continue;const a=pi(r[vl[o]])??{},{label:l,subtitle:h}=Ly(o,a);e[o].push({key:s,kind:o,label:l,subtitle:h})}for(const s of _l)e[s].sort((i,r)=>i.label.localeCompare(r.label));return e}function By(t,e){return $u(t)[e]}function pn(t,e){return By(t,e).map(s=>({key:s.key,payload:Lo(pi(t[s.key])??void 0,e)}))}function Lo(t,e){return t?pi(t[vl[e]])??{}:{}}function to(t,e,s){return{name:t,__resolveType:Ou[e],[vl[e]]:s}}function zu(t){return`.deco/blocks/${encodeURIComponent(t)}.json`}function gn(t){return Array.isArray(t)?t:[]}function xl(t){if(typeof t=="string")return t;const e=pi(t);return e?Xt(e.slug):""}function My(t){if(typeof t=="string")return t;const e=pi(t);return e?Xt(e.email):""}function Oy(t){return pn(t,"posts").map(({key:e,payload:s})=>({key:e,title:Xt(s.title)||"Untitled post",slug:Xt(s.slug),date:Xt(s.date),categorySlugs:gn(s.categories).map(xl).filter(Boolean),authorEmails:gn(s.authors).map(My).filter(Boolean)}))}function $y(t,e){const s=gn(t.categories);return s.some(i=>xl(i)===e.slug)?t:{...t,categories:[...s,{name:e.name,slug:e.slug}]}}function zy(t,e){const s=gn(t.categories);return s.length===1&&xl(s[0])===e.slug?t:{...t,categories:[{name:e.name,slug:e.slug}]}}function Bo(t){const e=new Uint8Array(Math.ceil(t/2));return crypto.getRandomValues(e),Array.from(e,s=>s.toString(16).padStart(2,"0")).join("").slice(0,t)}function xc(t,e){const s=`collections/blog/${e}/${Bo(12)}`;if(!Object.hasOwn(t,s))return s;throw new Error("Could not generate a unique blog block key")}function Fy(t){switch(t){case"posts":return{title:"Untitled post",excerpt:"",slug:`untitled-${Bo(8)}`,date:new Date().toISOString().slice(0,10),image:"",authors:[],categories:[],sections:[]};case"authors":return{name:"New author",email:"",jobTitle:"",company:"",avatar:""};case"categories":return{name:"New category",slug:`category-${Bo(8)}`,description:"",sections:[]};default:{const e=t;throw new Error(`Unhandled blog kind: ${String(e)}`)}}}const Hy={Paragraph:{title:"Paragraph",description:"Rich text content",iconName:"Pilcrow01"},Heading:{title:"Heading",description:"Section title (H1–H6)",iconName:"HeadingSquare"},Quote:{title:"Quote",description:"Pull quote",iconName:"MessageTextSquare02"},Code:{title:"Code",description:"Code block with syntax highlighting",iconName:"Code02"},List:{title:"List",description:"Bulleted or numbered list",iconName:"List"},BlockImage:{title:"Image",description:"Image with optional caption",iconName:"Image01"},Video:{title:"Video",description:"Embedded video",iconName:"PlayCircle"},Divider:{title:"Divider",description:"Horizontal divider",iconName:"Divider"},Cta:{title:"Call to action",description:"Button linking to a URL",iconName:"CursorClick01"},Callout:{title:"Callout",description:"Highlighted note, tip or warning",iconName:"Lightbulb02"},Stat:{title:"Stat",description:"Single key metric",iconName:"BarChartSquareUp"},StatGroup:{title:"Stat group",description:"Row of metrics",iconName:"BarChartSquare02"},CardGroup:{title:"Card group",description:"Grid of cards",iconName:"LayoutGrid01"},Checklist:{title:"Checklist",description:"List of check items",iconName:"CheckSquare"},Steps:{title:"Steps",description:"Step-by-step guide",iconName:"LayersThree01"},Comparison:{title:"Comparison",description:"Side-by-side comparison",iconName:"Columns03"},ProductCard:{title:"Product card",description:"Single product",iconName:"Tag01"},ProductShelf:{title:"Product shelf",description:"Row of products",iconName:"ShoppingBag01"}},bc="Box";function Wy(t){return t.startsWith("site/")?"site":"app"}function Uy(t){return t.startsWith("http://")||t.startsWith("https://")||t.startsWith("data:")||t.startsWith("/")}function Li(...t){for(const e of t)if(e!==void 0)return e}function Qj(t){const e=new Set,s=[],i=t.manifest?.blocks??{};for(const r of Object.values(i))for(const o of Object.keys(r)){if(!qy(o)||e.has(o))continue;e.add(o);const a=Ci(o,t),l=Ky(o),h=Hy[l],c=Wy(o),d=(c==="site"?Li(a.title,h?.title):Li(h?.title,a.title))??l,u=c==="site"?Li(a.description,h?.description):Li(h?.description,a.description),f=c==="site"?a.icon:void 0,m=f&&Uy(f)?f:void 0,p=m!==void 0?h?.iconName??bc:Li(f,h?.iconName)??bc;s.push({resolveType:o,title:d,description:u,iconName:p,iconUrl:m,source:c})}return s.sort((r,o)=>r.title.localeCompare(o.title))}function Ky(t){return(t.split("/").pop()??t).replace(/\.(tsx?|jsx?)$/,"")}const Vy=["blog/sections/blocks/","site/sections/Blog/Post/"];function qy(t){return Vy.some(e=>t.startsWith(e))}function Fu({orgSlug:t,virtualMcpId:e,branch:s}){return Tt.decofile(`${t}/${e}/${s}`)}function Hu({orgSlug:t,virtualMcpId:e,branch:s},i){return`/api/${t}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/${i}`}function Gy(t){const e=H.c(11),s=Gs();let i;e[0]!==t?(i=async l=>{const{blockKey:h,data:c}=l,d=await fetch(Hu(t,"write"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:zu(h),content:JSON.stringify(c,null,2)})});if(!d.ok){const u=await d.json().catch(Yy);throw new Error(u.error??`Write failed (${d.status})`)}return d.json()},e[0]=t,e[1]=i):i=e[1];let r;e[2]!==t||e[3]!==s?(r=async l=>{const{blockKey:h,data:c}=l,d=Fu(t);await s.cancelQueries({queryKey:d});const u=s.getQueryData(d);return s.setQueryData(d,f=>({...f??{},[h]:c})),{previous:u,queryKey:d}},e[2]=t,e[3]=s,e[4]=r):r=e[4];let o;e[5]!==s?(o=(l,h,c)=>{c?.queryKey&&s.setQueryData(c.queryKey,c.previous)},e[5]=s,e[6]=o):o=e[6];let a;return e[7]!==i||e[8]!==r||e[9]!==o?(a={mutationFn:i,onMutate:r,onError:o},e[7]=i,e[8]=r,e[9]=o,e[10]=a):a=e[10],xi(a)}function Yy(){return{}}function Xy(t){const e=Gs();return xi({mutationFn:async({blockKey:s})=>{const i=await fetch(Hu(t,"unlink"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:zu(s)})});if(!i.ok){const r=await i.json().catch(()=>({}));throw new Error(r.error??`Delete failed (${i.status})`)}return i.json()},onMutate:async({blockKey:s})=>{const i=Fu(t);await e.cancelQueries({queryKey:i});const r=e.getQueryData(i);return e.setQueryData(i,o=>{if(!o)return o;const{[s]:a,...l}=o;return l}),{previous:r,queryKey:i}},onError:(s,i,r)=>{r?.queryKey&&e.setQueryData(r.queryKey,r.previous)}})}function Jy(t){const e=H.c(20),{open:s,onOpenChange:i,pageKey:r,decofile:o}=t,[a,l]=P.useState(!1),h=o[r];let c;e[0]!==h?(c=h===void 0?"// Page not found.":JSON.stringify(h,null,2),e[0]=h,e[1]=c):c=e[1];const d=c;let u;e[2]!==d?(u=()=>{navigator.clipboard.writeText(d).then(()=>{l(!0),setTimeout(()=>l(!1),2e3)})},e[2]=d,e[3]=u):u=e[3];const f=u;let m;e[4]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(ms,{className:"text-sm font-semibold",children:"Page JSON"}),e[4]=m):m=e[4];let p;e[5]!==a?(p=a?n.jsx(Ih,{size:12}):n.jsx(bs,{size:12}),e[5]=a,e[6]=p):p=e[6];const g=a?"Copied":"Copy";let v;e[7]!==f||e[8]!==p||e[9]!==g?(v=n.jsxs(fs,{className:"px-4 py-3 border-b flex-row items-center justify-between space-y-0",children:[m,n.jsxs(oe,{variant:"ghost",size:"sm",onClick:f,className:"h-7 gap-1.5 text-xs",children:[p,g]})]}),e[7]=f,e[8]=p,e[9]=g,e[10]=v):v=e[10];let b;e[11]!==d?(b=n.jsx(jn,{className:"max-h-[70vh]",children:n.jsx("pre",{className:"p-4 text-xs font-mono text-foreground/90 whitespace-pre overflow-auto",children:d})}),e[11]=d,e[12]=b):b=e[12];let x;e[13]!==v||e[14]!==b?(x=n.jsxs(Vt,{className:"max-w-2xl p-0 gap-0",children:[v,b]}),e[13]=v,e[14]=b,e[15]=x):x=e[15];let _;return e[16]!==i||e[17]!==s||e[18]!==x?(_=n.jsx(Kt,{open:s,onOpenChange:i,children:x}),e[16]=i,e[17]=s,e[18]=x,e[19]=_):_=e[19],_}const yc=P.lazy(()=>Ut(()=>import("./app-editor-DB3LZKk9.js"),__vite__mapDeps([149,1,2,5,44,7,8,9,10,11,12,13,14,15,16,6,3,4,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,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,95,96,97,98,88,99,100,101,102,103,90,91,104,105,106,107,84,108,109,110,111,112,113,114,87,115,116,83,92,93,79,117,118,119,120,121,122,123,124,125,126,127,85,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,81,82,80,86,89,150])).then(t=>({default:t.AppEditor}))),Zy=P.lazy(()=>Ut(()=>import("./post-editor-BVwj0umw.js"),__vite__mapDeps([151,1,2,3,28,7,8,9,10,11,12,13,14,15,16,6,4,5,17,18,19,20,21,22,23,24,25,26,27,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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,139,90,91,105,140,119,141,142,143,137,111,107,114,92,93,83,84,86,79,87,88,89,81,82,85,80,152,150,153,96,97,98,99,100,101,102,103,104,106,108,109,110,112,113,115,116,117,118,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,144])).then(t=>({default:t.PostEditor}))),Qy=P.lazy(()=>Ut(()=>import("./record-editor-DoT_RQtf.js"),__vite__mapDeps([154,1,2,77,76,84,86,9,37,38,8,6,19,17,7,10,11,12,13,14,15,16,3,4,5,18,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,39,40,41,42,43,50,79,87,88,89,64,90,91,152,150,96,56,57,54,55,58,59,60,61,62,63,51,65,44,45,46,47,48,49,52,53,66,67,68,69,70,71,72,73,74,75,78,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,83,92,93,117,118,119,120,121,122,123,124,125,126,127,85,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.RecordEditor}))),e0=P.lazy(()=>Ut(()=>import("./category-editor-CqVdn-A-.js"),__vite__mapDeps([155,1,2,12,7,8,9,10,11,13,14,15,16,6,3,4,5,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,77,76,152,150,153,80,92,93,50,83,81,82,84,44,45,46,47,48,49,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,78,85,79,86,87,88,89,90,91,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.CategoryEditor}))),t0=P.lazy(()=>Ut(()=>import("./sections-editor-BojFR4GO.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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145])).then(t=>({default:t.SectionsEditor}))),s0=P.lazy(()=>Ut(()=>import("./seo-editor-DBNUZ0fG.js"),__vite__mapDeps([156,1,2,5,7,8,9,10,11,12,13,14,15,16,6,3,4,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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,94,85,81,82,83,84,80,79,86,87,88,89,90,91,92,93,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.SeoEditor}))),i0=P.lazy(()=>Ut(()=>import("./add-section-modal-BBef0kzW.js"),__vite__mapDeps([95,1,2,7,8,9,10,11,12,13,14,15,16,6,3,4,5,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,50,77,96,56,57,54,55,58,59,60,61,62,63,64,51,65,44,45,46,47,48,49,52,53,66,67,68,69,70,71,72,73,74,75,76,78,97,98,88,99,100,101,102,103,90,91,104,105,106,107,84,108,109,110,111,112,113,114,87,115,116,83,92,93,79,117,118,119,120,121,122,123,124,125,126,127,85,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.AddSectionModal}))),r0=P.lazy(()=>Ut(()=>import("./variant-calendar-Cn9DL04u.js"),__vite__mapDeps([157,1,2,7,8,9,10,11,12,13,14,15,16,6,3,4,5,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,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,135])).then(t=>({default:t.VariantCalendar}))),Mo="oklch(0.65 0.15 160)";function n0(){const t=H.c(18),e=Tr(),{data:s}=vi.useSession(),{currentBranch:i}=ys(),{org:r}=Re(),o=e?.entity?.id??null,a=s?.user?.id,l=e?.entity?.metadata,h=a&&i?Cn(l?.sandboxMap?.[a]?.[i]):{},c=Object.values(h),u=(c.find(o0)??c[0])?.previewUrl??null,f=ps(),m=e?.entity?.organization_id??"";let p;t[0]!==r.slug||t[1]!==m?(p={connectionId:ka,orgId:m,orgSlug:r.slug},t[0]=r.slug,t[1]=m,t[2]=p):p=t[2];const g=vt(p),v=ya(g);let b;t[3]!==i||t[4]!==v||t[5]!==o?(b=()=>{if(!o)return;const w={virtualMcpId:o};i&&(w.branch=i),v.mutate(w)},t[3]=i,t[4]=v,t[5]=o,t[6]=b):b=t[6];const x=b,_=!!o&&!!i&&bo.isStopped(o,i),y=qd({previewUrl:u,appPaused:f.status.state==="paused",userStopped:_});if(y.kind!=="iframe"){let w;return t[7]!==y||t[8]!==x||t[9]!==f.lifecycle||t[10]!==f.phase?(w=n.jsx(j0,{state:y,claimPhase:f.phase,lifecycle:f.lifecycle,onStart:x}),t[7]=y,t[8]=x,t[9]=f.lifecycle,t[10]=f.phase,t[11]=w):w=t[11],w}if(!o||!i){let w;return t[12]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(Yi,{title:"Waiting for sandbox context…"}),t[12]=w):w=t[12],w}let S;return t[13]!==i||t[14]!==r.slug||t[15]!==u||t[16]!==o?(S=n.jsx(l0,{orgSlug:r.slug,virtualMcpId:o,branch:i,previewUrl:u}),t[13]=i,t[14]=r.slug,t[15]=u,t[16]=o,t[17]=S):S=t[17],S}function o0(t){return t.sandboxProviderKind!=="user-desktop"}const Sc=2e3,a0=15;function wc(t,e,s,i){return typeof e!="string"||s&&(Du(e,s,i)||t.state.dataUpdateCount>=a0)?!1:Sc}function l0({orgSlug:t,virtualMcpId:e,branch:s,previewUrl:i}){const r={orgSlug:t,virtualMcpId:e,branch:s,previewUrl:i},{data:o,isLoading:a}=qa(r),[l,h]=P.useState("pages"),[c,d]=P.useState(null),[u,f]=P.useState(null),[m,p]=P.useState(""),[g,v]=P.useState(null),[b,x]=P.useState(null),[_,y]=P.useState("date-desc"),[S,w]=P.useState(()=>new Set),[j,E]=P.useState(l);j!==l&&(E(l),p(""),v(null),x(null),y("date-desc"),w(new Set));const{data:T,isLoading:A,isFetching:R}=Ga(r,{refetchInterval:q=>{const V=q.state.data;if(l==="apps"&&c&&c.collection==="apps"){const he=o?.[c.key];return wc(q,typeof he?.__resolveType=="string"?he.__resolveType:void 0,V)}if(l==="site"&&o){const he=V?Ao(o,V):null,_e=o.site,Pe=he?.resolveType??(typeof _e?.__resolveType=="string"?_e.__resolveType:void 0);return wc(q,Pe,V,["seo"])}return!1}}),k=(q,V)=>!Du(q,T,V)&&(A||R),{catalog:C,isLoading:D}=yy(T??void 0,o??void 0,{enabled:l==="apps"}),N=gl(r),L=uy(r),B=Gy(r),I=Xy(r),[M,O]=P.useState(null),[F,z]=P.useState(),[K,G]=P.useState(!1),[X,ie]=P.useState(null),[W,Y]=P.useState(null),[ne,$]=P.useState(null),[Z,U]=P.useState(null);if(a||A)return n.jsx("div",{className:"h-full w-full flex items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})});if(!o||!T)return n.jsx(Yi,{title:"Could not load site data."});const ee=nl(o).sort((q,V)=>q.name.localeCompare(V.name)),Q=ol(o,T),fe=Ao(o,T),me=$u(o),ve=_l.some(q=>me[q].length>0),J=nr(l)?me[l]:[],se=(ve?pn(o,"categories"):[]).map(({key:q,payload:V})=>{const he=typeof V.slug=="string"?V.slug:"",_e=typeof V.name=="string"?V.name:"";return{slug:he||q,name:_e||he||q}}).filter(q=>q.slug).sort((q,V)=>q.name.localeCompare(V.name));if(!rl(o,T)&&!ve)return n.jsx(Yi,{icon:vr,title:"No editable content",description:"This project doesn't expose any Deco pages, sections, or apps."});const pe={pages:ee.length,sections:Q.length,apps:C.length,posts:me.posts.length,authors:me.authors.length,categories:me.categories.length},ge=new Set(ee.map(q=>hi(q.path))),Be=new Set(ee.map(q=>q.name)),Le=new Set(Q.map(q=>q.name)),Ee=async q=>{const V=o[q.key];if(!V)return;const he=ku(o,q.key),_e=ju(o,q.key,Math.max(0,he-1)),Pe=wb(V.sections,_e);if(Pe)try{await N.mutateAsync({blockKey:q.key,data:{...V,sections:Pe}}),ae.success(`Variant added to "${q.name}"`),d({collection:"pages",key:q.key,path:q.path})}catch(it){ae.error(it instanceof Error?it.message:"Could not add variant")}},Ze=()=>{z(void 0),O({mode:"create",sourceKey:null,initialName:"My new page",initialPath:"/example"})},ct=q=>{z(void 0),O({mode:"duplicate",sourceKey:q.key,initialName:vc(Be,q.name),initialPath:Sy(ge,q.path)})},yt=q=>{z(void 0),O({mode:"rename",sourceKey:q.key,initialName:q.name,initialPath:q.path})},mt=async q=>{if(!M)return;const{mode:V,sourceKey:he}=M;try{if(V==="create"){const _e=Cy(q.name,q.path),Pe=jy(o,q.name);await N.mutateAsync({blockKey:Pe,data:_e}),ae.success(`Created "${q.name}"`),d({collection:"pages",key:Pe,path:q.path})}else if(V==="duplicate"&&he){const _e=o[he];if(!_e)throw new Error("Source page not found");const{key:Pe,data:it}=wy({source:_e,pages:ee,newName:q.name,newPath:q.path});await N.mutateAsync({blockKey:Pe,data:it}),ae.success(`Duplicated as "${q.name}"`),d({collection:"pages",key:Pe,path:q.path})}else if(V==="rename"&&he){const _e=o[he];if(!_e)throw new Error("Page not found");const Pe={..._e,name:q.name,path:q.path};await N.mutateAsync({blockKey:he,data:Pe}),ae.success("Page updated"),c?.collection==="pages"&&c.key===he&&d({collection:"pages",key:he,path:q.path})}O(null)}catch(_e){z(_e instanceof Error?_e.message:"Save failed")}},St=({path:q})=>{if(!M)return null;const V=hi(q);return(M.mode==="rename"?hi(M.initialPath):null)!==V&&ge.has(V)?`A page with path "${q}" already exists.`:null},qe=async q=>{const{blockKey:V,data:he}=Ny(q,o);try{await N.mutateAsync({blockKey:V,data:he}),ae.success(`Created section "${V}"`),G(!1),d({collection:"sections",key:V})}catch(_e){ae.error(_e instanceof Error?_e.message:"Could not create section")}},wt=async q=>{const V=o[q.key];if(!V){ae.error("Section not found.");return}const he=Mu(o,q.key),_e=vc(Le,q.name),Pe={...V,name:_e};try{await N.mutateAsync({blockKey:he,data:Pe}),ae.success(`Duplicated "${q.name}"`),d({collection:"sections",key:he})}catch(it){ae.error(it instanceof Error?it.message:"Duplicate failed")}},qt=async q=>{if(!X)return;const V=o[X];if(!V){ae.error("Section not found.");return}try{await N.mutateAsync({blockKey:X,data:{...V,name:q}}),ae.success("Section renamed"),ie(null)}catch(he){ae.error(he instanceof Error?he.message:"Rename failed")}},pt=async q=>{const V=xc(o,q),he=to(V,q,Fy(q));try{await B.mutateAsync({blockKey:V,data:he}),ae.success(`Created ${rr[q]}`),d({collection:q,key:V})}catch(_e){ae.error(_e instanceof Error?_e.message:"Could not create")}},Ot=async q=>{const V=o[q.key];if(!V){ae.error("Record not found.");return}const he=xc(o,q.kind),_e=q.kind==="posts"?"title":"name",Pe={...structuredClone(Lo(V,q.kind)),[_e]:`${q.label} (copy)`};try{await B.mutateAsync({blockKey:he,data:to(he,q.kind,Pe)}),ae.success(`Duplicated "${q.label}"`),d({collection:q.kind,key:he})}catch(it){ae.error(it instanceof Error?it.message:"Duplicate failed")}},Ct=q=>{w(V=>{const he=new Set(V);return he.has(q)?he.delete(q):he.add(q),he})},xe=q=>{h("posts"),E("posts"),d(null),f(null),p(""),v(q),x(null),y("date-desc"),w(new Set)},de=async(q,V)=>{const he=[...S];let _e=0;for(const Pe of he){const it=o[Pe],Ds=Lo(it,"posts"),Ai=q==="add"?$y(Ds,V):zy(Ds,V);Ai!==Ds&&(await B.mutateAsync({blockKey:Pe,data:to(Pe,"posts",Ai)}),_e+=1)}return _e},Te=async(q,V)=>{const he=S.size;try{const _e=await de(q,V),Pe=q==="add"?"Added to":"Moved",it=he-_e;ae.success(`${Pe} ${_e} ${_e===1?"post":"posts"}`+(it>0?` (${it} already set)`:"")),w(new Set),U(null)}catch(_e){ae.error(_e instanceof Error?_e.message:"Bulk update failed")}},ze=async()=>{if(W)try{if(W.kind==="blog-bulk"){for(const _e of W.keys)await I.mutateAsync({blockKey:_e});ae.success(`Deleted ${W.count} ${W.count===1?"post":"posts"}`),c&&W.keys.includes(c.key)&&d(null),w(new Set),Y(null);return}const{kind:q,key:V,label:he}=W;q==="blog"?await I.mutateAsync({blockKey:V}):await L.mutateAsync({blockKey:V}),ae.success(`Deleted "${he}"`),c&&c.key===V&&d(null),Y(null)}catch(q){ae.error(q instanceof Error?q.message:"Delete failed")}},Ae=L.isPending||I.isPending,Me=W?.kind==="blog"?rr[W.blogKind]:W?.kind==="blog-bulk"?`${W.count} ${W.count===1?"post":"posts"}`:W?.kind??"item";return n.jsxs("div",{className:"flex h-full w-full",children:[n.jsx(c0,{active:l,counts:pe,showBlog:ve,onSelect:q=>{h(q),d(null),f(null)}}),l!=="seo"&&l!=="site"&&l!=="calendar"&&n.jsx(h0,{activeCollection:l,pages:ee,sections:Q,appCatalog:C,appCatalogLoading:D,blogEntries:J,decofile:o,searchQuery:m,onSearchChange:p,postCategoryFilter:g,postAuthorFilter:b,postSort:_,onPostCategoryFilterChange:q=>{v(q),w(new Set)},onPostAuthorFilterChange:q=>{x(q),w(new Set)},onPostSortChange:y,selectedPostKeys:S,onTogglePostSelect:Ct,onSelectAllPosts:q=>w(new Set(q)),onClearPostSelection:()=>w(new Set),onBulkUpdateCategory:()=>U({count:S.size}),onBulkDeletePosts:()=>Y({kind:"blog-bulk",keys:[...S],count:S.size}),selection:c,onSelect:q=>{d(q),f(null)},previewUrl:i,onCreate:()=>{l==="pages"?Ze():nr(l)?pt(l):i?G(!0):ae.error("Start the preview dev server to add sections.")},onDuplicatePage:ct,onRenamePage:yt,onAddPageVariant:Ee,onDeletePage:q=>Y({kind:"page",key:q.key,label:q.name}),onEditPageSeo:q=>{d({collection:"pages",key:q.key,path:q.path}),f(q.key)},onViewPageJson:q=>$(q.key),onDuplicateSection:wt,onRenameSection:q=>ie(q.key),onDeleteSection:q=>Y({kind:"section",key:q.key,label:q.name}),onDuplicateBlog:Ot,onDeleteBlog:q=>Y({kind:"blog",blogKind:q.kind,key:q.key,label:q.label})}),n.jsx("div",{className:"flex-1 min-w-0",children:n.jsx(P.Suspense,{fallback:n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:l==="calendar"?n.jsx(r0,{decofile:o}):l==="site"?fe?n.jsx(yc,{orgSlug:t,virtualMcpId:e,branch:s,blockKey:fe.key,block:o[fe.key],decofile:o,meta:T,title:"Site",excludeFields:["seo"],schemaPending:k(fe.resolveType,["seo"]),previewBaseUrl:i},`site:${fe.key}`):n.jsx(Yi,{title:"Site settings not found",description:"This project doesn't have a site app block (site/apps/site.ts)."}):l==="seo"?n.jsx(s0,{orgSlug:t,virtualMcpId:e,branch:s,decofile:o,meta:T,target:{kind:"site"},previewBaseUrl:i}):c?c.collection==="apps"?n.jsx(yc,{orgSlug:t,virtualMcpId:e,branch:s,blockKey:c.key,block:o[c.key],decofile:o,meta:T,previewBaseUrl:i,schemaPending:k(typeof o[c.key]?.__resolveType=="string"?String(o[c.key].__resolveType):void 0)},`app:${c.key}`):c.collection==="posts"?n.jsx(Zy,{orgSlug:t,virtualMcpId:e,branch:s,blockKey:c.key,block:o[c.key],decofile:o,meta:T,previewBaseUrl:i},`post:${c.key}`):c.collection==="categories"?n.jsx(e0,{orgSlug:t,virtualMcpId:e,branch:s,blockKey:c.key,block:o[c.key],decofile:o,meta:T,onManagePosts:xe},`category:${c.key}`):c.collection==="authors"?n.jsx(Qy,{orgSlug:t,virtualMcpId:e,branch:s,kind:"authors",blockKey:c.key,block:o[c.key]},`authors:${c.key}`):n.jsx(t0,{orgSlug:t,virtualMcpId:e,branch:s,previewReady:!0,previewUrl:i??void 0,currentPath:c.collection==="pages"?c.path:"/",activePageBlockKey:c.collection==="pages"?c.key:null,activeGlobalBlockKey:c.collection==="sections"?c.key:null,initialEditSeo:c.collection==="pages"&&u===c.key,onExitSeo:()=>f(null)},c.collection==="pages"?`page:${c.key}`:`section:${c.key}`):n.jsx(Yi,{title:`Select ${nr(l)?`a ${rr[l]}`:l==="pages"?"a page":l==="apps"?"an app":"a section"} to edit`,description:l==="apps"?"Browse all apps and select an installed one to edit its settings.":'Pick an item from the list, or click "+" to create one.'})})}),M&&n.jsx(Ay,{open:!!M,mode:M.mode,initialName:M.initialName,initialPath:M.initialPath,isPending:N.isPending,error:F,validate:St,onSubmit:mt,onOpenChange:q=>{q||(O(null),z(void 0))}}),X&&n.jsx(Ry,{open:!!X,blockKey:X,initialName:Q.find(q=>q.key===X)?.name??X,isPending:N.isPending,onSubmit:qt,onOpenChange:q=>{q||ie(null)}}),K&&i&&n.jsx(P.Suspense,{fallback:null,children:n.jsx(i0,{open:K,onOpenChange:G,meta:T,decofile:o,previewBaseUrl:i,onSelect:qe})}),ne&&n.jsx(Jy,{open:!!ne,onOpenChange:q=>{q||$(null)},pageKey:ne,decofile:o}),Z&&n.jsx(S0,{count:Z.count,categories:se,isPending:B.isPending,onApply:(q,V)=>{Te(q,V)},onOpenChange:q=>{!q&&!B.isPending&&U(null)}}),n.jsx(Zr,{open:!!W,onOpenChange:q=>{!q&&!Ae&&Y(null)},children:n.jsxs(Qr,{children:[n.jsxs(en,{children:[n.jsx(tn,{children:`Delete ${Me}?`}),n.jsx(sn,{children:W?.kind==="section"?`"${W.label}" will be removed. Pages that still reference it will lose this section.`:W?.kind==="blog-bulk"?`${W.count} ${W.count===1?"post":"posts"} will be removed permanently. This can't be undone.`:W?`"${W.label}" will be removed permanently. This can't be undone.`:null})]}),n.jsxs(rn,{children:[n.jsx(nn,{disabled:Ae,children:"Cancel"}),n.jsx(on,{onClick:q=>{q.preventDefault(),ze()},disabled:Ae,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:Ae?n.jsxs(n.Fragment,{children:[n.jsx(Ne,{size:14,className:"animate-spin"}),"Deleting…"]}):"Delete"})]})]})})]})}function c0(t){const e=H.c(37),{active:s,counts:i,showBlog:r,onSelect:o}=t;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx("div",{className:"px-3 h-12 flex items-center border-b shrink-0",children:n.jsx("span",{className:"text-sm font-medium",children:"Content"})}),e[0]=a):a=e[0];const l=s==="pages";let h;e[1]!==i.pages||e[2]!==o||e[3]!==l?(h=n.jsx(gs,{id:"pages",icon:Aa,label:"Pages",count:i.pages,active:l,onSelect:o}),e[1]=i.pages,e[2]=o,e[3]=l,e[4]=h):h=e[4];const c=s==="sections";let d;e[5]!==i.sections||e[6]!==o||e[7]!==c?(d=n.jsx(gs,{id:"sections",icon:mi,label:"Sections",count:i.sections,active:c,onSelect:o}),e[5]=i.sections,e[6]=o,e[7]=c,e[8]=d):d=e[8];const u=s==="apps";let f;e[9]!==i.apps||e[10]!==o||e[11]!==u?(f=n.jsx(gs,{id:"apps",icon:vd,label:"Apps",count:i.apps,active:u,onSelect:o}),e[9]=i.apps,e[10]=o,e[11]=u,e[12]=f):f=e[12];const m=s==="calendar";let p;e[13]!==o||e[14]!==m?(p=n.jsx(gs,{id:"calendar",icon:Hp,label:"Calendar",active:m,onSelect:o}),e[13]=o,e[14]=m,e[15]=p):p=e[15];let g;e[16]!==s||e[17]!==i.authors||e[18]!==i.categories||e[19]!==i.posts||e[20]!==o||e[21]!==r?(g=r&&n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"mt-3 flex items-center gap-1.5 px-2.5 pb-1 pt-1 text-xs font-medium text-muted-foreground/70",children:[n.jsx(To,{size:13,className:"shrink-0"}),"Blog"]}),n.jsx(gs,{id:"posts",icon:Co,label:"Posts",count:i.posts,active:s==="posts",onSelect:o}),n.jsx(gs,{id:"authors",icon:Dn,label:"Authors",count:i.authors,active:s==="authors",onSelect:o}),n.jsx(gs,{id:"categories",icon:Pn,label:"Categories",count:i.categories,active:s==="categories",onSelect:o})]}),e[16]=s,e[17]=i.authors,e[18]=i.categories,e[19]=i.posts,e[20]=o,e[21]=r,e[22]=g):g=e[22];const v=s==="site";let b;e[23]!==o||e[24]!==v?(b=n.jsx(gs,{id:"site",icon:Wp,label:"Site",active:v,onSelect:o}),e[23]=o,e[24]=v,e[25]=b):b=e[25];const x=s==="seo";let _;e[26]!==o||e[27]!==x?(_=n.jsx(gs,{id:"seo",icon:Xr,label:"SEO",active:x,onSelect:o}),e[26]=o,e[27]=x,e[28]=_):_=e[28];let y;return e[29]!==g||e[30]!==b||e[31]!==_||e[32]!==h||e[33]!==d||e[34]!==f||e[35]!==p?(y=n.jsxs("div",{className:"w-[208px] shrink-0 border-r flex flex-col",children:[a,n.jsxs("nav",{className:"flex flex-col p-1.5 gap-0.5",children:[h,d,f,p,g,b,_]})]}),e[29]=g,e[30]=b,e[31]=_,e[32]=h,e[33]=d,e[34]=f,e[35]=p,e[36]=y):y=e[36],y}function gs(t){const e=H.c(18),{id:s,icon:i,label:r,count:o,active:a,onSelect:l}=t;let h;e[0]!==s||e[1]!==l?(h=()=>l(s),e[0]=s,e[1]=l,e[2]=h):h=e[2];const c=a?"bg-accent text-accent-foreground":"text-muted-foreground hover:bg-muted hover:text-foreground";let d;e[3]!==c?(d=le("flex w-full items-center gap-2 rounded-md px-2.5 py-1.5 text-left text-sm transition-colors cursor-pointer",c),e[3]=c,e[4]=d):d=e[4];let u;e[5]!==i?(u=n.jsx(i,{size:16,className:"shrink-0"}),e[5]=i,e[6]=u):u=e[6];let f;e[7]!==r?(f=n.jsx("span",{className:"flex-1 truncate",children:r}),e[7]=r,e[8]=f):f=e[8];let m;e[9]!==a||e[10]!==o?(m=o!==void 0&&n.jsx("span",{className:le("shrink-0 text-xs tabular-nums",a?"text-accent-foreground/70":"text-muted-foreground/70"),children:o}),e[9]=a,e[10]=o,e[11]=m):m=e[11];let p;return e[12]!==h||e[13]!==d||e[14]!==u||e[15]!==f||e[16]!==m?(p=n.jsxs("button",{type:"button",onClick:h,className:d,children:[u,f,m]}),e[12]=h,e[13]=d,e[14]=u,e[15]=f,e[16]=m,e[17]=p):p=e[17],p}function h0(t){const e=H.c(77),{activeCollection:s,pages:i,sections:r,appCatalog:o,appCatalogLoading:a,blogEntries:l,decofile:h,previewUrl:c,searchQuery:d,onSearchChange:u,postCategoryFilter:f,postAuthorFilter:m,postSort:p,onPostCategoryFilterChange:g,onPostAuthorFilterChange:v,onPostSortChange:b,selectedPostKeys:x,onTogglePostSelect:_,onSelectAllPosts:y,onClearPostSelection:S,onBulkUpdateCategory:w,onBulkDeletePosts:j,selection:E,onSelect:T,onCreate:A,onDuplicatePage:R,onRenamePage:k,onAddPageVariant:C,onDeletePage:D,onEditPageSeo:N,onViewPageJson:L,onDuplicateSection:B,onRenameSection:I,onDeleteSection:M,onDuplicateBlog:O,onDeleteBlog:F}=t;let z,K,G,X,ie,W,Y;if(e[0]!==s||e[1]!==o||e[2]!==a||e[3]!==l||e[4]!==h||e[5]!==C||e[6]!==j||e[7]!==w||e[8]!==S||e[9]!==A||e[10]!==F||e[11]!==D||e[12]!==M||e[13]!==O||e[14]!==R||e[15]!==B||e[16]!==N||e[17]!==v||e[18]!==g||e[19]!==b||e[20]!==k||e[21]!==I||e[22]!==u||e[23]!==T||e[24]!==y||e[25]!==_||e[26]!==L||e[27]!==i||e[28]!==m||e[29]!==f||e[30]!==p||e[31]!==c||e[32]!==d||e[33]!==r||e[34]!==x||e[35]!==E){const U=d.toLowerCase(),ee=i.filter(V=>!U||V.name.toLowerCase().includes(U)||V.path.toLowerCase().includes(U)),Q=r.filter(V=>!U||V.name.toLowerCase().includes(U)||V.key.toLowerCase().includes(U)||V.resolveType.toLowerCase().includes(U)),fe=o.filter(V=>!U||V.title.toLowerCase().includes(U)||V.app.toLowerCase().includes(U)||V.vendor.toLowerCase().includes(U)||V.category.toLowerCase().includes(U)),me=l.filter(V=>!U||V.label.toLowerCase().includes(U)||V.subtitle.toLowerCase().includes(U)),ve=s==="posts",J=m0,se=ve?Oy(h):[],pe=new Map,ge=new Map;for(const V of se){for(const he of V.categorySlugs)pe.set(he,(pe.get(he)??0)+1);for(const he of V.authorEmails)ge.set(he,(ge.get(he)??0)+1)}const Be=(ve?pn(h,"categories"):[]).map(V=>{const{key:he,payload:_e}=V,Pe=J(_e.slug)||he;return{slug:Pe,name:J(_e.name)||J(_e.slug)||he,count:pe.get(Pe)??0}}).filter(f0),Le=(ve?pn(h,"authors"):[]).map(V=>{const{key:he,payload:_e}=V,Pe=J(_e.email);return{email:Pe,name:J(_e.name)||J(_e.email)||he,count:ge.get(Pe)??0}}).filter(u0);let Ee;e[43]!==f?(Ee=V=>!f||V.categorySlugs.includes(f),e[43]=f,e[44]=Ee):Ee=e[44];let Ze;e[45]!==m?(Ze=V=>!m||V.authorEmails.includes(m),e[45]=m,e[46]=Ze):Ze=e[46];let ct;e[47]!==p?(ct=(V,he)=>{if(p==="az")return V.title.localeCompare(he.title);if(p==="za")return he.title.localeCompare(V.title);const _e=V.date.localeCompare(he.date);return p==="date-asc"?_e:-_e},e[47]=p,e[48]=ct):ct=e[48];const yt=se.filter(V=>!U||V.title.toLowerCase().includes(U)||V.slug.toLowerCase().includes(U)).filter(Ee).filter(Ze).sort(ct),mt=x.size,St=yt.map(d0),qe=St.length>0&&St.every(V=>x.has(V)),wt=mt>0,qt=()=>{qe?S():y(St)},pt=`Search ${s}…`,Ot=nr(s)?`Create new ${rr[s]}`:s==="pages"?"Create new page":"Create new section",Ct=s==="sections"&&!c,xe=s!=="apps",de=Ct,Te=Ct?"Start the preview dev server to add sections":void 0;ie="w-[300px] shrink-0 border-r flex flex-col min-h-0";let ze;e[49]===Symbol.for("react.memo_cache_sentinel")?(ze=n.jsx(_d,{size:14,className:"shrink-0 text-muted-foreground","aria-hidden":!0}),e[49]=ze):ze=e[49];let Ae;e[50]!==u?(Ae=V=>u(V.target.value),e[50]=u,e[51]=Ae):Ae=e[51];let Me;e[52]!==pt||e[53]!==d||e[54]!==Ae?(Me=n.jsxs("div",{className:"flex flex-1 items-center gap-2 pl-1",children:[ze,n.jsx("input",{type:"text",value:d,onChange:Ae,placeholder:pt,"aria-label":pt,className:"w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground"})]}),e[52]=pt,e[53]=d,e[54]=Ae,e[55]=Me):Me=e[55];let q;e[56]!==de||e[57]!==Te||e[58]!==Ot||e[59]!==A||e[60]!==xe?(q=xe&&n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:A,disabled:de,"aria-label":Ot,"aria-disabled":de,children:n.jsx(Bt,{size:14})})}),n.jsx(ke,{side:"bottom",children:Te??Ot})]}),e[56]=de,e[57]=Te,e[58]=Ot,e[59]=A,e[60]=xe,e[61]=q):q=e[61],e[62]!==Me||e[63]!==q?(W=n.jsxs("div",{className:"px-2 h-12 flex items-center gap-1 border-b shrink-0",children:[Me,q]}),e[62]=Me,e[63]=q,e[64]=W):W=e[64],Y=ve&&(wt?n.jsx(y0,{count:mt,allSelected:qe,onToggleSelectAll:qt,onUpdateCategory:w,onDelete:j,onClear:S}):n.jsx(g0,{categories:Be,authors:Le,categoryFilter:f,authorFilter:m,sort:p,hasPosts:se.length>0,allSelected:qe,onToggleSelectAll:qt,onCategoryFilterChange:g,onAuthorFilterChange:v,onSortChange:b})),z=jn,X="flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",K="flex flex-col gap-1 p-1.5",G=s==="pages"?ee.length===0?n.jsx(Mi,{hasItems:i.length>0,emptyLabel:"No pages yet.",emptyHint:'Click "+" to create your first page.'}):ee.map(V=>{const he=E?.collection==="pages"&&E.key===V.key,_e=ku(h,V.key);return n.jsx(Bi,{icon:Aa,title:V.name,subtitle:V.path,active:he,variantCount:_e,onClick:()=>T({collection:"pages",key:V.key,path:V.path}),menu:n.jsx(Ir,{onDuplicate:()=>R(V),onRename:()=>k(V),onAddVariant:()=>C(V),onEditSeo:()=>N(V),onViewJson:()=>L(V),onDelete:()=>D(V)})},V.key)}):s==="sections"?Q.length===0?n.jsx(Mi,{hasItems:r.length>0,emptyLabel:"No saved sections yet.",emptyHint:'Click "+" to create one, or save a section from a page.'}):Q.map(V=>{const he=E?.collection==="sections"&&E.key===V.key,_e=V.resolveType.split("/").pop()?.replace(/\.tsx?$/,"");return n.jsx(Bi,{icon:mi,title:V.name,subtitle:_e??V.resolveType,active:he,onClick:()=>T({collection:"sections",key:V.key}),menu:n.jsx(Ir,{onDuplicate:()=>B(V),onRename:()=>I(V),onDelete:()=>M(V)})},V.key)}):s==="apps"?a?n.jsx("div",{className:"flex items-center justify-center py-8",children:n.jsx(Ne,{size:18,className:"animate-spin text-muted-foreground"})}):fe.length===0?n.jsx(Mi,{hasItems:o.length>0,emptyLabel:"No apps found.",emptyHint:"Try a different search term."}):fe.map(V=>{const he=E?.collection==="apps"&&V.blockKey!==null&&E.key===V.blockKey;return n.jsx(Bi,{icon:vd,logoUrl:V.logo,title:V.title,subtitle:V.category,active:he,trailing:V.installed?n.jsx("span",{className:"shrink-0 rounded-full bg-emerald-500/15 px-1.5 py-0.5 text-[10px] font-medium text-emerald-700 dark:text-emerald-400",children:"Installed"}):void 0,onClick:()=>{if(!V.installed||!V.blockKey){ae.message(`${V.title} is not installed on this site.`);return}T({collection:"apps",key:V.blockKey})}},V.id)}):ve?yt.length===0?n.jsx(Mi,{hasItems:se.length>0,emptyLabel:"No posts yet.",emptyHint:'Click "+" to create your first post.'}):yt.map(V=>{const he={key:V.key,kind:"posts",label:V.title,subtitle:V.slug};return n.jsx(Bi,{icon:Co,title:V.title,subtitle:V.slug,active:E?.collection==="posts"&&E.key===V.key,selectable:!0,selectionActive:wt,selected:x.has(V.key),onToggleSelect:()=>_(V.key),onClick:()=>T({collection:"posts",key:V.key}),menu:n.jsx(Ir,{onDuplicate:()=>O(he),onDelete:()=>F(he)})},V.key)}):me.length===0?n.jsx(Mi,{hasItems:l.length>0,emptyLabel:`No ${s} yet.`,emptyHint:`Click "+" to create your first ${nr(s)?rr[s]:"item"}.`}):me.map(V=>{const he=E?.collection===V.kind&&E.key===V.key;return n.jsx(Bi,{icon:V.kind==="posts"?Co:V.kind==="authors"?Dn:Pn,title:V.label,subtitle:V.subtitle,active:he,onClick:()=>T({collection:V.kind,key:V.key}),menu:n.jsx(Ir,{onDuplicate:()=>O(V),onDelete:()=>F(V)})},V.key)}),e[0]=s,e[1]=o,e[2]=a,e[3]=l,e[4]=h,e[5]=C,e[6]=j,e[7]=w,e[8]=S,e[9]=A,e[10]=F,e[11]=D,e[12]=M,e[13]=O,e[14]=R,e[15]=B,e[16]=N,e[17]=v,e[18]=g,e[19]=b,e[20]=k,e[21]=I,e[22]=u,e[23]=T,e[24]=y,e[25]=_,e[26]=L,e[27]=i,e[28]=m,e[29]=f,e[30]=p,e[31]=c,e[32]=d,e[33]=r,e[34]=x,e[35]=E,e[36]=z,e[37]=K,e[38]=G,e[39]=X,e[40]=ie,e[41]=W,e[42]=Y}else z=e[36],K=e[37],G=e[38],X=e[39],ie=e[40],W=e[41],Y=e[42];let ne;e[65]!==K||e[66]!==G?(ne=n.jsx("div",{className:K,children:G}),e[65]=K,e[66]=G,e[67]=ne):ne=e[67];let $;e[68]!==z||e[69]!==X||e[70]!==ne?($=n.jsx(z,{className:X,children:ne}),e[68]=z,e[69]=X,e[70]=ne,e[71]=$):$=e[71];let Z;return e[72]!==ie||e[73]!==W||e[74]!==Y||e[75]!==$?(Z=n.jsxs("div",{className:ie,children:[W,Y,$]}),e[72]=ie,e[73]=W,e[74]=Y,e[75]=$,e[76]=Z):Z=e[76],Z}function d0(t){return t.key}function u0(t){return t.email}function f0(t){return t.slug}function m0(t){return typeof t=="string"?t:""}const ni="__all__",Wu={"date-desc":"Newest first","date-asc":"Oldest first",az:"Title A–Z",za:"Title Z–A"},p0={"date-desc":"Newest","date-asc":"Oldest",az:"A–Z",za:"Z–A"},so=P.forwardRef(function(e,s){const i=H.c(20);let r,o,a,l,h;i[0]!==e?({icon:r,active:o,value:h,className:a,...l}=e,i[0]=e,i[1]=r,i[2]=o,i[3]=a,i[4]=l,i[5]=h):(r=i[1],o=i[2],a=i[3],l=i[4],h=i[5]);const c=o?"text-foreground":"text-muted-foreground";let d;i[6]!==a||i[7]!==c?(d=le("h-7 gap-1 px-1.5 text-xs",c,a),i[6]=a,i[7]=c,i[8]=d):d=i[8];let u;i[9]!==r?(u=n.jsx(r,{size:14,className:"shrink-0"}),i[9]=r,i[10]=u):u=i[10];let f;i[11]!==h?(f=h&&n.jsx("span",{className:"min-w-0 flex-1 truncate",children:h}),i[11]=h,i[12]=f):f=i[12];let m;i[13]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(Rs,{size:12,className:"shrink-0 opacity-60"}),i[13]=m):m=i[13];let p;return i[14]!==l||i[15]!==s||i[16]!==d||i[17]!==u||i[18]!==f?(p=n.jsxs(oe,{ref:s,type:"button",variant:"ghost",size:"sm",className:d,...l,children:[u,f,m]}),i[14]=l,i[15]=s,i[16]=d,i[17]=u,i[18]=f,i[19]=p):p=i[19],p});function Uu(t){const e=H.c(2),{count:s}=t;let i;return e[0]!==s?(i=n.jsx("span",{className:"ml-auto pl-3 text-xs text-muted-foreground tabular-nums",children:s}),e[0]=s,e[1]=i):i=e[1],i}function g0(t){const e=H.c(64),{categories:s,authors:i,categoryFilter:r,authorFilter:o,sort:a,hasPosts:l,allSelected:h,onToggleSelectAll:c,onCategoryFilterChange:d,onAuthorFilterChange:u,onSortChange:f}=t;let m;if(e[0]!==s||e[1]!==r){let U;e[3]!==r?(U=ee=>ee.slug===r,e[3]=r,e[4]=U):U=e[4],m=s.find(U),e[0]=s,e[1]=r,e[2]=m}else m=e[2];const p=m;let g;if(e[5]!==o||e[6]!==i){let U;e[8]!==o?(U=ee=>ee.email===o,e[8]=o,e[9]=U):U=e[9],g=i.find(U),e[5]=o,e[6]=i,e[7]=g}else g=e[7];const v=g,b=!l;let x;e[10]!==h||e[11]!==c||e[12]!==b?(x=n.jsx(Ku,{checked:h,disabled:b,onToggle:c}),e[10]=h,e[11]=c,e[12]=b,e[13]=x):x=e[13];const _=!!r,y=p?.name;let S;e[14]!==_||e[15]!==y?(S=n.jsx(as,{asChild:!0,children:n.jsx(so,{icon:Pn,active:_,value:y,className:"min-w-0 shrink"})}),e[14]=_,e[15]=y,e[16]=S):S=e[16];let w;e[17]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(Wn,{children:"Filter by category"}),e[17]=w):w=e[17];const j=r??ni;let E;e[18]!==d?(E=U=>d(U===ni?null:U),e[18]=d,e[19]=E):E=e[19];let T;e[20]===Symbol.for("react.memo_cache_sentinel")?(T=n.jsx(hr,{value:ni,children:"All categories"}),e[20]=T):T=e[20];let A;e[21]!==s?(A=s.map(x0),e[21]=s,e[22]=A):A=e[22];let R;e[23]!==E||e[24]!==A||e[25]!==j?(R=n.jsxs(ls,{align:"start",className:"max-h-80 w-56 overflow-y-auto",children:[w,n.jsxs(Un,{value:j,onValueChange:E,children:[T,A]})]}),e[23]=E,e[24]=A,e[25]=j,e[26]=R):R=e[26];let k;e[27]!==R||e[28]!==S?(k=n.jsxs(os,{children:[S,R]}),e[27]=R,e[28]=S,e[29]=k):k=e[29];const C=!!o,D=v?.name;let N;e[30]!==C||e[31]!==D?(N=n.jsx(as,{asChild:!0,children:n.jsx(so,{icon:Dn,active:C,value:D,className:"min-w-0 shrink"})}),e[30]=C,e[31]=D,e[32]=N):N=e[32];let L;e[33]===Symbol.for("react.memo_cache_sentinel")?(L=n.jsx(Wn,{children:"Filter by author"}),e[33]=L):L=e[33];const B=o??ni;let I;e[34]!==u?(I=U=>u(U===ni?null:U),e[34]=u,e[35]=I):I=e[35];let M;e[36]===Symbol.for("react.memo_cache_sentinel")?(M=n.jsx(hr,{value:ni,children:"All authors"}),e[36]=M):M=e[36];let O;e[37]!==i?(O=i.map(v0),e[37]=i,e[38]=O):O=e[38];let F;e[39]!==B||e[40]!==I||e[41]!==O?(F=n.jsxs(ls,{align:"start",className:"max-h-80 w-56 overflow-y-auto",children:[L,n.jsxs(Un,{value:B,onValueChange:I,children:[M,O]})]}),e[39]=B,e[40]=I,e[41]=O,e[42]=F):F=e[42];let z;e[43]!==N||e[44]!==F?(z=n.jsxs(os,{children:[N,F]}),e[43]=N,e[44]=F,e[45]=z):z=e[45];const K=p0[a];let G;e[46]!==K?(G=n.jsx(as,{asChild:!0,children:n.jsx(so,{icon:Up,active:!0,value:K})}),e[46]=K,e[47]=G):G=e[47];let X;e[48]===Symbol.for("react.memo_cache_sentinel")?(X=n.jsx(Wn,{children:"Sort by"}),e[48]=X):X=e[48];let ie;e[49]!==f?(ie=U=>f(U),e[49]=f,e[50]=ie):ie=e[50];let W;e[51]===Symbol.for("react.memo_cache_sentinel")?(W=Object.keys(Wu),e[51]=W):W=e[51];let Y;e[52]===Symbol.for("react.memo_cache_sentinel")?(Y=W.map(_0),e[52]=Y):Y=e[52];let ne;e[53]!==a||e[54]!==ie?(ne=n.jsxs(ls,{align:"end",className:"w-44",children:[X,n.jsx(Un,{value:a,onValueChange:ie,children:Y})]}),e[53]=a,e[54]=ie,e[55]=ne):ne=e[55];let $;e[56]!==G||e[57]!==ne?($=n.jsxs(os,{children:[G,ne]}),e[56]=G,e[57]=ne,e[58]=$):$=e[58];let Z;return e[59]!==k||e[60]!==z||e[61]!==$||e[62]!==x?(Z=n.jsxs("div",{className:"flex min-w-0 items-center gap-0.5 overflow-hidden border-b px-2 py-1.5",children:[x,k,z,$]}),e[59]=k,e[60]=z,e[61]=$,e[62]=x,e[63]=Z):Z=e[63],Z}function _0(t){return n.jsx(hr,{value:t,children:Wu[t]},t)}function v0(t){return n.jsxs(hr,{value:t.email,children:[n.jsx("span",{className:"min-w-0 flex-1 truncate",children:t.name}),n.jsx(Uu,{count:t.count})]},t.email)}function x0(t){return n.jsxs(hr,{value:t.slug,children:[n.jsx("span",{className:"min-w-0 flex-1 truncate",children:t.name}),n.jsx(Uu,{count:t.count})]},t.slug)}function Ku(t){const e=H.c(12),{checked:s,disabled:i,onToggle:r}=t;let o;e[0]!==r?(o=()=>r(),e[0]=r,e[1]=o):o=e[1];const a=s?"Deselect all posts":"Select all posts";let l;e[2]!==s||e[3]!==i||e[4]!==o||e[5]!==a?(l=n.jsx(Ce,{asChild:!0,children:n.jsx("span",{className:"flex shrink-0 items-center px-1.5",onClick:b0,children:n.jsx(yi,{checked:s,disabled:i,onCheckedChange:o,"aria-label":a})})}),e[2]=s,e[3]=i,e[4]=o,e[5]=a,e[6]=l):l=e[6];const h=s?"Deselect all":"Select all";let c;e[7]!==h?(c=n.jsx(ke,{side:"bottom",children:h}),e[7]=h,e[8]=c):c=e[8];let d;return e[9]!==l||e[10]!==c?(d=n.jsxs(je,{children:[l,c]}),e[9]=l,e[10]=c,e[11]=d):d=e[11],d}function b0(t){return t.stopPropagation()}function y0(t){const e=H.c(31),{count:s,allSelected:i,onToggleSelectAll:r,onUpdateCategory:o,onDelete:a,onClear:l}=t;let h;e[0]!==i||e[1]!==r?(h=n.jsx(Ku,{checked:i,onToggle:r}),e[0]=i,e[1]=r,e[2]=h):h=e[2];let c;e[3]!==s?(c=n.jsxs("span",{className:"text-xs font-medium tabular-nums",children:[s," selected"]}),e[3]=s,e[4]=c):c=e[4];let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(Pn,{size:14}),e[5]=d):d=e[5];let u;e[6]!==o?(u=n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 gap-1 px-2 text-xs",onClick:o,"aria-label":"Update category for selected posts",children:[d,"Category"]})}),e[6]=o,e[7]=u):u=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx(ke,{side:"bottom",children:"Update category"}),e[8]=f):f=e[8];let m;e[9]!==u?(m=n.jsxs(je,{children:[u,f]}),e[9]=u,e[10]=m):m=e[10];let p;e[11]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(Ks,{size:14}),e[11]=p):p=e[11];let g;e[12]!==a?(g=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"h-7 w-7 text-destructive hover:text-destructive",onClick:a,"aria-label":"Delete selected posts",children:p})}),e[12]=a,e[13]=g):g=e[13];let v;e[14]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx(ke,{side:"bottom",children:"Delete selected"}),e[14]=v):v=e[14];let b;e[15]!==g?(b=n.jsxs(je,{children:[g,v]}),e[15]=g,e[16]=b):b=e[16];let x;e[17]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(xd,{size:14}),e[17]=x):x=e[17];let _;e[18]!==l?(_=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{type:"button",variant:"ghost",size:"icon",className:"h-7 w-7",onClick:l,"aria-label":"Clear selection",children:x})}),e[18]=l,e[19]=_):_=e[19];let y;e[20]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx(ke,{side:"bottom",children:"Clear selection"}),e[20]=y):y=e[20];let S;e[21]!==_?(S=n.jsxs(je,{children:[_,y]}),e[21]=_,e[22]=S):S=e[22];let w;e[23]!==b||e[24]!==S||e[25]!==m?(w=n.jsxs("div",{className:"ml-auto flex items-center gap-0.5",children:[m,b,S]}),e[23]=b,e[24]=S,e[25]=m,e[26]=w):w=e[26];let j;return e[27]!==h||e[28]!==w||e[29]!==c?(j=n.jsxs("div",{className:"flex items-center gap-0.5 border-b bg-accent/40 px-2 py-1.5",children:[h,c,w]}),e[27]=h,e[28]=w,e[29]=c,e[30]=j):j=e[30],j}function S0(t){const e=H.c(48),{count:s,categories:i,isPending:r,onApply:o,onOpenChange:a}=t,[l,h]=P.useState(i[0]?.slug??""),[c,d]=P.useState("add");let u;if(e[0]!==i||e[1]!==l){let I;e[3]!==l?(I=M=>M.slug===l,e[3]=l,e[4]=I):I=e[4],u=i.find(I),e[0]=i,e[1]=l,e[2]=u}else u=e[2];const f=u;let m;e[5]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(ms,{children:"Update category"}),e[5]=m):m=e[5];const p=s===1?"post":"posts";let g;e[6]!==s||e[7]!==p?(g=n.jsxs(fs,{children:[m,n.jsxs(Rn,{children:["Choose a category to apply to ",s," ",p,"."]})]}),e[6]=s,e[7]=p,e[8]=g):g=e[8];let v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx(_t,{children:"Category"}),e[9]=v):v=e[9];let b;e[10]!==i||e[11]!==l?(b=n.jsxs("div",{className:"space-y-2",children:[v,i.length===0?n.jsx("p",{className:"text-sm text-muted-foreground",children:"No categories yet — create one in the Categories collection."}):n.jsxs(Et,{value:l,onValueChange:h,children:[n.jsx(jt,{className:"w-full",children:n.jsx(Lt,{placeholder:"Select a category"})}),n.jsx(Nt,{children:i.map(w0)})]})]}),e[10]=i,e[11]=l,e[12]=b):b=e[12];let x;e[13]===Symbol.for("react.memo_cache_sentinel")?(x=I=>d(I),e[13]=x):x=e[13];let _;e[14]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx(_c,{value:"add",id:"cat-mode-add",className:"mt-0.5"}),e[14]=_):_=e[14];let y;e[15]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsxs(_t,{htmlFor:"cat-mode-add",className:"flex cursor-pointer items-start gap-2.5 rounded-lg border p-3",children:[_,n.jsxs("span",{className:"space-y-0.5",children:[n.jsx("span",{className:"block text-sm font-medium",children:"Add category"}),n.jsx("span",{className:"block text-xs text-muted-foreground",children:"Keep existing categories and add this one."})]})]}),e[15]=y):y=e[15];let S;e[16]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(_c,{value:"replace",id:"cat-mode-replace",className:"mt-0.5"}),e[16]=S):S=e[16];let w;e[17]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsxs(_t,{htmlFor:"cat-mode-replace",className:"flex cursor-pointer items-start gap-2.5 rounded-lg border p-3",children:[S,n.jsxs("span",{className:"space-y-0.5",children:[n.jsx("span",{className:"block text-sm font-medium",children:"Replace category"}),n.jsx("span",{className:"block text-xs text-muted-foreground",children:"Remove all current categories and set only this one."})]})]}),e[17]=w):w=e[17];let j;e[18]!==c?(j=n.jsxs(cy,{value:c,onValueChange:x,className:"gap-2",children:[y,w]}),e[18]=c,e[19]=j):j=e[19];let E;e[20]!==j||e[21]!==b?(E=n.jsxs("div",{className:"space-y-4 py-2",children:[b,j]}),e[20]=j,e[21]=b,e[22]=E):E=e[22];let T;e[23]!==a?(T=()=>a(!1),e[23]=a,e[24]=T):T=e[24];let A;e[25]!==r||e[26]!==T?(A=n.jsx(oe,{type:"button",variant:"outline",onClick:T,disabled:r,children:"Cancel"}),e[25]=r,e[26]=T,e[27]=A):A=e[27];const R=!f||r;let k;e[28]!==c||e[29]!==o||e[30]!==f?(k=()=>f&&o(c,{name:f.name,slug:f.slug}),e[28]=c,e[29]=o,e[30]=f,e[31]=k):k=e[31];let C;e[32]!==r?(C=r?n.jsxs(n.Fragment,{children:[n.jsx(Ne,{size:14,className:"animate-spin"}),"Updating…"]}):"Apply",e[32]=r,e[33]=C):C=e[33];let D;e[34]!==R||e[35]!==k||e[36]!==C?(D=n.jsx(oe,{type:"button",disabled:R,onClick:k,children:C}),e[34]=R,e[35]=k,e[36]=C,e[37]=D):D=e[37];let N;e[38]!==A||e[39]!==D?(N=n.jsxs(Qs,{children:[A,D]}),e[38]=A,e[39]=D,e[40]=N):N=e[40];let L;e[41]!==E||e[42]!==N||e[43]!==g?(L=n.jsxs(Vt,{className:"sm:max-w-md",children:[g,E,N]}),e[41]=E,e[42]=N,e[43]=g,e[44]=L):L=e[44];let B;return e[45]!==a||e[46]!==L?(B=n.jsx(Kt,{open:!0,onOpenChange:a,children:L}),e[45]=a,e[46]=L,e[47]=B):B=e[47],B}function w0(t){return n.jsx(Ye,{value:t.slug,children:n.jsx("span",{className:"truncate",children:t.name})},t.slug)}function Bi(t){const e=H.c(36),{icon:s,logoUrl:i,title:r,subtitle:o,active:a,variantCount:l,trailing:h,selectable:c,selectionActive:d,selected:u,onToggleSelect:f,onClick:m,menu:p}=t;let g;e[0]!==s||e[1]!==a||e[2]!==i||e[3]!==l?(g=l&&l>1?n.jsx("span",{className:"flex size-8 shrink-0 items-center justify-center",children:n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(s,{size:16,className:"shrink-0",style:{color:Mo}})}),n.jsxs(ke,{side:"right",children:[l," variants"]})]})}):i?n.jsx("img",{src:i,alt:"",className:"size-8 shrink-0 rounded-lg object-cover bg-muted"}):n.jsx("span",{className:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted",children:n.jsx(s,{size:16,className:le("shrink-0",a?"text-accent-foreground":"text-muted-foreground")})}),e[0]=s,e[1]=a,e[2]=i,e[3]=l,e[4]=g):g=e[4];const v=g,b=a?"bg-accent text-accent-foreground":"hover:bg-muted";let x;e[5]!==b?(x=le("group relative flex min-w-0 items-center rounded-md transition-colors",b),e[5]=b,e[6]=x):x=e[6];let _;e[7]!==f||e[8]!==c||e[9]!==u||e[10]!==d||e[11]!==r?(_=c&&n.jsx("span",{className:le("flex shrink-0 items-center pl-2.5 transition-opacity",u||d?"opacity-100":"opacity-0 group-hover:opacity-100 focus-within:opacity-100"),onClick:C0,children:n.jsx(yi,{checked:u,onCheckedChange:()=>f?.(),"aria-label":`Select ${r}`})}),e[7]=f,e[8]=c,e[9]=u,e[10]=d,e[11]=r,e[12]=_):_=e[12];let y;e[13]!==r?(y=n.jsx("span",{className:"block truncate text-sm font-medium",children:r}),e[13]=r,e[14]=y):y=e[14];const S=a?"text-accent-foreground/70":"text-muted-foreground";let w;e[15]!==S?(w=le("block truncate text-xs",S),e[15]=S,e[16]=w):w=e[16];let j;e[17]!==o||e[18]!==w?(j=n.jsx("span",{className:w,children:o}),e[17]=o,e[18]=w,e[19]=j):j=e[19];let E;e[20]!==y||e[21]!==j?(E=n.jsxs("span",{className:"min-w-0 flex-1",children:[y,j]}),e[20]=y,e[21]=j,e[22]=E):E=e[22];let T;e[23]!==m||e[24]!==v||e[25]!==E||e[26]!==h?(T=n.jsxs("button",{type:"button",onClick:m,className:"flex min-w-0 flex-1 items-center gap-2.5 rounded-md px-2.5 py-2 text-left cursor-pointer",children:[v,E,h]}),e[23]=m,e[24]=v,e[25]=E,e[26]=h,e[27]=T):T=e[27];let A;e[28]!==a||e[29]!==p?(A=p&&n.jsx("div",{className:le("pr-1 opacity-0 transition-opacity group-hover:opacity-100",a&&"opacity-100"),children:p}),e[28]=a,e[29]=p,e[30]=A):A=e[30];let R;return e[31]!==T||e[32]!==A||e[33]!==x||e[34]!==_?(R=n.jsxs("div",{className:x,children:[_,T,A]}),e[31]=T,e[32]=A,e[33]=x,e[34]=_,e[35]=R):R=e[35],R}function C0(t){return t.stopPropagation()}function Ir(t){const e=H.c(21),{onDuplicate:s,onRename:i,onAddVariant:r,onEditSeo:o,onViewJson:a,onDelete:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(as,{asChild:!0,children:n.jsx("button",{type:"button","aria-label":"More actions",className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-background hover:text-foreground cursor-pointer",onClick:k0,children:n.jsx(Tn,{size:14})})}),e[0]=h):h=e[0];let c;e[1]!==i?(c=i&&n.jsxs(We,{onClick:i,children:[n.jsx($a,{size:14}),"Rename"]}),e[1]=i,e[2]=c):c=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(bs,{size:14}),e[3]=d):d=e[3];let u;e[4]!==s?(u=n.jsxs(We,{onClick:s,children:[d,"Duplicate"]}),e[4]=s,e[5]=u):u=e[5];let f;e[6]!==r?(f=r&&n.jsxs(n.Fragment,{children:[n.jsx(tr,{}),n.jsxs(We,{onClick:r,className:"cursor-pointer",style:{color:Mo},children:[n.jsx(Kp,{size:14,style:{color:Mo}}),"Add variant"]})]}),e[6]=r,e[7]=f):f=e[7];let m;e[8]!==o||e[9]!==a?(m=(o||a)&&n.jsxs(n.Fragment,{children:[n.jsx(tr,{}),o&&n.jsxs(We,{onClick:o,children:[n.jsx(Xr,{size:14}),"Edit SEO"]}),a&&n.jsxs(We,{onClick:a,children:[n.jsx(Ra,{size:14}),"View JSON"]})]}),e[8]=o,e[9]=a,e[10]=m):m=e[10];let p;e[11]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(tr,{}),e[11]=p):p=e[11];let g;e[12]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx(Ks,{size:14}),e[12]=g):g=e[12];let v;e[13]!==l?(v=n.jsxs(We,{onClick:l,className:"text-destructive focus:text-destructive",children:[g,"Delete"]}),e[13]=l,e[14]=v):v=e[14];let b;return e[15]!==c||e[16]!==u||e[17]!==f||e[18]!==m||e[19]!==v?(b=n.jsxs(os,{children:[h,n.jsxs(ls,{align:"end",className:"w-44",children:[c,u,f,m,p,v]})]}),e[15]=c,e[16]=u,e[17]=f,e[18]=m,e[19]=v,e[20]=b):b=e[20],b}function k0(t){return t.stopPropagation()}function Mi(t){const e=H.c(6),{hasItems:s,emptyLabel:i,emptyHint:r}=t;let o;e[0]!==r||e[1]!==i||e[2]!==s?(o=s?"No results match your search.":n.jsxs(n.Fragment,{children:[n.jsx("div",{children:i}),n.jsx("div",{className:"mt-1 text-muted-foreground/80",children:r})]}),e[0]=r,e[1]=i,e[2]=s,e[3]=o):o=e[3];let a;return e[4]!==o?(a=n.jsx("div",{className:"px-3 py-6 text-center text-xs text-muted-foreground",children:o}),e[4]=o,e[5]=a):a=e[5],a}function j0(t){const e=H.c(8),{state:s,claimPhase:i,lifecycle:r,onStart:o}=t;switch(s.kind){case"starting":{let a;e[0]!==i||e[1]!==r?(a=Pu({claimPhase:i,lifecycle:r}),e[0]=i,e[1]=r,e[2]=a):a=e[2];let l;return e[3]!==i||e[4]!==a?(l=n.jsx(mn,{kind:"starting",progress:a,claimPhase:i}),e[3]=i,e[4]=a,e[5]=l):l=e[5],l}case"suspended":{let a;return e[6]!==o?(a=n.jsx(mn,{kind:"suspended",onResume:o}),e[6]=o,e[7]=a):a=e[7],a}}}function Yi(t){const e=H.c(10),{icon:s,title:i,description:r}=t;let o;e[0]!==s?(o=s&&n.jsx(s,{size:24,className:"text-muted-foreground/60"}),e[0]=s,e[1]=o):o=e[1];let a;e[2]!==i?(a=n.jsx("div",{children:i}),e[2]=i,e[3]=a):a=e[3];let l;e[4]!==r?(l=r&&n.jsx("div",{className:"text-xs text-muted-foreground/80 max-w-sm",children:r}),e[4]=r,e[5]=l):l=e[5];let h;return e[6]!==o||e[7]!==a||e[8]!==l?(h=n.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground",children:[o,a,l]}),e[6]=o,e[7]=a,e[8]=l,e[9]=h):h=e[9],h}function N0(t){const e=H.c(2),{virtualMcpId:s}=t,i=ds(s);if(!Us(i?.metadata)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[n.jsx(vr,{size:24,className:"text-muted-foreground/60"}),n.jsx("div",{children:"No content to edit."}),n.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Settings tab to enable Content."})]}),e[0]=a):a=e[0],a}let o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx(n0,{}),e[1]=o):o=e[1],o}const io={fast:{label:"Fast",subtitle:"Quick responses for simple tasks",icon:Qh},smart:{label:"Smart",subtitle:"Balanced quality and speed",icon:zs},thinking:{label:"Thinking",subtitle:"Deeper reasoning for hard tasks",icon:Yp}},E0=["fast","smart","thinking"];function T0(t){const e=H.c(15),{tier:s,onSelect:i}=t,[r,o]=P.useState(!1),a=io[s].icon;let l;e[0]!==a?(l=n.jsx(a,{size:14,className:"text-muted-foreground"}),e[0]=a,e[1]=l):l=e[1];const h=io[s];let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(Rs,{size:14,className:"text-muted-foreground"}),e[2]=c):c=e[2];let d;e[3]!==l||e[4]!==h.label?(d=n.jsx(Js,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",className:"w-fit gap-1.5",children:[l,h.label,c]})}),e[3]=l,e[4]=h.label,e[5]=d):d=e[5];let u;e[6]!==i||e[7]!==s?(u=E0.map(p=>{const g=io[p],v=g.icon;return n.jsxs("button",{type:"button",onClick:()=>{i(p),o(!1)},className:le("flex items-start gap-2 px-2 py-1.5 rounded-md text-left hover:bg-muted"),children:[n.jsx(v,{size:16,className:"shrink-0 text-muted-foreground mt-0.5"}),n.jsxs("div",{className:"flex-1",children:[n.jsx("div",{className:"text-sm",children:g.label}),n.jsx("div",{className:"text-xs text-muted-foreground",children:g.subtitle})]}),p===s&&n.jsx(Si,{size:14,className:"text-foreground mt-0.5"})]},p)}),e[6]=i,e[7]=s,e[8]=u):u=e[8];let f;e[9]!==u?(f=n.jsx(Zs,{align:"start",className:"p-1 w-64",children:n.jsx("div",{className:"flex flex-col",children:u})}),e[9]=u,e[10]=f):f=e[10];let m;return e[11]!==r||e[12]!==d||e[13]!==f?(m=n.jsxs(Xs,{open:r,onOpenChange:o,children:[d,f]}),e[11]=r,e[12]=d,e[13]=f,e[14]=m):m=e[14],m}function P0(t){const e=H.c(15),{tier:s,onTierChange:i,override:r,onOverrideChange:o}=t,[a,l]=P.useState(r!==null);let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Model"}),e[0]=h):h=e[0];let c;e[1]!==o||e[2]!==i||e[3]!==r||e[4]!==s||e[5]!==a?(c=a?n.jsx(P.Suspense,{fallback:n.jsx(oe,{variant:"outline",size:"sm",disabled:!0,className:"w-fit",children:"Loading models…"}),children:n.jsx(A0,{override:r,onOverrideChange:o})}):n.jsx(T0,{tier:s,onSelect:i}),e[1]=o,e[2]=i,e[3]=r,e[4]=s,e[5]=a,e[6]=c):c=e[6];let d;e[7]!==o?(d=m=>{l(m),m||o(null)},e[7]=o,e[8]=d):d=e[8];let u;e[9]!==d||e[10]!==a?(u=n.jsxs("label",{className:"flex items-center gap-2 text-xs text-muted-foreground cursor-pointer select-none",children:[n.jsx(ln,{checked:a,onCheckedChange:d,className:"cursor-pointer"}),"Specific model"]}),e[9]=d,e[10]=a,e[11]=u):u=e[11];let f;return e[12]!==c||e[13]!==u?(f=n.jsxs("div",{className:"flex flex-col gap-2",children:[h,n.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[c,u]})]}),e[12]=c,e[13]=u,e[14]=f):f=e[14],f}function A0(t){const e=H.c(10),{override:s,onOverrideChange:i}=t,r=Fh(),o=r[0]?.id??null,[a,l]=P.useState(s?.credentialId??o);let h;e[0]!==s?(h=s?{modelId:s.modelId,title:s.title||s.modelId,keyId:s.credentialId,providerId:"deco",description:null,logo:null,capabilities:[],limits:null,costs:null}:null,e[0]=s,e[1]=h):h=e[1];const c=h;if(r.length===0){let f;return e[2]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx("span",{className:"text-xs text-muted-foreground italic",children:"Connect an AI provider in settings to pick a specific model."}),e[2]=f):f=e[2],f}let d;e[3]!==a||e[4]!==i?(d=f=>{const m=f.keyId??a??"";l(m),i({modelId:f.modelId,credentialId:m,title:f.title??f.modelId})},e[3]=a,e[4]=i,e[5]=d):d=e[5];let u;return e[6]!==a||e[7]!==c||e[8]!==d?(u=n.jsx("div",{className:"w-fit max-w-full [&_button]:rounded-md",children:n.jsx(Ig,{variant:"bordered",placeholder:"Pick a model",model:c,credentialId:a,onCredentialChange:l,onModelChange:d})}),e[6]=a,e[7]=c,e[8]=d,e[9]=u):u=e[9],u}const Vu=[{key:"capabilities",heading:"Built-in capabilities",icon:za,tools:[{name:"web_search",title:"Web search",description:"Look up current information on the web",icon:br},{name:"generate_image",title:"Generate image",description:"Create images from a text prompt",icon:kg},{name:"subtask",title:"Subtask",description:"Spawn a focused sub-agent to handle part of the work",icon:cr},{name:"user_ask",title:"Ask the user",description:"Pause to ask the user a clarifying question",icon:Vp}]},{key:"files",heading:"Files & code",icon:Eo,tools:[{name:"read",title:"Read File",description:"Read a file from the workspace",icon:ld},{name:"write",title:"Write File",description:"Create or overwrite a file",icon:$a},{name:"edit",title:"Edit File",description:"Make targeted edits to an existing file",icon:qp},{name:"grep",title:"Search Content",description:"Search file contents by pattern",icon:dr},{name:"glob",title:"Find Files",description:"Find files by name pattern",icon:Eo},{name:"bash",title:"Run Command",description:"Run shell commands in the sandbox",icon:Gp}]},{key:"context",heading:"Context",icon:Fl,tools:[{name:"read_resource",title:"Read Resource",description:"Read an MCP resource by URI",icon:Fl},{name:"read_prompt",title:"Read Prompt",description:"Read an MCP prompt definition",icon:To},{name:"skill",title:"Load Skill",description:"Load a skill's full instructions (SKILL.md) by id",icon:To}]},{key:"browser",heading:"Browser",icon:mi,tools:[{name:"take_screenshot",title:"Take Screenshot",description:"Capture a screenshot of a web page",icon:sd},{name:"scrape_url",title:"Scrape URL",description:"Fetch and extract content from a URL",icon:mi},{name:"inspect_page",title:"Inspect Page",description:"Inspect a web page's structure",icon:Ra}]}],R0=Vu.flatMap(t=>t.tools.map(e=>e.name));function D0(t){const e=t.replace(/[_-]+/g," ").trim();return e?e.toLowerCase().replace(/\b\w/g,s=>s.toUpperCase()):t}function I0(t){const e=H.c(5),{agentId:s,value:i,onChange:r}=t;let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Tools"}),e[0]=o):o=e[0];let a;return e[1]!==s||e[2]!==r||e[3]!==i?(a=n.jsxs("div",{className:"flex flex-col gap-2",children:[o,s?n.jsx(P.Suspense,{fallback:n.jsxs(oe,{variant:"outline",size:"sm",disabled:!0,className:"w-fit",children:[n.jsx(za,{size:14}),"Loading tools…"]}),children:n.jsx(L0,{agentId:s,value:i,onChange:r})}):n.jsx("span",{className:"text-xs text-muted-foreground italic",children:"Pick an agent first"})]}),e[1]=s,e[2]=r,e[3]=i,e[4]=a):a=e[4],a}function Cc(t){const e=H.c(17),{value:s,checked:i,onToggle:r,title:o,description:a,leading:l}=t;let h;e[0]!==i?(h=n.jsx(yi,{checked:i,className:"pointer-events-none mt-0.5"}),e[0]=i,e[1]=h):h=e[1];let c;e[2]!==l?(c=l&&n.jsx("span",{className:"mt-px shrink-0",children:l}),e[2]=l,e[3]=c):c=e[3];let d;e[4]!==o?(d=n.jsx("span",{className:"truncate text-sm leading-tight",children:o}),e[4]=o,e[5]=d):d=e[5];let u;e[6]!==a?(u=a&&n.jsx("span",{className:"line-clamp-2 text-xs leading-snug text-muted-foreground",children:a}),e[6]=a,e[7]=u):u=e[7];let f;e[8]!==d||e[9]!==u?(f=n.jsxs("div",{className:"flex min-w-0 flex-col gap-0.5",children:[d,u]}),e[8]=d,e[9]=u,e[10]=f):f=e[10];let m;return e[11]!==r||e[12]!==h||e[13]!==c||e[14]!==f||e[15]!==s?(m=n.jsxs(Dg,{value:s,onSelect:r,className:"items-start gap-2.5 py-2",children:[h,c,f]}),e[11]=r,e[12]=h,e[13]=c,e[14]=f,e[15]=s,e[16]=m):m=e[16],m}function kc(t){const e=H.c(20),{conn:s,label:i,icon:r,on:o,total:a,onToggle:l}=t,h=o===a;let c;e[0]!==r||e[1]!==s?(c=s?n.jsx(us,{icon:s.icon,name:s.title,size:"2xs"}):r?n.jsx(r,{size:14,className:"text-muted-foreground"}):n.jsx(Xp,{size:14,className:"text-muted-foreground"}),e[0]=r,e[1]=s,e[2]=c):c=e[2];const d=s?.title??i??"Other tools";let u;e[3]!==d?(u=n.jsx("span",{className:"truncate",children:d}),e[3]=d,e[4]=u):u=e[4];let f;e[5]!==o||e[6]!==a?(f=n.jsxs("span",{className:"text-[11px] font-normal tabular-nums text-muted-foreground/70",children:[o,"/",a]}),e[5]=o,e[6]=a,e[7]=f):f=e[7];let m;e[8]!==l?(m=x=>{x.stopPropagation(),l()},e[8]=l,e[9]=m):m=e[9];const p=h?"None":"All";let g;e[10]!==m||e[11]!==p?(g=n.jsx("button",{type:"button",onClick:m,className:"text-[11px] font-medium text-primary hover:underline",children:p}),e[10]=m,e[11]=p,e[12]=g):g=e[12];let v;e[13]!==f||e[14]!==g?(v=n.jsxs("span",{className:"ml-auto flex items-center gap-2",children:[f,g]}),e[13]=f,e[14]=g,e[15]=v):v=e[15];let b;return e[16]!==c||e[17]!==u||e[18]!==v?(b=n.jsxs("div",{className:"flex items-center gap-2",children:[c,u,v]}),e[16]=c,e[17]=u,e[18]=v,e[19]=b):b=e[19],b}function L0(t){const e=H.c(70),{agentId:s,value:i,onChange:r}=t,{org:o}=Re(),[a,l]=P.useState(!1);let h;e[0]!==s||e[1]!==o.id||e[2]!==o.slug?(h={connectionId:s,orgId:o.id,orgSlug:o.slug},e[0]=s,e[1]=o.id,e[2]=o.slug,e[3]=h):h=e[3];const c=vt(h);let d;e[4]!==c?(d={client:c},e[4]=c,e[5]=d):d=e[5];const{data:u,isLoading:f}=rd(d),m=yr();let p,g,v,b,x,_,y,S,w,j,E,T,A;if(e[6]!==m||e[7]!==u?.tools||e[8]!==f||e[9]!==r||e[10]!==a||e[11]!==i){const N=new Map(m.map(z0)),L=new Map;for(const J of u?.tools??[]){const se=Om(J._meta)??"__other__",pe=$m(J.name,se==="__other__"?void 0:se),ge=J.title,Be=ge&&ge!==J.name?ge:D0(pe);L.has(se)||L.set(se,{clientId:se,conn:N.get(se),tools:[]}),L.get(se).tools.push({name:J.name,display:Be,description:J.description})}const B=[...L.values()].sort($0),I=(u?.tools??[]).map(O0),M=[...R0,...I],O=i===null?new Set(M):new Set(i),F=M.every(J=>O.has(J)),z=J=>r(M.every(se=>J.has(se))?null:[...J]),K=J=>{const se=new Set(O);se.has(J)?se.delete(J):se.add(J),z(se)},G=(J,se)=>{const pe=new Set(O);for(const ge of J)se?pe.add(ge):pe.delete(ge);z(pe)};b=Xs,A=a,x=l;let X;e[25]===Symbol.for("react.memo_cache_sentinel")?(X=n.jsx(za,{size:14,className:"text-muted-foreground"}),e[25]=X):X=e[25];const ie=F?"All tools":"Tools",W=!F&&n.jsxs(Eg,{variant:"secondary",className:"ml-0.5 h-5 px-1.5 text-[11px] tabular-nums",children:[O.size,"/",M.length]});let Y;e[26]===Symbol.for("react.memo_cache_sentinel")?(Y=n.jsx(Rs,{size:14,className:"text-muted-foreground"}),e[26]=Y):Y=e[26],e[27]!==ie||e[28]!==W?(_=n.jsx(Js,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",className:"w-fit gap-1.5",children:[X,ie,W,Y]})}),e[27]=ie,e[28]=W,e[29]=_):_=e[29],v=Zs,E="p-0 w-80",T="start",g=Pg,e[30]===Symbol.for("react.memo_cache_sentinel")?(w=n.jsx(Ag,{placeholder:"Search tools..."}),e[30]=w):w=e[30];const ne=F?`All ${M.length} tools enabled`:`${O.size} of ${M.length} enabled`;let $;e[31]!==ne?($=n.jsx("span",{className:"text-xs text-muted-foreground",children:ne}),e[31]=ne,e[32]=$):$=e[32];let Z;e[33]!==r?(Z=()=>r(null),e[33]=r,e[34]=Z):Z=e[34];let U;e[35]!==F||e[36]!==Z?(U=n.jsx("button",{type:"button",onClick:Z,disabled:F,className:"text-xs font-medium text-primary hover:underline disabled:cursor-default disabled:opacity-40 disabled:no-underline",children:"Select all"}),e[35]=F,e[36]=Z,e[37]=U):U=e[37];let ee;e[38]===Symbol.for("react.memo_cache_sentinel")?(ee=n.jsx("span",{className:"text-muted-foreground/30",children:"·"}),e[38]=ee):ee=e[38];let Q;e[39]!==r?(Q=()=>r([]),e[39]=r,e[40]=Q):Q=e[40];const fe=O.size===0;let me;e[41]!==Q||e[42]!==fe?(me=n.jsx("button",{type:"button",onClick:Q,disabled:fe,className:"text-xs font-medium text-muted-foreground hover:underline disabled:cursor-default disabled:opacity-40 disabled:no-underline",children:"Clear"}),e[41]=Q,e[42]=fe,e[43]=me):me=e[43];let ve;e[44]!==U||e[45]!==me?(ve=n.jsxs("div",{className:"flex items-center gap-2",children:[U,ee,me]}),e[44]=U,e[45]=me,e[46]=ve):ve=e[46],e[47]!==$||e[48]!==ve?(j=n.jsxs("div",{className:"flex items-center justify-between border-b px-3 py-2",children:[$,ve]}),e[47]=$,e[48]=ve,e[49]=j):j=e[49],p=Rg,y="max-h-80",S=f?n.jsx("div",{className:"px-3 py-6 text-center text-xs text-muted-foreground",children:"Loading tools…"}):n.jsxs(n.Fragment,{children:[n.jsx(Tg,{children:"No tools found"}),Vu.map(J=>{const se=J.tools.map(M0),pe=se.filter(ge=>O.has(ge)).length;return n.jsx(Wl,{heading:n.jsx(kc,{label:J.heading,icon:J.icon,on:pe,total:se.length,onToggle:()=>G(se,pe!==se.length)}),children:J.tools.map(ge=>n.jsx(Cc,{value:`${ge.title} ${ge.name}`,checked:O.has(ge.name),onToggle:()=>K(ge.name),title:ge.title,description:ge.description,leading:n.jsx(ge.icon,{size:16,className:"text-muted-foreground"})},ge.name))},J.key)}),B.map(J=>{const se=J.tools.map(B0),pe=se.filter(ge=>O.has(ge)).length;return n.jsx(Wl,{heading:n.jsx(kc,{conn:J.conn,on:pe,total:se.length,onToggle:()=>G(se,pe!==se.length)}),children:J.tools.map(ge=>n.jsx(Cc,{value:`${ge.display} ${ge.name} ${J.conn?.title??""}`,checked:O.has(ge.name),onToggle:()=>K(ge.name),title:ge.display,description:ge.description},ge.name))},J.clientId)})]}),e[6]=m,e[7]=u?.tools,e[8]=f,e[9]=r,e[10]=a,e[11]=i,e[12]=p,e[13]=g,e[14]=v,e[15]=b,e[16]=x,e[17]=_,e[18]=y,e[19]=S,e[20]=w,e[21]=j,e[22]=E,e[23]=T,e[24]=A}else p=e[12],g=e[13],v=e[14],b=e[15],x=e[16],_=e[17],y=e[18],S=e[19],w=e[20],j=e[21],E=e[22],T=e[23],A=e[24];let R;e[50]!==p||e[51]!==y||e[52]!==S?(R=n.jsx(p,{className:y,children:S}),e[50]=p,e[51]=y,e[52]=S,e[53]=R):R=e[53];let k;e[54]!==g||e[55]!==R||e[56]!==w||e[57]!==j?(k=n.jsxs(g,{children:[w,j,R]}),e[54]=g,e[55]=R,e[56]=w,e[57]=j,e[58]=k):k=e[58];let C;e[59]!==v||e[60]!==k||e[61]!==E||e[62]!==T?(C=n.jsx(v,{className:E,align:T,children:k}),e[59]=v,e[60]=k,e[61]=E,e[62]=T,e[63]=C):C=e[63];let D;return e[64]!==b||e[65]!==x||e[66]!==_||e[67]!==C||e[68]!==A?(D=n.jsxs(b,{open:A,onOpenChange:x,children:[_,C]}),e[64]=b,e[65]=x,e[66]=_,e[67]=C,e[68]=A,e[69]=D):D=e[69],D}function B0(t){return t.name}function M0(t){return t.name}function O0(t){return t.name}function $0(t,e){return(t.conn?.title??t.clientId).localeCompare(e.conn?.title??e.clientId)}function z0(t){return[t.id,t]}function or(t){const e=t.trim().split(/\s+/);return e.length!==5?!1:e.every(s=>/^[\d*/,-]+$/.test(s))}function F0(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 r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const l=parseInt(r[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"),h=(o[1]??"0").padStart(2,"0");return`Every day at ${l}:${h} UTC`}const a=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+(\d)$/);if(a){const h=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][parseInt(a[3]??"0")]??"day",c=(a[2]??"0").padStart(2,"0"),d=(a[1]??"0").padStart(2,"0");return`Every ${h} at ${c}:${d} UTC`}return t}function H0(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 W0(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 r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const o=parseInt(r[1]);return o%7===0?{count:o/7,unit:"weeks"}:{count:o,unit:"days"}}return null}function U0(t,e){return e===1?{minutes:"minute",hours:"hour",days:"day",weeks:"week"}[t]??t:t}const K0=[{label:"5 minutes",cron:"*/5 * * * *"},{label:"Hour",cron:"0 * * * *"},{label:"Day",cron:"0 0 * * *"},{label:"Week",cron:"0 0 * * 1"}];function V0({automationId:t,open:e,onOpenChange:s,onCustomSelect:i,onEventSelect:r,onWebhookCreated:o}){const{triggerAdd:a}=Sr(),[l,h]=P.useState(!1),c=e??l,d=m=>{s?s(m):h(m)},u=async m=>{try{await a.mutateAsync({automation_id:t,type:"cron",cron_expression:m}),ae.success("Starter added"),d(!1)}catch(p){const g=p instanceof Error?p.message:"Failed to add starter";ae.error(g)}},f=async()=>{try{const m=await a.mutateAsync({automation_id:t,type:"webhook"});d(!1),m.webhook?o?.(m.webhook):ae.success("Webhook starter added")}catch(m){const p=m instanceof Error?m.message:"Failed to add webhook starter";ae.error(p)}};return n.jsxs(os,{open:c,onOpenChange:d,children:[n.jsx(as,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",children:[n.jsx(Bt,{size:14}),"Add Starter"]})}),n.jsxs(ls,{align:"end",className:"w-[200px]",children:[n.jsxs(ko,{children:[n.jsxs(jo,{className:"gap-2.5",children:[n.jsx(ir,{size:14,className:"text-muted-foreground shrink-0"}),"Every..."]}),n.jsx(No,{className:"w-[160px]",children:K0.map(m=>n.jsxs(We,{className:"gap-2.5",onSelect:()=>u(m.cron),disabled:a.isPending,children:[n.jsx(ir,{size:14,className:"text-muted-foreground shrink-0"}),"Every ",m.label]},m.cron))})]}),n.jsxs(We,{className:"gap-2.5",onSelect:()=>{d(!1),i?.()},children:[n.jsx(ir,{size:14,className:"text-muted-foreground shrink-0"}),"Custom (cron)"]}),n.jsxs(We,{className:"gap-2.5",onSelect:()=>{d(!1),r?.()},children:[n.jsx(ur,{size:14,className:"text-muted-foreground shrink-0"}),"Event"]}),n.jsxs(We,{className:"gap-2.5",onSelect:()=>{f()},disabled:a.isPending,children:[n.jsx(br,{size:14,className:"text-muted-foreground shrink-0"}),"Webhook"]})]})]})}function qu(t){const e=H.c(31),{open:s,onOpenChange:i,url:r,token:o,title:a,description:l}=t,h=a===void 0?"Webhook ready":a,c=l===void 0?"Send a POST to this URL with the bearer token to fire the automation. The token is shown once — copy it now.":l,[d,u]=P.useState(null),[f,m]=P.useState("curl"),[p,g]=P.useState("header"),v=P.useId();let b;e[0]===Symbol.for("react.memo_cache_sentinel")?(b=async(N,L)=>{try{await navigator.clipboard.writeText(N),u(L),ae.success("Copied"),setTimeout(()=>u(null),1500)}catch{ae.error("Failed to copy")}},e[0]=b):b=e[0];const x=b;let _;e[1]!==p||e[2]!==o||e[3]!==r?(_=r&&o&&p==="url"?`${r.replace(/\/$/,"")}/${o}`:r??"",e[1]=p,e[2]=o,e[3]=r,e[4]=_):_=e[4];const y=_,S=r&&o?p==="header"?`curl -X POST "${y}" \\
|
|
467
|
-
-H "Authorization: Bearer ${o}" \\
|
|
468
|
-
-H "Content-Type: application/json" \\
|
|
469
|
-
-d '{"hello":"world"}'`:`curl -X POST "${y}" \\
|
|
470
|
-
-H "Content-Type: application/json" \\
|
|
471
|
-
-d '{"hello":"world"}'`:"",w=r&&o?p==="header"?`await fetch("${y}", {
|
|
472
|
-
method: "POST",
|
|
473
|
-
headers: {
|
|
474
|
-
Authorization: "Bearer ${o}",
|
|
475
|
-
"Content-Type": "application/json",
|
|
476
|
-
},
|
|
477
|
-
body: JSON.stringify({ hello: "world" }),
|
|
478
|
-
});`:`await fetch("${y}", {
|
|
479
|
-
method: "POST",
|
|
480
|
-
headers: {
|
|
481
|
-
"Content-Type": "application/json",
|
|
482
|
-
},
|
|
483
|
-
body: JSON.stringify({ hello: "world" }),
|
|
484
|
-
});`:"",j=f==="curl"?S:w;let E;e[5]!==h?(E=n.jsx(ms,{children:h}),e[5]=h,e[6]=E):E=e[6];let T;e[7]!==c?(T=n.jsx(Rn,{children:c}),e[7]=c,e[8]=T):T=e[8];let A;e[9]!==E||e[10]!==T?(A=n.jsxs(fs,{children:[E,T]}),e[9]=E,e[10]=T,e[11]=A):A=e[11];let R;e[12]!==p||e[13]!==d||e[14]!==y||e[15]!==f||e[16]!==j||e[17]!==o||e[18]!==v||e[19]!==r?(R=r&&o?n.jsxs("div",{className:"flex flex-col gap-3 min-w-0",children:[n.jsxs("div",{className:"flex flex-col gap-1",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground",children:"URL"}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("code",{className:"flex-1 min-w-0 text-xs font-mono bg-muted rounded-md px-2 py-1.5 truncate",children:y}),n.jsxs(oe,{size:"sm",variant:"outline",onClick:()=>x(y,"url"),children:[n.jsx(bs,{size:13}),d==="url"?"Copied":"Copy"]})]})]}),n.jsxs("div",{className:"flex flex-col gap-1",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground",children:"Token (shown once)"}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("code",{className:"flex-1 min-w-0 text-xs font-mono bg-muted rounded-md px-2 py-1.5 truncate",children:o}),n.jsxs(oe,{size:"sm",variant:"outline",onClick:()=>x(o,"token"),children:[n.jsx(bs,{size:13}),d==="token"?"Copied":"Copy"]})]})]}),n.jsxs("div",{className:"flex flex-col gap-2",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground",children:"Snippet"}),n.jsxs("div",{className:"flex items-center justify-between gap-3",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(Ba,{value:f,onValueChange:N=>m(N),children:n.jsxs(La,{className:"h-8 p-[2px]",children:[n.jsx($s,{value:"curl",className:"h-7 px-2.5 text-xs",children:"curl"}),n.jsx($s,{value:"fetch",className:"h-7 px-2.5 text-xs",children:"fetch"})]})}),n.jsxs("label",{htmlFor:v,className:"flex items-center gap-1.5 text-xs text-muted-foreground cursor-pointer select-none",children:[n.jsx(yi,{id:v,checked:p==="url",onCheckedChange:N=>g(N?"url":"header")}),"Token in URL"]})]}),n.jsxs(oe,{size:"sm",variant:"outline",onClick:()=>x(j,"example"),children:[n.jsx(bs,{size:13}),d==="example"?"Copied":"Copy"]})]}),n.jsx("div",{className:"rounded-md border overflow-hidden min-w-0",children:n.jsx($g,{code:j,language:f==="curl"?"shell":"typescript",readOnly:!0,disableDiagnostics:!0,height:180})})]})]}):null,e[12]=p,e[13]=d,e[14]=y,e[15]=f,e[16]=j,e[17]=o,e[18]=v,e[19]=r,e[20]=R):R=e[20];let k;e[21]!==i?(k=n.jsx(Qs,{children:n.jsx(oe,{onClick:()=>i(!1),children:"Done"})}),e[21]=i,e[22]=k):k=e[22];let C;e[23]!==A||e[24]!==R||e[25]!==k?(C=n.jsxs(Vt,{className:"max-w-lg",children:[A,R,k]}),e[23]=A,e[24]=R,e[25]=k,e[26]=C):C=e[26];let D;return e[27]!==i||e[28]!==s||e[29]!==C?(D=n.jsx(Kt,{open:s,onOpenChange:i,children:C}),e[27]=i,e[28]=s,e[29]=C,e[30]=D):D=e[30],D}function q0(t){const e=H.c(83),{trigger:s,automationId:i,connectionName:r}=t,{triggerAdd:o,triggerRemove:a,triggerRotateToken:l}=Sr(),[h,c]=P.useState(!1),[d,u]=P.useState(!1),[f,m]=P.useState(null);let p;e[0]!==s.cron_expression?(p=s.cron_expression?W0(s.cron_expression):null,e[0]=s.cron_expression,e[1]=p):p=e[1];const g=p,[v,b]=P.useState(g?.count??1),[x,_]=P.useState(!1),[y,S]=P.useState(s.cron_expression??""),w=a.isPending||o.isPending||l.isPending,j=s.type==="cron",E=s.type==="webhook";let T;e[2]!==i||e[3]!==a||e[4]!==s.id?(T=async()=>{try{await a.mutateAsync({trigger_id:s.id,automation_id:i}),ae.success("Starter removed")}catch{ae.error("Failed to remove starter")}c(!1)},e[2]=i,e[3]=a,e[4]=s.id,e[5]=T):T=e[5];const A=T;let R;e[6]!==o||e[7]!==i||e[8]!==y||e[9]!==a||e[10]!==s.cron_expression||e[11]!==s.id?(R=async()=>{const se=y.trim();if(!se||!or(se)||se===s.cron_expression){_(!1),S(s.cron_expression??"");return}try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:se}),await a.mutateAsync({trigger_id:s.id,automation_id:i}),_(!1)}catch{ae.error("Failed to update starter"),S(s.cron_expression??""),_(!1)}},e[6]=o,e[7]=i,e[8]=y,e[9]=a,e[10]=s.cron_expression,e[11]=s.id,e[12]=R):R=e[12];const k=R;let C;e[13]!==i||e[14]!==l||e[15]!==s.id?(C=async()=>{u(!1);try{const se=await l.mutateAsync({trigger_id:s.id,automation_id:i});m({url:se.url,token:se.token})}catch(se){const pe=se,ge=pe instanceof Error?pe.message:"Failed to rotate token";ae.error(ge)}},e[13]=i,e[14]=l,e[15]=s.id,e[16]=C):C=e[16];const D=C;let N;e[17]!==o||e[18]!==i||e[19]!==g||e[20]!==a||e[21]!==s.cron_expression||e[22]!==s.id?(N=async se=>{if(!g)return;const pe=g.unit==="minutes"?5:1,ge=Math.max(pe,se);ge!==se&&b(ge);const Be=H0(ge,g.unit);if(Be!==s.cron_expression)try{await o.mutateAsync({automation_id:i,type:"cron",cron_expression:Be}),await a.mutateAsync({trigger_id:s.id,automation_id:i})}catch{ae.error("Failed to update starter"),b(g.count)}},e[17]=o,e[18]=i,e[19]=g,e[20]=a,e[21]=s.cron_expression,e[22]=s.id,e[23]=N):N=e[23];const L=N;let B;e[24]!==j||e[25]!==E?(B=j?n.jsx(ir,{size:14,className:"text-muted-foreground shrink-0"}):E?n.jsx(br,{size:14,className:"text-muted-foreground shrink-0"}):n.jsx(ur,{size:14,className:"text-muted-foreground shrink-0"}),e[24]=j,e[25]=E,e[26]=B):B=e[26];let I;e[27]!==r||e[28]!==v||e[29]!==y||e[30]!==L||e[31]!==k||e[32]!==g||e[33]!==j||e[34]!==x||e[35]!==w||e[36]!==E||e[37]!==s.cron_expression||e[38]!==s.event_type||e[39]!==s.params?(I=g&&j?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-sm text-muted-foreground",children:"Every"}),n.jsx("input",{type:"number",min:g.unit==="minutes"?5:1,value:v,onChange:se=>b(parseInt(se.target.value)||1),onBlur:()=>L(v),onKeyDown:se=>{se.key==="Enter"&&se.target.blur(),se.key==="Escape"&&b(g.count)},disabled:w,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"}),n.jsx("span",{className:"text-sm",children:U0(g.unit,v)})]}):j&&x?n.jsxs(n.Fragment,{children:[n.jsx("input",{type:"text",value:y,onChange:se=>S(se.target.value),onBlur:k,onKeyDown:se=>{se.key==="Enter"&&se.target.blur(),se.key==="Escape"&&(_(!1),S(s.cron_expression??""))},className:"flex-1 text-sm font-mono bg-transparent outline-none",autoFocus:!0}),y&&!or(y)&&n.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"})]}):n.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[n.jsx("span",{className:"text-sm font-mono text-xs text-muted-foreground truncate",children:j?F0(s.cron_expression??""):E?"Webhook · POST to fire":`${s.event_type}${r?` · ${r}`:""}`}),!j&&!E&&s.params&&Object.keys(s.params).length>0&&n.jsx("span",{className:"text-xs text-muted-foreground/60 truncate",children:Object.entries(s.params).map(G0).join(", ")})]}),e[27]=r,e[28]=v,e[29]=y,e[30]=L,e[31]=k,e[32]=g,e[33]=j,e[34]=x,e[35]=w,e[36]=E,e[37]=s.cron_expression,e[38]=s.event_type,e[39]=s.params,e[40]=I):I=e[40];let M;e[41]!==w?(M=w&&n.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),e[41]=w,e[42]=M):M=e[42];let O;e[43]!==g||e[44]!==j||e[45]!==x||e[46]!==s.cron_expression?(O=j&&!g&&!x&&n.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{S(s.cron_expression??""),_(!0)},children:n.jsx($a,{size:13,className:"text-muted-foreground"})}),e[43]=g,e[44]=j,e[45]=x,e[46]=s.cron_expression,e[47]=O):O=e[47];let F;e[48]!==E?(F=E&&n.jsx(oe,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",title:"Rotate token",onClick:()=>u(!0),children:n.jsx(lr,{size:13,className:"text-muted-foreground"})}),e[48]=E,e[49]=F):F=e[49];let z;e[50]===Symbol.for("react.memo_cache_sentinel")?(z=n.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:n.jsx(Ps,{size:13,className:"text-muted-foreground"})}),e[50]=z):z=e[50];let K;e[51]!==F||e[52]!==M||e[53]!==O?(K=n.jsxs("div",{className:"ml-auto flex items-center gap-1",children:[M,O,F,z]}),e[51]=F,e[52]=M,e[53]=O,e[54]=K):K=e[54];let G;e[55]!==K||e[56]!==B||e[57]!==I?(G=n.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[B,I,K]}),e[55]=K,e[56]=B,e[57]=I,e[58]=G):G=e[58];let X;e[59]===Symbol.for("react.memo_cache_sentinel")?(X=n.jsxs(en,{children:[n.jsx(tn,{children:"Remove Starter"}),n.jsx(sn,{children:"Are you sure you want to remove this starter?"})]}),e[59]=X):X=e[59];let ie;e[60]===Symbol.for("react.memo_cache_sentinel")?(ie=n.jsx(nn,{children:"Cancel"}),e[60]=ie):ie=e[60];let W;e[61]!==A?(W=n.jsxs(Qr,{children:[X,n.jsxs(rn,{children:[ie,n.jsx(on,{onClick:A,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),e[61]=A,e[62]=W):W=e[62];let Y;e[63]!==h||e[64]!==W?(Y=n.jsx(Zr,{open:h,onOpenChange:c,children:W}),e[63]=h,e[64]=W,e[65]=Y):Y=e[65];let ne;e[66]===Symbol.for("react.memo_cache_sentinel")?(ne=n.jsxs(en,{children:[n.jsx(tn,{children:"Rotate webhook token"}),n.jsx(sn,{children:"A new token will be generated and the current token will stop working. Any senders using the old token must be updated."})]}),e[66]=ne):ne=e[66];let $;e[67]===Symbol.for("react.memo_cache_sentinel")?($=n.jsx(nn,{children:"Cancel"}),e[67]=$):$=e[67];let Z;e[68]!==D?(Z=n.jsxs(Qr,{children:[ne,n.jsxs(rn,{children:[$,n.jsx(on,{onClick:D,children:"Rotate"})]})]}),e[68]=D,e[69]=Z):Z=e[69];let U;e[70]!==d||e[71]!==Z?(U=n.jsx(Zr,{open:d,onOpenChange:u,children:Z}),e[70]=d,e[71]=Z,e[72]=U):U=e[72];const ee=f!==null;let Q;e[73]===Symbol.for("react.memo_cache_sentinel")?(Q=se=>{se||m(null)},e[73]=Q):Q=e[73];const fe=f?.url??null,me=f?.token??null;let ve;e[74]!==ee||e[75]!==fe||e[76]!==me?(ve=n.jsx(qu,{open:ee,onOpenChange:Q,url:fe,token:me,title:"New webhook token",description:"The previous token has been revoked. Copy the new token now — it will not be shown again."}),e[74]=ee,e[75]=fe,e[76]=me,e[77]=ve):ve=e[77];let J;return e[78]!==G||e[79]!==Y||e[80]!==U||e[81]!==ve?(J=n.jsxs(n.Fragment,{children:[G,Y,U,ve]}),e[78]=G,e[79]=Y,e[80]=U,e[81]=ve,e[82]=J):J=e[82],J}function G0(t){const[e,s]=t;return`${e}: ${s}`}const Y0=30;function X0(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1}}case"reset":return null}}function J0(t){const e=H.c(55),{automationId:s,onDone:i}=t;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={binding:"TRIGGER"},e[0]=r):r=e[0];const o=yr(r),[a,l]=P.useState(),[h,c]=P.useState();let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d={},e[1]=d):d=e[1];const[u,f]=P.useState(d),{triggerAdd:m}=Sr(),{data:p,isLoading:g}=Lg(a);let v,b,x,_,y,S;if(e[2]!==m||e[3]!==s||e[4]!==a||e[5]!==h||e[6]!==g||e[7]!==i||e[8]!==u||e[9]!==o||e[10]!==p){const E=p?.find(I=>I.type===h);let T;e[17]!==m||e[18]!==s||e[19]!==a||e[20]!==h||e[21]!==i||e[22]!==u?(T=async()=>{if(!(!a||!h))try{await m.mutateAsync({automation_id:s,type:"event",event_type:h,connection_id:a,params:u}),Ie("automation_trigger_added",{automation_id:s,trigger_type:"event",connection_id:a,event_type:h}),ae.success("Event trigger added"),i()}catch{ae.error("Failed to add event trigger")}},e[17]=m,e[18]=s,e[19]=a,e[20]=h,e[21]=i,e[22]=u,e[23]=T):T=e[23],v=T,b="flex flex-col gap-3 px-3 py-3 rounded-lg border border-border bg-background";let A,R;e[24]===Symbol.for("react.memo_cache_sentinel")?(R=n.jsx(ur,{size:14,className:"text-muted-foreground shrink-0"}),A=n.jsx("span",{className:"text-sm font-medium",children:"Event trigger"}),e[24]=A,e[25]=R):(A=e[24],R=e[25]);let k;e[26]===Symbol.for("react.memo_cache_sentinel")?(k=n.jsx(Ps,{size:13}),e[26]=k):k=e[26],e[27]!==i?(x=n.jsxs("div",{className:"flex items-center gap-2",children:[R,A,n.jsx("button",{type:"button",className:"ml-auto shrink-0 p-0.5 rounded text-muted-foreground hover:text-foreground",onClick:i,children:k})]}),e[27]=i,e[28]=x):x=e[28];const C=a??"";let D;e[29]===Symbol.for("react.memo_cache_sentinel")?(D=I=>{l(I),c(void 0),f({})},e[29]=D):D=e[29];let N;e[30]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(jt,{className:"w-full",children:n.jsx(Lt,{placeholder:"Select connection..."})}),e[30]=N):N=e[30];let L;e[31]!==o?(L=o.length===0?n.jsx("div",{className:"px-2 py-3 text-center text-xs text-muted-foreground",children:"No connections with trigger support"}):o.map(eS),e[31]=o,e[32]=L):L=e[32];let B;e[33]!==L?(B=n.jsx(Nt,{children:L}),e[33]=L,e[34]=B):B=e[34],e[35]!==C||e[36]!==B?(_=n.jsxs(Et,{value:C,onValueChange:D,children:[N,B]}),e[35]=C,e[36]=B,e[37]=_):_=e[37],e[38]!==a||e[39]!==h||e[40]!==g||e[41]!==p?(y=a&&n.jsxs(Et,{value:h??"",onValueChange:I=>{c(I),f({})},children:[n.jsx(jt,{className:"w-full",children:g?n.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[n.jsx(Ne,{size:13,className:"animate-spin"}),"Loading events..."]}):n.jsx(Lt,{placeholder:"Select event type...",children:h??"Select event type..."})}),n.jsx(Nt,{children:p?.map(Q0)})]}),e[38]=a,e[39]=h,e[40]=g,e[41]=p,e[42]=y):y=e[42],S=E?.paramsSchema&&Object.keys(E.paramsSchema).length>0&&n.jsx("div",{className:"flex flex-col gap-2",children:Object.entries(E.paramsSchema).map(I=>{const[M,O]=I;return n.jsxs("div",{className:"flex flex-col gap-1",children:[n.jsxs("label",{className:"text-xs text-muted-foreground",children:[M,O.description&&n.jsxs("span",{className:"text-muted-foreground/60",children:[" ","— ",O.description]})]}),O.enum?n.jsxs(Et,{value:u[M]??"",onValueChange:F=>f(z=>({...z,[M]:F})),children:[n.jsx(jt,{className:"w-full",children:n.jsx(Lt,{placeholder:`Select ${M}...`})}),n.jsx(Nt,{children:O.enum.map(Z0)})]}):n.jsx("input",{type:"text",value:u[M]??"",onChange:F=>f(z=>({...z,[M]:F.target.value})),placeholder:O.description??M,className:"text-sm border border-border rounded-md bg-background px-2 py-1.5 focus:outline-none focus:ring-1 focus:ring-ring"})]},M)})}),e[2]=m,e[3]=s,e[4]=a,e[5]=h,e[6]=g,e[7]=i,e[8]=u,e[9]=o,e[10]=p,e[11]=v,e[12]=b,e[13]=x,e[14]=_,e[15]=y,e[16]=S}else v=e[11],b=e[12],x=e[13],_=e[14],y=e[15],S=e[16];let w;e[43]!==m||e[44]!==a||e[45]!==h||e[46]!==v?(w=a&&h&&n.jsx(oe,{size:"sm",onClick:v,disabled:m.isPending,children:m.isPending?n.jsx(Ne,{size:13,className:"animate-spin"}):"Add trigger"}),e[43]=m,e[44]=a,e[45]=h,e[46]=v,e[47]=w):w=e[47];let j;return e[48]!==b||e[49]!==x||e[50]!==_||e[51]!==y||e[52]!==S||e[53]!==w?(j=n.jsxs("div",{className:b,children:[x,_,y,S,w]}),e[48]=b,e[49]=x,e[50]=_,e[51]=y,e[52]=S,e[53]=w,e[54]=j):j=e[54],j}function Z0(t){return n.jsx(Ye,{value:t,children:t},t)}function Q0(t){return n.jsx(Ye,{value:t.type,children:n.jsxs("div",{className:"flex flex-col",children:[n.jsx("span",{children:t.type}),n.jsx("span",{className:"text-xs text-muted-foreground",children:t.description})]})},t.type)}function eS(t){return n.jsx(Ye,{value:t.id,children:t.title},t.id)}function tS({automationId:t,automation:e,onBack:s,onDelete:i}){const r=e.virtual_mcp_id,{org:o}=Re(),{update:a,triggerAdd:l,run:h}=Sr(),c=yr(),d=new Map(c.map(Q=>[Q.id,Q.title])),{openTask:u}=ys(),{setChatOpen:f}=ja(),{sendMessage:m}=Ys(),p=e.messages?.[0]?.metadata?.tiptapDoc??void 0,[g,v]=P.useState(p),[b,x]=P.useState(!1),[_,y]=P.useState(!1),[S,w]=P.useState(!1),[j,E]=P.useState(""),[T,A]=P.useState(!1),[R,k]=P.useState(null),[C,D]=P.useState(!1),[N,L]=P.useState(!1),[B,I]=P.useState(!1),M=async()=>{if(C)return;const fe=Nm(g).filter(me=>me.type==="text").map(me=>me.text).join(`
|
|
485
|
-
`);if(fe.trim()){D(!0);try{Z(),Ie("automation_improve_clicked",{automation_id:t,agent_id:r,instructions_length:fe.length}),f(!0),await m({tiptapDoc:Yd({managerAgentId:$h.AUTOMATION_MANAGER(o.id),managerName:"Automation Manager",kind:"automation",id:t,instructions:fe})})}finally{D(!1)}}},O=e.models?.tier??"smart",F=e.models?.modelId&&e.models?.credentialId?{modelId:e.models.modelId,credentialId:e.models.credentialId,title:e.models.modelTitle??e.models.modelId}:null,z=Ph({defaultValues:{name:e.name,active:e.active,tier:O,modelOverride:F,tools:e.tools??null,maxAgentSteps:e.maxAgentSteps??null}}),K=z.watch("active"),[G,X]=P.useReducer(X0,null),ie=()=>{G!==null&&(Ie("automation_updated",{automation_id:t,agent_id:r,fields:Array.from(G.fields),save_count:G.saveCount,edit_duration_ms:Date.now()-G.start}),X({type:"reset"}))},W=async()=>{const Q=z.control._formState.dirtyFields,fe=Object.keys(Q);if(fe.length===0&&!B)return!0;const me=z.getValues(),ve=z.control._defaultValues;z.reset(me,{keepValues:!0});const J=B;I(!1);const se={tier:me.tier,...me.modelOverride?{modelId:me.modelOverride.modelId,credentialId:me.modelOverride.credentialId,modelTitle:me.modelOverride.title}:{}},pe={id:t,name:me.name,active:me.active,models:se,tools:me.tools,maxAgentSteps:me.maxAgentSteps,messages:jm(g),temperature:0};try{await a.mutateAsync(pe)}catch{return z.reset(ve,{keepValues:!0}),J&&I(!0),!1}const ge=[...fe];return J&&ge.push("messages"),X({type:"accumulate",now:Date.now(),fields:ge}),$(),!0},{schedule:Y,flush:ne}=cn({save:W}),{schedule:$,flush:Z}=cn({delayMs:3e4,save:async()=>ie()});P.useEffect(()=>{const Q=z.watch(()=>Y());return()=>Q.unsubscribe()},[]);const U=Q=>{if(v(Q),!N){L(!0);return}I(!0),Y()},ee=async()=>{Ie("automation_test_clicked",{automation_id:t,agent_id:r});const Q=await ne();if(Z(),!!Q){if(!g){ae.error("No instructions configured for this automation");return}try{const fe=await h.mutateAsync(t);fe.threadId&&(f(!0),u(fe.threadId))}catch{}}};return n.jsxs(n.Fragment,{children:[s&&n.jsx("div",{className:"flex items-center pb-4 shrink-0",children:n.jsxs(oe,{variant:"ghost",size:"sm",onClick:s,children:[n.jsx(ud,{size:14}),"Back to list"]})}),n.jsxs("div",{className:"flex flex-col gap-8",children:[n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsxs("div",{className:"flex items-center justify-between gap-4",children:[n.jsx(Dt,{control:z.control,name:"name",render:({field:Q})=>n.jsx(tt,{...Q,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"}})}),i&&n.jsx(oe,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive shrink-0",onClick:i,children:n.jsx(Ks,{size:14})})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(Dt,{control:z.control,name:"active",render:({field:Q})=>n.jsx(ln,{checked:Q.value,onCheckedChange:fe=>{Q.onChange(fe),ne()},className:"cursor-pointer"})}),n.jsx("span",{className:"text-sm text-muted-foreground",children:K?"Active":"Inactive"}),n.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),n.jsx(Xd,{id:e.created_by,size:"2xs",className:"text-sm text-muted-foreground"})]})]}),n.jsxs("div",{className:"flex flex-col gap-2.5",children:[n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Starter"}),n.jsx(V0,{automationId:t,open:b,onOpenChange:x,onCustomSelect:()=>{w(!0),A(!1),E("")},onEventSelect:()=>{A(!0),w(!1)},onWebhookCreated:Q=>{Ie("automation_trigger_added",{automation_id:t,trigger_type:"webhook"}),k(Q)}})]}),e.triggers.length===0&&!S?n.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-6 text-center",children:n.jsxs("p",{className:"text-sm text-muted-foreground",children:["When should this automation run?"," ",n.jsx("button",{type:"button",className:"text-foreground underline underline-offset-2 cursor-pointer hover:text-foreground/80 transition-colors",onClick:()=>x(!0),children:"Add a starter"})," ","to get going."]})}):n.jsx("div",{className:"flex flex-col gap-2",children:e.triggers.map(Q=>n.jsx(q0,{trigger:Q,automationId:t,connectionName:Q.connection_id?d.get(Q.connection_id):void 0},Q.id))}),S&&n.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[n.jsx(ir,{size:14,className:"text-muted-foreground shrink-0"}),n.jsx("input",{type:"text",value:j,onChange:Q=>E(Q.target.value),onBlur:async()=>{const Q=j.trim();if(!(!Q||!or(Q)))try{await l.mutateAsync({automation_id:t,type:"cron",cron_expression:Q}),Ie("automation_trigger_added",{automation_id:t,trigger_type:"cron"}),ae.success("Starter added"),w(!1),E("")}catch{ae.error("Failed to add starter")}},onKeyDown:async Q=>{const fe=j.trim();Q.key==="Enter"&&fe&&or(fe)&&Q.target.blur(),Q.key==="Escape"&&(w(!1),E(""))},placeholder:"0 9 * * 1-5",className:"flex-1 text-sm font-mono bg-transparent outline-none placeholder:text-muted-foreground/40",autoFocus:!0}),j&&!or(j)&&n.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"}),l.isPending&&n.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground shrink-0"}),n.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),E("")},children:n.jsx(Ps,{size:13})})]}),T&&n.jsx(P.Suspense,{fallback:n.jsxs("div",{className:"flex items-center gap-2 px-3 py-3 rounded-lg border border-border bg-background",children:[n.jsx(Ne,{size:13,className:"animate-spin text-muted-foreground"}),n.jsx("span",{className:"text-sm text-muted-foreground",children:"Loading connections..."})]}),children:n.jsx(J0,{automationId:t,onDone:()=>A(!1)})}),n.jsx(qu,{open:R!==null,onOpenChange:Q=>{Q||k(null)},url:R?.url??null,token:R?.token??null})]}),n.jsxs("div",{className:"flex flex-col gap-2.5",children:[n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Instructions"}),n.jsxs(oe,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:C||!g,onClick:M,children:[n.jsx(zs,{size:13}),"Improve"]})]}),n.jsx(Sm,{tiptapDoc:g,setTiptapDoc:U,placeholder:"What should this automation do?",children:n.jsxs("div",{className:"rounded-xl border border-border min-h-[120px] flex flex-col",children:[n.jsx(wm,{virtualMcpId:r||null,className:"max-h-[45vh]"}),n.jsx("div",{className:"@container/chat-bottom flex items-center justify-end gap-1.5 p-2.5",children:n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{type:"button",variant:"default",className:"h-8 gap-1.5 rounded-md px-3 text-sm font-medium",onClick:ee,disabled:!r,children:[n.jsx(jg,{size:16}),"Test"]})}),n.jsx(ke,{children:"Test Automation"})]})})]})})]}),n.jsxs(zm,{open:_,onOpenChange:y,className:"flex flex-col gap-2.5",children:[n.jsxs(Fm,{className:"group flex w-fit cursor-pointer items-center gap-1.5",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Advanced"}),n.jsx(Rs,{size:14,className:"text-muted-foreground/60 transition-transform group-data-[state=open]:rotate-180"})]}),n.jsxs(Hm,{className:"flex flex-col gap-5 pt-0.5",children:[n.jsx(P0,{tier:z.watch("tier"),onTierChange:Q=>z.setValue("tier",Q,{shouldDirty:!0}),override:z.watch("modelOverride"),onOverrideChange:Q=>z.setValue("modelOverride",Q,{shouldDirty:!0})}),n.jsx(I0,{agentId:r||null,value:z.watch("tools"),onChange:Q=>z.setValue("tools",Q,{shouldDirty:!0})}),n.jsxs("div",{className:"flex flex-col gap-2",children:[n.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Max steps"}),n.jsx(tt,{type:"number",min:1,max:100,className:"w-40",placeholder:`${Y0} (default)`,value:z.watch("maxAgentSteps")??"",onChange:Q=>{const fe=Q.target.value.trim(),me=fe===""?null:Number(fe);z.setValue("maxAgentSteps",me===null||Number.isNaN(me)?null:me,{shouldDirty:!0})}})]})]})]})]})]})}function gi(){const t=H.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{"data-testid":"main-panel-loading",className:"flex h-full w-full items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),t[0]=e):e=t[0],e}const Gu=[{key:"24h",label:"Last 24 hours",ms:1440*60*1e3},{key:"7d",label:"Last 7 days",ms:10080*60*1e3},{key:"30d",label:"Last 30 days",ms:720*60*60*1e3}];function Yu(t){const e=Gu.find(i=>i.key===t).ms,s=Date.now();return{startDate:new Date(s-e).toISOString(),endDate:new Date(s).toISOString()}}function sS(t){const e=H.c(12),{automationId:s,triggerIds:i}=t,[r,o]=P.useState("30d"),[a,l]=P.useState(rS);let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=p=>{const g=p;o(g),l(Yu(g))},e[0]=h):h=e[0];let c;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(jt,{className:"w-44",children:n.jsx(Lt,{})}),e[1]=c):c=e[1];let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(Nt,{children:Gu.map(iS)}),e[2]=d):d=e[2];let u;e[3]!==r?(u=n.jsx("div",{className:"flex items-center justify-end",children:n.jsxs(Et,{value:r,onValueChange:h,children:[c,d]})}),e[3]=r,e[4]=u):u=e[4];let f;e[5]!==s||e[6]!==a||e[7]!==i?(f=n.jsx(zg,{automationId:s,triggerIds:i,range:a}),e[5]=s,e[6]=a,e[7]=i,e[8]=f):f=e[8];let m;return e[9]!==u||e[10]!==f?(m=n.jsxs("div",{className:"flex flex-col gap-5",children:[u,f]}),e[9]=u,e[10]=f,e[11]=m):m=e[11],m}function iS(t){return n.jsx(Ye,{value:t.key,children:t.label},t.key)}function rS(){return Yu("30d")}function nS(t){const e=H.c(5),{tabId:s}=t;let i;e[0]!==s?(i=Wh(s),e[0]=s,e[1]=i):i=e[1];const r=i;if(!r)return null;let o;e[2]===Symbol.for("react.memo_cache_sentinel")?(o=n.jsx(gi,{}),e[2]=o):o=e[2];let a;return e[3]!==r.id?(a=n.jsx(P.Suspense,{fallback:o,children:n.jsx(oS,{id:r.id})}),e[3]=r.id,e[4]=a):a=e[4],a}function oS(t){const e=H.c(24),{id:s}=t,i=Mt(),{data:r,isLoading:o}=Bg(s),[a,l]=P.useState("settings");let h;e[0]!==i?(h=()=>{i({to:".",search:lS,replace:!0})},e[0]=i,e[1]=h):h=e[1];const c=h;if(o){let y;return e[2]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx(gi,{}),e[2]=y):y=e[2],y}if(!r){let y;return e[3]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx("div",{className:"flex h-full w-full items-center justify-center text-sm text-muted-foreground",children:"Automation not found"}),e[3]=y):y=e[3],y}let d;e[4]!==r.triggers?(d=r.triggers.map(aS),e[4]=r.triggers,e[5]=d):d=e[5];const u=d;let f;e[6]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx(ud,{size:14}),e[6]=f):f=e[6];let m;e[7]!==c?(m=n.jsxs(oe,{variant:"ghost",size:"sm",onClick:c,children:[f,"Back to list"]}),e[7]=c,e[8]=m):m=e[8];let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=[{id:"settings",label:"Settings"},{id:"runs",label:"Runs"}],e[9]=p):p=e[9];let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=y=>l(y),e[10]=g):g=e[10];let v;e[11]!==a?(v=n.jsx(md,{tabs:p,activeTab:a,onTabChange:g}),e[11]=a,e[12]=v):v=e[12];let b;e[13]!==m||e[14]!==v?(b=n.jsxs("div",{className:"flex items-center justify-between pb-4 shrink-0",children:[m,v]}),e[13]=m,e[14]=v,e[15]=b):b=e[15];let x;e[16]!==r||e[17]!==s||e[18]!==a||e[19]!==u?(x=a==="settings"?n.jsx(tS,{automationId:s,automation:r}):n.jsx(sS,{automationId:s,triggerIds:u}),e[16]=r,e[17]=s,e[18]=a,e[19]=u,e[20]=x):x=e[20];let _;return e[21]!==b||e[22]!==x?(_=n.jsx(Zt,{children:n.jsx(Zt.Content,{children:n.jsxs(Zt.Body,{children:[b,x]})})}),e[21]=b,e[22]=x,e[23]=_):_=e[23],_}function aS(t){return t.id}function lS(t){return{...t,main:"automations"}}function cS(t){const e=H.c(20),{virtualMcpId:s}=t,i=Mt(),{data:r}=Mg(s),o=r===void 0?[]:r,{create:a}=Sr(),[l,h]=P.useState(""),c=l.toLowerCase(),d=o.filter(R=>R.name.toLowerCase().includes(c));let u;e[0]!==i?(u=R=>i({to:".",search:k=>({...k,main:"automation:"+R}),replace:!0}),e[0]=i,e[1]=u):u=e[1];const f=u,m=async()=>{if(a.isPending)return;Ie("automation_new_clicked",{virtual_mcp_id:s,existing_count:o.length});const R=await a.mutateAsync(Og(s));f(R.id)};let p;e[2]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(Bt,{size:14}),e[2]=p):p=e[2];let g;e[3]!==a.isPending||e[4]!==m?(g=n.jsxs(oe,{size:"sm",onClick:m,disabled:a.isPending,children:[p,"New automation"]}),e[3]=a.isPending,e[4]=m,e[5]=g):g=e[5];const v=g,b=Zt,x=Zt,_=Zt;let y;e[6]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx(Zt.Title,{children:"Automations"}),e[6]=y):y=e[6];const S=o.length>0&&n.jsx(fd,{value:l,onChange:h,placeholder:"Search automations...",className:"w-full md:w-[375px]"});let w;e[7]!==v||e[8]!==S?(w=n.jsxs("div",{className:"flex flex-col gap-6",children:[y,n.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[S,v]})]}),e[7]=v,e[8]=S,e[9]=w):w=e[9];const j=o.length===0?n.jsx("div",{className:"flex items-center justify-center py-20",children:n.jsx(Yr,{image:n.jsx(ur,{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:v})}):d.length===0?n.jsx("div",{className:"flex items-center justify-center py-20",children:n.jsx(Yr,{image:n.jsx(ur,{size:48,className:"text-muted-foreground"}),title:"No automations found",description:`No automations match "${l}"`})}):n.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:d.map(R=>n.jsx(Fg,{automation:R,onClick:()=>f(R.id)},R.id))});let E;e[10]!==j||e[11]!==_.Body||e[12]!==w?(E=n.jsxs(_.Body,{children:[w,j]}),e[10]=j,e[11]=_.Body,e[12]=w,e[13]=E):E=e[13];let T;e[14]!==E||e[15]!==x.Content?(T=n.jsx(x.Content,{children:E}),e[14]=E,e[15]=x.Content,e[16]=T):T=e[16];let A;return e[17]!==b||e[18]!==T?(A=n.jsx(b,{children:T}),e[17]=b,e[18]=T,e[19]=A):A=e[19],A}function hS(t){const e=H.c(3),{virtualMcpId:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx(gi,{}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=n.jsx(P.Suspense,{fallback:i,children:n.jsx(cS,{virtualMcpId:s})}),e[1]=s,e[2]=r):r=e[2],r}function dS(t){const e=H.c(37),{file:s,onClose:i}=t;let r,o;e[0]!==s.filename?(r=n.jsx(ui,{filename:s.filename,className:"h-4.5 w-3.5 shrink-0"}),o=n.jsx("span",{className:"truncate text-xs font-medium text-foreground",children:s.filename}),e[0]=s.filename,e[1]=r,e[2]=o):(r=e[1],o=e[2]);let a;e[3]!==s.size?(a=pp(s.size),e[3]=s.size,e[4]=a):a=e[4];let l;e[5]!==a?(l=n.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:a}),e[5]=a,e[6]=l):l=e[6];let h;e[7]!==r||e[8]!==o||e[9]!==l?(h=n.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2 px-2",children:[r,o,l]}),e[7]=r,e[8]=o,e[9]=l,e[10]=h):h=e[10];let c;e[11]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(Qp,{size:14}),e[11]=c):c=e[11];let d;e[12]!==s.downloadUrl||e[13]!==s.filename?(d=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",asChild:!0,children:n.jsx("a",{href:s.downloadUrl,download:s.filename,children:c})})}),e[12]=s.downloadUrl,e[13]=s.filename,e[14]=d):d=e[14];let u;e[15]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(ke,{side:"bottom",children:"Download"}),e[15]=u):u=e[15];let f;e[16]!==d?(f=n.jsxs(je,{children:[d,u]}),e[16]=d,e[17]=f):f=e[17];let m;e[18]!==s.downloadUrl?(m=()=>window.open(s.downloadUrl,"_blank","noopener"),e[18]=s.downloadUrl,e[19]=m):m=e[19];let p;e[20]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx(wi,{size:14}),e[20]=p):p=e[20];let g;e[21]!==m?(g=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:m,children:p})}),e[21]=m,e[22]=g):g=e[22];let v;e[23]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx(ke,{side:"bottom",children:"Open in new tab"}),e[23]=v):v=e[23];let b;e[24]!==g?(b=n.jsxs(je,{children:[g,v]}),e[24]=g,e[25]=b):b=e[25];let x;e[26]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(Ps,{size:14}),e[26]=x):x=e[26];let _;e[27]!==i?(_=n.jsx(Ce,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"icon",onClick:i,children:x})}),e[27]=i,e[28]=_):_=e[28];let y;e[29]===Symbol.for("react.memo_cache_sentinel")?(y=n.jsx(ke,{side:"bottom",children:"Close"}),e[29]=y):y=e[29];let S;e[30]!==_?(S=n.jsxs(je,{children:[_,y]}),e[30]=_,e[31]=S):S=e[31];let w;return e[32]!==b||e[33]!==S||e[34]!==h||e[35]!==f?(w=n.jsxs("div",{className:"flex h-9 shrink-0 items-center gap-1 border-b border-border/60 px-2",children:[h,f,b,S]}),e[32]=b,e[33]=S,e[34]=h,e[35]=f,e[36]=w):w=e[36],w}function uS(t){const e=H.c(24),{fileKey:s,taskId:i}=t,r=Mt(),{data:o,isPending:a}=Bh(i);let l;e[0]!==s||e[1]!==o?(l=o?.find(p=>p.key===s)??null,e[0]=s,e[1]=o,e[2]=l):l=e[2];const h=l;let c;e[3]!==r?(c=()=>r({to:".",search:fS,replace:!0}),e[3]=r,e[4]=c):c=e[4];const d=c;if(!h){if(a){let _;return e[5]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx("div",{className:"h-full w-full bg-background",children:n.jsx(fp,{})}),e[5]=_):_=e[5],_}let p;e[6]!==s?(p=s.split("/").pop()??s,e[6]=s,e[7]=p):p=e[7];let g;e[8]!==p?(g=n.jsx(ui,{filename:p,className:"h-7.5 w-6"}),e[8]=p,e[9]=g):g=e[9];let v;e[10]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx("span",{className:"text-sm text-muted-foreground",children:"This file is no longer available."}),e[10]=v):v=e[10];let b;e[11]!==d?(b=n.jsx(oe,{variant:"ghost",size:"sm",onClick:d,children:"Close"}),e[11]=d,e[12]=b):b=e[12];let x;return e[13]!==g||e[14]!==b?(x=n.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-2 bg-background",children:[g,v,b]}),e[13]=g,e[14]=b,e[15]=x):x=e[15],x}let u;e[16]!==h||e[17]!==d?(u=n.jsx(dS,{file:h,onClose:d}),e[16]=h,e[17]=d,e[18]=u):u=e[18];let f;e[19]!==h?(f=n.jsx("div",{className:"relative min-h-0 flex-1",children:n.jsx(mp,{file:h})}),e[19]=h,e[20]=f):f=e[20];let m;return e[21]!==u||e[22]!==f?(m=n.jsxs("div",{className:"flex h-full w-full flex-col bg-background",children:[u,f]}),e[21]=u,e[22]=f,e[23]=m):m=e[23],m}function fS(t){return{...t,main:"0"}}const ro="home";function mS(t){const e=H.c(5),{label:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx(gd,{className:"aspect-video w-2/3 max-w-xl"}),e[0]=i):i=e[0];let r;e[1]!==s?(r=s&&n.jsx("p",{className:"text-xs text-muted-foreground",children:s}),e[1]=s,e[2]=r):r=e[2];let o;return e[3]!==r?(o=n.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-3 bg-background",children:[i,r]}),e[3]=r,e[4]=o):o=e[4],o}function pS(t){const e=H.c(15),{path:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={refetchIntervalWhenAbsent:2e3},e[0]=i):i=e[0];const r=gp(ro,s,i),o=_p(ro)(s);if(r.isPending||!r.data){const f=!r.isPending&&!r.data?"Waiting for the deck to sync…":void 0;let m;return e[1]!==f?(m=n.jsx(mS,{label:f}),e[1]=f,e[2]=m):m=e[2],m}let a;e[3]!==r.data?(a=vp(r.data),e[3]=r.data,e[4]=a):a=e[4];const l=r.data.shareMode??"private",h=r.data.effectivePublic??!1,c=window.location.origin+o;let d;e[5]!==s||e[6]!==l||e[7]!==h||e[8]!==c?(d=n.jsx(xp,{volume:ro,path:s,shareMode:l,effectivePublic:h,url:c}),e[5]=s,e[6]=l,e[7]=h,e[8]=c,e[9]=d):d=e[9];let u;return e[10]!==s||e[11]!==o||e[12]!==a||e[13]!==d?(u=n.jsx(bp,{readUrl:o,marker:a,title:s,savePath:s,trailing:d}),e[10]=s,e[11]=o,e[12]=a,e[13]=d,e[14]=u):u=e[14],u}function gS(t){const e=H.c(5),{path:s}=t,i=Mt();let r;e[0]!==i?(r=()=>i({to:".",search:_S,replace:!0}),e[0]=i,e[1]=r):r=e[1];const o=r;let a;return e[2]!==o||e[3]!==s?(a=n.jsx(yp,{previewPath:s,onClose:o,showSeeInLibrary:!0}),e[2]=o,e[3]=s,e[4]=a):a=e[4],a}function _S(t){return{...t,main:"0"}}const jc=P.lazy(()=>Ut(()=>import("./project-app-view-r7Nmocf7.js"),__vite__mapDeps([158,1,2,44,7,8,9,10,11,12,13,14,15,16,6,3,4,5,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,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,123,96,97,98,88,99,100,101,102,103,90,91,104,105,106,107,84,108,109,110,111,112,113,114,87,115,116,83,92,93,79,117,118,119,120,121,122,124,125,126,127,85,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144])).then(t=>({default:t.AppViewContent})));function vS(t){const e=H.c(53),{activeTab:s,virtualMcpId:i,taskId:r,layoutTabs:o,expandedTools:a,automationTabParsed:l}=t;if(op(s)){let _;return e[0]!==i?(_=n.jsx(ac,{virtualMcpId:i}),e[0]=i,e[1]=_):_=e[1],_}if(s==="git"){let _;return e[2]!==i?(_=n.jsx(rb,{virtualMcpId:i}),e[2]=i,e[3]=_):_=e[3],_}if(s==="automations"){let _;return e[4]!==i?(_=n.jsx(hS,{virtualMcpId:i}),e[4]=i,e[5]=_):_=e[5],_}if(s==="preview"){let _;return e[6]!==i?(_=n.jsx(ly,{virtualMcpId:i}),e[6]=i,e[7]=_):_=e[7],_}if(s==="content"){let _;return e[8]!==i?(_=n.jsx(N0,{virtualMcpId:i}),e[8]=i,e[9]=_):_=e[9],_}if(l){let _;return e[10]!==s?(_=n.jsx(nS,{tabId:s}),e[10]=s,e[11]=_):_=e[11],_}let h;e[12]!==s?(h=Kh(s),e[12]=s,e[13]=h):h=e[13];const c=h;if(c){let _;return e[14]!==c.path?(_=n.jsx(pS,{path:c.path},c.path),e[14]=c.path,e[15]=_):_=e[15],_}let d;e[16]!==s?(d=Uh(s),e[16]=s,e[17]=d):d=e[17];const u=d;if(u){let _;return e[18]!==u.key||e[19]!==r?(_=n.jsx(uS,{fileKey:u.key,taskId:r}),e[18]=u.key,e[19]=r,e[20]=_):_=e[20],_}let f;e[21]!==s?(f=Vh(s),e[21]=s,e[22]=f):f=e[22];const m=f;if(m){let _;return e[23]!==m.path?(_=n.jsx(gS,{path:m.path},m.path),e[23]=m.path,e[24]=_):_=e[24],_}let p;e[25]!==s?(p=ap(s),e[25]=s,e[26]=p):p=e[26];const g=p;if(g){let _;if(e[27]!==a||e[28]!==g.connectionId||e[29]!==g.toolName){let E;e[31]!==g.connectionId||e[32]!==g.toolName?(E=T=>T.appId===g.connectionId&&T.toolName===g.toolName,e[31]=g.connectionId,e[32]=g.toolName,e[33]=E):E=e[33],_=a.find(E),e[27]=a,e[28]=g.connectionId,e[29]=g.toolName,e[30]=_}else _=e[30];const y=_;let S;e[34]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(gi,{}),e[34]=S):S=e[34];const w=y?.args;let j;return e[35]!==s||e[36]!==g.connectionId||e[37]!==g.toolName||e[38]!==w?(j=n.jsx(P.Suspense,{fallback:S,children:n.jsx(jc,{connectionId:g.connectionId,toolName:g.toolName,args:w},s)}),e[35]=s,e[36]=g.connectionId,e[37]=g.toolName,e[38]=w,e[39]=j):j=e[39],j}let v;if(e[40]!==s||e[41]!==o){let _;e[43]!==s?(_=y=>y.id===s,e[43]=s,e[44]=_):_=e[44],v=o.find(_),e[40]=s,e[41]=o,e[42]=v}else v=e[42];const b=v;if(b){let _;e[45]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx(gi,{}),e[45]=_):_=e[45];let y;return e[46]!==s||e[47]!==b.id||e[48]!==b.view.appId||e[49]!==b.view.args?(y=n.jsx(P.Suspense,{fallback:_,children:n.jsx(jc,{connectionId:b.view.appId,toolName:b.id,args:b.view.args},s)}),e[46]=s,e[47]=b.id,e[48]=b.view.appId,e[49]=b.view.args,e[50]=y):y=e[50],y}let x;return e[51]!==i?(x=n.jsx(ac,{virtualMcpId:i}),e[51]=i,e[52]=x):x=e[52],x}function xS(t){const e=H.c(14),{taskId:s,virtualMcpId:i}=t;let r;e[0]!==s||e[1]!==i?(r={virtualMcpId:i,taskId:s},e[0]=s,e[1]=i,e[2]=r):r=e[2];const{activeTab:o,layoutTabs:a,expandedTools:l,automationTabParsed:h}=ll(r);let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(gi,{}),e[3]=c):c=e[3];let d;e[4]!==o||e[5]!==h||e[6]!==l||e[7]!==a||e[8]!==s||e[9]!==i?(d=n.jsx(P.Suspense,{fallback:c,children:n.jsx(vS,{activeTab:o,virtualMcpId:i,taskId:s,layoutTabs:a,expandedTools:l,automationTabParsed:h})}),e[4]=o,e[5]=h,e[6]=l,e[7]=a,e[8]=s,e[9]=i,e[10]=d):d=e[10];let u;return e[11]!==o||e[12]!==d?(u=n.jsx(Jt,{children:d},o),e[11]=o,e[12]=d,e[13]=u):u=e[13],u}const Hs="setup";function bS(t){const e=H.c(35);let s;if(e[0]!==t.scriptTabs||e[1]!==t.scripts){let m;e[3]!==t.scriptTabs?(m=p=>!t.scriptTabs.includes(p),e[3]=t.scriptTabs,e[4]=m):m=e[4],s=t.scripts.filter(m),e[0]=t.scriptTabs,e[1]=t.scripts,e[2]=s}else s=e[2];const i=s;let r;e[5]!==t?(r=()=>{t.active===Hs?t.onToggle():t.onSelectTab(Hs)},e[5]=t,e[6]=r):r=e[6];const o=r,a=t.active===Hs;let l;e[7]!==o||e[8]!==t.open||e[9]!==a?(l=n.jsx(yS,{active:a,open:t.open,onClick:o}),e[7]=o,e[8]=t.open,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==t?(h=t.scriptTabs.map(m=>n.jsx(wS,{active:t.active===m,onClick:()=>{t.active===m?t.onToggle():t.onSelectTab(m)},onClose:()=>t.onCloseScript(m),children:m},m)),e[11]=t,e[12]=h):h=e[12];let c;e[13]!==i||e[14]!==t.onAddScript?(c=n.jsx(CS,{scripts:i,onRun:t.onAddScript}),e[13]=i,e[14]=t.onAddScript,e[15]=c):c=e[15];let d;e[16]!==l||e[17]!==h||e[18]!==c?(d=n.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-1 overflow-x-auto",children:[l,h,c]}),e[16]=l,e[17]=h,e[18]=c,e[19]=d):d=e[19];let u;e[20]!==t.onRestart||e[21]!==t.onResume||e[22]!==t.onRetry||e[23]!==t.onRunActiveScript||e[24]!==t.onStart||e[25]!==t.onStop||e[26]!==t.onStopActiveScript||e[27]!==t.scriptIsKilling||e[28]!==t.scriptIsRunning||e[29]!==t.showScriptControls||e[30]!==t.status?(u=t.showScriptControls?n.jsx(kS,{isRunning:t.scriptIsRunning,isKilling:t.scriptIsKilling,onRun:t.onRunActiveScript,onStop:t.onStopActiveScript}):n.jsx(SS,{status:t.status,onStart:t.onStart,onStop:t.onStop,onRestart:t.onRestart,onResume:t.onResume,onRetry:t.onRetry}),e[20]=t.onRestart,e[21]=t.onResume,e[22]=t.onRetry,e[23]=t.onRunActiveScript,e[24]=t.onStart,e[25]=t.onStop,e[26]=t.onStopActiveScript,e[27]=t.scriptIsKilling,e[28]=t.scriptIsRunning,e[29]=t.showScriptControls,e[30]=t.status,e[31]=u):u=e[31];let f;return e[32]!==d||e[33]!==u?(f=n.jsxs("div",{className:"flex h-10 shrink-0 items-center gap-1 border-t border-b border-border bg-muted/60 px-3",children:[d,u]}),e[32]=d,e[33]=u,e[34]=f):f=e[34],f}function yS(t){const e=H.c(8),{active:s,open:i,onClick:r}=t,o=s&&i,a=s&&i,l=s?"border-border bg-background font-medium text-foreground shadow-sm":"border-transparent text-muted-foreground hover:bg-background/50 hover:text-foreground";let h;e[0]!==l?(h=le("flex h-7 items-center gap-1.5 rounded-md border px-2.5 text-xs",l),e[0]=l,e[1]=h):h=e[1];let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(Jp,{className:"size-3.5"}),e[2]=c):c=e[2];let d;return e[3]!==r||e[4]!==o||e[5]!==a||e[6]!==h?(d=n.jsxs("button",{type:"button","aria-pressed":o,"aria-expanded":a,onClick:r,className:h,children:[c,"sandbox"]}),e[3]=r,e[4]=o,e[5]=a,e[6]=h,e[7]=d):d=e[7],d}function SS(t){const e=H.c(24),{status:s,onStart:i,onStop:r,onRestart:o,onResume:a,onRetry:l}=t;if(s==="idle"&&i){let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(fi,{className:"size-3.5"}),e[0]=h):h=e[0];let c;return e[1]!==i?(c=n.jsxs(oe,{variant:"outline",size:"sm",onClick:i,children:[h," Start"]}),e[1]=i,e[2]=c):c=e[2],c}if(s==="suspended"&&a){let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(fi,{className:"size-3.5"}),e[3]=h):h=e[3];let c;return e[4]!==a?(c=n.jsxs(oe,{variant:"outline",size:"sm",onClick:a,children:[h," Resume"]}),e[4]=a,e[5]=c):c=e[5],c}if(s==="errored"&&l){let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(lr,{className:"size-3.5"}),e[6]=h):h=e[6];let c;return e[7]!==l?(c=n.jsxs(oe,{variant:"outline",size:"sm",onClick:l,children:[h," Retry"]}),e[7]=l,e[8]=c):c=e[8],c}if(s==="starting"||s==="running"){const h=s==="running"&&!!o,c=h?"rounded-r-none border-r-0":void 0;let d;e[9]!==c?(d=le(c),e[9]=c,e[10]=d):d=e[10];let u;e[11]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(td,{className:"size-3.5"}),e[11]=u):u=e[11];let f;e[12]!==r||e[13]!==d?(f=n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",onClick:r,className:d,children:[u," Stop"]})}),e[12]=r,e[13]=d,e[14]=f):f=e[14];let m;e[15]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(ke,{children:"Stop sandbox"}),e[15]=m):m=e[15];let p;e[16]!==f?(p=n.jsxs(je,{children:[f,m]}),e[16]=f,e[17]=p):p=e[17];let g;e[18]!==o||e[19]!==h?(g=h&&n.jsxs(os,{children:[n.jsx(as,{asChild:!0,children:n.jsx(oe,{variant:"outline",size:"sm",className:"rounded-l-none px-1",children:n.jsx(Rs,{className:"size-3"})})}),n.jsx(ls,{align:"end",children:n.jsxs(We,{onClick:o,children:[n.jsx(lr,{className:"size-3.5"})," Restart"]})})]}),e[18]=o,e[19]=h,e[20]=g):g=e[20];let v;return e[21]!==p||e[22]!==g?(v=n.jsxs("div",{className:"flex items-center",children:[p,g]}),e[21]=p,e[22]=g,e[23]=v):v=e[23],v}return null}function wS(t){const e=H.c(16),{active:s,onClick:i,onClose:r,children:o}=t,a=s?"border-border bg-background shadow-sm":"border-transparent hover:bg-background/50";let l;e[0]!==a?(l=le("flex h-7 items-center rounded-md border text-xs",a),e[0]=a,e[1]=l):l=e[1];const h=r?"pl-2.5 pr-1":"px-2.5",c=s?"font-medium text-foreground":"text-muted-foreground hover:text-foreground";let d;e[2]!==h||e[3]!==c?(d=le("flex h-full items-center",h,c),e[2]=h,e[3]=c,e[4]=d):d=e[4];let u;e[5]!==o||e[6]!==i||e[7]!==d?(u=n.jsx("button",{type:"button",onClick:i,className:d,children:o}),e[5]=o,e[6]=i,e[7]=d,e[8]=u):u=e[8];let f;e[9]!==o||e[10]!==r?(f=r&&n.jsx("button",{type:"button","aria-label":`Close ${o}`,onClick:r,className:"pr-1.5 text-muted-foreground hover:text-foreground",children:n.jsx(xd,{className:"size-3"})}),e[9]=o,e[10]=r,e[11]=f):f=e[11];let m;return e[12]!==l||e[13]!==u||e[14]!==f?(m=n.jsxs("div",{className:l,children:[u,f]}),e[12]=l,e[13]=u,e[14]=f,e[15]=m):m=e[15],m}function CS(t){const e=H.c(10),{scripts:s,onRun:i}=t,[r,o]=P.useState(!1);let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsxs(je,{children:[n.jsx(Ce,{asChild:!0,children:n.jsx(Js,{asChild:!0,children:n.jsx(oe,{variant:"ghost",size:"sm","aria-label":"Run script",children:n.jsx(Bt,{className:"size-3.5"})})})}),n.jsx(ke,{children:"Run script"})]}),e[0]=a):a=e[0];let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx("div",{className:"px-2 py-1 text-[10px] uppercase tracking-wide text-muted-foreground",children:"run a script"}),e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==s?(h=s.length===0?n.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:"No scripts found"}):s.map(u=>n.jsxs("button",{type:"button",onClick:()=>{o(!1),i(u)},className:"w-full rounded-md px-2 py-1.5 text-left text-xs hover:bg-accent",children:["▸ ",u]},u)),e[2]=i,e[3]=s,e[4]=h):h=e[4];let c;e[5]!==h?(c=n.jsxs(Zs,{align:"start",className:"p-1 w-56",children:[l,h]}),e[5]=h,e[6]=c):c=e[6];let d;return e[7]!==r||e[8]!==c?(d=n.jsxs(Xs,{open:r,onOpenChange:o,children:[a,c]}),e[7]=r,e[8]=c,e[9]=d):d=e[9],d}function kS(t){const e=H.c(13),{isRunning:s,isKilling:i,onRun:r,onStop:o}=t;if(i){let d;return e[0]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsxs(oe,{variant:"outline",size:"sm",disabled:!0,children:[n.jsx(Ne,{className:"size-3.5 animate-spin"})," Stopping…"]}),e[0]=d):d=e[0],d}if(!s){let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(fi,{className:"size-3.5"}),e[1]=d):d=e[1];let u;e[2]!==r?(u=n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",onClick:r,children:[d," Run"]})}),e[2]=r,e[3]=u):u=e[3];let f;e[4]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx(ke,{children:"Start process"}),e[4]=f):f=e[4];let m;return e[5]!==u?(m=n.jsxs(je,{children:[u,f]}),e[5]=u,e[6]=m):m=e[6],m}let a;e[7]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(td,{className:"size-3.5"}),e[7]=a):a=e[7];let l;e[8]!==o?(l=n.jsx(Ce,{asChild:!0,children:n.jsxs(oe,{variant:"outline",size:"sm",onClick:o,children:[a," Stop"]})}),e[8]=o,e[9]=l):l=e[9];let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(ke,{children:"Stop process"}),e[10]=h):h=e[10];let c;return e[11]!==l?(c=n.jsxs(je,{children:[l,h]}),e[11]=l,e[12]=c):c=e[12],c}var Xu=Object.defineProperty,jS=Object.getOwnPropertyDescriptor,NS=(t,e)=>{for(var s in e)Xu(t,s,{get:e[s],enumerable:!0})},Ve=(t,e,s,i)=>{for(var r=i>1?void 0:i?jS(e,s):e,o=t.length-1,a;o>=0;o--)(a=t[o])&&(r=(i?a(e,s,r):a(r))||r);return i&&r&&Xu(e,s,r),r},ue=(t,e)=>(s,i)=>e(s,i,t),Nc="Terminal input",Oo={get:()=>Nc,set:t=>Nc=t},Ec="Too much output to announce, navigate to rows manually to read",$o={get:()=>Ec,set:t=>Ec=t};function ES(t){return t.replace(/\r?\n/g,"\r")}function TS(t,e){return e?"\x1B[200~"+t+"\x1B[201~":t}function PS(t,e){t.clipboardData&&t.clipboardData.setData("text/plain",e.selectionText),t.preventDefault()}function AS(t,e,s,i){if(t.stopPropagation(),t.clipboardData){let r=t.clipboardData.getData("text/plain");Ju(r,e,s,i)}}function Ju(t,e,s,i){t=ES(t),t=TS(t,s.decPrivateModes.bracketedPasteMode&&i.rawOptions.ignoreBracketedPasteMode!==!0),s.triggerDataEvent(t,!0),e.value=""}function Zu(t,e,s){let i=s.getBoundingClientRect(),r=t.clientX-i.left-10,o=t.clientY-i.top-10;e.style.width="20px",e.style.height="20px",e.style.left=`${r}px`,e.style.top=`${o}px`,e.style.zIndex="1000",e.focus()}function Tc(t,e,s,i,r){Zu(t,e,s),r&&i.rightClickSelect(t),e.value=i.selectionText,e.select()}function Ns(t){return t>65535?(t-=65536,String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)}function On(t,e=0,s=t.length){let i="";for(let r=e;r<s;++r){let o=t[r];o>65535?(o-=65536,i+=String.fromCharCode((o>>10)+55296)+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i}var RS=class{constructor(){this._interim=0}clear(){this._interim=0}decode(t,e){let s=t.length;if(!s)return 0;let i=0,r=0;if(this._interim){let o=t.charCodeAt(r++);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=r;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}},DS=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,r,o,a,l,h=0,c=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 v=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,b=v-p;for(;c<b;){if(c>=s)return 0;if(g=t[c++],(g&192)!==128){c--,f=!0;break}else this.interim[p++]=g,m<<=6,m|=g&63}f||(v===2?m<128?c--:e[i++]=m:v===3?m<2048||m>=55296&&m<=57343||m===65279||(e[i++]=m):m<65536||m>1114111||(e[i++]=m)),this.interim.fill(0)}let d=s-4,u=c;for(;u<s;){for(;u<d&&!((r=t[u])&128)&&!((o=t[u+1])&128)&&!((a=t[u+2])&128)&&!((l=t[u+3])&128);)e[i++]=r,e[i++]=o,e[i++]=a,e[i++]=l,u+=4;if(r=t[u++],r<128)e[i++]=r;else if((r&224)===192){if(u>=s)return this.interim[0]=r,i;if(o=t[u++],(o&192)!==128){u--;continue}if(h=(r&31)<<6|o&63,h<128){u--;continue}e[i++]=h}else if((r&240)===224){if(u>=s)return this.interim[0]=r,i;if(o=t[u++],(o&192)!==128){u--;continue}if(u>=s)return this.interim[0]=r,this.interim[1]=o,i;if(a=t[u++],(a&192)!==128){u--;continue}if(h=(r&15)<<12|(o&63)<<6|a&63,h<2048||h>=55296&&h<=57343||h===65279)continue;e[i++]=h}else if((r&248)===240){if(u>=s)return this.interim[0]=r,i;if(o=t[u++],(o&192)!==128){u--;continue}if(u>=s)return this.interim[0]=r,this.interim[1]=o,i;if(a=t[u++],(a&192)!==128){u--;continue}if(u>=s)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=a,i;if(l=t[u++],(l&192)!==128){u--;continue}if(h=(r&7)<<18|(o&63)<<12|(a&63)<<6|l&63,h<65536||h>1114111)continue;e[i++]=h}}return i}},Qu="",Es=" ",kr=class ef{constructor(){this.fg=0,this.bg=0,this.extended=new _n}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 ef;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}},_n=class tf{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 tf(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Wt=class sf extends kr{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new _n,this.combinedData=""}static fromCharData(e){let s=new sf;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?Ns(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 r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(i-55296)*1024+r-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()]}},Pc="di$target",zo="di$dependencies",no=new Map;function IS(t){return t[zo]||[]}function lt(t){if(no.has(t))return no.get(t);let e=function(s,i,r){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");LS(e,s,r)};return e._id=t,no.set(t,e),e}function LS(t,e,s){e[Pc]===e?e[zo].push({id:t,index:s}):(e[zo]=[{id:t,index:s}],e[Pc]=e)}var xt=lt("BufferService"),rf=lt("CoreMouseService"),si=lt("CoreService"),BS=lt("CharsetService"),bl=lt("InstantiationService"),nf=lt("LogService"),bt=lt("OptionsService"),of=lt("OscLinkService"),MS=lt("UnicodeService"),jr=lt("DecorationService"),Fo=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=[],r=this._optionsService.rawOptions.linkHandler,o=new Wt,a=s.getTrimmedLength(),l=-1,h=-1,c=!1;for(let d=0;d<a;d++)if(!(h===-1&&!s.hasContent(d))){if(s.loadCell(d,o),o.hasExtendedAttrs()&&o.extended.urlId)if(h===-1){h=d,l=o.extended.urlId;continue}else c=o.extended.urlId!==l;else h!==-1&&(c=!0);if(c||h!==-1&&d===a-1){let u=this._oscLinkService.getLinkData(l)?.uri;if(u){let f={start:{x:h+1,y:t},end:{x:d+(!c&&d===a-1?1:0),y:t}},m=!1;if(!r?.allowNonHttpProtocols)try{let p=new URL(u);["http:","https:"].includes(p.protocol)||(m=!0)}catch{m=!0}m||i.push({text:u,range:f,activate:(p,g)=>r?r.activate(p,g,f):OS(p,g),hover:(p,g)=>r?.hover?.(p,g,f),leave:(p,g)=>r?.leave?.(p,g,f)})}c=!1,o.hasExtendedAttrs()&&o.extended.urlId?(h=d,l=o.extended.urlId):(h=-1,l=-1)}}e(i)}};Fo=Ve([ue(0,xt),ue(1,bt),ue(2,of)],Fo);function OS(t,e){if(confirm(`Do you want to navigate to ${e}?
|
|
486
|
-
|
|
487
|
-
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 $n=lt("CharSizeService"),Ss=lt("CoreBrowserService"),yl=lt("MouseService"),ws=lt("RenderService"),$S=lt("SelectionService"),af=lt("CharacterJoinerService"),Ti=lt("ThemeService"),lf=lt("LinkProviderService"),zS=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(t){setTimeout(()=>{throw t.stack?Ac.isErrorNoTelemetry(t)?new Ac(t.message+`
|
|
488
|
-
|
|
489
|
-
`+t.stack):new Error(t.message+`
|
|
490
|
-
|
|
491
|
-
`+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)}},FS=new zS;function Wr(t){HS(t)||FS.onUnexpectedError(t)}var Ho="Canceled";function HS(t){return t instanceof WS?!0:t instanceof Error&&t.name===Ho&&t.message===Ho}var WS=class extends Error{constructor(){super(Ho),this.name=this.message}};function US(t){return new Error(`Illegal argument: ${t}`)}var Ac=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"}},Uo=class cf extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,cf.prototype)}};function Pt(t,e=0){return t[t.length-(1+e)]}var KS;(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 r(o){return o===0}t.isNeitherLessOrGreaterThan=r,t.greaterThan=1,t.lessThan=-1,t.neitherLessOrGreaterThan=0})(KS||={});function VS(t,e){let s=this,i=!1,r;return function(){return i||(i=!0,e||(r=t.apply(s,arguments))),r}}var hf;(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*r(y){yield y}t.single=r;function o(y){return e(y)?y:r(y)}t.wrap=o;function a(y){return y||s}t.from=a;function*l(y){for(let S=y.length-1;S>=0;S--)yield y[S]}t.reverse=l;function h(y){return!y||y[Symbol.iterator]().next().done===!0}t.isEmpty=h;function c(y){return y[Symbol.iterator]().next().value}t.first=c;function d(y,S){let w=0;for(let j of y)if(S(j,w++))return!0;return!1}t.some=d;function u(y,S){for(let w of y)if(S(w))return w}t.find=u;function*f(y,S){for(let w of y)S(w)&&(yield w)}t.filter=f;function*m(y,S){let w=0;for(let j of y)yield S(j,w++)}t.map=m;function*p(y,S){let w=0;for(let j of y)yield*S(j,w++)}t.flatMap=p;function*g(...y){for(let S of y)yield*S}t.concat=g;function v(y,S,w){let j=w;for(let E of y)j=S(j,E);return j}t.reduce=v;function*b(y,S,w=y.length){for(S<0&&(S+=y.length),w<0?w+=y.length:w>y.length&&(w=y.length);S<w;S++)yield y[S]}t.slice=b;function x(y,S=Number.POSITIVE_INFINITY){let w=[];if(S===0)return[w,y];let j=y[Symbol.iterator]();for(let E=0;E<S;E++){let T=j.next();if(T.done)return[w,t.empty()];w.push(T.value)}return[w,{[Symbol.iterator](){return j}}]}t.consume=x;async function _(y){let S=[];for await(let w of y)S.push(w);return Promise.resolve(S)}t.asyncToArray=_})(hf||={});function Vs(t){if(hf.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 qS(...t){return $e(()=>Vs(t))}function $e(t){return{dispose:VS(()=>{t()})}}var df=class uf{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{Vs(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?uf.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)}};df.DISABLE_DISPOSED_WARNING=!1;var Ts=df,we=class{constructor(){this._store=new Ts,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 _i=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}},xs=typeof window=="object"?window:globalThis,Ko=class Vo{constructor(e){this.element=e,this.next=Vo.Undefined,this.prev=Vo.Undefined}};Ko.Undefined=new Ko(void 0);var Fe=Ko,Rc=class{constructor(){this._first=Fe.Undefined,this._last=Fe.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Fe.Undefined}clear(){let t=this._first;for(;t!==Fe.Undefined;){let e=t.next;t.prev=Fe.Undefined,t.next=Fe.Undefined,t=e}this._first=Fe.Undefined,this._last=Fe.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,e){let s=new Fe(t);if(this._first===Fe.Undefined)this._first=s,this._last=s;else if(e){let r=this._last;this._last=s,s.prev=r,r.next=s}else{let r=this._first;this._first=s,s.next=r,r.prev=s}this._size+=1;let i=!1;return()=>{i||(i=!0,this._remove(s))}}shift(){if(this._first!==Fe.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Fe.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Fe.Undefined&&t.next!==Fe.Undefined){let e=t.prev;e.next=t.next,t.next.prev=e}else t.prev===Fe.Undefined&&t.next===Fe.Undefined?(this._first=Fe.Undefined,this._last=Fe.Undefined):t.next===Fe.Undefined?(this._last=this._last.prev,this._last.next=Fe.Undefined):t.prev===Fe.Undefined&&(this._first=this._first.next,this._first.prev=Fe.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Fe.Undefined;)yield t.element,t=t.next}},GS=globalThis.performance&&typeof globalThis.performance.now=="function",YS=class ff{static create(e){return new ff(e)}constructor(e){this._now=GS&&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}},ut;(t=>{t.None=()=>we.None;function e(k,C){return u(k,()=>{},0,void 0,!0,void 0,C)}t.defer=e;function s(k){return(C,D=null,N)=>{let L=!1,B;return B=k(I=>{if(!L)return B?B.dispose():L=!0,C.call(D,I)},null,N),L&&B.dispose(),B}}t.once=s;function i(k,C,D){return c((N,L=null,B)=>k(I=>N.call(L,C(I)),null,B),D)}t.map=i;function r(k,C,D){return c((N,L=null,B)=>k(I=>{C(I),N.call(L,I)},null,B),D)}t.forEach=r;function o(k,C,D){return c((N,L=null,B)=>k(I=>C(I)&&N.call(L,I),null,B),D)}t.filter=o;function a(k){return k}t.signal=a;function l(...k){return(C,D=null,N)=>{let L=qS(...k.map(B=>B(I=>C.call(D,I))));return d(L,N)}}t.any=l;function h(k,C,D,N){let L=D;return i(k,B=>(L=C(L,B),L),N)}t.reduce=h;function c(k,C){let D,N={onWillAddFirstListener(){D=k(L.fire,L)},onDidRemoveLastListener(){D?.dispose()}},L=new ce(N);return C?.add(L),L.event}function d(k,C){return C instanceof Array?C.push(k):C&&C.add(k),k}function u(k,C,D=100,N=!1,L=!1,B,I){let M,O,F,z=0,K,G={leakWarningThreshold:B,onWillAddFirstListener(){M=k(ie=>{z++,O=C(O,ie),N&&!F&&(X.fire(O),O=void 0),K=()=>{let W=O;O=void 0,F=void 0,(!N||z>1)&&X.fire(W),z=0},typeof D=="number"?(clearTimeout(F),F=setTimeout(K,D)):F===void 0&&(F=0,queueMicrotask(K))})},onWillRemoveListener(){L&&z>0&&K?.()},onDidRemoveLastListener(){K=void 0,M.dispose()}},X=new ce(G);return I?.add(X),X.event}t.debounce=u;function f(k,C=0,D){return t.debounce(k,(N,L)=>N?(N.push(L),N):[L],C,void 0,!0,void 0,D)}t.accumulate=f;function m(k,C=(N,L)=>N===L,D){let N=!0,L;return o(k,B=>{let I=N||!C(B,L);return N=!1,L=B,I},D)}t.latch=m;function p(k,C,D){return[t.filter(k,C,D),t.filter(k,N=>!C(N),D)]}t.split=p;function g(k,C=!1,D=[],N){let L=D.slice(),B=k(O=>{L?L.push(O):M.fire(O)});N&&N.add(B);let I=()=>{L?.forEach(O=>M.fire(O)),L=null},M=new ce({onWillAddFirstListener(){B||(B=k(O=>M.fire(O)),N&&N.add(B))},onDidAddFirstListener(){L&&(C?setTimeout(I):I())},onDidRemoveLastListener(){B&&B.dispose(),B=null}});return N&&N.add(M),M.event}t.buffer=g;function v(k,C){return(D,N,L)=>{let B=C(new x);return k(function(I){let M=B.evaluate(I);M!==b&&D.call(N,M)},void 0,L)}}t.chain=v;let b=Symbol("HaltChainable");class x{constructor(){this.steps=[]}map(C){return this.steps.push(C),this}forEach(C){return this.steps.push(D=>(C(D),D)),this}filter(C){return this.steps.push(D=>C(D)?D:b),this}reduce(C,D){let N=D;return this.steps.push(L=>(N=C(N,L),N)),this}latch(C=(D,N)=>D===N){let D=!0,N;return this.steps.push(L=>{let B=D||!C(L,N);return D=!1,N=L,B?L:b}),this}evaluate(C){for(let D of this.steps)if(C=D(C),C===b)break;return C}}function _(k,C,D=N=>N){let N=(...M)=>I.fire(D(...M)),L=()=>k.on(C,N),B=()=>k.removeListener(C,N),I=new ce({onWillAddFirstListener:L,onDidRemoveLastListener:B});return I.event}t.fromNodeEventEmitter=_;function y(k,C,D=N=>N){let N=(...M)=>I.fire(D(...M)),L=()=>k.addEventListener(C,N),B=()=>k.removeEventListener(C,N),I=new ce({onWillAddFirstListener:L,onDidRemoveLastListener:B});return I.event}t.fromDOMEventEmitter=y;function S(k){return new Promise(C=>s(k)(C))}t.toPromise=S;function w(k){let C=new ce;return k.then(D=>{C.fire(D)},()=>{C.fire(void 0)}).finally(()=>{C.dispose()}),C.event}t.fromPromise=w;function j(k,C){return k(D=>C.fire(D))}t.forward=j;function E(k,C,D){return C(D),k(N=>C(N))}t.runAndSubscribe=E;class T{constructor(C,D){this._observable=C,this._counter=0,this._hasChanged=!1;let N={onWillAddFirstListener:()=>{C.addObserver(this)},onDidRemoveLastListener:()=>{C.removeObserver(this)}};this.emitter=new ce(N),D&&D.add(this.emitter)}beginUpdate(C){this._counter++}handlePossibleChange(C){}handleChange(C,D){this._hasChanged=!0}endUpdate(C){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function A(k,C){return new T(k,C).emitter.event}t.fromObservable=A;function R(k){return(C,D,N)=>{let L=0,B=!1,I={beginUpdate(){L++},endUpdate(){L--,L===0&&(k.reportChanges(),B&&(B=!1,C.call(D)))},handlePossibleChange(){},handleChange(){B=!0}};k.addObserver(I),k.reportChanges();let M={dispose(){k.removeObserver(I)}};return N instanceof Ts?N.add(M):Array.isArray(N)&&N.push(M),M}}t.fromObservableLight=R})(ut||={});var qo=class Go{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${Go._idPool++}`,Go.all.add(this)}start(e){this._stopWatch=new YS,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}}};qo.all=new Set,qo._idPool=0;var XS=qo,JS=-1,mf=class pf{constructor(e,s,i=(pf._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 r=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,r+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 h=new e2(l,o);this._errorHandler(h)}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,r]of this._stacks)(!e||s<r)&&(e=[i,r],s=r);return e}};mf._idPool=1;var ZS=mf,QS=class gf{constructor(e){this.value=e}static create(){let e=new Error;return new gf(e.stack??"")}print(){console.warn(this.value.split(`
|
|
492
|
-
`).slice(2).join(`
|
|
493
|
-
`))}},e2=class extends Error{constructor(t,e){super(t),this.name="ListenerLeakError",this.stack=e}},t2=class extends Error{constructor(t,e){super(t),this.name="ListenerRefusalError",this.stack=e}},s2=0,oo=class{constructor(t){this.value=t,this.id=s2++}},i2=2,r2,ce=class{constructor(t){this._size=0,this._options=t,this._leakageMon=this._options?.leakWarningThreshold?new ZS(t?.onListenerError??Wr,this._options?.leakWarningThreshold??JS):void 0,this._perfMon=this._options?._profName?new XS(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],h=new t2(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||Wr)(h),we.None}if(this._disposed)return we.None;e&&(t=t.bind(e));let i=new oo(t),r;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=QS.create(),r=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof oo?(this._deliveryQueue??=new n2,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._size++;let o=$e(()=>{r?.(),this._removeListener(i)});return s instanceof Ts?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*i2<=e.length){let r=0;for(let o=0;o<e.length;o++)e[o]?e[r++]=e[o]:i&&(this._deliveryQueue.end--,r<this._deliveryQueue.i&&this._deliveryQueue.i--);e.length=r}}_deliver(t,e){if(!t)return;let s=this._options?.onListenerError||Wr;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 oo)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}},n2=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}},Yo=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new ce,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new ce,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}};Yo.INSTANCE=new Yo;var Sl=Yo;function o2(t,e,s){typeof e=="string"&&(e=t.matchMedia(e)),e.addEventListener("change",s)}Sl.INSTANCE.onDidChangeZoomLevel;function a2(t){return Sl.INSTANCE.getZoomFactor(t)}Sl.INSTANCE.onDidChangeFullscreen;var Pi=typeof navigator=="object"?navigator.userAgent:"",Xo=Pi.indexOf("Firefox")>=0,l2=Pi.indexOf("AppleWebKit")>=0,wl=Pi.indexOf("Chrome")>=0,c2=!wl&&Pi.indexOf("Safari")>=0;Pi.indexOf("Electron/")>=0;Pi.indexOf("Android")>=0;var ao=!1;if(typeof xs.matchMedia=="function"){let t=xs.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=xs.matchMedia("(display-mode: fullscreen)");ao=t.matches,o2(xs,t,({matches:s})=>{ao&&e.matches||(ao=s)})}var ci="en",Jo=!1,Zo=!1,Ur=!1,_f=!1,Lr,Kr=ci,Dc=ci,h2,vs,Ws=globalThis,Rt;typeof Ws.vscode<"u"&&typeof Ws.vscode.process<"u"?Rt=Ws.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Rt=process);var d2=typeof Rt?.versions?.electron=="string",u2=d2&&Rt?.type==="renderer";if(typeof Rt=="object"){Jo=Rt.platform==="win32",Zo=Rt.platform==="darwin",Ur=Rt.platform==="linux",Ur&&Rt.env.SNAP&&Rt.env.SNAP_REVISION,Rt.env.CI||Rt.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Lr=ci,Kr=ci;let t=Rt.env.VSCODE_NLS_CONFIG;if(t)try{let e=JSON.parse(t);Lr=e.userLocale,Dc=e.osLocale,Kr=e.resolvedLanguage||ci,h2=e.languagePack?.translationsConfigFile}catch{}_f=!0}else typeof navigator=="object"&&!u2?(vs=navigator.userAgent,Jo=vs.indexOf("Windows")>=0,Zo=vs.indexOf("Macintosh")>=0,(vs.indexOf("Macintosh")>=0||vs.indexOf("iPad")>=0||vs.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Ur=vs.indexOf("Linux")>=0,vs?.indexOf("Mobi")>=0,Kr=globalThis._VSCODE_NLS_LANGUAGE||ci,Lr=navigator.language.toLowerCase(),Dc=Lr):console.error("Unable to resolve platform.");var vf=Jo,cs=Zo,f2=Ur,Ic=_f,hs=vs,Cs=Kr,m2;(t=>{function e(){return Cs}t.value=e;function s(){return Cs.length===2?Cs==="en":Cs.length>=3?Cs[0]==="e"&&Cs[1]==="n"&&Cs[2]==="-":!1}t.isDefaultVariant=s;function i(){return Cs==="en"}t.isDefault=i})(m2||={});var p2=typeof Ws.postMessage=="function"&&!Ws.importScripts;(()=>{if(p2){let t=[];Ws.addEventListener("message",s=>{if(s.data&&s.data.vscodeScheduleAsyncWork)for(let i=0,r=t.length;i<r;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}),Ws.postMessage({vscodeScheduleAsyncWork:i},"*")}}return t=>setTimeout(t)})();var g2=!!(hs&&hs.indexOf("Chrome")>=0);hs&&hs.indexOf("Firefox")>=0;!g2&&hs&&hs.indexOf("Safari")>=0;hs&&hs.indexOf("Edg/")>=0;hs&&hs.indexOf("Android")>=0;var oi=typeof navigator=="object"?navigator:{};Ic||document.queryCommandSupported&&document.queryCommandSupported("copy")||oi&&oi.clipboard&&oi.clipboard.writeText,Ic||oi&&oi.clipboard&&oi.clipboard.readText;var Cl=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}},lo=new Cl,Lc=new Cl,Bc=new Cl,_2=new Array(230),xf;(t=>{function e(l){return lo.keyCodeToStr(l)}t.toString=e;function s(l){return lo.strToKeyCode(l)}t.fromString=s;function i(l){return Lc.keyCodeToStr(l)}t.toUserSettingsUS=i;function r(l){return Bc.keyCodeToStr(l)}t.toUserSettingsGeneral=r;function o(l){return Lc.strToKeyCode(l)||Bc.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 lo.keyCodeToStr(l)}t.toElectronAccelerator=a})(xf||={});var v2=class bf{constructor(e,s,i,r,o){this.ctrlKey=e,this.shiftKey=s,this.altKey=i,this.metaKey=r,this.keyCode=o}equals(e){return e instanceof bf&&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",r=this.metaKey?"1":"0";return`K${e}${s}${i}${r}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new x2([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},x2=class{constructor(t){if(t.length===0)throw US("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 b2(t){if(t.charCode){let s=String.fromCharCode(t.charCode).toUpperCase();return xf.fromString(s)}let e=t.keyCode;if(e===3)return 7;if(Xo)switch(e){case 59:return 85;case 60:if(f2)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(cs)return 57;break}else if(l2&&(cs&&e===93||!cs&&e===92))return 57;return _2[e]||0}var y2=cs?256:2048,S2=512,w2=1024,C2=cs?2048:256,Mc=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=b2(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|=y2),this.altKey&&(e|=S2),this.shiftKey&&(e|=w2),this.metaKey&&(e|=C2),e|=t,e}_computeKeyCodeChord(){let t=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode),new v2(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,t)}},Oc=new WeakMap;function k2(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 j2=class{static getSameOriginWindowChain(t){let e=Oc.get(t);if(!e){e=[],Oc.set(t,e);let s=t,i;do i=k2(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,r=this.getSameOriginWindowChain(t);for(let o of r){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}}},Br=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=j2.getPositionOfChildWindowRelativeToAncestorWindow(t,e.view);this.posx-=s.left,this.posy-=s.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},$c=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(wl){let r=navigator.userAgent.match(/Chrome\/(\d+)/);i=(r?parseInt(r[1]):123)<=122}if(t){let r=t,o=t,a=t.view?.devicePixelRatio||1;if(typeof r.wheelDeltaY<"u")i?this.deltaY=r.wheelDeltaY/(120*a):this.deltaY=r.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?Xo&&!cs?this.deltaY=-t.deltaY/3:this.deltaY=-t.deltaY:this.deltaY=-t.deltaY/40}if(typeof r.wheelDeltaX<"u")c2&&vf?this.deltaX=-(r.wheelDeltaX/120):i?this.deltaX=r.wheelDeltaX/(120*a):this.deltaX=r.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?Xo&&!cs?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()}},yf=Object.freeze(function(t,e){let s=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(s)}}}),N2;(t=>{function e(s){return s===t.None||s===t.Cancelled||s instanceof E2?!0:!s||typeof s!="object"?!1:typeof s.isCancellationRequested=="boolean"&&typeof s.onCancellationRequested=="function"}t.isCancellationToken=e,t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ut.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:yf})})(N2||={});var E2=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?yf:(this._emitter||(this._emitter=new ce),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},kl=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 Uo("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},e)}setIfNotSet(t,e){if(this._isDisposed)throw new Uo("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},e))}},T2=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 Uo("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let i=s.setInterval(()=>{t()},e);this.disposable=$e(()=>{s.clearInterval(i),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},P2;(t=>{async function e(i){let r,o=await Promise.all(i.map(a=>a.then(l=>l,l=>{r||(r=l)})));if(typeof r<"u")throw r;return o}t.settled=e;function s(i){return new Promise(async(r,o)=>{try{await i(r,o)}catch(a){o(a)}})}t.withAsyncBody=s})(P2||={});var zc=class zt{static fromArray(e){return new zt(s=>{s.emitMany(e)})}static fromPromise(e){return new zt(async s=>{s.emitMany(await e)})}static fromPromises(e){return new zt(async s=>{await Promise.all(e.map(async i=>s.emitOne(await i)))})}static merge(e){return new zt(async s=>{await Promise.all(e.map(async i=>{for await(let r of i)s.emitOne(r)}))})}constructor(e,s){this._state=0,this._results=[],this._error=null,this._onReturn=s,this._onStateChanged=new ce,queueMicrotask(async()=>{let i={emitOne:r=>this.emitOne(r),emitMany:r=>this.emitMany(r),reject:r=>this.reject(r)};try{await Promise.resolve(e(i)),this.resolve()}catch(r){this.reject(r)}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 ut.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,s){return new zt(async i=>{for await(let r of e)i.emitOne(s(r))})}map(e){return zt.map(this,e)}static filter(e,s){return new zt(async i=>{for await(let r of e)s(r)&&i.emitOne(r)})}filter(e){return zt.filter(this,e)}static coalesce(e){return zt.filter(e,s=>!!s)}coalesce(){return zt.coalesce(this)}static async toPromise(e){let s=[];for await(let i of e)s.push(i);return s}toPromise(){return zt.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())}};zc.EMPTY=zc.fromArray([]);var{getWindow:ns,getWindowId:A2,onDidRegisterWindow:R2}=(function(){let t=new Map,e={window:xs,disposables:new Ts};t.set(xs.vscodeWindowId,e);let s=new ce,i=new ce,r=new ce;function o(a,l){return(typeof a=="number"?t.get(a):void 0)??(l?e:void 0)}return{onDidRegisterWindow:s.event,onWillUnregisterWindow:r.event,onDidUnregisterWindow:i.event,registerWindow(a){if(t.has(a.vscodeWindowId))return we.None;let l=new Ts,h={window:a,disposables:l.add(new Ts)};return t.set(a.vscodeWindowId,h),l.add($e(()=>{t.delete(a.vscodeWindowId),i.fire(a)})),l.add(be(a,rt.BEFORE_UNLOAD,()=>{r.fire(a)})),s.fire(h),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 h=a;return h?.view?h.view.window:xs},getDocument(a){return ns(a).document}}})(),D2=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 be(t,e,s,i){return new D2(t,e,s,i)}var Fc=function(t,e,s,i){return be(t,e,s,i)},jl,I2=class extends T2{constructor(t){super(),this.defaultTarget=t&&ns(t)}cancelAndSet(t,e,s){return super.cancelAndSet(t,e,s??this.defaultTarget)}},Hc=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){Wr(t)}}static sort(t,e){return e.priority-t.priority}};(function(){let t=new Map,e=new Map,s=new Map,i=new Map,r=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(Hc.sort),a.shift().execute();i.set(o,!1)};jl=(o,a,l=0)=>{let h=A2(o),c=new Hc(a,l),d=t.get(h);return d||(d=[],t.set(h,d)),d.push(c),s.get(h)||(s.set(h,!0),o.requestAnimationFrame(()=>r(h))),c}})();function L2(t){let e=t.getBoundingClientRect(),s=ns(t);return{left:e.left+s.scrollX,top:e.top+s.scrollY,width:e.width,height:e.height}}var rt={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"},B2=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 ar(t){return new B2(t)}var Sf=class{constructor(){this._hooks=new Ts,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,r){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=i,this._onStopCallback=r;let o=t;try{t.setPointerCapture(e),this._hooks.add($e(()=>{try{t.releasePointerCapture(e)}catch{}}))}catch{o=ns(t)}this._hooks.add(be(o,rt.POINTER_MOVE,a=>{if(a.buttons!==s){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(be(o,rt.POINTER_UP,a=>this.stopMonitoring(!0)))}};function M2(t,e,s){let i=null,r=null;if(typeof s.value=="function"?(i="value",r=s.value,r.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof s.get=="function"&&(i="get",r=s.get),!r)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:r.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 Xi=class ft extends we{constructor(){super(),this.dispatched=!1,this.targets=new Rc,this.ignoreTargets=new Rc,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(ut.runAndSubscribe(R2,({window:e,disposables:s})=>{s.add(be(e.document,"touchstart",i=>this.onTouchStart(i),{passive:!1})),s.add(be(e.document,"touchend",i=>this.onTouchEnd(e,i))),s.add(be(e.document,"touchmove",i=>this.onTouchMove(i),{passive:!1}))},{window:xs,disposables:this._store}))}static addTarget(e){if(!ft.isTouchDevice())return we.None;ft.INSTANCE||(ft.INSTANCE=new ft);let s=ft.INSTANCE.targets.push(e);return $e(s)}static ignoreTarget(e){if(!ft.isTouchDevice())return we.None;ft.INSTANCE||(ft.INSTANCE=new ft);let s=ft.INSTANCE.ignoreTargets.push(e);return $e(s)}static isTouchDevice(){return"ontouchstart"in xs||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,r=e.targetTouches.length;i<r;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(),r=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 h=this.activeTouches[l.identifier],c=Date.now()-h.initialTimeStamp;if(c<ft.HOLD_DELAY&&Math.abs(h.initialPageX-Pt(h.rollingPageX))<30&&Math.abs(h.initialPageY-Pt(h.rollingPageY))<30){let d=this.newGestureEvent(is.Tap,h.initialTarget);d.pageX=Pt(h.rollingPageX),d.pageY=Pt(h.rollingPageY),this.dispatchEvent(d)}else if(c>=ft.HOLD_DELAY&&Math.abs(h.initialPageX-Pt(h.rollingPageX))<30&&Math.abs(h.initialPageY-Pt(h.rollingPageY))<30){let d=this.newGestureEvent(is.Contextmenu,h.initialTarget);d.pageX=Pt(h.rollingPageX),d.pageY=Pt(h.rollingPageY),this.dispatchEvent(d)}else if(r===1){let d=Pt(h.rollingPageX),u=Pt(h.rollingPageY),f=Pt(h.rollingTimestamps)-h.rollingTimestamps[0],m=d-h.rollingPageX[0],p=u-h.rollingPageY[0],g=[...this.targets].filter(v=>h.initialTarget instanceof Node&&v.contains(h.initialTarget));this.inertia(e,g,i,Math.abs(m)/f,m>0?1:-1,d,Math.abs(p)/f,p>0?1:-1,u)}this.dispatchEvent(this.newGestureEvent(is.End,h.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>ft.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 r=0,o=e.initialTarget;for(;o&&o!==i;)r++,o=o.parentElement;s.push([r,i])}s.sort((i,r)=>i[0]-r[0]);for(let[i,r]of s)r.dispatchEvent(e),this.dispatched=!0}}inertia(e,s,i,r,o,a,l,h,c){this.handle=jl(e,()=>{let d=Date.now(),u=d-i,f=0,m=0,p=!0;r+=ft.SCROLL_FRICTION*u,l+=ft.SCROLL_FRICTION*u,r>0&&(p=!1,f=o*r*u),l>0&&(p=!1,m=h*l*u);let g=this.newGestureEvent(is.Change);g.translationX=f,g.translationY=m,s.forEach(v=>v.dispatchEvent(g)),p||this.inertia(e,s,d,r,o,a+f,l,h,c+m)})}onTouchMove(e){let s=Date.now();for(let i=0,r=e.changedTouches.length;i<r;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-Pt(a.rollingPageX),l.translationY=o.pageY-Pt(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)}};Xi.SCROLL_FRICTION=-.005,Xi.HOLD_DELAY=700,Xi.CLEAR_TAP_COUNT_TIME=400,Ve([M2],Xi,"isTouchDevice",1);var O2=Xi,Nl=class extends we{onclick(t,e){this._register(be(t,rt.CLICK,s=>e(new Br(ns(t),s))))}onmousedown(t,e){this._register(be(t,rt.MOUSE_DOWN,s=>e(new Br(ns(t),s))))}onmouseover(t,e){this._register(be(t,rt.MOUSE_OVER,s=>e(new Br(ns(t),s))))}onmouseleave(t,e){this._register(be(t,rt.MOUSE_LEAVE,s=>e(new Br(ns(t),s))))}onkeydown(t,e){this._register(be(t,rt.KEY_DOWN,s=>e(new Mc(s))))}onkeyup(t,e){this._register(be(t,rt.KEY_UP,s=>e(new Mc(s))))}oninput(t,e){this._register(be(t,rt.INPUT,e))}onblur(t,e){this._register(be(t,rt.BLUR,e))}onfocus(t,e){this._register(be(t,rt.FOCUS,e))}onchange(t,e){this._register(be(t,rt.CHANGE,e))}ignoreGesture(t){return O2.ignoreTarget(t)}},Wc=11,$2=class extends Nl{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=Wc+"px",this.domNode.style.height=Wc+"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(Fc(this.bgDomNode,rt.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._register(Fc(this.domNode,rt.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._pointerdownRepeatTimer=this._register(new I2),this._pointerdownScheduleRepeatTimer=this._register(new kl)}_arrowPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,ns(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()}},z2=class Qo{constructor(e,s,i,r,o,a,l){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(s=s|0,i=i|0,r=r|0,o=o|0,a=a|0,l=l|0),this.rawScrollLeft=r,this.rawScrollTop=l,s<0&&(s=0),r+s>i&&(r=i-s),r<0&&(r=0),o<0&&(o=0),l+o>a&&(l=a-o),l<0&&(l=0),this.width=s,this.scrollWidth=i,this.scrollLeft=r,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 Qo(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 Qo(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,r=this.scrollWidth!==e.scrollWidth,o=this.scrollLeft!==e.scrollLeft,a=this.height!==e.height,l=this.scrollHeight!==e.scrollHeight,h=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:r,scrollLeftChanged:o,heightChanged:a,scrollHeightChanged:l,scrollTopChanged:h}}},F2=class extends we{constructor(t){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._smoothScrollDuration=t.smoothScrollDuration,this._scheduleAtNextAnimationFrame=t.scheduleAtNextAnimationFrame,this._state=new z2(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 Kc(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=Kc.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)))}},Uc=class{constructor(t,e,s){this.scrollLeft=t,this.scrollTop=e,this.isDone=s}};function co(t,e){let s=e-t;return function(i){return t+s*U2(i)}}function H2(t,e,s){return function(i){return i<s?t(i/s):e((i-s)/(1-s))}}var Kc=class ea{constructor(e,s,i,r){this.from=e,this.to=s,this.duration=r,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 r,o;return e<s?(r=e+.75*i,o=s-.75*i):(r=e-.75*i,o=s+.75*i),H2(co(e,r),co(o,s),.33)}return co(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),r=this.scrollTop(s);return new Uc(i,r,!1)}return new Uc(this.to.scrollLeft,this.to.scrollTop,!0)}combine(e,s,i){return ea.start(e,s,i)}static start(e,s,i){i=i+10;let r=Date.now()-10;return new ea(e,s,r,i)}};function W2(t){return Math.pow(t,3)}function U2(t){return 1-W2(1-t)}var K2=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 kl)}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":"")))}},V2=140,wf=class extends Nl{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 K2(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=ar(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(be(this.domNode.domNode,rt.POINTER_DOWN,e=>this._domNodePointerDown(e)))}_createArrow(t){let e=this._register(new $2(t));this.domNode.domNode.appendChild(e.bgDomNode),this.domNode.domNode.appendChild(e.domNode)}_createSlider(t,e,s,i){this.slider=ar(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(be(this.slider.domNode,rt.POINTER_DOWN,r=>{r.button===0&&(r.preventDefault(),this._sliderPointerDown(r))})),this.onclick(this.slider.domNode,r=>{r.leftButton&&r.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(),r=this._sliderPointerPosition(t);s<=r&&r<=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 r=L2(this.domNode.domNode);e=t.pageX-r.left,s=t.pageY-r.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,r=>{let o=this._sliderOrthogonalPointerPosition(r),a=Math.abs(o-s);if(vf&&a>V2){this._setDesiredScrollPositionNow(i.getScrollPosition());return}let l=this._sliderPointerPosition(r)-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()}},Cf=class ta{constructor(e,s,i,r,o,a){this._scrollbarSize=Math.round(s),this._oppositeScrollbarSize=Math.round(i),this._arrowSize=Math.round(e),this._visibleSize=r,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 ta(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,r,o){let a=Math.max(0,i-e),l=Math.max(0,a-2*s),h=r>0&&r>i;if(!h)return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(l),computedSliderRatio:0,computedSliderPosition:0};let c=Math.round(Math.max(20,Math.floor(i*l/r))),d=(l-c)/(r-i),u=o*d;return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(c),computedSliderRatio:d,computedSliderPosition:Math.round(u)}}_refreshComputedValues(){let e=ta._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)}},q2=class extends wf{constructor(t,e,s){let i=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new Cf(e.horizontalHasArrows?e.arrowSize:0,e.horizontal===2?0:e.horizontalScrollbarSize,e.vertical===2?0:e.verticalScrollbarSize,i.width,i.scrollWidth,r.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}},G2=class extends wf{constructor(t,e,s){let i=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:s,scrollbarState:new Cf(e.verticalHasArrows?e.arrowSize:0,e.vertical===2?0:e.verticalScrollbarSize,0,i.height,i.scrollHeight,r.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}},Y2=500,Vc=50,X2=class{constructor(t,e,s){this.timestamp=t,this.deltaX=e,this.deltaY=s,this.score=0}},sa=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,r=this._rear;do{let o=r===this._front?e:Math.pow(2,-i);if(e-=o,s+=this._memory[r].score*o,r===this._front)break;r=(this._capacity+r-1)%this._capacity,i++}while(!0);return s<=.5}acceptStandardWheelEvent(e){if(wl){let s=ns(e.browserEvent),i=a2(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 r=null,o=new X2(e,s,i);this._front===-1&&this._rear===-1?(this._memory[0]=o,this._front=0,this._rear=0):(r=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,r)}_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 r=Math.abs(e.deltaX),o=Math.abs(e.deltaY),a=Math.abs(s.deltaX),l=Math.abs(s.deltaY),h=Math.max(Math.min(r,a),1),c=Math.max(Math.min(o,l),1),d=Math.max(r,a),u=Math.max(o,l);d%h===0&&u%c===0&&(i-=.5)}return Math.min(Math.max(i,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};sa.INSTANCE=new sa;var J2=sa,Z2=class extends Nl{constructor(t,e,s){super(),this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new ce),this.onWillScroll=this._onWillScroll.event,this._options=ew(e),this._scrollable=s,this._register(this._scrollable.onScroll(r=>{this._onWillScroll.fire(r),this._onDidScroll(r),this._onScroll.fire(r)}));let i={onMouseWheel:r=>this._onMouseWheel(r),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new G2(this._scrollable,this._options,i)),this._horizontalScrollbar=this._register(new q2(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=ar(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=ar(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=ar(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,r=>this._onMouseOver(r)),this.onmouseleave(this._listenOnDomNode,r=>this._onMouseLeave(r)),this._hideTimeout=this._register(new kl),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=Vs(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,cs&&(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 $c(t))}_setListeningToMouseWheel(t){if(this._mouseWheelToDispose.length>0!==t&&(this._mouseWheelToDispose=Vs(this._mouseWheelToDispose),t)){let e=s=>{this._onMouseWheel(new $c(s))};this._mouseWheelToDispose.push(be(this._listenOnDomNode,rt.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(t){if(t.browserEvent?.defaultPrevented)return;let e=J2.INSTANCE;e.acceptStandardWheelEvent(t);let s=!1;if(t.deltaY||t.deltaX){let r=t.deltaY*this._options.mouseWheelScrollSensitivity,o=t.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&o+r===0?o=r=0:Math.abs(r)>=Math.abs(o)?o=0:r=0),this._options.flipAxes&&([r,o]=[o,r]);let a=!cs&&t.browserEvent&&t.browserEvent.shiftKey;(this._options.scrollYToX||a)&&!o&&(o=r,r=0),t.browserEvent&&t.browserEvent.altKey&&(o=o*this._options.fastScrollSensitivity,r=r*this._options.fastScrollSensitivity);let l=this._scrollable.getFutureScrollPosition(),h={};if(r){let c=Vc*r,d=l.scrollTop-(c<0?Math.floor(c):Math.ceil(c));this._verticalScrollbar.writeScrollPosition(h,d)}if(o){let c=Vc*o,d=l.scrollLeft-(c<0?Math.floor(c):Math.ceil(c));this._horizontalScrollbar.writeScrollPosition(h,d)}h=this._scrollable.validateScrollPosition(h),(l.scrollLeft!==h.scrollLeft||l.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&e.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),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":"",r=e?" top":"",o=s||e?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${i}`),this._topShadowDomNode.setClassName(`shadow${r}`),this._topLeftShadowDomNode.setClassName(`shadow${o}${r}${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(),Y2)}},Q2=class extends Z2{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 ew(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,cs&&(e.className+=" mac"),e}var ia=class extends we{constructor(t,e,s,i,r,o,a,l){super(),this._bufferService=s,this._optionsService=a,this._renderService=l,this._onRequestScrollLines=this._register(new ce),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let h=this._register(new F2({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:c=>jl(i.window,c)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{h.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new Q2(e,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},h)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(r.onProtocolChange(c=>{this._scrollableElement.updateOptions({handleMouseWheel:!(c&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(ut.runAndSubscribe(o.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=o.colors.background.css})),t.appendChild(this._scrollableElement.getDomNode()),this._register($e(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=i.mainDocument.createElement("style"),e.appendChild(this._styleElement),this._register($e(()=>this._styleElement.remove())),this._register(ut.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(`
|
|
494
|
-
`)})),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(c=>this._handleScroll(c)))}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}};ia=Ve([ue(2,xt),ue(3,Ss),ue(4,rf),ue(5,Ti),ue(6,bt),ue(7,ws)],ia);var ra=class extends we{constructor(t,e,s,i,r){super(),this._screenElement=t,this._bufferService=e,this._coreBrowserService=s,this._decorationService=i,this._renderService=r,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($e(()=>{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()}};ra=Ve([ue(1,xt),ue(2,Ss),ue(3,jr),ue(4,ws)],ra);var tw=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},ks={full:0,left:0,center:0,right:0},Oi={full:0,left:0,center:0,right:0},vn=class extends we{constructor(t,e,s,i,r,o,a,l){super(),this._viewportElement=t,this._screenElement=e,this._bufferService=s,this._decorationService=i,this._renderService=r,this._optionsService=o,this._themeService=a,this._coreBrowserService=l,this._colorZoneStore=new tw,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($e(()=>this._canvas?.remove()));let h=this._canvas.getContext("2d");if(h)this._ctx=h;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);ks.full=this._canvas.width,ks.left=t,ks.center=e,ks.right=t,this._refreshDrawHeightConstants(),Oi.full=1,Oi.left=1,Oi.center=1+ks.left,Oi.right=1+ks.left+ks.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(Oi[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-ts[t.position||"full"]/2),ks[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}))}};vn=Ve([ue(2,xt),ue(3,jr),ue(4,ws),ue(5,bt),ue(6,Ti),ue(7,Ss)],vn);var re;(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=`
|
|
495
|
-
`,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=""))(re||={});var Vr;(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=""))(Vr||={});var kf;(t=>t.ST=`${re.ESC}\\`)(kf||={});var na=class{constructor(t,e,s,i,r,o){this._textarea=t,this._compositionView=e,this._bufferService=s,this._optionsService=i,this._coreService=r,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(`${re.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,r=e*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=r+"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=r+"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)}}};na=Ve([ue(2,xt),ue(3,bt),ue(4,si),ue(5,ws)],na);var nt=0,ot=0,at=0,Ke=0,qc={css:"#00000000",rgba:0},Je;(t=>{function e(r,o,a,l){return l!==void 0?`#${Ls(r)}${Ls(o)}${Ls(a)}${Ls(l)}`:`#${Ls(r)}${Ls(o)}${Ls(a)}`}t.toCss=e;function s(r,o,a,l=255){return(r<<24|o<<16|a<<8|l)>>>0}t.toRgba=s;function i(r,o,a,l){return{css:t.toCss(r,o,a,l),rgba:t.toRgba(r,o,a,l)}}t.toColor=i})(Je||={});var Oe;(t=>{function e(h,c){if(Ke=(c.rgba&255)/255,Ke===1)return{css:c.css,rgba:c.rgba};let d=c.rgba>>24&255,u=c.rgba>>16&255,f=c.rgba>>8&255,m=h.rgba>>24&255,p=h.rgba>>16&255,g=h.rgba>>8&255;nt=m+Math.round((d-m)*Ke),ot=p+Math.round((u-p)*Ke),at=g+Math.round((f-g)*Ke);let v=Je.toCss(nt,ot,at),b=Je.toRgba(nt,ot,at);return{css:v,rgba:b}}t.blend=e;function s(h){return(h.rgba&255)===255}t.isOpaque=s;function i(h,c,d){let u=qr.ensureContrastRatio(h.rgba,c.rgba,d);if(u)return Je.toColor(u>>24&255,u>>16&255,u>>8&255)}t.ensureContrastRatio=i;function r(h){let c=(h.rgba|255)>>>0;return[nt,ot,at]=qr.toChannels(c),{css:Je.toCss(nt,ot,at),rgba:c}}t.opaque=r;function o(h,c){return Ke=Math.round(c*255),[nt,ot,at]=qr.toChannels(h.rgba),{css:Je.toCss(nt,ot,at,Ke),rgba:Je.toRgba(nt,ot,at,Ke)}}t.opacity=o;function a(h,c){return Ke=h.rgba&255,o(h,Ke*c/255)}t.multiplyOpacity=a;function l(h){return[h.rgba>>24&255,h.rgba>>16&255,h.rgba>>8&255]}t.toColorRGB=l})(Oe||={});var He;(t=>{let e,s;try{let r=document.createElement("canvas");r.width=1,r.height=1;let o=r.getContext("2d",{willReadFrequently:!0});o&&(e=o,e.globalCompositeOperation="copy",s=e.createLinearGradient(0,0,1,1))}catch{}function i(r){if(r.match(/#[\da-f]{3,8}/i))switch(r.length){case 4:return nt=parseInt(r.slice(1,2).repeat(2),16),ot=parseInt(r.slice(2,3).repeat(2),16),at=parseInt(r.slice(3,4).repeat(2),16),Je.toColor(nt,ot,at);case 5:return nt=parseInt(r.slice(1,2).repeat(2),16),ot=parseInt(r.slice(2,3).repeat(2),16),at=parseInt(r.slice(3,4).repeat(2),16),Ke=parseInt(r.slice(4,5).repeat(2),16),Je.toColor(nt,ot,at,Ke);case 7:return{css:r,rgba:(parseInt(r.slice(1),16)<<8|255)>>>0};case 9:return{css:r,rgba:parseInt(r.slice(1),16)>>>0}}let o=r.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 nt=parseInt(o[1]),ot=parseInt(o[2]),at=parseInt(o[3]),Ke=Math.round((o[5]===void 0?1:parseFloat(o[5]))*255),Je.toColor(nt,ot,at,Ke);if(!e||!s)throw new Error("css.toColor: Unsupported css format");if(e.fillStyle=s,e.fillStyle=r,typeof e.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(e.fillRect(0,0,1,1),[nt,ot,at,Ke]=e.getImageData(0,0,1,1).data,Ke!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:Je.toRgba(nt,ot,at,Ke),css:r}}t.toColor=i})(He||={});var gt;(t=>{function e(i){return s(i>>16&255,i>>8&255,i&255)}t.relativeLuminance=e;function s(i,r,o){let a=i/255,l=r/255,h=o/255,c=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),d=l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4),u=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4);return c*.2126+d*.7152+u*.0722}t.relativeLuminance2=s})(gt||={});var qr;(t=>{function e(a,l){if(Ke=(l&255)/255,Ke===1)return l;let h=l>>24&255,c=l>>16&255,d=l>>8&255,u=a>>24&255,f=a>>16&255,m=a>>8&255;return nt=u+Math.round((h-u)*Ke),ot=f+Math.round((c-f)*Ke),at=m+Math.round((d-m)*Ke),Je.toRgba(nt,ot,at)}t.blend=e;function s(a,l,h){let c=gt.relativeLuminance(a>>8),d=gt.relativeLuminance(l>>8);if(_s(c,d)<h){if(d<c){let m=i(a,l,h),p=_s(c,gt.relativeLuminance(m>>8));if(p<h){let g=r(a,l,h),v=_s(c,gt.relativeLuminance(g>>8));return p>v?m:g}return m}let u=r(a,l,h),f=_s(c,gt.relativeLuminance(u>>8));if(f<h){let m=i(a,l,h),p=_s(c,gt.relativeLuminance(m>>8));return f>p?u:m}return u}}t.ensureContrastRatio=s;function i(a,l,h){let c=a>>24&255,d=a>>16&255,u=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(gt.relativeLuminance2(f,m,p),gt.relativeLuminance2(c,d,u));for(;g<h&&(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(gt.relativeLuminance2(f,m,p),gt.relativeLuminance2(c,d,u));return(f<<24|m<<16|p<<8|255)>>>0}t.reduceLuminance=i;function r(a,l,h){let c=a>>24&255,d=a>>16&255,u=a>>8&255,f=l>>24&255,m=l>>16&255,p=l>>8&255,g=_s(gt.relativeLuminance2(f,m,p),gt.relativeLuminance2(c,d,u));for(;g<h&&(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(gt.relativeLuminance2(f,m,p),gt.relativeLuminance2(c,d,u));return(f<<24|m<<16|p<<8|255)>>>0}t.increaseLuminance=r;function o(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}t.toChannels=o})(qr||={});function Ls(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 sw=class extends kr{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()]}},xn=class{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Wt}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),r=0,o=0,a=0,l=e.getFg(0),h=e.getBg(0);for(let c=0;c<e.getTrimmedLength();c++)if(e.loadCell(c,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==l||this._workCell.bg!==h){if(c-r>1){let d=this._getJoinedRanges(i,a,o,e,r);for(let u=0;u<d.length;u++)s.push(d[u])}r=c,a=o,l=this._workCell.fg,h=this._workCell.bg}o+=this._workCell.getChars().length||Es.length}if(this._bufferService.cols-r>1){let c=this._getJoinedRanges(i,a,o,e,r);for(let d=0;d<c.length;d++)s.push(c[d])}return s}_getJoinedRanges(t,e,s,i,r){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 h=this._characterJoiners[l].handler(o);for(let c=0;c<h.length;c++)xn._mergeRanges(a,h[c])}catch(h){console.error(h)}return this._stringRangesToCellRanges(a,i,r),a}_stringRangesToCellRanges(t,e,s){let i=0,r=!1,o=0,a=t[i];if(a){for(let l=s;l<this._bufferService.cols;l++){let h=e.getWidth(l),c=e.getString(l).length||Es.length;if(h!==0){if(!r&&a[0]<=o&&(a[0]=l,r=!0),a[1]<=o){if(a[1]=l,a=t[++i],!a)break;a[0]<=o?(a[0]=l,r=!0):r=!1}o+=c}}a&&(a[1]=this._bufferService.cols)}}static _mergeRanges(t,e){let s=!1;for(let i=0;i<t.length;i++){let r=t[i];if(s){if(e[1]<=r[0])return t[i-1][1]=e[1],t;if(e[1]<=r[1])return t[i-1][1]=Math.max(e[1],r[1]),t.splice(i,1),t;t.splice(i,1),i--}else{if(e[1]<=r[0])return t.splice(i,0,e),t;if(e[1]<=r[1])return r[0]=Math.min(e[0],r[0]),t;e[0]<r[1]&&(r[0]=Math.min(e[0],r[0]),s=!0);continue}}return s?t[t.length-1][1]=e[1]:t.push(e),t}};xn=Ve([ue(0,xt)],xn);function iw(t){return 57508<=t&&t<=57558}function rw(t){return 9472<=t&&t<=9631}function nw(t){return iw(t)||rw(t)}function ow(){return{css:{canvas:Mr(),cell:Mr()},device:{canvas:Mr(),cell:Mr(),char:{width:0,height:0,left:0,top:0}}}}function Mr(){return{width:0,height:0}}var oa=class{constructor(t,e,s,i,r,o,a){this._document=t,this._characterJoinerService=e,this._optionsService=s,this._coreBrowserService=i,this._coreService=r,this._decorationService=o,this._themeService=a,this._workCell=new Wt,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(t,e,s){this._selectionStart=t,this._selectionEnd=e,this._columnSelectMode=s}createRow(t,e,s,i,r,o,a,l,h,c,d){let u=[],f=this._characterJoinerService.getJoinedCharacters(e),m=this._themeService.colors,p=t.getNoBgTrimmedLength();s&&p<o+1&&(p=o+1);let g,v=0,b="",x=0,_=0,y=0,S=0,w=!1,j=0,E=!1,T=0,A=0,R=[],k=c!==-1&&d!==-1;for(let C=0;C<p;C++){t.loadCell(C,this._workCell);let D=this._workCell.getWidth();if(D===0)continue;let N=!1,L=C>=A,B=C,I=this._workCell;if(f.length>0&&C===f[0][0]&&L){let ee=f.shift(),Q=this._isCellInSelection(ee[0],e);for(x=ee[0]+1;x<ee[1];x++)L&&=Q===this._isCellInSelection(x,e);L&&=!s||o<ee[0]||o>=ee[1],L?(N=!0,I=new sw(this._workCell,t.translateToString(!0,ee[0],ee[1]),ee[1]-ee[0]),B=ee[1]-1,D=I.getWidth()):A=ee[1]}let M=this._isCellInSelection(C,e),O=s&&C===o,F=k&&C>=c&&C<=d,z=!1;this._decorationService.forEachDecorationAtCell(C,e,void 0,ee=>{z=!0});let K=I.getChars()||Es;if(K===" "&&(I.isUnderline()||I.isOverline())&&(K=" "),T=D*l-h.get(K,I.isBold(),I.isItalic()),!g)g=this._document.createElement("span");else if(v&&(M&&E||!M&&!E&&I.bg===_)&&(M&&E&&m.selectionForeground||I.fg===y)&&I.extended.ext===S&&F===w&&T===j&&!O&&!N&&!z&&L){I.isInvisible()?b+=Es:b+=K,v++;continue}else v&&(g.textContent=b),g=this._document.createElement("span"),v=0,b="";if(_=I.bg,y=I.fg,S=I.extended.ext,w=F,j=T,E=M,N&&o>=C&&o<=B&&(o=C),!this._coreService.isCursorHidden&&O&&this._coreService.isCursorInitialized){if(R.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&R.push("xterm-cursor-blink"),R.push(i==="bar"?"xterm-cursor-bar":i==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(r)switch(r){case"outline":R.push("xterm-cursor-outline");break;case"block":R.push("xterm-cursor-block");break;case"bar":R.push("xterm-cursor-bar");break;case"underline":R.push("xterm-cursor-underline");break}}if(I.isBold()&&R.push("xterm-bold"),I.isItalic()&&R.push("xterm-italic"),I.isDim()&&R.push("xterm-dim"),I.isInvisible()?b=Es:b=I.getChars()||Es,I.isUnderline()&&(R.push(`xterm-underline-${I.extended.underlineStyle}`),b===" "&&(b=" "),!I.isUnderlineColorDefault()))if(I.isUnderlineColorRGB())g.style.textDecorationColor=`rgb(${kr.toColorRGB(I.getUnderlineColor()).join(",")})`;else{let ee=I.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&I.isBold()&&ee<8&&(ee+=8),g.style.textDecorationColor=m.ansi[ee].css}I.isOverline()&&(R.push("xterm-overline"),b===" "&&(b=" ")),I.isStrikethrough()&&R.push("xterm-strikethrough"),F&&(g.style.textDecoration="underline");let G=I.getFgColor(),X=I.getFgColorMode(),ie=I.getBgColor(),W=I.getBgColorMode(),Y=!!I.isInverse();if(Y){let ee=G;G=ie,ie=ee;let Q=X;X=W,W=Q}let ne,$,Z=!1;this._decorationService.forEachDecorationAtCell(C,e,void 0,ee=>{ee.options.layer!=="top"&&Z||(ee.backgroundColorRGB&&(W=50331648,ie=ee.backgroundColorRGB.rgba>>8&16777215,ne=ee.backgroundColorRGB),ee.foregroundColorRGB&&(X=50331648,G=ee.foregroundColorRGB.rgba>>8&16777215,$=ee.foregroundColorRGB),Z=ee.options.layer==="top")}),!Z&&M&&(ne=this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque,ie=ne.rgba>>8&16777215,W=50331648,Z=!0,m.selectionForeground&&(X=50331648,G=m.selectionForeground.rgba>>8&16777215,$=m.selectionForeground)),Z&&R.push("xterm-decoration-top");let U;switch(W){case 16777216:case 33554432:U=m.ansi[ie],R.push(`xterm-bg-${ie}`);break;case 50331648:U=Je.toColor(ie>>16,ie>>8&255,ie&255),this._addStyle(g,`background-color:#${Gc((ie>>>0).toString(16),"0",6)}`);break;default:Y?(U=m.foreground,R.push("xterm-bg-257")):U=m.background}switch(ne||I.isDim()&&(ne=Oe.multiplyOpacity(U,.5)),X){case 16777216:case 33554432:I.isBold()&&G<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(G+=8),this._applyMinimumContrast(g,U,m.ansi[G],I,ne,void 0)||R.push(`xterm-fg-${G}`);break;case 50331648:let ee=Je.toColor(G>>16&255,G>>8&255,G&255);this._applyMinimumContrast(g,U,ee,I,ne,$)||this._addStyle(g,`color:#${Gc(G.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(g,U,m.foreground,I,ne,$)||Y&&R.push("xterm-fg-257")}R.length&&(g.className=R.join(" "),R.length=0),!O&&!N&&!z&&L?v++:g.textContent=b,T!==this.defaultSpacing&&(g.style.letterSpacing=`${T}px`),u.push(g),C=B}return g&&v&&(g.textContent=b),u}_applyMinimumContrast(t,e,s,i,r,o){if(this._optionsService.rawOptions.minimumContrastRatio===1||nw(i.getCode()))return!1;let a=this._getContrastCache(i),l;if(!r&&!o&&(l=a.getColor(e.rgba,s.rgba)),l===void 0){let h=this._optionsService.rawOptions.minimumContrastRatio/(i.isDim()?2:1);l=Oe.ensureContrastRatio(r||e,o||s,h),a.setColor((r||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]}};oa=Ve([ue(1,af),ue(2,bt),ue(3,Ss),ue(4,si),ue(5,jr),ue(6,Ti)],oa);function Gc(t,e,s){for(;t.length<s;)t=e+t;return t}var aw=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 r=t.createElement("span");r.classList.add("xterm-char-measure-element"),r.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,r,o],this._container.appendChild(s),this._container.appendChild(i),this._container.appendChild(r),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 r=t;e&&(r+="B"),s&&(r+="I");let o=this._holey.get(r);if(o===void 0){let a=0;e&&(a|=1),s&&(a|=2),o=this._measure(t,a),o>0&&this._holey.set(r,o)}return o}_measure(t,e){let s=this._measureElements[e];return s.textContent=t.repeat(32),s.offsetWidth/32}},lw=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 r=t.buffers.active.ydisp,o=e[1]-r,a=s[1]-r,l=Math.max(o,0),h=Math.min(a,t.rows-1);if(l>=t.rows||h<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=i,this.viewportStartRow=o,this.viewportEndRow=a,this.viewportCappedStartRow=l,this.viewportCappedEndRow=h,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 cw(){return new lw}var ho="xterm-dom-renderer-owner-",$t="xterm-rows",Or="xterm-fg-",Yc="xterm-bg-",$i="xterm-focus",$r="xterm-selection",hw=1,aa=class extends we{constructor(t,e,s,i,r,o,a,l,h,c,d,u,f,m){super(),this._terminal=t,this._document=e,this._element=s,this._screenElement=i,this._viewportElement=r,this._helperContainer=o,this._linkifier2=a,this._charSizeService=h,this._optionsService=c,this._bufferService=d,this._coreService=u,this._coreBrowserService=f,this._themeService=m,this._terminalClass=hw++,this._rowElements=[],this._selectionRenderModel=cw(),this.onRequestRedraw=this._register(new ce).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add($t),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($r),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=ow(),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(oa,document),this._element.classList.add(ho+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($e(()=>{this._element.classList.remove(ho+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new aw(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} .${$t} 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} .${$t} { 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} .${$t} .xterm-dim { color: ${Oe.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}`,r=`blink_block_${this._terminalClass}`;e+=`@keyframes ${s} { 50% { border-bottom-style: hidden; }}`,e+=`@keyframes ${i} { 50% { box-shadow: none; }}`,e+=`@keyframes ${r} { 0% { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css}; } 50% { background-color: inherit; color: ${t.cursor.css}; }}`,e+=`${this._terminalSelector} .${$t}.${$i} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${$t}.${$i} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${$t}.${$i} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${r} 1s step-end infinite;}${this._terminalSelector} .${$t} .xterm-cursor.xterm-cursor-block { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css};}${this._terminalSelector} .${$t} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${t.cursor.css} !important; color: ${t.cursorAccent.css} !important;}${this._terminalSelector} .${$t} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${t.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${$t} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${t.cursor.css} inset;}${this._terminalSelector} .${$t} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${t.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,e+=`${this._terminalSelector} .${$r} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${$r} div { position: absolute; background-color: ${t.selectionBackgroundOpaque.css};}${this._terminalSelector} .${$r} div { position: absolute; background-color: ${t.selectionInactiveBackgroundOpaque.css};}`;for(let[o,a]of t.ansi.entries())e+=`${this._terminalSelector} .${Or}${o} { color: ${a.css}; }${this._terminalSelector} .${Or}${o}.xterm-dim { color: ${Oe.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${Yc}${o} { background-color: ${a.css}; }`;e+=`${this._terminalSelector} .${Or}257 { color: ${Oe.opaque(t.background).css}; }${this._terminalSelector} .${Or}257.xterm-dim { color: ${Oe.multiplyOpacity(Oe.opaque(t.background),.5).css}; }${this._terminalSelector} .${Yc}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($i),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add($i),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,r=this._selectionRenderModel.viewportEndRow,o=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,l=this._document.createDocumentFragment();if(s){let h=t[0]>e[0];l.appendChild(this._createSelectionElement(o,h?e[0]:t[0],h?t[0]:e[0],a-o+1))}else{let h=i===o?t[0]:0,c=o===r?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(o,h,c));let d=a-o-1;if(l.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,d)),o!==a){let u=r===a?e[0]:this._bufferService.cols;l.appendChild(this._createSelectionElement(a,0,u))}}this._selectionContainer.appendChild(l)}_createSelectionElement(t,e,s,i=1){let r=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),r.style.height=`${i*this.dimensions.css.cell.height}px`,r.style.top=`${t*this.dimensions.css.cell.height}px`,r.style.left=`${o}px`,r.style.width=`${a}px`,r}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,r=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 h=t;h<=e;h++){let c=h+s.ydisp,d=this._rowElements[h],u=s.lines.get(c);if(!d||!u)break;d.replaceChildren(...this._rowFactory.createRow(u,c,c===i,a,l,r,o,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${ho}${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,r,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),r=Math.min(r,this._bufferService.cols);let l=this._bufferService.buffer,h=l.ybase+l.y,c=Math.min(l.x,r-1),d=this._optionsService.rawOptions.cursorBlink,u=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],v=l.lines.get(p);if(!g||!v)break;g.replaceChildren(...this._rowFactory.createRow(v,p,p===h,u,f,c,d,this.dimensions.css.cell.width,this._widthCache,o?m===s?t:0:-1,o?(m===i?e:r)-1:-1))}}};aa=Ve([ue(7,bl),ue(8,$n),ue(9,bt),ue(10,xt),ue(11,si),ue(12,Ss),ue(13,Ti)],aa);var la=class extends we{constructor(t,e,s){super(),this._optionsService=s,this.width=0,this.height=0,this._onCharSizeChange=this._register(new ce),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new uw(this._optionsService))}catch{this._measureStrategy=this._register(new dw(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())}};la=Ve([ue(2,bt)],la);var jf=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)}},dw=class extends jf{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}},uw=class extends jf{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}},fw=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 mw(this._window)),this._onDprChange=this._register(new ce),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new ce),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(i=>this._screenDprMonitor.setWindow(i))),this._register(ut.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(be(this._textarea,"focus",()=>this._isFocused=!0)),this._register(be(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}},mw=class extends we{constructor(t){super(),this._parentWindow=t,this._windowResizeListener=this._register(new _i),this._onDprChange=this._register(new ce),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register($e(()=>this.clearListener()))}setWindow(t){this._parentWindow=t,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=be(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)}},pw=class extends we{constructor(){super(),this.linkProviders=[],this._register($e(()=>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 El(t,e,s){let i=s.getBoundingClientRect(),r=t.getComputedStyle(s),o=parseInt(r.getPropertyValue("padding-left")),a=parseInt(r.getPropertyValue("padding-top"));return[e.clientX-i.left-o,e.clientY-i.top-a]}function gw(t,e,s,i,r,o,a,l,h){if(!o)return;let c=El(t,e,s);if(c)return c[0]=Math.ceil((c[0]+(h?a/2:0))/a),c[1]=Math.ceil(c[1]/l),c[0]=Math.min(Math.max(c[0],1),i+(h?1:0)),c[1]=Math.min(Math.max(c[1],1),r),c}var ca=class{constructor(t,e){this._renderService=t,this._charSizeService=e}getCoords(t,e,s,i,r){return gw(window,t,e,s,i,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,r)}getMouseReportCoords(t,e){let s=El(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])}}};ca=Ve([ue(0,ws),ue(1,$n)],ca);var _w=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=[]}},Nf={};NS(Nf,{getSafariVersion:()=>xw,isChromeOS:()=>Af,isFirefox:()=>Ef,isIpad:()=>bw,isIphone:()=>yw,isLegacyEdge:()=>vw,isLinux:()=>Tl,isMac:()=>bn,isNode:()=>zn,isSafari:()=>Tf,isWindows:()=>Pf});var zn=typeof process<"u"&&"title"in process,Nr=zn?"node":navigator.userAgent,Er=zn?"node":navigator.platform,Ef=Nr.includes("Firefox"),vw=Nr.includes("Edge"),Tf=/^((?!chrome|android).)*safari/i.test(Nr);function xw(){if(!Tf)return 0;let t=Nr.match(/Version\/(\d+)/);return t===null||t.length<2?0:parseInt(t[1])}var bn=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(Er),bw=Er==="iPad",yw=Er==="iPhone",Pf=["Windows","Win16","Win32","WinCE"].includes(Er),Tl=Er.indexOf("Linux")>=0,Af=/\bCrOS\b/.test(Nr),Rf=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(),r=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),r=t.timeRemaining(),s*1.5>r){i-e<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(i-e))}ms`),this._start();return}i=r}this.clear()}},Sw=class extends Rf{_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())}}},ww=class extends Rf{_requestCallback(t){return requestIdleCallback(t)}_cancelCallback(t){cancelIdleCallback(t)}},yn=!zn&&"requestIdleCallback"in window?ww:Sw,Cw=class{constructor(){this._queue=new yn}set(t){this._queue.clear(),this._queue.enqueue(t)}flush(){this._queue.flush()}},ha=class extends we{constructor(t,e,s,i,r,o,a,l,h){super(),this._rowCount=t,this._optionsService=s,this._charSizeService=i,this._coreService=r,this._coreBrowserService=l,this._renderer=this._register(new _i),this._pausedResizeTask=new Cw,this._observerDisposable=this._register(new _i),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 ce),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new ce),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new ce),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new ce),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new _w((c,d)=>this._renderRows(c,d),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new kw(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register($e(()=>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(h.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,e),this._register(this._coreBrowserService.onWindowChange(c=>this._registerIntersectionObserver(c,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=$e(()=>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()}};ha=Ve([ue(2,bt),ue(3,$n),ue(4,si),ue(5,jr),ue(6,xt),ue(7,Ss),ue(8,Ti)],ha);var kw=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 jw(t,e,s,i){let r=s.buffer.x,o=s.buffer.y;if(!s.buffer.hasScrollback)return Tw(r,o,t,e,s,i)+Fn(o,e,s,i)+Pw(r,o,t,e,s,i);let a;if(o===e)return a=r>t?"D":"C",gr(Math.abs(r-t),pr(a,i));a=o>e?"D":"C";let l=Math.abs(o-e),h=Ew(o>e?t:r,s)+(l-1)*s.cols+1+Nw(o>e?r:t);return gr(h,pr(a,i))}function Nw(t,e){return t-1}function Ew(t,e){return e.cols-t}function Tw(t,e,s,i,r,o){return Fn(e,i,r,o).length===0?"":gr(If(t,e,t,e-qs(e,r),!1,r).length,pr("D",o))}function Fn(t,e,s,i){let r=t-qs(t,s),o=e-qs(e,s),a=Math.abs(r-o)-Aw(t,e,s);return gr(a,pr(Df(t,e),i))}function Pw(t,e,s,i,r,o){let a;Fn(e,i,r,o).length>0?a=i-qs(i,r):a=e;let l=i,h=Rw(t,e,s,i,r,o);return gr(If(t,a,s,l,h==="C",r).length,pr(h,o))}function Aw(t,e,s){let i=0,r=t-qs(t,s),o=e-qs(e,s);for(let a=0;a<Math.abs(r-o);a++){let l=Df(t,e)==="A"?-1:1;s.buffer.lines.get(r+l*a)?.isWrapped&&i++}return i}function qs(t,e){let s=0,i=e.buffer.lines.get(t),r=i?.isWrapped;for(;r&&t>=0&&t<e.rows;)s++,i=e.buffer.lines.get(--t),r=i?.isWrapped;return s}function Rw(t,e,s,i,r,o){let a;return Fn(s,i,r,o).length>0?a=i-qs(i,r):a=e,t<s&&a<=i||t>=s&&a<i?"C":"D"}function Df(t,e){return t>e?"A":"B"}function If(t,e,s,i,r,o){let a=t,l=e,h="";for(;(a!==s||l!==i)&&l>=0&&l<o.buffer.lines.length;)a+=r?1:-1,r&&a>o.cols-1?(h+=o.buffer.translateBufferLineToString(l,!1,t,a),a=0,t=0,l++):!r&&a<0&&(h+=o.buffer.translateBufferLineToString(l,!1,0,t+1),a=o.cols-1,t=a,l--);return h+o.buffer.translateBufferLineToString(l,!1,t,a)}function pr(t,e){let s=e?"O":"[";return re.ESC+s+t}function gr(t,e){t=Math.floor(t);let s="";for(let i=0;i<t;i++)s+=e;return s}var Dw=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 Xc(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 uo=50,Iw=15,Lw=50,Bw=500,Mw=" ",Ow=new RegExp(Mw,"g"),da=class extends we{constructor(t,e,s,i,r,o,a,l,h){super(),this._element=t,this._screenElement=e,this._linkifier=s,this._bufferService=i,this._coreService=r,this._mouseService=o,this._optionsService=a,this._renderService=l,this._coreBrowserService=h,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Wt,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new ce),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new ce),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new ce),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new ce),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=c=>this._handleMouseMove(c),this._mouseUpListener=c=>this._handleMouseUp(c),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(c=>this._handleTrim(c)),this._register(this._bufferService.buffers.onBufferActivate(c=>this._handleBufferActivate(c))),this.enable(),this._model=new Dw(this._bufferService),this._activeSelectionMode=0,this._register($e(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(c=>{c.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 r=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,r,o);i.push(l)}}else{let r=t[1]===e[1]?e[0]:void 0;i.push(s.translateBufferLineToString(t[1],!0,t[0],r));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(r=>r.replace(Ow," ")).join(Pf?`\r
|
|
496
|
-
`:`
|
|
497
|
-
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(t){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),Tl&&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=Xc(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=El(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,-uo),uo),e/=uo,e/Math.abs(e)+Math.round(e*(Iw-1)))}shouldForceSelection(t){return bn?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(),Lw)}_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&&!(bn&&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<Bw&&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=jw(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 r=t.loadCell(i,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:r>1&&e!==i&&(s+=r-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 r=this._bufferService.buffer,o=r.lines.get(t[1]);if(!o)return;let a=r.translateBufferLineToString(t[1],!1),l=this._convertViewportColToCharacterIndex(o,t[0]),h=l,c=t[0]-l,d=0,u=0,f=0,m=0;if(a.charAt(l)===" "){for(;l>0&&a.charAt(l-1)===" ";)l--;for(;h<a.length&&a.charAt(h+1)===" ";)h++}else{let v=t[0],b=t[0];o.getWidth(v)===0&&(d++,v--),o.getWidth(b)===2&&(u++,b++);let x=o.getString(b).length;for(x>1&&(m+=x-1,h+=x-1);v>0&&l>0&&!this._isCharWordSeparator(o.loadCell(v-1,this._workCell));){o.loadCell(v-1,this._workCell);let _=this._workCell.getChars().length;this._workCell.getWidth()===0?(d++,v--):_>1&&(f+=_-1,l-=_-1),l--,v--}for(;b<o.length&&h+1<a.length&&!this._isCharWordSeparator(o.loadCell(b+1,this._workCell));){o.loadCell(b+1,this._workCell);let _=this._workCell.getChars().length;this._workCell.getWidth()===2?(u++,b++):_>1&&(m+=_-1,h+=_-1),h++,b++}}h++;let p=l+c-d+f,g=Math.min(this._bufferService.cols,h-l+d+u-f-m);if(!(!e&&a.slice(l,h).trim()==="")){if(s&&p===0&&o.getCodePoint(0)!==32){let v=r.lines.get(t[1]-1);if(v&&o.isWrapped&&v.getCodePoint(this._bufferService.cols-1)!==32){let b=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(b){let x=this._bufferService.cols-b.start;p-=x,g+=x}}}if(i&&p+g===this._bufferService.cols&&o.getCodePoint(this._bufferService.cols-1)!==32){let v=r.lines.get(t[1]+1);if(v?.isWrapped&&v.getCodePoint(0)!==32){let b=this._getWordAt([0,t[1]+1],!1,!1,!0);b&&(g+=b.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=Xc(s,this._bufferService.cols)}};da=Ve([ue(3,xt),ue(4,si),ue(5,yl),ue(6,bt),ue(7,ws),ue(8,Ss)],da);var Jc=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={}}},Zc=class{constructor(){this._color=new Jc,this._css=new Jc}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()}},Qe=Object.freeze((()=>{let t=[He.toColor("#2e3436"),He.toColor("#cc0000"),He.toColor("#4e9a06"),He.toColor("#c4a000"),He.toColor("#3465a4"),He.toColor("#75507b"),He.toColor("#06989a"),He.toColor("#d3d7cf"),He.toColor("#555753"),He.toColor("#ef2929"),He.toColor("#8ae234"),He.toColor("#fce94f"),He.toColor("#729fcf"),He.toColor("#ad7fa8"),He.toColor("#34e2e2"),He.toColor("#eeeeec")],e=[0,95,135,175,215,255];for(let s=0;s<216;s++){let i=e[s/36%6|0],r=e[s/6%6|0],o=e[s%6];t.push({css:Je.toCss(i,r,o),rgba:Je.toRgba(i,r,o)})}for(let s=0;s<24;s++){let i=8+s*10;t.push({css:Je.toCss(i,i,i),rgba:Je.toRgba(i,i,i)})}return t})()),Bs=He.toColor("#ffffff"),Ji=He.toColor("#000000"),Qc=He.toColor("#ffffff"),eh=Ji,zi={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},$w=Bs,ua=class extends we{constructor(t){super(),this._optionsService=t,this._contrastCache=new Zc,this._halfContrastCache=new Zc,this._onChangeColors=this._register(new ce),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:Bs,background:Ji,cursor:Qc,cursorAccent:eh,selectionForeground:void 0,selectionBackgroundTransparent:zi,selectionBackgroundOpaque:Oe.blend(Ji,zi),selectionInactiveBackgroundTransparent:zi,selectionInactiveBackgroundOpaque:Oe.blend(Ji,zi),scrollbarSliderBackground:Oe.opacity(Bs,.2),scrollbarSliderHoverBackground:Oe.opacity(Bs,.4),scrollbarSliderActiveBackground:Oe.opacity(Bs,.5),overviewRulerBorder:Bs,ansi:Qe.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=De(t.foreground,Bs),e.background=De(t.background,Ji),e.cursor=Oe.blend(e.background,De(t.cursor,Qc)),e.cursorAccent=Oe.blend(e.background,De(t.cursorAccent,eh)),e.selectionBackgroundTransparent=De(t.selectionBackground,zi),e.selectionBackgroundOpaque=Oe.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=De(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=Oe.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?De(t.selectionForeground,qc):void 0,e.selectionForeground===qc&&(e.selectionForeground=void 0),Oe.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=Oe.opacity(e.selectionBackgroundTransparent,.3)),Oe.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=Oe.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=De(t.scrollbarSliderBackground,Oe.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=De(t.scrollbarSliderHoverBackground,Oe.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=De(t.scrollbarSliderActiveBackground,Oe.opacity(e.foreground,.5)),e.overviewRulerBorder=De(t.overviewRulerBorder,$w),e.ansi=Qe.slice(),e.ansi[0]=De(t.black,Qe[0]),e.ansi[1]=De(t.red,Qe[1]),e.ansi[2]=De(t.green,Qe[2]),e.ansi[3]=De(t.yellow,Qe[3]),e.ansi[4]=De(t.blue,Qe[4]),e.ansi[5]=De(t.magenta,Qe[5]),e.ansi[6]=De(t.cyan,Qe[6]),e.ansi[7]=De(t.white,Qe[7]),e.ansi[8]=De(t.brightBlack,Qe[8]),e.ansi[9]=De(t.brightRed,Qe[9]),e.ansi[10]=De(t.brightGreen,Qe[10]),e.ansi[11]=De(t.brightYellow,Qe[11]),e.ansi[12]=De(t.brightBlue,Qe[12]),e.ansi[13]=De(t.brightMagenta,Qe[13]),e.ansi[14]=De(t.brightCyan,Qe[14]),e.ansi[15]=De(t.brightWhite,Qe[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]=De(t.extendedAnsi[i],Qe[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()}}};ua=Ve([ue(0,bt)],ua);function De(t,e){if(t!==void 0)try{return He.toColor(t)}catch{}return e}var zw=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)}},Fw=class{constructor(){this._services=new zw,this._services.set(bl,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let s=IS(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 r=s.length>0?s[0].index:e.length;if(e.length!==r)throw new Error(`[createInstance] First service dependency of ${t.name} at position ${r+1} conflicts with ${e.length} static arguments`);return new t(...e,...i)}},Hw={trace:0,debug:1,info:2,warn:3,error:4,off:5},Ww="xterm.js: ",fa=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=Hw[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?"":Ww)+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)}};fa=Ve([ue(0,bt)],fa);var th=class extends we{constructor(t){super(),this._maxLength=t,this.onDeleteEmitter=this._register(new ce),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new ce),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new ce),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 r=e-1;r>=0;r--)this.set(t+r+s,this.get(t+r));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,Xe=Object.freeze(new kr),zr=0,fo=2,Zi=class Lf{constructor(e,s,i=!1){this.isWrapped=i,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*Se);let r=s||Wt.fromCharData([0,Qu,1,0]);for(let o=0;o<e;++o)this.setCell(o,r);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?Ns(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?Ns(s&2097151):""}isProtected(e){return this._data[e*Se+2]&536870912}loadCell(e,s){return zr=e*Se,s.content=this._data[zr+0],s.fg=this._data[zr+1],s.bg=this._data[zr+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,r){r.bg&268435456&&(this._extendedAttrs[e]=r.extended),this._data[e*Se+0]=s|i<<22,this._data[e*Se+1]=r.fg,this._data[e*Se+2]=r.bg}addCodepointToCell(e,s,i){let r=this._data[e*Se+0];r&2097152?this._combined[e]+=Ns(s):r&2097151?(this._combined[e]=Ns(r&2097151)+Ns(s),r&=-2097152,r|=2097152):r=s|1<<22,i&&(r&=-12582913,r|=i<<22),this._data[e*Se+0]=r}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 r=new Wt;for(let o=this.length-e-s-1;o>=0;--o)this.setCell(e+s+o,this.loadCell(e+o,r));for(let o=0;o<s;++o)this.setCell(e+o,i)}else for(let r=e;r<this.length;++r)this.setCell(r,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 r=new Wt;for(let o=0;o<this.length-e-s;++o)this.setCell(e+o,this.loadCell(e+s+o,r));for(let o=this.length-s;o<this.length;++o)this.setCell(o,i)}else for(let r=e;r<this.length;++r)this.setCell(r,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,r=!1){if(r){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*fo<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 r=new Uint32Array(i);r.set(this._data),this._data=r}for(let r=this.length;r<e;++r)this.setCell(r,s)}else{this._data=this._data.subarray(0,i);let r=Object.keys(this._combined);for(let a=0;a<r.length;a++){let l=parseInt(r[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*fo<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*fo<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 Lf(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,r,o){let a=e._data;if(o)for(let h=r-1;h>=0;h--){for(let c=0;c<Se;c++)this._data[(i+h)*Se+c]=a[(s+h)*Se+c];a[(s+h)*Se+2]&268435456&&(this._extendedAttrs[i+h]=e._extendedAttrs[s+h])}else for(let h=0;h<r;h++){for(let c=0;c<Se;c++)this._data[(i+h)*Se+c]=a[(s+h)*Se+c];a[(s+h)*Se+2]&268435456&&(this._extendedAttrs[i+h]=e._extendedAttrs[s+h])}let l=Object.keys(e._combined);for(let h=0;h<l.length;h++){let c=parseInt(l[h],10);c>=s&&(this._combined[c-s+i]=e._combined[c])}}translateToString(e,s,i,r){s=s??0,i=i??this.length,e&&(i=Math.min(i,this.getTrimmedLength())),r&&(r.length=0);let o="";for(;s<i;){let a=this._data[s*Se+0],l=a&2097151,h=a&2097152?this._combined[s]:l?Ns(l):Es;if(o+=h,r)for(let c=0;c<h.length;++c)r.push(s);s+=a>>22||1}return r&&r.push(s),o}};function Uw(t,e,s,i,r,o){let a=[];for(let l=0;l<t.length-1;l++){let h=l,c=t.get(++h);if(!c.isWrapped)continue;let d=[t.get(l)];for(;h<t.length&&c.isWrapped;)d.push(c),c=t.get(++h);if(!o&&i>=l&&i<h){l+=d.length-1;continue}let u=0,f=_r(d,u,e),m=1,p=0;for(;m<d.length;){let v=_r(d,m,e),b=v-p,x=s-f,_=Math.min(b,x);d[u].copyCellsFrom(d[m],p,f,_,!1),f+=_,f===s&&(u++,f=0),p+=_,p===v&&(m++,p=0),f===0&&u!==0&&d[u-1].getWidth(s-1)===2&&(d[u].copyCellsFrom(d[u-1],s-1,f++,1,!1),d[u-1].setCell(s-1,r))}d[u].replaceCells(f,s,r);let g=0;for(let v=d.length-1;v>0&&(v>u||d[v].getTrimmedLength()===0);v--)g++;g>0&&(a.push(l+d.length-g),a.push(g)),l+=d.length-1}return a}function Kw(t,e){let s=[],i=0,r=e[i],o=0;for(let a=0;a<t.length;a++)if(r===a){let l=e[++i];t.onDeleteEmitter.fire({index:a-o,amount:l}),a+=l-1,o+=l,r=e[++i]}else s.push(a);return{layout:s,countRemoved:o}}function Vw(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 qw(t,e,s){let i=[],r=t.map((h,c)=>_r(t,c,e)).reduce((h,c)=>h+c),o=0,a=0,l=0;for(;l<r;){if(r-l<s){i.push(r-l);break}o+=s;let h=_r(t,a,e);o>h&&(o-=h,a++);let c=t[a].getWidth(o-1)===2;c&&o--;let d=c?s-1:s;i.push(d),l+=d}return i}function _r(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,r=t[e+1].getWidth(0)===2;return i&&r?s-1:s}var Bf=class Mf{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=Mf._nextId++,this._onDispose=this.register(new ce),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),Vs(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};Bf._nextId=1;var Gw=Bf,st={},Ms=st.B;st[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:"≥","{":"π","|":"≠","}":"£","~":"·"};st.A={"#":"£"};st.B=void 0;st[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};st.C=st[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};st.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};st.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};st.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};st.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};st.E=st[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};st.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};st.H=st[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};st["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var sh=4294967295,ih=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=Xe.clone(),this.savedCharset=Ms,this.markers=[],this._nullCell=Wt.fromCharData([0,Qu,1,0]),this._whitespaceCell=Wt.fromCharData([0,Es,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new yn,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new th(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 _n),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 _n),this._whitespaceCell}getBlankLine(t,e){return new Zi(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>sh?sh:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=Xe);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 th(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let s=this.getNullCell(Xe),i=0,r=this._getCorrectBufferLength(e);if(r>this.lines.maxLength&&(this.lines.maxLength=r),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 Zi(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 Zi(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(r<this.lines.maxLength){let a=this.lines.length-r;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=r}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=Uw(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(Xe),s);if(i.length>0){let r=Kw(this.lines,i);Vw(this.lines,r.layout),this._reflowLargerAdjustViewport(t,e,r.countRemoved)}}_reflowLargerAdjustViewport(t,e,s){let i=this.getNullCell(Xe),r=s;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new Zi(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(Xe),r=[],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 h=[l];for(;l.isWrapped&&a>0;)l=this.lines.get(--a),h.unshift(l);if(!s){let _=this.ybase+this.y;if(_>=a&&_<a+h.length)continue}let c=h[h.length-1].getTrimmedLength(),d=qw(h,this._cols,t),u=d.length-h.length,f;this.ybase===0&&this.y!==this.lines.length-1?f=Math.max(0,this.y-this.lines.maxLength+u):f=Math.max(0,this.lines.length-this.lines.maxLength+u);let m=[];for(let _=0;_<u;_++){let y=this.getBlankLine(Xe,!0);m.push(y)}m.length>0&&(r.push({start:a+h.length+o,newLines:m}),o+=m.length),h.push(...m);let p=d.length-1,g=d[p];g===0&&(p--,g=d[p]);let v=h.length-u-1,b=c;for(;v>=0;){let _=Math.min(b,g);if(h[p]===void 0)break;if(h[p].copyCellsFrom(h[v],b-_,g-_,_,!0),g-=_,g===0&&(p--,g=d[p]),b-=_,b===0){v--;let y=Math.max(v,0);b=_r(h,y,this._cols)}}for(let _=0;_<h.length;_++)d[_]<t&&h[_].setCell(d[_],i);let x=u-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+u,this.ybase+e-1)}if(r.length>0){let a=[],l=[];for(let g=0;g<this.lines.length;g++)l.push(this.lines.get(g));let h=this.lines.length,c=h-1,d=0,u=r[d];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+o);let f=0;for(let g=Math.min(this.lines.maxLength-1,h+o-1);g>=0;g--)if(u&&u.start>c+f){for(let v=u.newLines.length-1;v>=0;v--)this.lines.set(g--,u.newLines[v]);g++,a.push({index:c+1,amount:u.newLines.length}),f+=u.newLines.length,u=r[++d]}else this.lines.set(g,l[c--]);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,h+o-this.lines.maxLength);p>0&&this.lines.onTrimEmitter.fire(p)}}translateBufferLineToString(t,e,s=0,i){let r=this.lines.get(t);return r?r.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 Gw(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)}},Yw=class extends we{constructor(t,e){super(),this._optionsService=t,this._bufferService=e,this._onBufferActivate=this._register(new ce),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 ih(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new ih(!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)}},Of=2,$f=1,ma=class extends we{constructor(t){super(),this.isUserScrolling=!1,this._onResize=this._register(new ce),this.onResize=this._onResize.event,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this.cols=Math.max(t.rawOptions.cols||0,Of),this.rows=Math.max(t.rawOptions.rows||0,$f),this.buffers=this._register(new Yw(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 r=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-r+1;s.lines.shiftElements(r+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))}};ma=Ve([ue(0,bt)],ma);var ai={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:bn,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},Xw=["normal","bold","100","200","300","400","500","600","700","800","900"],Jw=class extends we{constructor(t){super(),this._onOptionChange=this._register(new ce),this.onOptionChange=this._onOptionChange.event;let e={...ai};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($e(()=>{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 ai))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},e=(s,i)=>{if(!(s in ai))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=ai[t]),!Zw(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=ai[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=Xw.includes(e)?e:ai[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 Zw(t){return t==="block"||t==="underline"||t==="bar"}function Qi(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]&&Qi(t[i],e-1);return s}var rh=Object.freeze({insertMode:!1}),nh=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),pa=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 ce),this.onData=this._onData.event,this._onUserInput=this._register(new ce),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new ce),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new ce),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Qi(rh),this.decPrivateModes=Qi(nh)}reset(){this.modes=Qi(rh),this.decPrivateModes=Qi(nh)}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))}};pa=Ve([ue(0,xt),ue(1,nf),ue(2,bt)],pa);var oh={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 mo(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 po=String.fromCharCode,ah={DEFAULT:t=>{let e=[mo(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${po(e[0])}${po(e[1])}${po(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${mo(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${mo(t,!0)};${t.x};${t.y}${e}`}},ga=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 ce),this.onProtocolChange=this._onProtocolChange.event;for(let i of Object.keys(oh))this.addProtocol(i,oh[i]);for(let i of Object.keys(ah))this.addEncoding(i,ah[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,r=this._applyScrollModifier(t.deltaY,t);return t.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(r/=i+0,Math.abs(t.deltaY)<50&&(r*=.3),this._wheelPartialScroll+=r,r=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):t.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(r*=this._bufferService.rows),r}_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)}};ga=Ve([ue(0,xt),ue(1,si),ue(2,bt)],ga);var go=[[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]],Qw=[[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]],et;function eC(t,e){let s=0,i=e.length-1,r;if(t<e[0][0]||t>e[i][1])return!1;for(;i>=s;)if(r=s+i>>1,t>e[r][1])s=r+1;else if(t<e[r][0])i=r-1;else return!0;return!1}var tC=class{constructor(){if(this.version="6",!et){et=new Uint8Array(65536),et.fill(1),et[0]=0,et.fill(0,1,32),et.fill(0,127,160),et.fill(2,4352,4448),et[9001]=2,et[9002]=2,et.fill(2,11904,42192),et[12351]=1,et.fill(2,44032,55204),et.fill(2,63744,64256),et.fill(2,65040,65050),et.fill(2,65072,65136),et.fill(2,65280,65377),et.fill(2,65504,65511);for(let t=0;t<go.length;++t)et.fill(0,go[t][0],go[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?et[t]:eC(t,Qw)?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 r=Os.extractWidth(e);r===0?i=!1:r>s&&(s=r)}return Os.createPropertyValue(0,s,i)}},Os=class Gr{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ce,this.onChange=this._onChange.event;let e=new tC;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,r=e.length;for(let o=0;o<r;++o){let a=e.charCodeAt(o);if(55296<=a&&a<=56319){if(++o>=r)return s+this.wcwidth(a);let c=e.charCodeAt(o);56320<=c&&c<=57343?a=(a-55296)*1024+c-56320+65536:s+=this.wcwidth(c)}let l=this.charProperties(a,i),h=Gr.extractWidth(l);Gr.extractShouldJoin(l)&&(h-=Gr.extractWidth(i)),s+=h,i=l}return s}charProperties(e,s){return this._activeProvider.charProperties(e,s)}},sC=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 lh(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 Fi=2147483647,iC=256,zf=class _a{constructor(e=32,s=32){if(this.maxLength=e,this.maxSubParamsLength=s,s>iC)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 _a;if(!e.length)return s;for(let i=Array.isArray(e[0])?1:0;i<e.length;++i){let r=e[i];if(Array.isArray(r))for(let o=0;o<r.length;++o)s.addSubParam(r[o]);else s.addParam(r)}return s}clone(){let e=new _a(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,r=this._subParamsIdx[s]&255;r-i>0&&e.push(Array.prototype.slice.call(this._subParams,i,r))}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>Fi?Fi: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>Fi?Fi: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,r=this._subParamsIdx[s]&255;r-i>0&&(e[s]=this._subParams.slice(i,r))}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,r=i[s-1];i[s-1]=~r?Math.min(r*10+e,Fi):e}},Hi=[],rC=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",On(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,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&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}}},At=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+=On(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=[],nC=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",On(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,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&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}},er=new zf;er.addParam(0);var ch=class{constructor(t){this._handler=t,this._data="",this._params=er,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():er,this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=On(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=er,this._data="",this._hitLimit=!1,s));return this._params=er,this._data="",this._hitLimit=!1,e}},oC=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 r=0;r<t.length;r++)this.table[e<<8|t[r]]=s<<4|i}},Ht=160,aC=(function(){let t=new oC(4095),e=Array.apply(null,Array(256)).map((l,h)=>h),s=(l,h)=>e.slice(l,h),i=s(32,127),r=s(0,24);r.push(25),r.push.apply(r,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(r,0,3,0),t.addMany(r,1,3,1),t.add(127,1,0,1),t.addMany(r,8,0,8),t.addMany(r,3,3,3),t.add(127,3,0,3),t.addMany(r,4,3,4),t.add(127,4,0,4),t.addMany(r,6,3,6),t.addMany(r,5,3,5),t.add(127,5,0,5),t.addMany(r,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(r,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(r,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(r,11,0,11),t.addMany(s(32,128),11,0,11),t.addMany(s(28,32),11,0,11),t.addMany(r,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(r,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(r,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(Ht,0,2,0),t.add(Ht,8,5,8),t.add(Ht,6,0,6),t.add(Ht,11,0,11),t.add(Ht,13,13,13),t})(),lC=class extends we{constructor(t=aC){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 zf,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($e(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new rC),this._dcsParser=this._register(new nC),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 r=0;r<t.intermediates.length;++r){let o=t.intermediates.charCodeAt(r);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 r=i.indexOf(e);r!==-1&&i.splice(r,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 r=i.indexOf(e);r!==-1&&i.splice(r,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,r){this._parseStack.state=t,this._parseStack.handlers=e,this._parseStack.handlerPos=s,this._parseStack.transition=i,this._parseStack.chunkPos=r}parse(t,e,s){let i=0,r=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,h=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&h>-1){for(;h>=0&&(a=l[h](this._params),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 4:if(s===!1&&h>-1){for(;h>=0&&(a=l[h](),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,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],r=this._transitions.table[this.currentState<<8|(i<160?i:Ht)],r>>4){case 2:for(let f=l+1;;++f){if(f>=e||(i=t[f])<32||i>126&&i<Ht){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Ht){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Ht){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<Ht){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 h=this._csiHandlers[this._collect<<8|i],c=h?h.length-1:-1;for(;c>=0&&(a=h[c](this._params),a!==!0);c--)if(a instanceof Promise)return this._preserveStack(3,h,c,r,l),a;c<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 d=this._escHandlers[this._collect<<8|i],u=d?d.length-1:-1;for(;u>=0&&(a=d[u](),a!==!0);u--)if(a instanceof Promise)return this._preserveStack(4,d,u,r,l),a;u<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<Ht){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,r,l),a;i===27&&(r|=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<Ht){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,r,l),a;i===27&&(r|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=r&15}}},cC=/^([\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})$/,hC=/^[\da-f]+$/;function hh(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let s=cC.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),hC.exec(e)&&[3,6,9,12].includes(e.length))){let s=e.length/3,i=[0,0,0];for(let r=0;r<3;++r){let o=parseInt(e.slice(s*r,s*r+s),16);i[r]=s===1?o<<4:s===2?o:s===3?o>>4:o>>8}return i}}function _o(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 dC(t,e=16){let[s,i,r]=t;return`rgb:${_o(s,e)}/${_o(i,e)}/${_o(r,e)}`}var uC={"(":0,")":1,"*":2,"+":3,"-":1,".":2},js=131072,dh=10;function uh(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 fh=5e3,mh=0,fC=class extends we{constructor(t,e,s,i,r,o,a,l,h=new lC){super(),this._bufferService=t,this._charsetService=e,this._coreService=s,this._logService=i,this._optionsService=r,this._oscLinkService=o,this._coreMouseService=a,this._unicodeService=l,this._parser=h,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new RS,this._utf8Decoder=new DS,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=Xe.clone(),this._eraseAttrDataInternal=Xe.clone(),this._onRequestBell=this._register(new ce),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new ce),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new ce),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new ce),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new ce),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new ce),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new ce),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new ce),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new ce),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new ce),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new ce),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new ce),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new ce),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 va(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(c=>this._activeBuffer=c.activeBuffer)),this._parser.setCsiHandlerFallback((c,d)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(c),params:d.toArray()})}),this._parser.setEscHandlerFallback(c=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(c)})}),this._parser.setExecuteHandlerFallback(c=>{this._logService.debug("Unknown EXECUTE code: ",{code:c})}),this._parser.setOscHandlerFallback((c,d,u)=>{this._logService.debug("Unknown OSC code: ",{identifier:c,action:d,data:u})}),this._parser.setDcsHandlerFallback((c,d,u)=>{d==="HOOK"&&(u=u.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(c),action:d,payload:u})}),this._parser.setPrintHandler((c,d,u)=>this.print(c,d,u)),this._parser.registerCsiHandler({final:"@"},c=>this.insertChars(c)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},c=>this.scrollLeft(c)),this._parser.registerCsiHandler({final:"A"},c=>this.cursorUp(c)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},c=>this.scrollRight(c)),this._parser.registerCsiHandler({final:"B"},c=>this.cursorDown(c)),this._parser.registerCsiHandler({final:"C"},c=>this.cursorForward(c)),this._parser.registerCsiHandler({final:"D"},c=>this.cursorBackward(c)),this._parser.registerCsiHandler({final:"E"},c=>this.cursorNextLine(c)),this._parser.registerCsiHandler({final:"F"},c=>this.cursorPrecedingLine(c)),this._parser.registerCsiHandler({final:"G"},c=>this.cursorCharAbsolute(c)),this._parser.registerCsiHandler({final:"H"},c=>this.cursorPosition(c)),this._parser.registerCsiHandler({final:"I"},c=>this.cursorForwardTab(c)),this._parser.registerCsiHandler({final:"J"},c=>this.eraseInDisplay(c,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},c=>this.eraseInDisplay(c,!0)),this._parser.registerCsiHandler({final:"K"},c=>this.eraseInLine(c,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},c=>this.eraseInLine(c,!0)),this._parser.registerCsiHandler({final:"L"},c=>this.insertLines(c)),this._parser.registerCsiHandler({final:"M"},c=>this.deleteLines(c)),this._parser.registerCsiHandler({final:"P"},c=>this.deleteChars(c)),this._parser.registerCsiHandler({final:"S"},c=>this.scrollUp(c)),this._parser.registerCsiHandler({final:"T"},c=>this.scrollDown(c)),this._parser.registerCsiHandler({final:"X"},c=>this.eraseChars(c)),this._parser.registerCsiHandler({final:"Z"},c=>this.cursorBackwardTab(c)),this._parser.registerCsiHandler({final:"`"},c=>this.charPosAbsolute(c)),this._parser.registerCsiHandler({final:"a"},c=>this.hPositionRelative(c)),this._parser.registerCsiHandler({final:"b"},c=>this.repeatPrecedingCharacter(c)),this._parser.registerCsiHandler({final:"c"},c=>this.sendDeviceAttributesPrimary(c)),this._parser.registerCsiHandler({prefix:">",final:"c"},c=>this.sendDeviceAttributesSecondary(c)),this._parser.registerCsiHandler({final:"d"},c=>this.linePosAbsolute(c)),this._parser.registerCsiHandler({final:"e"},c=>this.vPositionRelative(c)),this._parser.registerCsiHandler({final:"f"},c=>this.hVPosition(c)),this._parser.registerCsiHandler({final:"g"},c=>this.tabClear(c)),this._parser.registerCsiHandler({final:"h"},c=>this.setMode(c)),this._parser.registerCsiHandler({prefix:"?",final:"h"},c=>this.setModePrivate(c)),this._parser.registerCsiHandler({final:"l"},c=>this.resetMode(c)),this._parser.registerCsiHandler({prefix:"?",final:"l"},c=>this.resetModePrivate(c)),this._parser.registerCsiHandler({final:"m"},c=>this.charAttributes(c)),this._parser.registerCsiHandler({final:"n"},c=>this.deviceStatus(c)),this._parser.registerCsiHandler({prefix:"?",final:"n"},c=>this.deviceStatusPrivate(c)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},c=>this.softReset(c)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},c=>this.setCursorStyle(c)),this._parser.registerCsiHandler({final:"r"},c=>this.setScrollRegion(c)),this._parser.registerCsiHandler({final:"s"},c=>this.saveCursor(c)),this._parser.registerCsiHandler({final:"t"},c=>this.windowOptions(c)),this._parser.registerCsiHandler({final:"u"},c=>this.restoreCursor(c)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},c=>this.insertColumns(c)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},c=>this.deleteColumns(c)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},c=>this.selectProtected(c)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},c=>this.requestMode(c,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},c=>this.requestMode(c,!1)),this._parser.setExecuteHandler(re.BEL,()=>this.bell()),this._parser.setExecuteHandler(re.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(re.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(re.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(re.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(re.BS,()=>this.backspace()),this._parser.setExecuteHandler(re.HT,()=>this.tab()),this._parser.setExecuteHandler(re.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(re.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(Vr.IND,()=>this.index()),this._parser.setExecuteHandler(Vr.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(Vr.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new At(c=>(this.setTitle(c),this.setIconName(c),!0))),this._parser.registerOscHandler(1,new At(c=>this.setIconName(c))),this._parser.registerOscHandler(2,new At(c=>this.setTitle(c))),this._parser.registerOscHandler(4,new At(c=>this.setOrReportIndexedColor(c))),this._parser.registerOscHandler(8,new At(c=>this.setHyperlink(c))),this._parser.registerOscHandler(10,new At(c=>this.setOrReportFgColor(c))),this._parser.registerOscHandler(11,new At(c=>this.setOrReportBgColor(c))),this._parser.registerOscHandler(12,new At(c=>this.setOrReportCursorColor(c))),this._parser.registerOscHandler(104,new At(c=>this.restoreIndexedColor(c))),this._parser.registerOscHandler(110,new At(c=>this.restoreFgColor(c))),this._parser.registerOscHandler(111,new At(c=>this.restoreBgColor(c))),this._parser.registerOscHandler(112,new At(c=>this.restoreCursorColor(c))),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 c in st)this._parser.registerEscHandler({intermediates:"(",final:c},()=>this.selectCharset("("+c)),this._parser.registerEscHandler({intermediates:")",final:c},()=>this.selectCharset(")"+c)),this._parser.registerEscHandler({intermediates:"*",final:c},()=>this.selectCharset("*"+c)),this._parser.registerEscHandler({intermediates:"+",final:c},()=>this.selectCharset("+"+c)),this._parser.registerEscHandler({intermediates:"-",final:c},()=>this.selectCharset("-"+c)),this._parser.registerEscHandler({intermediates:".",final:c},()=>this.selectCharset("."+c)),this._parser.registerEscHandler({intermediates:"/",final:c},()=>this.selectCharset("/"+c));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(c=>(this._logService.error("Parsing error: ",c),c)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new ch((c,d)=>this.requestStatusString(c,d)))}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"),fh))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${fh} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(t,e){let s,i=this._activeBuffer.x,r=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,r=this._parseStack.cursorStartY,this._parseStack.paused=!1,t.length>js&&(o=this._parseStack.position+js)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,c=>String.fromCharCode(c)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(c=>c.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<js&&(this._parseBuffer=new Uint32Array(Math.min(t.length,js))),a||this._dirtyRowTracker.clearRange(),t.length>js)for(let c=o;c<t.length;c+=js){let d=c+js<t.length?c+js:t.length,u=typeof t=="string"?this._stringDecoder.decode(t.substring(c,d),this._parseBuffer):this._utf8Decoder.decode(t.subarray(c,d),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,u))return this._preserveStack(i,r,u,c),this._logSlowResolvingAsync(s),s}else if(!a){let c=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,c))return this._preserveStack(i,r,c,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==i||this._activeBuffer.y!==r)&&this._onCursorMove.fire();let l=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),h=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);h<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(h,this._bufferService.rows-1),end:Math.min(l,this._bufferService.rows-1)})}print(t,e,s){let i,r,o=this._charsetService.charset,a=this._optionsService.rawOptions.screenReaderMode,l=this._bufferService.cols,h=this._coreService.decPrivateModes.wraparound,c=this._coreService.modes.insertMode,d=this._curAttrData,u=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-e>0&&u.getWidth(this._activeBuffer.x-1)===2&&u.setCellFromCodepoint(this._activeBuffer.x-1,0,1,d);let f=this._parser.precedingJoinState;for(let m=e;m<s;++m){if(i=t[m],i<127&&o){let b=o[String.fromCharCode(i)];b&&(i=b.charCodeAt(0))}let p=this._unicodeService.charProperties(i,f);r=Os.extractWidth(p);let g=Os.extractShouldJoin(p),v=g?Os.extractWidth(f):0;if(f=p,a&&this._onA11yChar.fire(Ns(i)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+r-v>l){if(h){let b=u,x=this._activeBuffer.x-v;for(this._activeBuffer.x=v,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),u=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),v>0&&u instanceof Zi&&u.copyCellsFrom(b,x,0,v,!1);x<l;)b.setCellFromCodepoint(x++,0,1,d)}else if(this._activeBuffer.x=l-1,r===2)continue}if(g&&this._activeBuffer.x){let b=u.getWidth(this._activeBuffer.x-1)?1:2;u.addCodepointToCell(this._activeBuffer.x-b,i,r);for(let x=r-v;--x>=0;)u.setCellFromCodepoint(this._activeBuffer.x++,0,0,d);continue}if(c&&(u.insertCells(this._activeBuffer.x,r-v,this._activeBuffer.getNullCell(d)),u.getWidth(l-1)===2&&u.setCellFromCodepoint(l-1,0,1,d)),u.setCellFromCodepoint(this._activeBuffer.x++,i,r,d),r>0)for(;--r;)u.setCellFromCodepoint(this._activeBuffer.x++,0,0,d)}this._parser.precedingJoinState=f,this._activeBuffer.x<l&&s-e>0&&u.getWidth(this._activeBuffer.x)===0&&!u.hasContent(this._activeBuffer.x)&&u.setCellFromCodepoint(this._activeBuffer.x,0,1,d),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(t,e){return t.final==="t"&&!t.prefix&&!t.intermediates?this._parser.registerCsiHandler(t,s=>uh(s.params[0],this._optionsService.rawOptions.windowOptions)?e(s):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new ch(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new At(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,r=!1){let o=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);o.replaceCells(e,s,this._activeBuffer.getNullCell(this._eraseAttrData()),r),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,r=this._bufferService.rows-1+this._activeBuffer.ybase-i+1;for(;e--;)this._activeBuffer.lines.splice(r-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(Xe));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=Os.extractWidth(e),r=this._activeBuffer.x-i,o=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(r),a=new Uint32Array(o.length*s),l=0;for(let c=0;c<o.length;){let d=o.codePointAt(c)||0;a[l++]=d,c+=d>65535?2:1}let h=l;for(let c=1;c<s;++c)a.copyWithin(h,0,l),h+=l;return this.print(a,0,h),!0}sendDeviceAttributesPrimary(t){return t.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(re.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(re.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(re.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(re.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(re.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,Ms),this._charsetService.setgCharset(1,Ms),this._charsetService.setgCharset(2,Ms),this._charsetService.setgCharset(3,Ms);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:r,activeEncoding:o}=this._coreMouseService,a=this._coreService,{buffers:l,cols:h}=this._bufferService,{active:c,alt:d}=l,u=this._optionsService.rawOptions,f=(g,v)=>(a.triggerDataEvent(`${re.ESC}[${e?"":"?"}${g};${v}$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(u.convertEol)):f(p,0):p===1?f(p,m(i.applicationCursorKeys)):p===3?f(p,u.windowOptions.setWinLines?h===80?2:h===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(r==="X10")):p===12?f(p,m(u.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(r==="VT200")):p===1002?f(p,m(r==="DRAG")):p===1003?f(p,m(r==="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(c===d)):p===2004?f(p,m(i.bracketedPasteMode)):p===2026?f(p,m(i.synchronizedOutput)):f(p,0)}_updateAttrColor(t,e,s,i,r){return e===2?(t|=50331648,t&=-16777216,t|=kr.fromColorRGB([s,i,r])):e===5&&(t&=-50331904,t|=33554432|s&255),t}_extractColor(t,e,s){let i=[0,0,-1,0,0,0],r=0,o=0;do{if(i[o+r]=t.params[e+o],t.hasSubParams(e+o)){let a=t.getSubParams(e+o),l=0;do i[1]===5&&(r=1),i[o+l+1+r]=a[l];while(++l<a.length&&l+o+1+r<i.length);break}if(i[1]===5&&o+r>=2||i[1]===2&&o+r>=5)break;i[1]&&(r=1)}while(++o+e<t.length&&o+r<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=Xe.fg,t.bg=Xe.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 r=0;r<e;r++)s=t.params[r],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(r)?t.getSubParams(r)[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|=Xe.fg&16777215):s===49?(i.bg&=-67108864,i.bg|=Xe.bg&16777215):s===38||s===48||s===58?r+=this._extractColor(t,r,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|=Xe.fg&16777215,i.bg&=-67108864,i.bg|=Xe.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${re.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${re.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(`${re.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=Xe.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(!uh(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(`${re.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>dh&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>dh&&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(),r=s.shift();if(/^\d+$/.exec(i)){let o=parseInt(i);if(ph(o))if(r==="?")e.push({type:0,index:o});else{let a=hh(r);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,r=s.findIndex(o=>o.startsWith("id="));return r!==-1&&(i=s[r].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 r=hh(s[i]);r&&this._onColor.fire([{type:1,index:this._specialColors[e],color:r}])}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 r=parseInt(s[i]);ph(r)&&e.push({type:2,index:r})}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,Ms),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(uC[t[0]],st[t[1]]||Ms),!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=Xe.clone(),this._eraseAttrDataInternal=Xe.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 Wt;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(`${re.ESC}${a}${re.ESC}\\`),!0),i=this._bufferService.buffer,r=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}[r.cursorStyle]-(r.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(t,e){this._dirtyRowTracker.markRangeDirty(t,e)}},va=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&&(mh=t,t=e,e=mh),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};va=Ve([ue(0,xt)],va);function ph(t){return 0<=t&&t<256}var mC=5e7,gh=12,pC=50,gC=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 ce),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>mC)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],r=this._action(i,e);if(r){let a=l=>performance.now()-s>=gh?setTimeout(()=>this._innerWrite(0,l)):this._innerWrite(s,l);r.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>=gh)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>pC&&(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()}},xa=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),h={data:t,id:this._nextId++,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(h,l)),this._dataByLinkId.set(h.id,h),h.id}let s=t,i=this._getEntryIdKey(s),r=this._entriesWithId.get(i);if(r)return this.addLineToLink(r.id,e.ybase+e.y),r.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)))}};xa=Ve([ue(0,xt)],xa);var _h=!1,_C=class extends we{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new _i),this._onBinary=this._register(new ce),this.onBinary=this._onBinary.event,this._onData=this._register(new ce),this.onData=this._onData.event,this._onLineFeed=this._register(new ce),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new ce),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new ce),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new ce),this._instantiationService=new Fw,this.optionsService=this._register(new Jw(t)),this._instantiationService.setService(bt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(ma)),this._instantiationService.setService(xt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(fa)),this._instantiationService.setService(nf,this._logService),this.coreService=this._register(this._instantiationService.createInstance(pa)),this._instantiationService.setService(si,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(ga)),this._instantiationService.setService(rf,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Os)),this._instantiationService.setService(MS,this.unicodeService),this._charsetService=this._instantiationService.createInstance(sC),this._instantiationService.setService(BS,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(xa),this._instantiationService.setService(of,this._oscLinkService),this._inputHandler=this._register(new fC(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(ut.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(ut.forward(this._bufferService.onResize,this._onResize)),this._register(ut.forward(this.coreService.onData,this._onData)),this._register(ut.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 gC((e,s)=>this._inputHandler.parse(e,s))),this._register(ut.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new ce),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&&!_h&&(this._logService.warn("writeSync is unreliable and will be removed soon."),_h=!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,Of),e=Math.max(e,$f),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(lh.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(lh(this._bufferService),!1))),this._windowsWrappingHeuristics.value=$e(()=>{for(let e of t)e.dispose()})}}},vC={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 xC(t,e,s,i){let r={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?r.key=re.ESC+"OA":r.key=re.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?r.key=re.ESC+"OD":r.key=re.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?r.key=re.ESC+"OC":r.key=re.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?r.key=re.ESC+"OB":r.key=re.ESC+"[B");break;case 8:r.key=t.ctrlKey?"\b":re.DEL,t.altKey&&(r.key=re.ESC+r.key);break;case 9:if(t.shiftKey){r.key=re.ESC+"[Z";break}r.key=re.HT,r.cancel=!0;break;case 13:r.key=t.altKey?re.ESC+re.CR:re.CR,r.cancel=!0;break;case 27:r.key=re.ESC,t.altKey&&(r.key=re.ESC+re.ESC),r.cancel=!0;break;case 37:if(t.metaKey)break;o?r.key=re.ESC+"[1;"+(o+1)+"D":e?r.key=re.ESC+"OD":r.key=re.ESC+"[D";break;case 39:if(t.metaKey)break;o?r.key=re.ESC+"[1;"+(o+1)+"C":e?r.key=re.ESC+"OC":r.key=re.ESC+"[C";break;case 38:if(t.metaKey)break;o?r.key=re.ESC+"[1;"+(o+1)+"A":e?r.key=re.ESC+"OA":r.key=re.ESC+"[A";break;case 40:if(t.metaKey)break;o?r.key=re.ESC+"[1;"+(o+1)+"B":e?r.key=re.ESC+"OB":r.key=re.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(r.key=re.ESC+"[2~");break;case 46:o?r.key=re.ESC+"[3;"+(o+1)+"~":r.key=re.ESC+"[3~";break;case 36:o?r.key=re.ESC+"[1;"+(o+1)+"H":e?r.key=re.ESC+"OH":r.key=re.ESC+"[H";break;case 35:o?r.key=re.ESC+"[1;"+(o+1)+"F":e?r.key=re.ESC+"OF":r.key=re.ESC+"[F";break;case 33:t.shiftKey?r.type=2:t.ctrlKey?r.key=re.ESC+"[5;"+(o+1)+"~":r.key=re.ESC+"[5~";break;case 34:t.shiftKey?r.type=3:t.ctrlKey?r.key=re.ESC+"[6;"+(o+1)+"~":r.key=re.ESC+"[6~";break;case 112:o?r.key=re.ESC+"[1;"+(o+1)+"P":r.key=re.ESC+"OP";break;case 113:o?r.key=re.ESC+"[1;"+(o+1)+"Q":r.key=re.ESC+"OQ";break;case 114:o?r.key=re.ESC+"[1;"+(o+1)+"R":r.key=re.ESC+"OR";break;case 115:o?r.key=re.ESC+"[1;"+(o+1)+"S":r.key=re.ESC+"OS";break;case 116:o?r.key=re.ESC+"[15;"+(o+1)+"~":r.key=re.ESC+"[15~";break;case 117:o?r.key=re.ESC+"[17;"+(o+1)+"~":r.key=re.ESC+"[17~";break;case 118:o?r.key=re.ESC+"[18;"+(o+1)+"~":r.key=re.ESC+"[18~";break;case 119:o?r.key=re.ESC+"[19;"+(o+1)+"~":r.key=re.ESC+"[19~";break;case 120:o?r.key=re.ESC+"[20;"+(o+1)+"~":r.key=re.ESC+"[20~";break;case 121:o?r.key=re.ESC+"[21;"+(o+1)+"~":r.key=re.ESC+"[21~";break;case 122:o?r.key=re.ESC+"[23;"+(o+1)+"~":r.key=re.ESC+"[23~";break;case 123:o?r.key=re.ESC+"[24;"+(o+1)+"~":r.key=re.ESC+"[24~";break;default:if(t.ctrlKey&&!t.shiftKey&&!t.altKey&&!t.metaKey)t.keyCode>=65&&t.keyCode<=90?r.key=String.fromCharCode(t.keyCode-64):t.keyCode===32?r.key=re.NUL:t.keyCode>=51&&t.keyCode<=55?r.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?r.key=re.DEL:t.keyCode===219?r.key=re.ESC:t.keyCode===220?r.key=re.FS:t.keyCode===221&&(r.key=re.GS);else if((!s||i)&&t.altKey&&!t.metaKey){let a=vC[t.keyCode]?.[t.shiftKey?1:0];if(a)r.key=re.ESC+a;else if(t.keyCode>=65&&t.keyCode<=90){let l=t.ctrlKey?t.keyCode-64:t.keyCode+32,h=String.fromCharCode(l);t.shiftKey&&(h=h.toUpperCase()),r.key=re.ESC+h}else if(t.keyCode===32)r.key=re.ESC+(t.ctrlKey?re.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let l=t.code.slice(3,4);t.shiftKey||(l=l.toLowerCase()),r.key=re.ESC+l,r.cancel=!0}}else s&&!t.altKey&&!t.ctrlKey&&!t.shiftKey&&t.metaKey?t.keyCode===65&&(r.type=1):t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.keyCode>=48&&t.key.length===1?r.key=t.key:t.key&&t.ctrlKey&&(t.key==="_"&&(r.key=re.US),t.key==="@"&&(r.key=re.NUL));break}return r}var Ge=0,bC=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new yn,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new yn,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((r,o)=>this._getKey(r)-this._getKey(o)),e=0,s=0,i=new Array(this._array.length+this._insertedValues.length);for(let r=0;r<i.length;r++)s>=this._array.length||this._getKey(t[e])<=this._getKey(this._array[s])?(i[r]=t[e],e++):i[r]=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||(Ge=this._search(e),Ge===-1)||this._getKey(this._array[Ge])!==e)return!1;do if(this._array[Ge]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Ge),!0;while(++Ge<this._array.length&&this._getKey(this._array[Ge])===e);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let t=this._deletedIndices.sort((r,o)=>r-o),e=0,s=new Array(this._array.length-t.length),i=0;for(let r=0;r<this._array.length;r++)t[e]===r?e++:s[i++]=this._array[r];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&&(Ge=this._search(t),!(Ge<0||Ge>=this._array.length)&&this._getKey(this._array[Ge])===t))do yield this._array[Ge];while(++Ge<this._array.length&&this._getKey(this._array[Ge])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ge=this._search(t),!(Ge<0||Ge>=this._array.length)&&this._getKey(this._array[Ge])===t))do e(this._array[Ge]);while(++Ge<this._array.length&&this._getKey(this._array[Ge])===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,r=this._getKey(this._array[i]);if(r>t)s=i-1;else if(r<t)e=i+1;else{for(;i>0&&this._getKey(this._array[i-1])===t;)i--;return i}}return e}},vo=0,vh=0,yC=class extends we{constructor(){super(),this._decorations=new bC(t=>t?.marker.line),this._onDecorationRegistered=this._register(new ce),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new ce),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register($e(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new SC(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,r=0;for(let o of this._decorations.getKeyIterator(e))i=o.options.x??0,r=i+(o.options.width??1),t>=i&&t<r&&(!s||(o.options.layer??"bottom")===s)&&(yield o)}forEachDecorationAtCell(t,e,s,i){this._decorations.forEachByKey(e,r=>{vo=r.options.x??0,vh=vo+(r.options.width??1),t>=vo&&t<vh&&(!s||(r.options.layer??"bottom")===s)&&i(r)})}},SC=class extends Ts{constructor(t){super(),this.options=t,this.onRenderEmitter=this.add(new ce),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new ce),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=He.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=He.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},wC=1e3,CC=class{constructor(t,e=wC){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 r=i-this._lastRefreshMs,o=this._debounceThresholdMS-r;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)}},xh=20,Sn=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 r=this._coreBrowserService.mainDocument;this._accessibilityContainer=r.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=r.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=r.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new CC(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(`
|
|
498
|
-
`))),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(be(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register($e(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(t){for(let e=0;e<t;e++)this._handleChar(" ")}_handleChar(t){this._liveRegionLineCount<xh+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===`
|
|
499
|
-
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===xh+1&&(this._liveRegion.textContent+=$o.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 r=t;r<=e;r++){let o=s.lines.get(s.ydisp+r),a=[],l=o?.translateToString(!0,void 0,void 0,a)||"",h=(s.ydisp+r+1).toString(),c=this._rowElements[r];c&&(l.length===0?(c.textContent=" ",this._rowColumns.set(c,[0,1])):(c.textContent=l,this._rowColumns.set(c,a)),c.setAttribute("aria-posinset",h),c.setAttribute("aria-setsize",i),this._alignRowWidth(c))}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],r=s.getAttribute("aria-posinset"),o=e===0?"1":`${this._terminal.buffer.lines.length}`;if(r===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 h=this._createAccessibilityTreeNode();this._rowElements.unshift(h),this._rowContainer.insertAdjacentElement("afterbegin",h)}else{let h=this._createAccessibilityTreeNode();this._rowElements.push(h),this._rowContainer.appendChild(h)}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 r=({node:l,offset:h})=>{let c=l instanceof Text?l.parentNode:l,d=parseInt(c?.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let u=this._rowColumns.get(c);if(!u)return console.warn("columns is null. Race condition?"),null;let f=h<u.length?u[h]:u.slice(-1)[0]+1;return f>=this._terminal.cols&&(++d,f=0),{row:d,column:f}},o=r(e),a=r(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})`}};Sn=Ve([ue(1,bl),ue(2,Ss),ue(3,ws)],Sn);var ba=class extends we{constructor(t,e,s,i,r){super(),this._element=t,this._mouseService=e,this._renderService=s,this._bufferService=i,this._linkProviderService=r,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new ce),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new ce),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register($e(()=>{Vs(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(be(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(be(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(be(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(be(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 r=s[i];if(r.classList.contains("xterm"))break;if(r.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(r=>{r.link.dispose&&r.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=t.y);let s=!1;for(let[i,r]of this._linkProviderService.linkProviders.entries())e?this._activeProviderReplies?.get(i)&&(s=this._checkLinkProviderResult(i,t,s)):r.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 r=e.get(i);if(r)for(let o=0;o<r.length;o++){let a=r[o],l=a.link.range.start.y<t?0:a.link.range.start.x,h=a.link.range.end.y>t?this._bufferService.cols:a.link.range.end.x;for(let c=l;c<=h;c++){if(s.has(c)){r.splice(o--,1);break}s.add(c)}}}}_checkLinkProviderResult(t,e,s){if(!this._activeProviderReplies)return s;let i=this._activeProviderReplies.get(t),r=!1;for(let o=0;o<t;o++)(!this._activeProviderReplies.has(o)||this._activeProviderReplies.get(o))&&(r=!0);if(!r&&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&&kC(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,Vs(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,r=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=i&&this._currentLink.link.range.end.y<=r&&(this._clearCurrentLink(i,r),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,r=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(r)}_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,r=e.y*this._bufferService.cols+e.x;return s<=r&&r<=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,r){return{x1:t,y1:e,x2:s,y2:i,cols:this._bufferService.cols,fg:r}}};ba=Ve([ue(1,yl),ue(2,ws),ue(3,xt),ue(4,lf)],ba);function kC(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 jC=class extends _C{constructor(t={}){super(t),this._linkifier=this._register(new _i),this.browser=Nf,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new _i),this._onCursorMove=this._register(new ce),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new ce),this.onKey=this._onKey.event,this._onRender=this._register(new ce),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new ce),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new ce),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new ce),this.onBell=this._onBell.event,this._onFocus=this._register(new ce),this._onBlur=this._register(new ce),this._onA11yCharEmitter=this._register(new ce),this._onA11yTabEmitter=this._register(new ce),this._onWillOpen=this._register(new ce),this._setup(),this._decorationService=this._instantiationService.createInstance(yC),this._instantiationService.setService(jr,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(pw),this._instantiationService.setService(lf,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(Fo)),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(ut.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(ut.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(ut.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(ut.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register($e(()=>{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 r=Oe.toColorRGB(s==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${re.ESC}]${i};${dC(r)}${kf.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(o=>o.ansi[e.index]=Je.toColor(...e.color));else{let o=s;this._themeService.modifyColors(a=>a[o]=Je.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(Sn,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(re.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(re.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,r=e.getWidth(s),o=this._renderService.dimensions.css.cell.width*r,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(be(this.element,"copy",e=>{this.hasSelection()&&PS(e,this._selectionService)}));let t=e=>AS(e,this.textarea,this.coreService,this.optionsService);this._register(be(this.textarea,"paste",t)),this._register(be(this.element,"paste",t)),Ef?this._register(be(this.element,"mousedown",e=>{e.button===2&&Tc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(be(this.element,"contextmenu",e=>{Tc(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),Tl&&this._register(be(this.element,"auxclick",e=>{e.button===1&&Zu(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(be(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(be(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(be(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(be(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(be(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(be(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(be(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(be(this.screenElement,"mousemove",r=>this.updateCursorStyle(r))),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",Oo.get()),Af||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(fw,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(Ss,this._coreBrowserService),this._register(be(this.textarea,"focus",r=>this._handleTextAreaFocus(r))),this._register(be(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(la,this._document,this._helperContainer),this._instantiationService.setService($n,this._charSizeService),this._themeService=this._instantiationService.createInstance(ua),this._instantiationService.setService(Ti,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(xn),this._instantiationService.setService(af,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(ha,this.rows,this.screenElement)),this._instantiationService.setService(ws,this._renderService),this._register(this._renderService.onRenderedViewportChange(r=>this._onRender.fire(r))),this.onResize(r=>this._renderService.resize(r.cols,r.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(na,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(ca),this._instantiationService.setService(yl,this._mouseService);let i=this._linkifier.value=this._register(this._instantiationService.createInstance(ba,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(ia,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(r=>{super.scrollLines(r,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(da,this.element,this.screenElement,i)),this._instantiationService.setService($S,this._selectionService),this._register(this._selectionService.onRequestScrollLines(r=>this.scrollLines(r.amount,r.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(r=>this._renderService.handleSelectionChanged(r.start,r.end,r.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(r=>{this.textarea.value=r,this.textarea.focus(),this.textarea.select()})),this._register(ut.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(ra,this.screenElement)),this._register(be(this.element,"mousedown",r=>this._selectionService.handleMouseDown(r))),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(Sn,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",r=>this._handleScreenReaderModeOptionChange(r))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(vn,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",r=>{!this._overviewRulerRenderer&&r&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(vn,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(aa,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,h;switch(o.overrideType||o.type){case"mousemove":h=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":h=0,l=o.button<3?o.button:3;break;case"mousedown":h=1,l=o.button<3?o.button:3;break;case"wheel":if(t._customWheelEventHandler&&t._customWheelEventHandler(o)===!1)return!1;let c=o.deltaY;if(c===0||t.coreMouseService.consumeWheelEvent(o,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return!1;h=c<0?0:1,l=4;break;default:return!1}return h===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:h,ctrl:o.ctrlKey,alt:o.altKey,shift:o.shiftKey})}let i={mouseup:null,wheel:null,mousedrag:null,mousemove:null},r={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",r.mousemove),i.mousemove=r.mousemove):(e.removeEventListener("mousemove",i.mousemove),i.mousemove=null),o&16?i.wheel||(e.addEventListener("wheel",r.wheel,{passive:!1}),i.wheel=r.wheel):(e.removeEventListener("wheel",i.wheel),i.wheel=null),o&2?i.mouseup||(i.mouseup=r.mouseup):(this._document.removeEventListener("mouseup",i.mouseup),i.mouseup=null),o&4?i.mousedrag||(i.mousedrag=r.mousedrag):(this._document.removeEventListener("mousemove",i.mousedrag),i.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(be(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(be(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=re.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){Ju(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=xC(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===re.ETX||s.key===re.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)&&(NC(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(Xe));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(re.ESC+"[I"):this.coreService.triggerDataEvent(re.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(`${re.ESC}[4;${s};${e}t`);break;case 1:let i=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${re.ESC}[6;${r};${i}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function NC(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var EC=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 Wt)}translateToString(t,e,s){return this._line.translateToString(t,e,s)}},bh=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 Wt}},PC=class extends we{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new ce),this.onBufferChange=this._onBufferChange.event,this._normal=new bh(this._core.buffers.normal,"normal"),this._alternate=new bh(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)}},AC=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)}},RC=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}},DC=["cols","rows"],ss=0,IC=class extends we{constructor(t){super(),this._core=this._register(new jC(t)),this._addonManager=this._register(new EC),this._publicOptions={...this._core.options};let e=i=>this._core.options[i],s=(i,r)=>{this._checkReadonlyOptions(i),this._core.options[i]=r};for(let i in this._core.options){let r={get:e.bind(this,i),set:s.bind(this,i)};Object.defineProperty(this._publicOptions,i,r)}}_checkReadonlyOptions(t){if(DC.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 AC(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new RC(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 PC(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
|
|
500
|
-
`,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 Oo.get()},set promptLabel(t){Oo.set(t)},get tooMuchOutput(){return $o.get()},set tooMuchOutput(t){$o.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 LC=2,BC=1,MC=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")),r=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,h=a.right+a.left,c=i-l,d=r-h-e;return{cols:Math.max(LC,Math.floor(d/t.css.cell.width)),rows:Math.max(BC,Math.floor(c/t.css.cell.height))}}};function OC({source:t,onReady:e,onSelectionChange:s,className:i}){const r=P.useRef(null),o=P.useRef(null),a=P.useRef(s);a.current=s;const l=ps(),h=P.useRef(t);return h.current=t,Kd((c,d)=>{c===h.current&&o.current?.write(d)}),P.useEffect(()=>{const c=r.current;if(!c)return;const d=getComputedStyle(document.documentElement),u=b=>d.getPropertyValue(b).trim()||void 0,f=new IC({allowTransparency:!1,fontFamily:u("--font-mono")||"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontSize:12.5,lineHeight:1.5,scrollback:5e3,cursorBlink:!1,disableStdin:!0,theme:{background:u("--sidebar")||u("--card")||u("--background")||"#1e1e1e",cursor:"transparent",foreground:u("--foreground")||"#d4d4d4",selectionBackground:u("--accent"),selectionForeground:u("--accent-foreground"),black:u("--muted"),red:u("--destructive"),green:u("--success"),yellow:u("--warning"),blue:u("--chart-1"),magenta:u("--chart-3"),cyan:u("--chart-5"),white:u("--foreground"),brightBlack:u("--muted-foreground"),brightRed:u("--destructive"),brightGreen:u("--success"),brightYellow:u("--warning"),brightBlue:u("--chart-1"),brightMagenta:u("--chart-3"),brightCyan:u("--chart-5"),brightWhite:u("--foreground")}}),m=new MC;f.loadAddon(m),f.open(c),m.fit();const p=l.getBuffer(t);p&&f.write(p),o.current=f,e?.(f);const g=f.onSelectionChange(()=>{const b=!!f.getSelection();a.current?.(b,()=>f.getSelection())}),v=new ResizeObserver(()=>{m.fit()});return v.observe(c),()=>{g.dispose(),v.disconnect(),o.current=null,f.dispose()}},[]),n.jsx("div",{className:le("h-full bg-sidebar p-3",i),children:n.jsx("div",{ref:r,className:"h-full"})})}function $C(t){const e=ps(),[s,i]=P.useState(Hs),[r,o]=P.useState([]),[a,l]=P.useState(new Set),h=P.useRef(!1);if(!h.current&&e.scripts.length>0){const y=k_.find(S=>e.scripts.includes(S));y&&(h.current=!0,o(S=>S.includes(y)?S:[...S,y]),i(y))}if(a.size>0){let y=!1;const S=new Set(a);for(const w of a)e.activeProcesses.includes(w)||(S.delete(w),y=!0);y&&l(S)}const c=()=>t.onOpenChange(!t.open),d=y=>{i(y),t.open||t.onOpenChange(!0)},u=y=>!t.virtualMcpId||!t.branch?Promise.resolve(null):fetch(`/api/${encodeURIComponent(t.orgSlug)}/sandbox/${encodeURIComponent(t.virtualMcpId)}/${encodeURIComponent(t.branch)}/exec/${encodeURIComponent(y)}`,{method:"POST"}),f=y=>!t.virtualMcpId||!t.branch?Promise.resolve(null):fetch(`/api/${encodeURIComponent(t.orgSlug)}/sandbox/${encodeURIComponent(t.virtualMcpId)}/${encodeURIComponent(t.branch)}/exec/${encodeURIComponent(y)}/kill`,{method:"POST"}),m=async y=>{o(S=>S.includes(y)?S:[...S,y]),i(y),t.onOpenChange(!0);try{const S=await u(y);if(S===null)return;if(!S.ok)throw new Error(`Exec failed: ${S.statusText}`)}catch{ae.error("Failed to run "+y)}},p=async y=>{await f(y),o(S=>S.filter(w=>w!==y)),s===y&&i(Hs)},g=async()=>{const y=e.activeProcesses.includes(s);try{const S=await u(s);if(S===null)return;if(!S.ok)throw new Error(`Exec failed: ${S.statusText}`)}catch{ae.error((y?"Failed to restart ":"Failed to run ")+s)}},v=async()=>{if(!a.has(s)){l(y=>new Set(y).add(s));try{const y=await f(s);if(y===null){l(S=>{const w=new Set(S);return w.delete(s),w});return}if(!y.ok)throw new Error(`Kill failed: ${y.statusText}`)}catch{l(y=>{const S=new Set(y);return S.delete(s),S}),ae.error("Failed to stop "+s)}}},b=s!==Hs&&r.includes(s),x=b&&e.activeProcesses.includes(s),_=b&&a.has(s);return n.jsxs("div",{className:"flex shrink-0 flex-col",style:{height:t.open?"50%":"auto"},children:[n.jsx(bS,{status:t.status,open:t.open,onToggle:c,onStart:t.status==="idle"?t.onStart:void 0,onStop:t.status==="running"||t.status==="starting"?t.onStop:void 0,onRestart:t.status==="running"?t.onRestart:void 0,onResume:t.status==="suspended"?t.onResume:void 0,onRetry:t.status==="errored"?t.onRetry:void 0,scripts:t.scripts,active:s,scriptTabs:r,onSelectTab:d,onAddScript:m,onCloseScript:p,showScriptControls:b,scriptIsRunning:x,scriptIsKilling:_,onRunActiveScript:g,onStopActiveScript:v}),t.open&&n.jsx("div",{className:"flex-1 overflow-hidden",children:n.jsx(zC,{vmId:t.vmId,active:s,hasData:e.hasData(s),onRunActive:g})})]})}function zC(t){const e=H.c(10),{vmId:s,active:i,hasData:r,onRunActive:o}=t;if(!s)return null;if(i===Hs||r){let d;return e[0]!==i?(d=n.jsx(OC,{source:i,className:"h-full"},i),e[0]=i,e[1]=d):d=e[1],d}let a;e[2]!==i?(a=n.jsxs("p",{children:['Script "',n.jsx("span",{className:"font-mono text-foreground",children:i}),'" not running']}),e[2]=i,e[3]=a):a=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx(fi,{className:"size-3.5"}),e[4]=l):l=e[4];let h;e[5]!==o?(h=n.jsxs("button",{type:"button",onClick:o,className:"flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground hover:bg-accent",children:[l," Run"]}),e[5]=o,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=n.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-sm text-muted-foreground",children:[a,h]}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}const Ff=t=>`preview-drawer:${t}`,FC=/Authentication failed for|Invalid username or token|Password authentication is not supported/i;function HC(t){try{const e=localStorage.getItem(Ff(t));return e?!!JSON.parse(e).open:!1}catch{return!1}}function WC(t,e){try{localStorage.setItem(Ff(t),JSON.stringify({open:e}))}catch{}}function UC(){const t=H.c(21),e=Tr(),{org:s}=Re(),i=e?.virtualMcpId??null,r=al(),o=ps(),a=P.useRef(null);let l;t[0]!==o||t[1]!==r||t[2]!==i?(l=x=>{x!=="setup"||!i||a.current!==i&&FC.test(o.getBuffer("setup"))&&(a.current=i,r.restart())},t[0]=o,t[1]=r,t[2]=i,t[3]=l):l=t[3],Kd(l);const h=i??"__no-vmcp__",[c,d]=P.useState(null),u=P.useRef(null);u.current!==h&&(u.current=h,d(HC(h)));const f=c??!1;let m;t[4]!==h?(m=x=>{d(x),WC(h,x)},t[4]=h,t[5]=m):m=t[5];const p=m,g=r.vmEntry?.sandboxHandle??"no-vm",v=r.vmEntry?.sandboxHandle??null;let b;return t[6]!==o.scripts||t[7]!==p||t[8]!==r.branch||t[9]!==r.restart||t[10]!==r.resume||t[11]!==r.retry||t[12]!==r.start||t[13]!==r.status||t[14]!==r.stop||t[15]!==f||t[16]!==s.slug||t[17]!==g||t[18]!==v||t[19]!==i?(b=n.jsx($C,{vmId:v,orgSlug:s.slug,virtualMcpId:i,branch:r.branch,status:r.status,scripts:o.scripts,open:f,onOpenChange:p,onStart:r.start,onStop:r.stop,onRestart:r.restart,onResume:r.resume,onRetry:r.retry},g),t[6]=o.scripts,t[7]=p,t[8]=r.branch,t[9]=r.restart,t[10]=r.resume,t[11]=r.retry,t[12]=r.start,t[13]=r.status,t[14]=r.stop,t[15]=f,t[16]=s.slug,t[17]=g,t[18]=v,t[19]=i,t[20]=b):b=t[20],b}function Hf(t){const e=H.c(10),{virtualMcpId:s,taskId:i}=t,o=Tr()?.entity?.metadata;let a;e[0]!==o?(a=Us(o),e[0]=o,e[1]=a):a=e[1];const l=a;let h;e[2]!==i||e[3]!==s?(h=n.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:n.jsx(xS,{taskId:i,virtualMcpId:s})}),e[2]=i,e[3]=s,e[4]=h):h=e[4];let c;e[5]!==l?(c=l&&n.jsx(UC,{}),e[5]=l,e[6]=c):c=e[6];let d;return e[7]!==h||e[8]!==c?(d=n.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[h,c]}),e[7]=h,e[8]=c,e[9]=d):d=e[9],d}function KC(t){const e=H.c(9),{children:s,defaultSize:i,chatOpen:r,chatPanelWidth:o,onChatPanelResize:a}=t,[,l]=P.useTransition(),h=i>0&&i<100?o:i;let c;e[0]!==a?(c=p=>l(()=>{p>0&&p<100&&a(p)}),e[0]=a,e[1]=c):c=e[1];const d=c,u=r?"min-w-[348px]":"min-w-0";let f;e[2]!==u?(f=le("overflow-hidden bg-sidebar",u),e[2]=u,e[3]=f):f=e[3];let m;return e[4]!==s||e[5]!==h||e[6]!==d||e[7]!==f?(m=n.jsx(Zh,{defaultSize:h,minSize:20,collapsible:!0,collapsedSize:0,className:f,onResize:d,order:1,children:s}),e[4]=s,e[5]=h,e[6]=d,e[7]=f,e[8]=m):m=e[8],m}function VC(t){const e=H.c(32),{virtualMcpId:s,taskId:i,chatOpen:r,mainOpen:o,chatContent:a}=t;let l;e[0]!==r||e[1]!==o?(l=Vl(r,o),e[0]=r,e[1]=o,e[2]=l):l=e[2];const h=l,[c,d]=v_(),u=P.useRef(null);let f,m;e[3]!==r||e[4]!==c||e[5]!==o?(f=()=>{const A=u.current;if(!A)return;const R=Vl(r,o),k=R.chat>0&&R.chat<100?c:R.chat,C=R.chat>0&&R.chat<100?100-c:R.main;A.setLayout([k,C])},m=[r,o,c],e[3]=r,e[4]=c,e[5]=o,e[6]=f,e[7]=m):(f=e[6],m=e[7]),P.useEffect(f,m);const p=`${s}-${i}`;let g;e[8]===Symbol.for("react.memo_cache_sentinel")?(g={overflow:"visible"},e[8]=g):g=e[8];let v;e[9]!==a?(v=a??n.jsx(bd,{}),e[9]=a,e[10]=v):v=e[10];let b;e[11]!==v?(b=n.jsx("div",{className:"h-full p-0.5 pt-0.25",children:n.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:v})}),e[11]=v,e[12]=b):b=e[12];let x;e[13]!==r||e[14]!==c||e[15]!==d||e[16]!==h.chat||e[17]!==b?(x=n.jsx(KC,{defaultSize:h.chat,chatOpen:r,chatPanelWidth:c,onChatPanelResize:d,children:b}),e[13]=r,e[14]=c,e[15]=d,e[16]=h.chat,e[17]=b,e[18]=x):x=e[18];let _;e[19]===Symbol.for("react.memo_cache_sentinel")?(_=n.jsx(Sp,{className:"bg-sidebar"}),e[19]=_):_=e[19];const y=h.main;let S;e[20]===Symbol.for("react.memo_cache_sentinel")?(S={overflow:"visible"},e[20]=S):S=e[20];let w;e[21]===Symbol.for("react.memo_cache_sentinel")?(w=le("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[21]=w):w=e[21];let j;e[22]!==i||e[23]!==s?(j=n.jsx("div",{className:"h-full p-0.5 pt-0.25",children:n.jsx("div",{className:w,children:n.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:n.jsx(Hf,{taskId:i,virtualMcpId:s})})})}),e[22]=i,e[23]=s,e[24]=j):j=e[24];let E;e[25]!==h.main||e[26]!==j?(E=n.jsx(Zh,{className:"min-w-0 flex flex-col",order:2,defaultSize:y,style:S,collapsible:!0,collapsedSize:0,minSize:20,children:j}),e[25]=h.main,e[26]=j,e[27]=E):E=e[27];let T;return e[28]!==E||e[29]!==p||e[30]!==x?(T=n.jsxs(wp,{ref:u,direction:"horizontal",className:"flex-1 min-h-0 pb-1 pr-1 pl-0 pt-0",style:g,children:[x,_,E]},p),e[28]=E,e[29]=p,e[30]=x,e[31]=T):T=e[31],T}function yh(t){const e=H.c(16),{chatOpen:s,toggleChat:i,onNewTask:r,newTaskFirst:o}=t,a=o===void 0?!1:o;let l;e[0]!==s||e[1]!==i?(l=()=>{Ie("agent_toolbar_toggled",{button:"chat",next_state:s?"closed":"open"}),i()},e[0]=s,e[1]=i,e[2]=l):l=e[2];let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(Zp,{size:16}),e[3]=h):h=e[3];let c;e[4]!==s||e[5]!==l?(c=n.jsx(Ce,{asChild:!0,children:n.jsx(Ll,{onClick:l,"aria-pressed":s,"aria-label":"Chat",active:s,children:h})}),e[4]=s,e[5]=l,e[6]=c):c=e[6];let d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(ke,{side:"bottom",children:"Chat"}),e[7]=d):d=e[7];let u;e[8]!==c?(u=n.jsxs(je,{delayDuration:300,children:[c,d]}),e[8]=c,e[9]=u):u=e[9];const f=u;let m;e[10]!==r?(m=r&&n.jsxs(je,{delayDuration:300,children:[n.jsx(Ce,{asChild:!0,children:n.jsx(Ll,{onClick:r,"aria-label":"New task",children:n.jsx(Ta,{size:16})})}),n.jsx(ke,{side:"bottom",children:"New task"})]}),e[10]=r,e[11]=m):m=e[11];const p=m;let g;return e[12]!==f||e[13]!==p||e[14]!==a?(g=n.jsx(n.Fragment,{children:a?n.jsxs(n.Fragment,{children:[p,f]}):n.jsxs(n.Fragment,{children:[f,p]})}),e[12]=f,e[13]=p,e[14]=a,e[15]=g):g=e[15],g}function qC(t,e,s){if(t.length<=s)return{visible:t,overflow:[]};const i=t.slice(0,s),r=t.slice(s);if(e==null)return{visible:i,overflow:r};if(i.some(u=>u.id===e))return{visible:i,overflow:r};const a=r.findIndex(u=>u.id===e);if(a===-1)return{visible:i,overflow:r};const l=i[i.length-1],h=r[a],c=[...i.slice(0,-1),h],d=[l,...r.slice(0,a),...r.slice(a+1)];return{visible:c,overflow:d}}function GC(t){const e=H.c(13),{overflow:s,onSelect:i}=t,[r,o]=P.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 h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(Js,{asChild:!0,children:n.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:n.jsx(Tn,{className:"size-4"})})}),e[2]=h):h=e[2];let c;if(e[3]!==l||e[4]!==s){let f;e[6]!==l?(f=m=>n.jsx("li",{children:n.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:[n.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:n.jsx(Ea,{icon:m.icon})}),n.jsx("span",{className:"truncate",children:m.title})]})},m.id),e[6]=l,e[7]=f):f=e[7],c=s.map(f),e[3]=l,e[4]=s,e[5]=c}else c=e[5];let d;e[8]!==c?(d=n.jsx(Zs,{align:"end",className:"w-56 p-1",children:n.jsx("ul",{className:"flex flex-col",children:c})}),e[8]=c,e[9]=d):d=e[9];let u;return e[10]!==r||e[11]!==d?(u=n.jsxs(Xs,{open:r,onOpenChange:o,children:[h,d]}),e[10]=r,e[11]=d,e[12]=u):u=e[12],u}const YC=6;function XC(t){const e=H.c(20),{virtualMcpId:s,taskId:i}=t,r=Mt();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:h,setActiveTab:c}=ll(o);let d,u,f,m;if(e[3]!==l||e[4]!==h||e[5]!==r||e[6]!==c||e[7]!==a||e[8]!==s){const v=qh({activeTab:l,mainOpen:h}),b=w=>w.id==="automations"?v:h&&w.id===l,_=a.find(w=>b(w))?.id??null,{visible:y,overflow:S}=qC(a,_,YC);u=S,d=w=>{const j=a.find(T=>T.id===w),E=_===w&&h;if(Ie("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:w,tab_kind:j?.kind??null,was_active:E}),w==="automations"){const T=Gh({activeTab:l,mainOpen:h});r({to:".",search:A=>({...A,main:T}),replace:!0});return}c(w)},f="flex items-center min-w-0 gap-0.5",m=y.map(w=>n.jsx(Cp,{title:w.title,icon:w.icon,active:b(w),onClick:()=>d(w.id)},w.id)),e[3]=l,e[4]=h,e[5]=r,e[6]=c,e[7]=a,e[8]=s,e[9]=d,e[10]=u,e[11]=f,e[12]=m}else d=e[9],u=e[10],f=e[11],m=e[12];let p;e[13]!==d||e[14]!==u?(p=u.length>0&&n.jsx(GC,{overflow:u,onSelect:d}),e[13]=d,e[14]=u,e[15]=p):p=e[15];let g;return e[16]!==f||e[17]!==m||e[18]!==p?(g=n.jsxs("div",{className:f,children:[m,p]}),e[16]=f,e[17]=m,e[18]=p,e[19]=g):g=e[19],g}const xo="__mobile-main-panel-tab-select__";function JC({tabs:t,activeTab:e,mainOpen:s}){const i=t.find(r=>r.id===e);return s?i?.title??"Main view":i?.title??t[0]?.title??"Main view"}function ZC(t){const e=H.c(40),{virtualMcpId:s,taskId:i}=t,r=Mt();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:h,setActiveTab:c}=ll(o);let d;e[3]!==l||e[4]!==h||e[5]!==a?(d=JC({tabs:a,activeTab:l,mainOpen:h}),e[3]=l,e[4]=h,e[5]=a,e[6]=d):d=e[6];const u=d;let f;e[7]!==l||e[8]!==h||e[9]!==a?(f=a.find(T=>T.id===l)??(h?null:a[0]),e[7]=l,e[8]=h,e[9]=a,e[10]=f):f=e[10];const m=f;let p;e[11]!==l||e[12]!==h?(p=qh({activeTab:l,mainOpen:h}),e[11]=l,e[12]=h,e[13]=p):p=e[13];const g=p;let v;e[14]!==l||e[15]!==g||e[16]!==h||e[17]!==r||e[18]!==c||e[19]!==a||e[20]!==s?(v=T=>{if(T===xo)return;const A=a.find(R=>R.id===T);if(Ie("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:T,tab_kind:A?.kind??null,was_active:T==="automations"?g:h&&l===T,source:"mobile_select"}),T==="automations"){const R=Gh({activeTab:l,mainOpen:h});r({to:".",search:k=>({...k,main:R}),replace:!0});return}c(T)},e[14]=l,e[15]=g,e[16]=h,e[17]=r,e[18]=c,e[19]=a,e[20]=s,e[21]=v):v=e[21];const b=v;let x;e[22]!==m?(x=m&&n.jsx("span",{className:"flex size-4 shrink-0 items-center justify-center",children:n.jsx(Ea,{icon:m.icon})}),e[22]=m,e[23]=x):x=e[23];let _;e[24]!==u?(_=n.jsx("span",{className:"min-w-0 truncate",children:u}),e[24]=u,e[25]=_):_=e[25];let y;e[26]!==x||e[27]!==_?(y=n.jsx(jt,{"aria-label":"Main panel tab",className:"h-10! w-full min-w-0 max-w-[7.5rem] rounded-md border-0 bg-transparent px-1.5 text-xs shadow-none [--card-shadow:none]",children:n.jsxs("span",{className:"flex min-w-0 items-center gap-1.5",children:[x,_]})}),e[26]=x,e[27]=_,e[28]=y):y=e[28];let S;e[29]!==u?(S=n.jsx(Ye,{value:xo,disabled:!0,hideCheck:!0,className:"hidden",children:u}),e[29]=u,e[30]=S):S=e[30];let w;e[31]!==a?(w=a.map(QC),e[31]=a,e[32]=w):w=e[32];let j;e[33]!==w||e[34]!==S?(j=n.jsxs(Nt,{align:"end",className:"w-56",children:[S,w]}),e[33]=w,e[34]=S,e[35]=j):j=e[35];let E;return e[36]!==b||e[37]!==j||e[38]!==y?(E=n.jsxs(Et,{value:xo,onValueChange:b,children:[y,j]}),e[36]=b,e[37]=j,e[38]=y,e[39]=E):E=e[39],E}function QC(t){return n.jsx(Ye,{value:t.id,children:n.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[n.jsx("span",{className:"flex size-5 shrink-0 items-center justify-center",children:n.jsx(Ea,{icon:t.icon})}),n.jsx("span",{className:"min-w-0 truncate",children:t.title})]})},t.id)}function Wf(t){return wr({userName:t?.name,userEmail:t?.email})??void 0}const Sh=3e3,ek=6e4;function tk(t){const e=H.c(12),{orgSlug:s,virtualMcpId:i,branch:r,enabled:o}=t,a=o===void 0?!0:o,l=r??"";let h;e[0]!==s||e[1]!==l||e[2]!==i?(h=mx(s,i,l),e[0]=s,e[1]=l,e[2]=i,e[3]=h):h=e[3];let c;e[4]!==r||e[5]!==s||e[6]!==i?(c=()=>Hr(s,i,r),e[4]=r,e[5]=s,e[6]=i,e[7]=c):c=e[7];const d=a&&!!r;let u;return e[8]!==h||e[9]!==c||e[10]!==d?(u={queryKey:h,queryFn:c,enabled:d,refetchInterval:ik,retry:sk,staleTime:1e3},e[8]=h,e[9]=c,e[10]=d,e[11]=u):u=e[11],As(u)}function sk(t,e){return!hl(e)}function ik(t){if(!hl(t.state.error))return Sh;const e=t.state.fetchFailureCount;return Math.min(Sh*2**e,ek)}const rk=new Set(["main","master"]);function Pl(t){return rk.has(t.trim().toLowerCase())?"Publish to production":"Publish"}function nk(t){const e=H.c(24),{baseBranch:s,disabled:i,loading:r,onPublish:o,onReview:a}=t,l=r===void 0?!1:r;let h;e[0]!==s?(h=Pl(s),e[0]=s,e[1]=h):h=e[1];const c=h;let d;e[2]!==o?(d=()=>{o()},e[2]=o,e[3]=d):d=e[3];let u;e[4]!==l?(u=l?n.jsx(wa,{size:"xs",variant:"default"}):null,e[4]=l,e[5]=u):u=e[5];let f;e[6]!==i||e[7]!==c||e[8]!==d||e[9]!==u?(f=n.jsxs(oe,{size:"sm",variant:"success",className:"rounded-r-none border-r border-success-foreground/20",disabled:i,onClick:d,children:[u,c]}),e[6]=i,e[7]=c,e[8]=d,e[9]=u,e[10]=f):f=e[10];let m;e[11]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx(Rs,{className:"h-3.5 w-3.5"}),e[11]=m):m=e[11];let p;e[12]!==i?(p=n.jsx(as,{asChild:!0,children:n.jsx(oe,{size:"sm",variant:"success",className:"rounded-l-none px-2",disabled:i,"aria-label":"More actions",children:m})}),e[12]=i,e[13]=p):p=e[13];let g;e[14]!==a?(g=a?n.jsx(We,{onClick:a,children:"Review"}):null,e[14]=a,e[15]=g):g=e[15];let v;e[16]!==g?(v=n.jsx(ls,{align:"end",children:g}),e[16]=g,e[17]=v):v=e[17];let b;e[18]!==p||e[19]!==v?(b=n.jsxs(os,{children:[p,v]}),e[18]=p,e[19]=v,e[20]=b):b=e[20];let x;return e[21]!==b||e[22]!==f?(x=n.jsxs("div",{className:"inline-flex items-stretch rounded-md",children:[f,b]}),e[21]=b,e[22]=f,e[23]=x):x=e[23],x}class Ui extends Error{constructor(e,s,i){super(e),this.step=s,this.pr=i,this.name="PublishFlowError"}step;pr}function ok(t){const e=H.c(10),[s,i]=P.useState(0);let r;e[0]!==t?(r=h=>{h&&i(ak),t.onOpenChange(h)},e[0]=t,e[1]=r):r=e[1];const o=r;let a;e[2]!==o||e[3]!==t||e[4]!==s?(a=t.open?n.jsx(lk,{...t,onOpenChange:o},s):null,e[2]=o,e[3]=t,e[4]=s,e[5]=a):a=e[5];let l;return e[6]!==o||e[7]!==t.open||e[8]!==a?(l=n.jsx(Kt,{open:t.open,onOpenChange:o,children:a}),e[6]=o,e[7]=t.open,e[8]=a,e[9]=l):l=e[9],l}function ak(t){return t+1}function lk({onOpenChange:t,orgSlug:e,orgId:s,virtualMcpId:i,branch:r,baseBranch:o,githubConnectionId:a,owner:l,repo:h,previewUrl:c,dialogIntent:d="publish",headSha:u=null,openPullRequest:f=null,onPullRequestChanged:m,onPublished:p}){const g=vt({connectionId:a,orgId:s,orgSlug:e}),v=vt({connectionId:ka,orgId:s,orgSlug:e}),{data:b}=vi.useSession(),x=ya(v),_=Wf(b?.user),y=f?.state==="open",S=d==="publish",w=d==="open-pr"&&!y,[j,E]=P.useState(null),[T,A]=P.useState(null),[R,k]=P.useState(!0),[C,D]=P.useState(!1),[N,L]=P.useState(""),[B,I]=P.useState(""),[M,O]=P.useState(),[F,z]=P.useState(!1),[K,G]=P.useState(!1),[X,ie]=P.useState(),[W,Y]=P.useState(),[ne,$]=P.useState(!1),[Z,U]=P.useState(!1),[ee,Q]=P.useState(!1),fe=P.useRef(!1),me=P.useRef(!1),ve=async()=>{const xe=await Hr(e,i,r),Te=w||!y&&(xe.aheadOfBase??0)>0?{base:o,...u?{headSha:u}:{}}:void 0,ze=await su(e,i,r,Te);E(xe),A(ze),L(`Changes from ${xe.current??r}`),Q(!0),cc(e,i,r,{status:xe,diff:ze}).then(Ae=>{L(Ae.title),I(Ae.body)}).catch(()=>{}).finally(()=>Q(!1))};fe.current||(fe.current=!0,(async()=>{k(!0),O(void 0),A(null),L(""),I(""),ie(void 0),Y(void 0);try{await ve()}catch(xe){if(hl(xe)&&!me.current){me.current=!0;try{await x.mutateAsync({virtualMcpId:i,branch:r}),await ve();return}catch(de){O(de instanceof Error?de.message:"Failed to load changes after re-provisioning the sandbox.");return}}O(xe instanceof Error?xe.message:"Failed to load changes.")}finally{k(!1)}})());const J=dl(j)??r,se=Pl(o),pe=()=>{!j||!T||(Q(!0),cc(e,i,r,{status:j,diff:T}).then(xe=>{L(xe.title),I(xe.body)}).catch(()=>{}).finally(()=>Q(!1)))},ge=iu(j),Be=T?Object.keys(T.diffs).length:ge,Le=w?nu(j):px(j,T),Ee=!R&&(S?Le:Le||w),Ze=Ee&&hc(T),ct=Ee&&!hc(T)?ux:null,yt=w||!y&&(j?.aheadOfBase??0)>0,mt=!R&&(yt||Le)&&(Be>0||Le),St=()=>[N.trim(),B.trim()].filter(Boolean).join(`
|
|
501
|
-
|
|
502
|
-
`),qe=xe=>{C||F||K||t(xe)},wt=async()=>{G(!0),Y(void 0);try{const xe=St()||N.trim()||`Changes from ${J}`;await Jn(e,i,r,xe),ae.success(f?`Saved changes to PR #${f.number}`:"Changes saved"),qe(!1),await m?.()}catch(xe){Y(xe instanceof Error?xe.message:"Failed to save changes")}finally{G(!1)}},qt=async()=>{D(!0),O(void 0);let xe;try{const de=N.trim()||`Changes from ${J}`,Te=B.trim()||void 0,ze=St()||de;try{await Jn(e,i,r,ze)}catch(Ae){throw new Ui(Ae instanceof Error?Ae.message:"Failed to push changes","push")}try{await cx(e,i,r,o)}catch(Ae){throw new Ui(Ae instanceof Error?Ae.message:"Failed to rebase onto base","rebase")}try{xe=await Yl(g,{owner:l,repo:h,branch:J,title:de,body:Te,base:o,coAuthor:_})}catch(Ae){throw new Ui(Ae instanceof Error?Ae.message:"Failed to open pull request","open-pr")}try{await Nd(g,{owner:l,repo:h,pullNumber:xe.number,commitTitle:de,commitMessage:Te,coAuthor:_})}catch(Ae){throw new Ui(Ae instanceof Error?Ae.message:"Failed to merge pull request","merge",xe)}ae.success(`Published to ${o}`),qe(!1),A(null),L(""),I(""),await m?.(),await p?.()}catch(de){if(de instanceof Ui&&de.step==="merge"&&de.pr){const Te=`Changes were pushed and PR #${de.pr.number} is open, but merge failed: ${de.message}`;O(Te),ae.error(Te,{action:{label:"View PR",onClick:()=>window.open(de.pr.htmlUrl,"_blank","noopener,noreferrer")}}),await m?.();return}O(de instanceof Error?de.message:"Failed to publish")}finally{D(!1)}},pt=async xe=>{try{await dc(e,i,r,[xe]),ae.success(`Discarded changes to ${xe}`),A(Te=>{if(!Te)return Te;const ze={...Te,diffs:{...Te.diffs}};return delete ze.diffs[xe],ze});const de=await Hr(e,i,r);E(de)}catch(de){ae.error(de instanceof Error?de.message:"Failed to discard changes")}},Ot=async()=>{if(T){$(!1),U(!0);try{const xe=Object.keys(T.diffs);if(xe.length===0)return;await dc(e,i,r,xe),ae.success("All changes discarded"),A(null);const de=await Hr(e,i,r);E(de),qe(!1)}catch(xe){ae.error(xe instanceof Error?xe.message:"Failed to discard changes")}finally{U(!1)}}},Ct=async()=>{z(!0),ie(void 0);try{const xe=N.trim()||`Changes from ${J}`,de=B.trim()||void 0,Te=St()||xe;await Jn(e,i,r,Te);const ze=await Yl(g,{owner:l,repo:h,branch:J,title:xe,body:de,base:o,coAuthor:_});ae.success(`Submitted pull request #${ze.number} for review`,{action:{label:"View on GitHub",onClick:()=>window.open(ze.htmlUrl,"_blank","noopener,noreferrer")}}),qe(!1),await m?.()}catch(xe){ie(xe instanceof Error?xe.message:"Failed to submit for review")}finally{z(!1)}};return n.jsx(Vt,{className:"top-14 left-auto right-4 flex h-[90%] max-h-[85vh] w-[90vw] max-w-[600px] translate-x-0 translate-y-0 flex-col gap-0 overflow-hidden p-0",children:n.jsxs(Ba,{defaultValue:"description",className:"flex h-full flex-col gap-0",children:[n.jsxs("div",{className:"shrink-0 space-y-3 px-6 pt-5 pb-4",children:[n.jsxs("div",{className:"space-y-1",children:[n.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:S?"Save changes":w?"Submit for review":se}),n.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[n.jsx("span",{className:"inline-block h-2.5 w-2.5 shrink-0 rounded-full bg-green-500"}),Be," ",Be===1?"change":"changes"," ",S?"to save":w?"in this PR":"to publish"]})]}),ne?n.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md bg-destructive/5 px-3 py-2",children:[n.jsx("span",{className:"text-xs text-destructive",children:"Discard all changes? This cannot be undone."}),n.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[n.jsx(oe,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2 text-xs",onClick:()=>$(!1),children:"Cancel"}),n.jsxs(oe,{type:"button",size:"sm",className:"h-7 bg-destructive px-2 text-xs text-destructive-foreground hover:bg-destructive/90",onClick:Ot,disabled:Z,children:[Z?n.jsx(Ne,{className:"h-3 w-3 animate-spin"}):null,"Discard all"]})]})]}):n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsxs(La,{className:"h-8 w-auto",variant:"pill",children:[n.jsx($s,{value:"description",className:"px-3 text-xs",children:"Description"}),n.jsx($s,{value:"changes",className:"px-3 text-xs",children:"Changes"})]}),Be>0&&!w&&n.jsx("button",{type:"button",className:"text-xs text-muted-foreground transition-colors hover:text-destructive disabled:opacity-50",onClick:()=>$(!0),disabled:C||Z||K,children:"Discard all"})]})]}),n.jsx("div",{className:"border-t"}),n.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:R?n.jsxs("div",{className:"flex items-center justify-center gap-2 py-16 text-muted-foreground",children:[n.jsx(Ne,{className:"h-4 w-4 animate-spin"}),n.jsx("span",{className:"text-sm",children:"Loading changes…"})]}):n.jsxs(n.Fragment,{children:[n.jsx(sr,{value:"description",className:"mt-0 px-6 py-5",children:n.jsxs("div",{className:"space-y-4",children:[n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("p",{className:"text-sm font-medium",children:w?"Pull request":"Commit message"}),n.jsxs("button",{type:"button",className:"flex items-center gap-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:opacity-50",disabled:ee||C||F||K,onClick:pe,children:[ee?n.jsx(Ne,{className:"h-3 w-3 animate-spin"}):n.jsx(zs,{className:"h-3 w-3"}),ee?"Generating…":"Regenerate"]})]}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsx("label",{htmlFor:"publish-title",className:"text-xs font-medium text-muted-foreground",children:"Title"}),n.jsx(tt,{id:"publish-title",value:N,onChange:xe=>L(xe.target.value),placeholder:ee?"Generating…":"Commit title…",disabled:C||F||K||ee,className:"text-sm"})]}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsx("label",{htmlFor:"publish-body",className:"text-xs font-medium text-muted-foreground",children:"Description"}),n.jsx(Jr,{id:"publish-body",value:B,onChange:xe=>I(xe.target.value),placeholder:ee?"Generating…":"Description (optional)…",disabled:C||F||K||ee,rows:5,className:"resize-none text-sm"})]}),n.jsxs("p",{className:"text-xs text-muted-foreground",children:["Branch: ",n.jsx("span",{className:"font-mono",children:r}),S?n.jsxs(n.Fragment,{children:[" · ",n.jsx("span",{className:"text-foreground/80",children:y?`Commits and pushes to update open PR #${f.number}.`:"Commits and pushes to the branch without opening a pull request."})]}):n.jsxs(n.Fragment,{children:[" → ",n.jsx("span",{className:"font-mono",children:o})," · ",n.jsxs("span",{className:"text-foreground/80",children:["Submit for review keeps changes on the branch;"," ",se," squash-merges into ",o,"."]})]})]})]})}),n.jsx(sr,{value:"changes",className:"mt-0",children:n.jsx(ou,{diff:T,onDiscardFile:pt})})]})}),n.jsx("div",{className:"shrink-0 border-t",children:n.jsxs("button",{type:"button",className:"flex w-full items-center justify-between px-6 py-3.5 text-sm transition-colors hover:bg-muted/50 disabled:opacity-50",onClick:()=>{c&&window.open(c,"_blank","noopener,noreferrer")},disabled:!c,children:[n.jsxs("span",{className:"flex items-center gap-3",children:[n.jsx(sg,{className:"h-4 w-4 text-muted-foreground"}),"Visit preview"]}),n.jsx(Tm,{className:"h-4 w-4 text-muted-foreground"})]})}),n.jsx("div",{className:"shrink-0 border-t px-6 py-3",children:S&&!yt?n.jsxs(n.Fragment,{children:[n.jsxs(oe,{type:"button",className:"w-full",onClick:wt,disabled:!Ee||K,children:[K?n.jsx(Ne,{className:"h-4 w-4 animate-spin"}):null,"Save changes"]}),W&&n.jsx("p",{className:"mt-2 text-xs text-destructive",children:W})]}):S?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsxs(oe,{type:"button",variant:"outline",className:"flex-1",onClick:wt,disabled:!Ee||K||F,children:[K?n.jsx(Ne,{className:"h-4 w-4 animate-spin"}):null,"Save changes"]}),n.jsxs(oe,{type:"button",className:"flex-1",onClick:Ct,disabled:!mt||F||K,children:[F?n.jsx(Ne,{className:"h-4 w-4 animate-spin"}):n.jsx(cr,{className:"h-4 w-4"}),"Submit for review"]})]}),W&&n.jsx("p",{className:"mt-2 text-xs text-destructive",children:W}),X&&n.jsx("p",{className:"mt-2 text-xs text-destructive",children:X})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsxs(oe,{type:"button",variant:"outline",className:"flex-1",onClick:Ct,disabled:!mt||F||C,children:[F?n.jsx(Ne,{className:"h-4 w-4 animate-spin"}):n.jsx(cr,{className:"h-4 w-4"}),"Submit for review"]}),n.jsx(ck,{label:se,canPublish:Ze,disabledReason:ct,isPublishing:C,isSubmittingForReview:F,onPublish:qt})]}),X&&n.jsx("p",{className:"mt-2 text-xs text-destructive",children:X}),M&&n.jsx("p",{className:"mt-2 text-xs text-destructive",children:M})]})})]})})}function ck(t){const e=H.c(14),{label:s,canPublish:i,disabledReason:r,isPublishing:o,isSubmittingForReview:a,onPublish:l}=t,h=!i||o||a;let c;e[0]!==o?(c=o?n.jsx(Ne,{className:"h-4 w-4 animate-spin"}):null,e[0]=o,e[1]=c):c=e[1];let d;e[2]!==s||e[3]!==l||e[4]!==h||e[5]!==c?(d=n.jsxs(oe,{type:"button",variant:"success",className:"flex-1",onClick:l,disabled:h,children:[c,s]}),e[2]=s,e[3]=l,e[4]=h,e[5]=c,e[6]=d):d=e[6];const u=d;if(!r)return u;let f;e[7]!==u?(f=n.jsx(Ce,{asChild:!0,children:n.jsx("span",{className:"flex flex-1",children:u})}),e[7]=u,e[8]=f):f=e[8];let m;e[9]!==r?(m=n.jsx(ke,{children:r}),e[9]=r,e[10]=m):m=e[10];let p;return e[11]!==f||e[12]!==m?(p=n.jsx(Hh,{children:n.jsxs(je,{children:[f,m]})}),e[11]=f,e[12]=m,e[13]=p):p=e[13],p}function hk(){return!1}function Uf(t,e){hk()&&console.log(`[github-header] ${t}`,e??"")}function dk(t){if(!(t==="claiming"||t==="ready"||t==="failed"))return Tu[t].short}const uk=new Set(["failure","timed_out","cancelled","action_required"]);function fk(t){return t.status==="completed"&&uk.has(t.conclusion)}function mk(t){return t.status==="queued"||t.status==="in_progress"}function pk(t){return t.isPending&&t.fetchStatus!=="idle"}function gk(t){const{lifecycle:e,branch:s,pr:i,checks:r,reviews:o,loading:a}=t;if(a)return{label:"Loading…",disabled:!0,loading:!0,variant:"outline",tooltip:"Loading branch and pull request status"};switch(e.phase){case"idle":return{label:t.claimPhase&&dk(t.claimPhase.kind)||"Starting sandbox…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for the sandbox daemon to come online"};case"cloning":return{label:"Cloning repo…",disabled:!0,loading:!0,variant:"outline",tooltip:"Cloning the project repository"};case"clone-failed":return{label:"Clone failed",disabled:!0,variant:"outline",tooltip:e.error||"git clone failed — see setup logs"};case"checking-out":return{label:`Switching to ${e.to}…`,disabled:!0,loading:!0,variant:"outline",tooltip:`Checking out ${e.to}`}}if(s.kind!=="ready")return{label:"Loading branch…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for branch metadata from the sandbox daemon"};const l=s;if(l.workingTreeDirty)return{label:"Save changes",action:"commit-and-push",variant:"default",tooltip:"Commit and push local changes"};if(l.unpushed>0&&!(i&&l.headSha&&i.headSha&&l.headSha===i.headSha))return i?{label:"Save changes",action:"commit-and-push",variant:"default",tooltip:"Push local commits"}:{label:"Submit for review",action:"create-pr",variant:"default",tooltip:`Push and open a PR for ${l.branch} → ${l.base}`};if(Uf("no local work — checking PR/sync state",{workingTreeDirty:l.workingTreeDirty,unpushed:l.unpushed,aheadOfBase:l.aheadOfBase,behindBase:l.behindBase,branch:l.branch,base:l.base,prMerged:i?.merged??null,prState:i?.state??null}),i?.merged)return!!l.headSha&&!!i.headSha&&l.headSha!==i.headSha?{label:"Continue",action:"create-pr",variant:"special",tooltip:"Open a new PR with the latest commits"}:{label:"Published",disabled:!0,variant:"outline",tooltip:`PR #${i.number} merged into ${i.base}`};if(l.aheadOfBase>0){if(i&&i.state==="closed"&&!i.merged)return{label:"Reopen",action:"reopen",variant:"default",tooltip:`Reopen PR #${i.number}`};if(!i)return{label:"Submit for review",action:"create-pr",variant:"default",tooltip:`Open a PR for ${l.branch} → ${l.base}`};if((o?.mergeableState??"unknown")==="dirty")return{label:`Sync with ${i.base}`,action:"rebase",variant:"default",tooltip:`Resolve conflicts with ${i.base} before merging`};const d=r.filter(fk).map(m=>m.name);if(d.length>0)return{label:"Fix tests",action:"fix-checks",variant:"default",tooltip:`Failing: ${d.join(", ")}`,meta:{failingChecks:d}};const u=r.filter(mk);if(u.length>0)return{label:"Running tests…",disabled:!0,loading:!0,variant:"outline",tooltip:`Waiting on ${u.length} check${u.length===1?"":"s"} to finish`};if(o?.draft)return{label:"Mark ready",action:"mark-ready",variant:"default",tooltip:"Mark draft PR ready for review"};const f=o?.unresolvedConversations??0;return f>0?{label:"Address feedback",action:"resolve-comments",variant:"default",tooltip:`${f} unresolved conversation${f===1?"":"s"}`}:o?.missingRequiredApprovals?{label:"Awaiting review",disabled:!0,variant:"outline",tooltip:"Waiting for required approvals"}:{label:Pl(i.base),action:"merge-split",variant:"success",tooltip:`Squash-merge PR #${i.number} into ${i.base}`}}return{label:"Up to date",disabled:!0,variant:"outline",tooltip:`Branch is in sync with ${l.base}`}}function _k(t,e,s){if(!e)return s??null;const i=t?.[e];if(!i)return s??null;if(s&&i[s])return s;for(const[r,o]of Object.entries(i))if(o&&Object.keys(o).length>0)return r;return s??null}const vk=6e4,xk=3e4;function bk(t){const e=H.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=vt(s),r=t.prNumber??0;let o;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(o={method:"get",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=o):o=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==o||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:o,enabled:a,refetchInterval:vk,refetchIntervalInBackground:!1,staleTime:xk,select:yk},e[8]=i,e[9]=o,e[10]=a,e[11]=l):l=e[11],An(l)}function yk(t){const e=ei(t);if(!e)return null;const s=e.mergeable_state??"unknown",i=!!(e.draft??!1),r=Number(e.review_comments??0),o=s==="blocked"&&r>0?r:0;return{draft:i,mergeableState:s,unresolvedConversations:o,missingRequiredApprovals:s==="blocked"&&o===0}}const Sk={label:"Loading branch…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for sandbox branch"};function wk({virtualMcpId:t}){const{org:e}=Re(),{data:s}=vi.useSession(),i=ds(t),{currentBranch:r,setCurrentTaskBranch:o}=ys(),a=Ys(),[l,h]=P.useState(!1),[c,d]=P.useState("publish"),[u,f]=P.useState(!1),m=P.useRef(""),p=xr(i),g=s?.user?.id,v=vt({connectionId:p?.connectionId??"",orgId:e.id,orgSlug:e.slug}),{lifecycle:b,branch:x,phase:_,notFound:y}=ps(),S=x.kind==="ready"?x.branch:null,w=_k(i?.metadata?.sandboxMap,g,r??S),j=r??S??w??void 0,E=b.phase==="cloning"||b.phase==="checking-out"||b.phase==="clone-failed",T=tk({orgSlug:e.slug,virtualMcpId:t,branch:j??null,enabled:!!p&&!!j&&!y&&!E}),A=dl(T.data)??j??null,R=Va({orgId:e.id,orgSlug:e.slug,connectionId:p?.connectionId??"",owner:p?.owner??"",repo:p?.name??"",branch:A}),k=R.data??null,C=Ed({orgId:e.id,orgSlug:e.slug,connectionId:p?.connectionId??"",owner:p?.owner??"",repo:p?.name??"",prNumber:k&&k.state==="open"?k.number:null}),D=bk({orgId:e.id,orgSlug:e.slug,connectionId:p?.connectionId??"",owner:p?.owner??"",repo:p?.name??"",prNumber:k&&k.state==="open"?k.number:null}),N=xx(x,T.data);if(!p)return null;const L=g&&A?Cn(i?.metadata?.sandboxMap?.[g]?.[A]):{},B=Object.values(L),M=(B.find($=>$.sandboxProviderKind!=="user-desktop")??B[0])?.previewUrl??null,O=A?gk({lifecycle:b,branch:N,claimPhase:_,pr:k,checks:C.data??[],reviews:D.data??null,loading:pk(R)}):Sk,F=JSON.stringify({label:O.label,branchKind:N.kind,workingTreeDirty:N.kind==="ready"?N.workingTreeDirty:null,gitModifiedCount:T.data?.modified.length??null,unpushed:N.kind==="ready"?N.unpushed:null,aheadOfBase:N.kind==="ready"?N.aheadOfBase:null,lifecycle:b.phase,githubHeadBranch:A});m.current!==F&&(m.current=F,Uf("header button",{label:O.label,tooltip:O.tooltip,action:O.action,chatBranch:r,sandboxBranch:S,sandboxMapBranch:w,sandboxRouteBranch:j,githubHeadBranch:A,branchMeta:x,effectiveBranchMeta:N,gitStatus:T.data??null,lifecyclePhase:b.phase,prNumber:k?.number??null,prState:k?.state??null}));const z=$=>a.sendMessage({parts:[{type:"text",text:$}]}),K=a.isStreaming,G=N.kind==="ready"?N.base:"main",X=async()=>{await Promise.all([R.refetch(),T.refetch(),C.refetch(),D.refetch()])},ie=async()=>{const $=Cm();await o($)},W=async $=>{if(!(!p?.connectionId||u)){f(!0);try{const Z=Wf(s?.user);await Nd(v,{owner:p.owner,repo:p.name,pullNumber:$,coAuthor:Z}),ae.success(`Published PR #${$}`),await X(),await ie()}catch(Z){ae.error(Z instanceof Error?Z.message:"Failed to merge pull request")}finally{f(!1)}}},Y=$=>{if(!(!$||!A))switch($){case"commit-and-push":d("publish"),h(!0);return;case"create-pr":d("open-pr"),h(!0);return;case"reopen":if(K)return;k&&z(Cx({prNumber:k.number}));return;case"rebase":if(K)return;z(kx({branch:A}));return;case"fix-checks":if(K)return;k&&z(Nx({prNumber:k.number,failingChecks:O.meta?.failingChecks??[]}));return;case"mark-ready":if(K)return;k&&z(Ex({prNumber:k.number}));return;case"resolve-comments":if(K)return;k&&z(Tx({prNumber:k.number}));return;case"merge-split":return}},ne=u||K;return n.jsxs(n.Fragment,{children:[n.jsx(Ck,{button:O,actionBusy:ne,githubActionPending:u,onActivate:Y,prNumber:k?.number,prBase:k?.base,onSquashMerge:W,onReview:k?()=>{K||z(Px({prNumber:k.number}))}:void 0}),j&&n.jsx(ok,{open:l,onOpenChange:h,orgSlug:e.slug,orgId:e.id,virtualMcpId:t,branch:j,baseBranch:G,githubConnectionId:p.connectionId??"",owner:p.owner,repo:p.name,previewUrl:M,dialogIntent:c,headSha:N.kind==="ready"?N.headSha:null,openPullRequest:k?.state==="open"?k:null,onPullRequestChanged:X,onPublished:ie})]})}function Ck(t){const e=H.c(25),{button:s,actionBusy:i,githubActionPending:r}=t,o=i&&s.action!=="create-pr"&&s.action!=="commit-and-push"&&s.action!=="merge-split",a=!!s.disabled||o||r&&s.action==="merge-split",l=!!s.loading||r&&s.action==="merge-split",h=o?"Chat is running":s.tooltip??null;if(s.action==="merge-split"&&t.prNumber!=null&&t.prBase!=null){let m;e[0]!==t?(m=()=>t.onSquashMerge(t.prNumber),e[0]=t,e[1]=m):m=e[1];let p;e[2]!==a||e[3]!==l||e[4]!==t.onReview||e[5]!==t.prBase||e[6]!==m?(p=n.jsx(nk,{baseBranch:t.prBase,disabled:a,loading:l,onPublish:m,onReview:t.onReview}),e[2]=a,e[3]=l,e[4]=t.onReview,e[5]=t.prBase,e[6]=m,e[7]=p):p=e[7];let g;return e[8]!==p||e[9]!==h?(g=n.jsx(wh,{label:h,children:p}),e[8]=p,e[9]=h,e[10]=g):g=e[10],g}let c;e[11]!==s.action||e[12]!==t?(c=()=>{s.action&&t.onActivate(s.action)},e[11]=s.action,e[12]=t,e[13]=c):c=e[13];let d;e[14]!==l?(d=l?n.jsx(wa,{size:"xs",variant:"default"}):null,e[14]=l,e[15]=d):d=e[15];let u;e[16]!==s.label||e[17]!==s.variant||e[18]!==a||e[19]!==c||e[20]!==d?(u=n.jsxs(oe,{size:"sm",variant:s.variant,disabled:a,onClick:c,children:[d,s.label]}),e[16]=s.label,e[17]=s.variant,e[18]=a,e[19]=c,e[20]=d,e[21]=u):u=e[21];let f;return e[22]!==u||e[23]!==h?(f=n.jsx(wh,{label:h,children:u}),e[22]=u,e[23]=h,e[24]=f):f=e[24],f}function wh(t){const e=H.c(9),{label:s,children:i}=t;if(!s){let l;return e[0]!==i?(l=n.jsx(n.Fragment,{children:i}),e[0]=i,e[1]=l):l=e[1],l}let r;e[2]!==i?(r=n.jsx(Ce,{asChild:!0,children:n.jsx("span",{children:i})}),e[2]=i,e[3]=r):r=e[3];let o;e[4]!==s?(o=n.jsx(ke,{children:s}),e[4]=s,e[5]=o):o=e[5];let a;return e[6]!==r||e[7]!==o?(a=n.jsx(Hh,{children:n.jsxs(je,{children:[r,o]})}),e[6]=r,e[7]=o,e[8]=a):a=e[8],a}function kk(t){const e=H.c(11),{virtualMcp:s}=t,i=Ca(),{org:r}=Re(),o=Mt(),{create:a}=Yh();let l,h;if(e[0]!==i||e[1]!==a||e[2]!==o||e[3]!==r||e[4]!==s){h=Symbol.for("react.early_return_sentinel");e:{const c=Jm(s,i);if(!c){h=null;break e}const d=c.mode==="dev";let u;e[7]!==a||e[8]!==o||e[9]!==r.slug?(u=async p=>{const g=crypto.randomUUID();try{await a({id:g,virtual_mcp_id:p})}catch{}o({to:"/$org/$taskId",params:{org:r.slug,taskId:g},search:{virtualmcpid:p}})},e[7]=a,e[8]=o,e[9]=r.slug,e[10]=u):u=e[10];const f=u,m=(p,g)=>n.jsx("button",{type:"button","aria-pressed":g,onClick:()=>{g||f(c.targetId)},className:le("px-2.5 py-1 rounded-md transition-colors",g?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:p});l=n.jsxs("div",{className:"inline-flex items-center rounded-lg border border-border bg-muted p-0.5 text-xs font-medium",children:[m("Develop",d),m("Live",!d)]})}e[0]=i,e[1]=a,e[2]=o,e[3]=r,e[4]=s,e[5]=l,e[6]=h}else l=e[5],h=e[6];return h!==Symbol.for("react.early_return_sentinel")?h:l}function jk(t){const e=H.c(8),{virtualMcp:s,inline:i}=t,r=i===void 0?!1:i;let o,a;e[0]!==s?(o=n.jsx(kk,{virtualMcp:s}),a=Zm(s)?n.jsx(wk,{virtualMcpId:s.id}):null,e[0]=s,e[1]=o,e[2]=a):(o=e[1],a=e[2]);let l;e[3]!==o||e[4]!==a?(l=n.jsxs("div",{className:"flex items-center gap-2",children:[o,a]}),e[3]=o,e[4]=a,e[5]=l):l=e[5];const h=l;if(r)return h;let c;return e[6]!==h?(c=n.jsx(Vi.Right,{children:h}),e[6]=h,e[7]=c):c=e[7],c}function Nk(t,e){const s=H.c(34),i=Xh(),r=P.useSyncExternalStore(i.threads.subscribe,i.threads.get),o=P.useSyncExternalStore(i.threadsStatus.subscribe,i.threadsStatus.get);let a;s[0]!==t||s[1]!==r?(a=t?r.find(_=>_.id===t)??null:null,s[0]=t,s[1]=r,s[2]=a):a=s[2];const l=a,[h,c]=P.useState(void 0);let d;s[3]===Symbol.for("react.memo_cache_sentinel")?(d=()=>{c(void 0)},s[3]=d):d=s[3];let u;s[4]!==t?(u=[t],s[4]=t,s[5]=u):u=s[5],P.useEffect(d,u);let f,m;s[6]!==h||s[7]!==t||s[8]!==l||s[9]!==i||s[10]!==o.kind?(f=()=>{t&&(l||o.kind!=="loading"&&h===void 0&&(c("pending"),i.fetchThread(t).then(_=>{c(_)})))},m=[t,l,o.kind,h,i],s[6]=h,s[7]=t,s[8]=l,s[9]=i,s[10]=o.kind,s[11]=f,s[12]=m):(f=s[11],m=s[12]),P.useEffect(f,m);let p;s[13]!==i||s[14]!==e?(p={mutationFn:async _=>i.create({id:_,virtual_mcp_id:e})},s[13]=i,s[14]=e,s[15]=p):p=s[15];const g=xi(p);let v,b;if(s[16]!==g||s[17]!==h||s[18]!==t||s[19]!==l||s[20]!==o.kind?(v=()=>{t&&(l||h===null&&o.kind!=="loading"&&(g.isPending||g.variables!==t&&g.mutate(t)))},b=[t,l,h,o.kind,g],s[16]=g,s[17]=h,s[18]=t,s[19]=l,s[20]=o.kind,s[21]=v,s[22]=b):(v=s[21],b=s[22]),P.useEffect(v,b),!t){let _;return s[23]===Symbol.for("react.memo_cache_sentinel")?(_={status:"ready",task:null},s[23]=_):_=s[23],_}if(l){let _;return s[24]!==l?(_={status:"ready",task:l},s[24]=l,s[25]=_):_=s[25],_}if(h&&typeof h=="object"){let _;return s[26]!==h?(_={status:"ready",task:h},s[26]=h,s[27]=_):_=s[27],_}if(g.data){let _;return s[28]!==g.data?(_={status:"ready",task:g.data},s[28]=g.data,s[29]=_):_=s[29],_}if(g.isError){let _;return s[30]!==g.error?(_={status:"error",error:g.error},s[30]=g.error,s[31]=_):_=s[31],_}if(g.isPending||o.kind!=="loading"){let _;return s[32]===Symbol.for("react.memo_cache_sentinel")?(_={status:"creating"},s[32]=_):_=s[32],_}let x;return s[33]===Symbol.for("react.memo_cache_sentinel")?(x={status:"loading"},s[33]=x):x=s[33],x}function Ek(){const t=H.c(6),e=Na(),s=Mt();let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},t[0]=i):i=t[0];const{preview:r}=wn(i);if(!e||!r)return null;let o;t[1]!==s?(o=()=>s({to:".",search:Tk}),t[1]=s,t[2]=o):o=t[2];let a;return t[3]!==r||t[4]!==o?(a=n.jsx(kp,{previewPath:r,showSeeInLibrary:!0,onClose:o}),t[3]=r,t[4]=o,t[5]=a):a=t[5],a}function Tk(t){const{preview:e,...s}=t;return s}const li=P.createContext(null);function Tr(){return P.use(li)}function Ch(t){const e=H.c(6),{children:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.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]=i):i=e[0];let r;e[1]===Symbol.for("react.memo_cache_sentinel")?(r=n.jsx(Ue.Skeleton,{}),e[1]=r):r=e[1];let o;e[2]!==s?(o=s??n.jsx(bd,{}),e[2]=s,e[3]=o):o=e[3];let a;return e[4]!==o?(a=n.jsx(Jt,{fallback:i,children:n.jsx(P.Suspense,{fallback:r,children:o})}),e[4]=o,e[5]=a):a=e[5],a}function kh(t){const e=H.c(3),{onNewTaskRef:s,createNewTask:i}=t;let r;return e[0]!==i||e[1]!==s?(r=()=>(s.current=i,()=>{s.current=null}),e[0]=i,e[1]=s,e[2]=r):r=e[2],P.useLayoutEffect(r),null}function jh(t){const e=H.c(23),{virtualMcpId:s,hasActiveGithubRepo:i,sandboxMap:r,children:o}=t,{currentBranch:a}=ys(),{pendingSandboxProviderKind:l}=Sa(),{data:h}=vi.useSession(),c=h?.user?.id,d=km(s,a??void 0);let u,f;e[0]!==a||e[1]!==l||e[2]!==r||e[3]!==c?(u=c&&a?Cn(r?.[c]?.[a]):{},f=l?u[l]??null:Vd(u),e[0]=a,e[1]=l,e[2]=r,e[3]=c,e[4]=u,e[5]=f):(u=e[4],f=e[5]);const p=f?.previewUrl??null;let g;e[6]!==u||e[7]!==d?(g=Object.keys(u).length>0||d,e[6]=u,e[7]=d,e[8]=g):g=e[8];const v=g,b=a??null,x=a??null,_=c??null;let y;e[9]!==o||e[10]!==i||e[11]!==l||e[12]!==r||e[13]!==x||e[14]!==_||e[15]!==s?(y=n.jsx(wv,{virtualMcpId:s,branch:x,userId:_,hasActiveGithubRepo:i,sandboxMap:r,sandboxProviderKind:l,children:o}),e[9]=o,e[10]=i,e[11]=l,e[12]=r,e[13]=x,e[14]=_,e[15]=s,e[16]=y):y=e[16];let S;return e[17]!==p||e[18]!==v||e[19]!==b||e[20]!==y||e[21]!==s?(S=n.jsx(_v,{virtualMcpId:s,branch:b,previewUrl:p,enabled:v,children:y}),e[17]=p,e[18]=v,e[19]=b,e[20]=y,e[21]=s,e[22]=S):S=e[22],S}function Pk(){const t=H.c(105),e=Na(),s=Mt(),{org:i}=Re();sp(i.slug);let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r={strict:!1},t[0]=r):r=t[0];const o=Nh(r),a=o.org??"";let l;t[1]===Symbol.for("react.memo_cache_sentinel")?(l={strict:!1},t[1]=l):l=t[1];const h=wn(l);let c;t[2]!==i.id||t[3]!==h.virtualmcpid?(c=h.virtualmcpid??Oh(i.id).id,t[2]=i.id,t[3]=h.virtualmcpid,t[4]=c):c=t[4];const d=c,u=Nk(o.taskId??"",d),f=ds(d),m=f?.metadata?.ui?.layout??null;let p;t[5]!==m?(p=m?{defaultMainView:m.defaultMainView??null,chatDefaultOpen:m.chatDefaultOpen??null}:null,t[5]=m,t[6]=p):p=t[6];const g=p;let v;t[7]!==f?(v=f&&xr(f),t[7]=f,t[8]=v):v=t[8];const b=!!v;let x;t[9]!==a||t[10]!==d?(x={virtualMcpId:d,orgSlug:a,isAgentRoute:!0},t[9]=a,t[10]=d,t[11]=x):x=t[11];const _=g_(g,x),y=P.useRef(null);let S,w;t[12]===Symbol.for("react.memo_cache_sentinel")?(S=()=>{const K=G=>{tp(G)&&G.shiftKey&&G.code==="KeyS"&&!G.repeat&&(G.preventDefault(),y.current?.())};return document.addEventListener("keydown",K),()=>document.removeEventListener("keydown",K)},w=[],t[12]=S,t[13]=w):(S=t[12],w=t[13]),P.useEffect(S,w);const j=d;let E;t[14]!==f||t[15]!==d?(E={virtualMcpId:d,entity:f},t[14]=f,t[15]=d,t[16]=E):E=t[16];const T=E;if(u.status==="creating"||u.status==="loading"){let K;t[17]===Symbol.for("react.memo_cache_sentinel")?(K=n.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:n.jsxs("div",{className:"flex h-full items-center justify-center bg-background card-shadow rounded-[0.75rem] text-sm text-muted-foreground",children:[n.jsx(Ne,{className:"size-4 animate-spin mr-2"}),"Creating task…"]})}),t[17]=K):K=t[17];let G;return t[18]!==T?(G=n.jsx(li,{value:T,children:K}),t[18]=T,t[19]=G):G=t[19],G}if(u.status==="error"){let K;t[20]===Symbol.for("react.memo_cache_sentinel")?(K=n.jsx("div",{className:"font-medium",children:"Task unavailable"}),t[20]=K):K=t[20];let G;t[21]!==u.error.message?(G=n.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:n.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,n.jsx("div",{className:"text-muted-foreground",children:u.error.message})]})}),t[21]=u.error.message,t[22]=G):G=t[22];let X;return t[23]!==T||t[24]!==G?(X=n.jsx(li,{value:T,children:G}),t[23]=T,t[24]=G,t[25]=X):X=t[25],X}if(!f){let K;t[26]===Symbol.for("react.memo_cache_sentinel")?(K=n.jsx(vr,{size:48,className:"text-muted-foreground"}),t[26]=K):K=t[26];const G=`The agent "${d}" does not exist in this organization.`;let X;t[27]!==s||t[28]!==a?(X=n.jsx(oe,{variant:"outline",onClick:()=>s({to:"/$org",params:{org:a}}),children:"Go to organization home"}),t[27]=s,t[28]=a,t[29]=X):X=t[29];let ie;t[30]!==G||t[31]!==X?(ie=n.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:n.jsx("div",{className:"flex flex-col h-full bg-background overflow-hidden card-shadow rounded-[0.75rem]",children:n.jsx(Yr,{image:K,title:"Agent not found",description:G,actions:X})})}),t[30]=G,t[31]=X,t[32]=ie):ie=t[32];let W;return t[33]!==T||t[34]!==ie?(W=n.jsx(li,{value:T,children:ie}),t[33]=T,t[34]=ie,t[35]=W):W=t[35],W}if(e){const K=u.status==="ready"?u.task:null,G=f?.metadata?.sandboxMap;let X;t[36]!==_.createNewTask?(X=n.jsx(kh,{onNewTaskRef:y,createNewTask:_.createNewTask}),t[36]=_.createNewTask,t[37]=X):X=t[37];const ie=!_.mainOpen;let W;t[38]!==_.createNewTask||t[39]!==_.toggleMain||t[40]!==ie?(W=n.jsx(Vi.Toggles,{children:n.jsx(yh,{chatOpen:ie,toggleChat:_.toggleMain,onNewTask:_.createNewTask,newTaskFirst:!0})}),t[38]=_.createNewTask,t[39]=_.toggleMain,t[40]=ie,t[41]=W):W=t[41];let Y;t[42]!==j||t[43]!==_.taskId?(Y=n.jsx(Vi.Tabs,{children:n.jsx(ZC,{virtualMcpId:j,taskId:_.taskId})}),t[42]=j,t[43]=_.taskId,t[44]=Y):Y=t[44];let ne;t[45]===Symbol.for("react.memo_cache_sentinel")?(ne=n.jsx(Ue.Skeleton,{}),t[45]=ne):ne=t[45];let $;t[46]!==j||t[47]!==_.mainOpen||t[48]!==_.taskId?($=n.jsx(P.Suspense,{fallback:ne,children:n.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:_.mainOpen?n.jsx(Jt,{fallback:n.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong. Try refreshing."}),children:n.jsx(P.Suspense,{fallback:n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx(Ne,{size:20,className:"animate-spin text-muted-foreground"})}),children:n.jsx(Hf,{taskId:_.taskId,virtualMcpId:j})})}):n.jsx(Ch,{})})}),t[46]=j,t[47]=_.mainOpen,t[48]=_.taskId,t[49]=$):$=t[49];let Z;t[50]!==_.taskId||t[51]!==W||t[52]!==Y||t[53]!==$?(Z=n.jsxs(Ue.ActiveTaskProvider,{taskId:_.taskId,children:[W,Y,$]},_.taskId),t[50]=_.taskId,t[51]=W,t[52]=Y,t[53]=$,t[54]=Z):Z=t[54];let U;t[55]!==b||t[56]!==G||t[57]!==X||t[58]!==Z||t[59]!==d?(U=n.jsxs(jh,{virtualMcpId:d,hasActiveGithubRepo:b,sandboxMap:G,children:[X,Z]}),t[55]=b,t[56]=G,t[57]=X,t[58]=Z,t[59]=d,t[60]=U):U=t[60];let ee;t[61]!==j||t[62]!==U||t[63]!==K?(ee=n.jsx("div",{className:"flex flex-col flex-1 min-w-0 bg-background min-h-0",children:n.jsx(Ue.Provider,{virtualMcpId:j,task:K,children:U},j)}),t[61]=j,t[62]=U,t[63]=K,t[64]=ee):ee=t[64];let Q;return t[65]!==T||t[66]!==ee?(Q=n.jsx(li,{value:T,children:ee}),t[65]=T,t[66]=ee,t[67]=Q):Q=t[67],Q}let A;t[68]!==_.chatOpen||t[69]!==_.createNewTask||t[70]!==_.toggleChat?(A=n.jsx(Vi.Toggles,{children:n.jsx(yh,{chatOpen:_.chatOpen,toggleChat:_.toggleChat,onNewTask:_.createNewTask})}),t[68]=_.chatOpen,t[69]=_.createNewTask,t[70]=_.toggleChat,t[71]=A):A=t[71];const R=u.status==="ready"?u.task:null,k=f?.metadata?.sandboxMap;let C;t[72]!==_.taskId||t[73]!==d?(C=n.jsx(Vi.Tabs,{children:n.jsx(XC,{virtualMcpId:d,taskId:_.taskId})}),t[72]=_.taskId,t[73]=d,t[74]=C):C=t[74];let D;t[75]!==_.createNewTask?(D=n.jsx(kh,{onNewTaskRef:y,createNewTask:_.createNewTask}),t[75]=_.createNewTask,t[76]=D):D=t[76];let N;t[77]!==f?(N=n.jsx(jk,{virtualMcp:f}),t[77]=f,t[78]=N):N=t[78];let L;t[79]===Symbol.for("react.memo_cache_sentinel")?(L=n.jsx(Ue.Skeleton,{}),t[79]=L):L=t[79];let B;t[80]===Symbol.for("react.memo_cache_sentinel")?(B=n.jsx(Ch,{}),t[80]=B):B=t[80];let I;t[81]!==_.chatOpen||t[82]!==_.mainOpen||t[83]!==_.taskId||t[84]!==d?(I=n.jsx(P.Suspense,{fallback:L,children:n.jsx(VC,{virtualMcpId:d,taskId:_.taskId,chatOpen:_.chatOpen,mainOpen:_.mainOpen,chatContent:B})}),t[81]=_.chatOpen,t[82]=_.mainOpen,t[83]=_.taskId,t[84]=d,t[85]=I):I=t[85];let M;t[86]!==_.taskId||t[87]!==N||t[88]!==I?(M=n.jsxs(Ue.ActiveTaskProvider,{taskId:_.taskId,children:[N,I]},_.taskId),t[86]=_.taskId,t[87]=N,t[88]=I,t[89]=M):M=t[89];let O;t[90]!==b||t[91]!==k||t[92]!==C||t[93]!==D||t[94]!==M||t[95]!==d?(O=n.jsxs(jh,{virtualMcpId:d,hasActiveGithubRepo:b,sandboxMap:k,children:[C,D,M]}),t[90]=b,t[91]=k,t[92]=C,t[93]=D,t[94]=M,t[95]=d,t[96]=O):O=t[96];let F;t[97]!==j||t[98]!==R||t[99]!==O?(F=n.jsx(Ue.Provider,{virtualMcpId:j,task:R,children:O},j),t[97]=j,t[98]=R,t[99]=O,t[100]=F):F=t[100];let z;return t[101]!==T||t[102]!==F||t[103]!==A?(z=n.jsx("div",{className:"flex-1 min-w-0 flex flex-col",children:n.jsxs(li,{value:T,children:[A,F]})}),t[101]=T,t[102]=F,t[103]=A,t[104]=z):z=t[104],z}function Ak(){const t=H.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx(ng,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(P.Suspense,{fallback:e,children:n.jsxs(tg,{children:[n.jsx(Pk,{}),n.jsx(Ek,{})]})}),t[1]=s):s=t[1],s}const s5=Object.freeze(Object.defineProperty({__proto__:null,default:Ak,useInsetContext:Tr},Symbol.toStringTag,{value:"Module"}));export{Ja as $,Gj as A,hb as B,zj as C,vb as D,Ij as E,Fj as F,yj as G,$j as H,Aj as I,Dj as J,Pj as K,db as L,vu as M,kj as N,jj as O,Jy as P,Ej as Q,Tj as R,Yj as S,Oj as T,jb as U,Mj as V,Xj as W,X_ as X,fr as Y,bj as Z,Fs as _,Cj as a,Cr as a0,Uj as a1,xj as a2,Xl as a3,Ci as a4,Za as a5,yu as a6,Kj as a7,Vj as a8,zd as a9,Po as aa,Sj as ab,wj as ac,Jj as ad,Uf as ae,mx as af,Hr as ag,dy as ah,dn as ai,Ny as aj,Gy as ak,Lo as al,to as am,pn as an,Ky as ao,qy as ap,Qj as aq,Oy as ar,s5 as as,qa as b,Hj as c,Ga as d,Tr as e,Zj as f,gl as g,uy as h,Qt as i,nl as j,av as k,Wd as l,Md as m,Cu as n,Nj as o,mb as p,Su as q,Rj as r,Lj as s,ub as t,al as u,Ei as v,qj as w,Bj as x,Wj as y,wb as z};
|