decocms 4.94.2 → 4.94.3
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-Bv9Sn7rU.js → AlertCircle-ATDauss3.js} +1 -1
- package/dist/client/assets/{AreaChart-B3HMIfr0.js → AreaChart-r3PCIsKI.js} +1 -1
- package/dist/client/assets/{ArrowRight-DPElNRG-.js → ArrowRight-DktBSXRS.js} +1 -1
- package/dist/client/assets/{ArrowUp-C-sTZkaO.js → ArrowUp-CfkDzZjR.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-BI-x15YS.js → ArrowUpRight-DtZl1SPB.js} +1 -1
- package/dist/client/assets/{Check-sncoz7x5.js → Check-C0H30Wxb.js} +1 -1
- package/dist/client/assets/{CheckCircle-qdDF0fNj.js → CheckCircle-BxtcOMov.js} +1 -1
- package/dist/client/assets/{ChevronDown-C6TPbm1q.js → ChevronDown-DZMsrOs6.js} +1 -1
- package/dist/client/assets/{ChevronRight-MhmFO-WP.js → ChevronRight-CbPC1vn5.js} +1 -1
- package/dist/client/assets/{ChevronUp-CfEGPhJ4.js → ChevronUp-B6Uq6AW8.js} +1 -1
- package/dist/client/assets/{Copy01-C3Ms0WJG.js → Copy01-BoWLDhss.js} +1 -1
- package/dist/client/assets/{DotsVertical-CayGWKkz.js → DotsVertical-CkPbKnHx.js} +1 -1
- package/dist/client/assets/{Eye-C4EdnvCy.js → Eye-BtHcxK2n.js} +1 -1
- package/dist/client/assets/{FilterLines-qLXjrW3S.js → FilterLines-USw_5eXw.js} +1 -1
- package/dist/client/assets/{Globe01-CDaTtsZa.js → Globe01-EAhUiFjU.js} +1 -1
- package/dist/client/assets/{Globe04-4bAJ39Tz.js → Globe04-Aw0_KZkp.js} +1 -1
- package/dist/client/assets/{HardDrive-Bhuwbvus.js → HardDrive-BRp1Stla.js} +1 -1
- package/dist/client/assets/{Image01-C65at7v2.js → Image01-8zrK5mCU.js} +1 -1
- package/dist/client/assets/{Key01-CwdjHu82.js → Key01-mDG6MyFp.js} +1 -1
- package/dist/client/assets/{LayoutLeft-DK0M2sGJ.js → LayoutLeft-BvaWgpl-.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BUz_5hcr.js → LinkExternal01-BHqrbFVP.js} +1 -1
- package/dist/client/assets/{Monitor01-umbVr3m8.js → Monitor01-BrYFIRbc.js} +1 -1
- package/dist/client/assets/{Package-DIT0RrcY.js → Package-aZxSik2v.js} +1 -1
- package/dist/client/assets/{Palette-CgeepDBa.js → Palette-C3sZqQgv.js} +1 -1
- package/dist/client/assets/{Play-BnwAEj2I.js → Play-CTENQK7L.js} +1 -1
- package/dist/client/assets/{Plus-CrJgwez2.js → Plus-DJTge5Ah.js} +1 -1
- package/dist/client/assets/{SearchLg-C0Ivi-8H.js → SearchLg-hVazihuf.js} +1 -1
- package/dist/client/assets/{SearchMd-DIqMMDEV.js → SearchMd-k38udJCg.js} +1 -1
- package/dist/client/assets/{Settings02-ImbMOCGc.js → Settings02-BIkAwpdB.js} +1 -1
- package/dist/client/assets/{Shield01-BvxmDvvS.js → Shield01-DTl65-bJ.js} +1 -1
- package/dist/client/assets/{Star01-CZIIZi38.js → Star01-BJyRKLzF.js} +1 -1
- package/dist/client/assets/{Stars01-6a-hAwh6.js → Stars01-DoaL2Q2J.js} +1 -1
- package/dist/client/assets/{Stars02-BDg28BlF.js → Stars02-DKh4ISVj.js} +1 -1
- package/dist/client/assets/{Sun-DZf_zarT.js → Sun-CBHhr26t.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-DaDG1TmO.js → SwitchHorizontal01-DBuMK_Sr.js} +1 -1
- package/dist/client/assets/{Tool01-DPVaqkWJ.js → Tool01-K8Y97OZv.js} +1 -1
- package/dist/client/assets/{Tool02-CuGoYdze.js → Tool02-CIEvIO8i.js} +1 -1
- package/dist/client/assets/{Trash01-C00Vq8kG.js → Trash01-CJnDCJ3G.js} +1 -1
- package/dist/client/assets/{TrendUp01-DFQQVyer.js → TrendUp01-BSrxh8wc.js} +1 -1
- package/dist/client/assets/{Upload01-DEV8Z4Dc.js → Upload01-CojMKof7.js} +1 -1
- package/dist/client/assets/{User01-C0TDCM65.js → User01-COitjtFj.js} +1 -1
- package/dist/client/assets/{Users01-Bhr2i7ta.js → Users01-2vmYZw3D.js} +1 -1
- package/dist/client/assets/{Users03-BAS_s3lt.js → Users03-DTSAB3kb.js} +1 -1
- package/dist/client/assets/{X-DEJG4s29.js → X-BgjVXDn7.js} +1 -1
- package/dist/client/assets/{XCircle-BMljEWHe.js → XCircle-BQC2MOgy.js} +1 -1
- package/dist/client/assets/{XClose-D3_gG3OK.js → XClose-Z4qzlqxW.js} +1 -1
- package/dist/client/assets/{Zap-YU62l_VL.js → Zap-xCtz_CDI.js} +1 -1
- package/dist/client/assets/{ZapSquare-Bshj6B_H.js → ZapSquare-ArSJ6R8I.js} +1 -1
- package/dist/client/assets/{ZoomOut-BX-CZu6O.js → ZoomOut-D8iaovQJ.js} +1 -1
- package/dist/client/assets/{access-gate-C5Mguwk2.js → access-gate-Du2iJ9ea.js} +1 -1
- package/dist/client/assets/{add-section-modal-BcE-iVhU.js → add-section-modal-BiVCdlWH.js} +1 -1
- package/dist/client/assets/{agent-icon-DXyi-4c6.js → agent-icon-ButnHDJH.js} +1 -1
- package/dist/client/assets/{agents-list-zZ-FkIpN.js → agents-list-ql8uqZ4y.js} +1 -1
- package/dist/client/assets/{ai-providers-BJB92587.js → ai-providers-DRd8dJQ-.js} +1 -1
- package/dist/client/assets/{alert-HA8_cbbR.js → alert-HawIUlDL.js} +1 -1
- package/dist/client/assets/{alert-dialog-C7g7ElPm.js → alert-dialog-CqoQavE6.js} +1 -1
- package/dist/client/assets/{app-editor-nFTSDXpB.js → app-editor-Cj2sVcET.js} +1 -1
- package/dist/client/assets/{auth-DWXpTp24.js → auth-D6WpnY0o.js} +1 -1
- package/dist/client/assets/{auth-catchall-DpAY5e7a.js → auth-catchall-m6bJ0Vst.js} +1 -1
- package/dist/client/assets/{auth-entry-Bc-0qyOX.js → auth-entry-BkyZh345.js} +1 -1
- package/dist/client/assets/{auth-split-layout-CZN_FfkG.js → auth-split-layout-BH4b3WiV.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-DlB2dGcY.js → authenticate-and-persist-oauth-DIRXI7dv.js} +1 -1
- package/dist/client/assets/{automation-list-row-CNk0C7uu.js → automation-list-row-BtYTDOxM.js} +1 -1
- package/dist/client/assets/{automation-runs-CL3OLWgm.js → automation-runs-WOQNiukY.js} +1 -1
- package/dist/client/assets/{automations-BY_EnLzr.js → automations-CYALCKg-.js} +1 -1
- package/dist/client/assets/{autosend-Ds66SmZA.js → autosend-D8xj7Dc_.js} +1 -1
- package/dist/client/assets/{avatar-DUWeiVXm.js → avatar-DptYPIcl.js} +1 -1
- package/dist/client/assets/{badge-Dx1MYTBm.js → badge-Cvie7mEk.js} +1 -1
- package/dist/client/assets/{block-document-ccuxX_sb.js → block-document-DdA14ArK.js} +1 -1
- package/dist/client/assets/{brand-context-C1Bvl5Jd.js → brand-context-Djzef29A.js} +1 -1
- package/dist/client/assets/{buckets-BtygLXsL.js → buckets-C-b3FgCf.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-zlSlLZrY.js → bulk-category-panel-e9u2WCC0.js} +1 -1
- package/dist/client/assets/{calendar-Bsh3dOFt.js → calendar-eP6n5ytV.js} +1 -1
- package/dist/client/assets/{capability-load-error-C5hpU-K0.js → capability-load-error-Cry2FlM2.js} +1 -1
- package/dist/client/assets/{card-CZnv6feF.js → card-CbcOpbn-.js} +1 -1
- package/dist/client/assets/{category-editor-IPeNobrL.js → category-editor-BAQM9_l9.js} +1 -1
- package/dist/client/assets/{chat-context-CnIfe4JN.js → chat-context-CWYo_c4l.js} +1 -1
- package/dist/client/assets/{checkbox-e1NzDXah.js → checkbox-BhF9xlIm.js} +1 -1
- package/dist/client/assets/{cli-auth-success-Itb-z2v2.js → cli-auth-success-BLeutpHQ.js} +1 -1
- package/dist/client/assets/{collection-detail-Dw3UVK0x.js → collection-detail-RtzzsXa-.js} +1 -1
- package/dist/client/assets/{collection-display-button-Bl7gTskJ.js → collection-display-button-mUo5Iga7.js} +1 -1
- package/dist/client/assets/{collection-search-Wsb_s4sf.js → collection-search-D203oksE.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-BfsigqX4.js → collection-table-wrapper-Y65eDdok.js} +1 -1
- package/dist/client/assets/{collection-tabs-BKgAxsKy.js → collection-tabs-F0dASSB7.js} +1 -1
- package/dist/client/assets/{command-C8HmSEd_.js → command-C7kJvKnj.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-Ddsp1vNm.js → commerce-onboarding-DVlm4grg.js} +1 -1
- package/dist/client/assets/{companions-core-D4YBfnmI.js → companions-core-D2vzx4AC.js} +1 -1
- package/dist/client/assets/{connect-EsjSAyOr.js → connect-6-U7MOAl.js} +1 -1
- package/dist/client/assets/{connect-desktop-dialog-BxIC6aeT.js → connect-desktop-dialog-DuhPplhD.js} +1 -1
- package/dist/client/assets/{connection-card-B1X3rwGu.js → connection-card-C7wiWuXu.js} +1 -1
- package/dist/client/assets/{connection-detail-3OF7RrxH.js → connection-detail-_et9nQW5.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BE3iXQZE.js → connection-form-helpers-BH6m85Vv.js} +1 -1
- package/dist/client/assets/{connections-BA9zlTUF.js → connections-D_aU4Jyz.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-DL93cu_H.js → decopilot-sse-pool-DGCW5Rjt.js} +1 -1
- package/dist/client/assets/{dialog-onuPvsFb.js → dialog-ce-Qx0nk.js} +1 -1
- package/dist/client/assets/{domain-settings-VKxchauT.js → domain-settings-CGyCy_Gd.js} +1 -1
- package/dist/client/assets/{drawer-DWUr_ZU2.js → drawer-yCKK72z7.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BKJ3boJ3.js → dropdown-menu-C2zl-ro_.js} +1 -1
- package/dist/client/assets/{empty-state-DPB5Ad7K.js → empty-state-CCDWGUW8.js} +1 -1
- package/dist/client/assets/{extract-connection-data-CXlL-hXt.js → extract-connection-data-CCkEYOfz.js} +1 -1
- package/dist/client/assets/{file-explorer-DOQrKiQv.js → file-explorer-C7F4_oOH.js} +1 -1
- package/dist/client/assets/{file-type-icon-CEXR2pOt.js → file-type-icon-2EiIwjtp.js} +1 -1
- package/dist/client/assets/{files-BVP-2S02.js → files-C69z8KGz.js} +1 -1
- package/dist/client/assets/{form-DYqr-wSX.js → form-7MrIXgVd.js} +1 -1
- package/dist/client/assets/{general-BYCnbPYW.js → general-BbTuukRA.js} +1 -1
- package/dist/client/assets/{github-repo-picker-Cwm3dLPe.js → github-repo-picker-BlugWnuM.js} +1 -1
- package/dist/client/assets/{hooks-Birw2Ltn.js → hooks-BQx4dqlG.js} +1 -1
- package/dist/client/assets/{index-AKQKXI-S.js → index-B-iLur-b.js} +1 -1
- package/dist/client/assets/{index-Dg6VpoM0.js → index-BPVq6usu.js} +1 -1
- package/dist/client/assets/{index-Dh5pEc9Y.js → index-B_TK4yjG.js} +1 -1
- package/dist/client/assets/{index-Bl5ZB7_y.js → index-BdveHnCs.js} +1 -1
- package/dist/client/assets/{index-DF7Q9s3K.js → index-Bs7-yVDX.js} +1 -1
- package/dist/client/assets/{index-DVEzRUQu.js → index-CMuJhsMC.js} +1 -1
- package/dist/client/assets/{index-f-KHyzOH.js → index-CzRAqwGV.js} +1 -1
- package/dist/client/assets/{index-BnbFMURu.js → index-DI32fm2g.js} +1 -1
- package/dist/client/assets/{index-Ba6lsyQo.js → index-DULGU-us.js} +1 -1
- package/dist/client/assets/{index-DqEBsuXn.js → index-DkyRBVkR.js} +1 -1
- package/dist/client/assets/{index-BmVxMXNc.js → index-HKB-Ut0K.js} +5 -5
- package/dist/client/assets/{index-TXbjlWVD.js → index-Pa157cMk.js} +3 -3
- package/dist/client/assets/{index-sFWrAEhV.js → index-bvt6B0Yy.js} +3 -3
- package/dist/client/assets/{index-DSzU-fG7.js → index-dan5F593.js} +1 -1
- package/dist/client/assets/{index-redirect-NO3iJ3Y1.js → index-redirect-BoQdoySm.js} +1 -1
- package/dist/client/assets/{input-Cbu4x9Ul.js → input-19CBzlwE.js} +1 -1
- package/dist/client/assets/{integration-icon-OSY_m-Gk.js → integration-icon-CN60oOn8.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-R54EZOVD.js → invite-member-dialog-BbdyGkdw.js} +1 -1
- package/dist/client/assets/{label-D-yIk9N4.js → label-CtqWGlIv.js} +1 -1
- package/dist/client/assets/{layout-BS3acjHW.js → layout-C9nTy61A.js} +1 -1
- package/dist/client/assets/{login-DSWaxg2L.js → login-QvP4qhGL.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BCwZfwg-.js → mcp-oauth-Chl0OhK-.js} +1 -1
- package/dist/client/assets/{members-DM0uejB0.js → members-DCrDO88t.js} +1 -1
- package/dist/client/assets/{monaco-editor-CBXe41ie.js → monaco-editor-C7QyZT8Q.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-BGI1PRIR.js → monitoring-stats-row-D2bvlopi.js} +1 -1
- package/dist/client/assets/{multi-select-Dzw_6bDi.js → multi-select-BO0tXBoi.js} +1 -1
- package/dist/client/assets/{oauth-callback-Bclhl_hV.js → oauth-callback-BhsPdsdP.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-D-ggcSAf.js → oauth-callback-ai-provider-D0lY_txh.js} +1 -1
- package/dist/client/assets/{onboarding-1xUooZn2.js → onboarding-kpOQkbH6.js} +1 -1
- package/dist/client/assets/{org-install-CgdRavSQ.js → org-install-CWAwPZTP.js} +1 -1
- package/dist/client/assets/{org-layout-k7plXKv7.js → org-layout-jMHxUyyn.js} +1 -1
- package/dist/client/assets/{organization-choice-CoIQUPls.js → organization-choice-DENob_-y.js} +1 -1
- package/dist/client/assets/{orgs-C98LzcAd.js → orgs-mV4WXIJi.js} +1 -1
- package/dist/client/assets/{page-seo-form-BJJ9NVeK.js → page-seo-form-tSp60F3t.js} +1 -1
- package/dist/client/assets/page-seo-sheet-mBaZy_IW.js +1 -0
- package/dist/client/assets/{popover-CPaLMNs0.js → popover-Be7PXZdu.js} +1 -1
- package/dist/client/assets/{post-editor-DqNNRj0Q.js → post-editor-DlqIWtdx.js} +1 -1
- package/dist/client/assets/{primitives-BS8G0b4F.js → primitives-Qdmgjat_.js} +1 -1
- package/dist/client/assets/{profile-CzTk2smD.js → profile-DZB9FTI0.js} +1 -1
- package/dist/client/assets/project-app-view-DGLfs11D.js +1 -0
- package/dist/client/assets/record-editor-DU0dUWdE.js +1 -0
- package/dist/client/assets/redirect-editor-VvhJ7ivq.js +1 -0
- package/dist/client/assets/registry-D-rKwU1p.js +2 -0
- package/dist/client/assets/{registry-layout-BkifQzxJ.js → registry-layout-Cvfecx89.js} +1 -1
- package/dist/client/assets/{reports-DC8yq9My.js → reports-BUYg9nG4.js} +1 -1
- package/dist/client/assets/{require-capability-DBpTbS28.js → require-capability-CF2vo1hm.js} +1 -1
- package/dist/client/assets/{required-auth-layout-Bht_hEZU.js → required-auth-layout-BRvJ7f6m.js} +1 -1
- package/dist/client/assets/{reset-password-Csw9aWDA.js → reset-password-BAImGz4N.js} +1 -1
- package/dist/client/assets/{roles-CjvYqQt7.js → roles-5zN0K7hI.js} +1 -1
- package/dist/client/assets/{search-input-BWEIF2Rk.js → search-input-bIR9Ij35.js} +1 -1
- package/dist/client/assets/{secrets-GSMavdF2.js → secrets-CLgmH-ni.js} +1 -1
- package/dist/client/assets/{sections-editor-BNPzxhXD.js → sections-editor-A4iZolMk.js} +1 -1
- package/dist/client/assets/{select-fXTTlfC_.js → select-CgDfTBqm.js} +1 -1
- package/dist/client/assets/{select-model-Dwxdq70e.js → select-model-BaodD5oY.js} +1 -1
- package/dist/client/assets/{self-tool-result-DhJZ0Z97.js → self-tool-result-BaQj2BQF.js} +1 -1
- package/dist/client/assets/{seo-editor-ZzFoKR-y.js → seo-editor-Cb9DAR7u.js} +1 -1
- package/dist/client/assets/{settings-layout-h0tQ3YE0.js → settings-layout-IEfAHhNc.js} +1 -1
- package/dist/client/assets/{settings-section-CzIEw2lP.js → settings-section-t7X8jQub.js} +1 -1
- package/dist/client/assets/{shell-controls-B_j_3dmt.js → shell-controls-BSevJIuv.js} +1 -1
- package/dist/client/assets/{shell-layout-DyyzXOKz.js → shell-layout-Bw948kDF.js} +1 -1
- package/dist/client/assets/{sidebar-DphH-T7N.js → sidebar-CRB2UfpA.js} +1 -1
- package/dist/client/assets/{skeleton-Ce-hSFOr.js → skeleton-DVqWtgCt.js} +1 -1
- package/dist/client/assets/{sso-Daefm0O2.js → sso-DEuysDH9.js} +1 -1
- package/dist/client/assets/{store-CC2P6nXP.js → store-B-UT2VMK.js} +1 -1
- package/dist/client/assets/store-registry-C8lkBJ_F.js +2 -0
- package/dist/client/assets/{studio-tools-D8E5PqcD.js → studio-tools-D5G7C3YZ.js} +1 -1
- package/dist/client/assets/{switch-C9UJzPeg.js → switch-Bsknm0ga.js} +1 -1
- package/dist/client/assets/{table-BA-7DHnu.js → table-BhB4oWra.js} +1 -1
- package/dist/client/assets/{tabs-4UbsNkWD.js → tabs-BmcnDZaH.js} +1 -1
- package/dist/client/assets/{textarea-Du3mybxt.js → textarea-Cdqs67Ha.js} +1 -1
- package/dist/client/assets/{toggle-group-DjAAQq09.js → toggle-group-DsTSCFm0.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-Bwyxob1O.js → toolbar-icon-button-G_swjIak.js} +1 -1
- package/dist/client/assets/{toolbar-BhBjqHoy.js → toolbar-yc9hURpP.js} +1 -1
- package/dist/client/assets/{tooltip-DvowFfuR.js → tooltip-C_0v-6f4.js} +1 -1
- package/dist/client/assets/{use-ai-providers-Behz2klz.js → use-ai-providers-CJ8XSt4q.js} +1 -1
- package/dist/client/assets/{use-api-keys-CZ0jKmL1.js → use-api-keys-CxNhkV2x.js} +1 -1
- package/dist/client/assets/{use-automations-B-vrEzso.js → use-automations-zly-dhUP.js} +1 -1
- package/dist/client/assets/{use-autosave-D2d6QDBI.js → use-autosave-D-Bz-OSh.js} +1 -1
- package/dist/client/assets/{use-capability-BoiQZePz.js → use-capability-DJi8C1Dk.js} +1 -1
- package/dist/client/assets/{use-clock-tick-CF92dbTC.js → use-clock-tick-C8w9PGHq.js} +1 -1
- package/dist/client/assets/{use-collections-C_e05bkq.js → use-collections-CGJgn71i.js} +1 -1
- package/dist/client/assets/{use-connection-BIkUw_5U.js → use-connection-BGgh4Z4A.js} +1 -1
- package/dist/client/assets/{use-copy-CpzXiqQB.js → use-copy-kyLqGdyB.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-Dncl-1eK.js → use-create-virtual-mcp-Ck747rf7.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-Co5-_xt1.js → use-debounced-autosave-BF42FRqp.js} +1 -1
- package/dist/client/assets/{use-debounced-value-C-nLAxmh.js → use-debounced-value-DIO0fI4A.js} +1 -1
- package/dist/client/assets/{use-deco-credits-VE3RXJA9.js → use-deco-credits-i2LoK8uS.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-C5ThAOKH.js → use-decopilot-events-BXAiBaCR.js} +1 -1
- package/dist/client/assets/{use-delete-connection-Dl9HBFzB.js → use-delete-connection-aH45Sgau.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-DydUfpey.js → use-deployment-admin-CgCWDmWb.js} +1 -1
- package/dist/client/assets/{use-file-configs-CR7PDF8P.js → use-file-configs-B-XP739F.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-xX0U0XJk.js → use-infinite-scroll-CH_IOTIS.js} +1 -1
- package/dist/client/assets/{use-join-requests-CH8bHn_0.js → use-join-requests-iTPkuQV8.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-Blz-0qOX.js → use-mcp-auth-status-Kz_rQCex.js} +1 -1
- package/dist/client/assets/{use-mcp-client-Ki_2rkCH.js → use-mcp-client-DZtUWYQn.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-DPnQp9Tn.js → use-mcp-tools-B7ePSNai.js} +1 -1
- package/dist/client/assets/{use-members-BDnc0hGN.js → use-members-bHaDzgfg.js} +1 -1
- package/dist/client/assets/{use-mobile-CP1t536v.js → use-mobile-CYm445nj.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-D4Ao3Cxf.js → use-navigate-to-agent-CBoPLhJu.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-BLcM9Irl.js → use-org-auth-client-CbEdNR-L.js} +1 -1
- package/dist/client/assets/{use-org-sso-D8iw87nA.js → use-org-sso-CraISjBp.js} +1 -1
- package/dist/client/assets/{use-organization-roles-Lt6L88oG.js → use-organization-roles-DQj7et0T.js} +1 -1
- package/dist/client/assets/{use-organization-settings-Dtae12vV.js → use-organization-settings-DyI7O1il.js} +1 -1
- package/dist/client/assets/{use-registry-app-B8gdg8z5.js → use-registry-app-WK1I8DLf.js} +1 -1
- package/dist/client/assets/{use-registry-connections-TR5bvdtV.js → use-registry-connections-ZWnYpg_k.js} +1 -1
- package/dist/client/assets/{use-secrets-CLYV7UVd.js → use-secrets-aUTlpTT1.js} +1 -1
- package/dist/client/assets/{use-status-sounds-CAOY7lqf.js → use-status-sounds-DhPkzCk4.js} +1 -1
- package/dist/client/assets/{use-t-3yWFqIUi.js → use-t-DS4NVBZ_.js} +1 -1
- package/dist/client/assets/{use-view-mode-ScEBTEov.js → use-view-mode-CFwpojIZ.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DHT05dCZ.js → use-virtual-mcp-CYjuWd08.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-0Jkyfl13.js +1 -0
- package/dist/client/assets/{useRouterState-DfxohWA2.js → useRouterState-DAJa4GSR.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-Bg7G3kCR.js +1 -0
- package/dist/client/assets/{users-DNENJ0Vj.js → users-DWREPmdb.js} +1 -1
- package/dist/client/assets/{variant-calendar-DQxRdBFX.js → variant-calendar-CEAOgvm0.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-DyTYI_NB.js → view-mode-toggle-D2yCDzz0.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +196 -196
- package/dist/server/server.js +190 -190
- package/package.json +1 -1
- package/dist/client/assets/page-seo-sheet-Cx4l-WmN.js +0 -1
- package/dist/client/assets/project-app-view-DKefkJEN.js +0 -1
- package/dist/client/assets/record-editor-LYpYkqo2.js +0 -1
- package/dist/client/assets/redirect-editor-BgYnifjN.js +0 -1
- package/dist/client/assets/registry-d_vZ6_F3.js +0 -2
- package/dist/client/assets/store-registry-B7ZkkNk6.js +0 -2
- package/dist/client/assets/useInfiniteQuery-Do7Zc1KB.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-D48hXiU1.js +0 -1
package/dist/client/assets/{github-repo-picker-Cwm3dLPe.js → github-repo-picker-BlugWnuM.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as Q,a as Y,n as $,r as T,ac as H,c as R,j as t,i as z,d as B,t as O,dF as W,K as G,m as X,B as Z,l as F,v as ee,w as te}from"./index-sFWrAEhV.js";import{D as ne,a as se,d as oe,e as ie}from"./dialog-onuPvsFb.js";import{C as re}from"./collection-search-Wsb_s4sf.js";import{u as le}from"./use-debounced-value-C-nLAxmh.js";import{b as M,u as ae}from"./use-connection-BIkUw_5U.js";import{u as U,S as V}from"./use-mcp-client-Ki_2rkCH.js";import{a as K}from"./authenticate-and-persist-oauth-DlB2dGcY.js";import{b as J}from"./Settings02-ImbMOCGc.js";import{Q as ce}from"./agent-icon-DXyi-4c6.js";import{u as ue,G as P}from"./use-registry-app-B8gdg8z5.js";import{e as de}from"./extract-connection-data-CXlL-hXt.js";import{c as me}from"./use-navigate-to-agent-D4Ao3Cxf.js";import{p as q,f as fe}from"./provision-repo-scoped-github-connection-2iDn-wQ1.js";import{g as xe}from"./github-repo-scope-DjMZbiKa.js";const ge="deco/mcp-github";function he(N){const{org:e}=Q(),{data:i}=Y.useSession(),f=M(),v=$(),[g,s]=T.useState("idle"),[h,x]=T.useState(null),[p,C]=T.useState(null),{data:b,isLoading:l}=ue(ge,{enabled:N.enabled}),o=T.useRef(!1);N.enabled&&b&&!l&&!o.current&&i?.user?.id&&g==="idle"&&(o.current=!0,a());async function a(){if(!(!b||!i?.user?.id||!e))try{s("installing"),x(null);const r=de(b,e.id,i.user.id,{remoteIndex:0});if(!r.connection_url)throw new Error("Registry item is missing a remote URL for mcp-github");const{id:y}=await f.create.mutateAsync(r);s("authenticating");const d=await K({connectionId:y,orgId:e.id,orgSlug:e.slug,persistFallback:n=>f.update.mutateAsync({id:y,data:{connection_token:n}}).then(()=>{})});if(d.ran&&!d.ok){try{await f.delete.mutateAsync(y)}catch{}throw new Error(d.error&&d.error!=="no token received"?d.error:"No token received from GitHub")}H(v,e.id),C(r),s("ready")}catch(r){x(r instanceof Error?r.message:String(r)),s("error")}}function c(){s("idle"),x(null),C(null),o.current=!1}return N.enabled&&l&&g==="idle"?{status:"installing",error:null,connection:null,retry:c}:{status:g,error:h,connection:p,retry:c}}function Oe(N){const e=R.c(22),{open:i,onOpenChange:f,title:v,onImportComplete:g,mode:s}=N,h=s===void 0?"agent":s,x=v??(h==="connection"?"Add repo":"Import from GitHub"),[p,C]=T.useState(null);let b;e[0]!==x?(b=t.jsx(ne,{className:"sr-only",children:t.jsx(se,{children:x})}),e[0]=x,e[1]=b):b=e[1];let l;e[2]!==x||e[3]!==p?(l=t.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 gap-3 shrink-0",children:p?t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",onClick:()=>C(null),className:"flex items-center justify-center text-muted-foreground hover:text-foreground transition-colors shrink-0","aria-label":"Back to accounts",children:t.jsx(J,{size:16})}),t.jsx("img",{src:p.avatarUrl,alt:p.login,className:"size-5 rounded-full ring-1 ring-border shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:p.login})]}):t.jsxs(t.Fragment,{children:[t.jsx(P,{className:"size-4 text-foreground shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:x})]})}),e[2]=x,e[3]=p,e[4]=l):l=e[4];let o;e[5]===Symbol.for("react.memo_cache_sentinel")?(o=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=o):o=e[5];let a;e[6]!==f?(a=()=>f(!1),e[6]=f,e[7]=a):a=e[7];let c;e[8]!==h||e[9]!==g||e[10]!==i||e[11]!==p||e[12]!==a?(c=t.jsx("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:t.jsx(T.Suspense,{fallback:o,children:t.jsx(pe,{open:i,onComplete:a,selectedInstallation:p,onSelectInstallation:C,onImportComplete:g,mode:h})})}),e[8]=h,e[9]=g,e[10]=i,e[11]=p,e[12]=a,e[13]=c):c=e[13];let r;e[14]!==b||e[15]!==l||e[16]!==c?(r=t.jsxs(oe,{className:"sm:max-w-[560px] h-[85svh] sm:h-[520px] p-0 gap-0 overflow-hidden flex flex-col",children:[b,l,c]}),e[14]=b,e[15]=l,e[16]=c,e[17]=r):r=e[17];let u;return e[18]!==f||e[19]!==i||e[20]!==r?(u=t.jsx(ie,{open:i,onOpenChange:f,children:r}),e[18]=f,e[19]=i,e[20]=r,e[21]=u):u=e[21],u}function pe({open:N,onComplete:e,selectedInstallation:i,onSelectInstallation:f,onImportComplete:v,mode:g="agent"}){const{org:s}=Q(),h=$(),x=me(),[p,C]=T.useState(null),b=ae({slug:"mcp-github"}),l=xe(b),o=he({enabled:N&&l.length===0}),a=l.length===1?l[0]??null:p,c=U({connectionId:a?.id??"",orgId:s.id,orgSlug:s.slug}),r=U({connectionId:V,orgId:s.id,orgSlug:s.slug}),u=async(n,j)=>{try{const k=await c.callTool({name:"get_file_contents",arguments:{owner:n.owner,repo:n.name,path:j}});if(k.isError)return null;const I=k.content?.find(m=>m.type==="resource")?.resource?.text;if(!I)return null;try{const m=JSON.parse(I);return typeof m=="string"?m:JSON.stringify(m)}catch{return I}}catch{return null}},y=(n,j)=>{Promise.all([u(j,"AGENTS.md"),u(j,"CLAUDE.md")]).then(async([S,k])=>{const w=S??k??null;w&&(await r.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:n,data:{metadata:{instructions:w}}}}),H(h,s.id))}).catch(S=>{console.error("GitHub instructions fetch failed:",S)})},d=B({mutationFn:async n=>{if(!a||!i)throw new Error("No GitHub connection or installation");const j=i.installationId;if(g==="connection"){const{childConnectionId:w}=await q({orgSlug:s.slug,sourceConnection:a,installationId:j,owner:n.owner,repo:n.name,githubCallTool:I=>c.callTool(I),selfCallTool:I=>r.callTool(I),orgShared:!0});return{virtualMcpId:null,repo:n,connectionId:w,item:null}}const{childConnectionId:S}=await q({orgSlug:s.slug,sourceConnection:a,installationId:j,owner:n.owner,repo:n.name,githubCallTool:w=>c.callTool(w),selfCallTool:w=>r.callTool(w)});let k=null;try{const w=await r.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:n.name,description:n.description||"Imported from GitHub",pinned:!1,icon:null,metadata:{githubRepo:{owner:n.owner,name:n.name,url:n.url,installationId:j,connectionId:S},instructions:null,ui:{pinnedViews:null,layout:{defaultMainView:{type:"preview"},chatDefaultOpen:!0}}},connections:[{connection_id:S}]}}}),I=w.structuredContent??w,m=I.item?.id;if(!I.item||!m)throw new Error("Failed to create the imported agent");return k=m,{virtualMcpId:m,repo:n,connectionId:S,item:I.item}}catch(w){throw k&&await r.callTool({name:"COLLECTION_VIRTUAL_MCP_DELETE",arguments:{id:k}}).catch(()=>{}),await r.callTool({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:S,force:!0}}).catch(()=>{}),w}},onSuccess:({virtualMcpId:n,repo:j,connectionId:S,item:k})=>{if(g==="connection"||!n||!k){H(h,s.id),W(h,s.id),O.success(`Added ${j.name}`),e();return}if(h.setQueryData(G.collectionItem(r,s.id,"","VIRTUAL_MCP",n),{item:k}),H(h,s.id),y(n,j),v){v({virtualMcpId:n,repo:j,connectionId:S});return}O.success(`Imported ${j.name} from GitHub`),e(),localStorage.setItem("mesh:sidebar-open",JSON.stringify(!1)),x(n)},onError:n=>{O.error("Failed to import repo: "+(n instanceof Error?n.message:"Unknown error"))}});return o.status==="installing"||o.status==="authenticating"?t.jsx(D,{status:o.status,error:null,retry:o.retry}):o.status==="error"?t.jsx(D,{status:"error",error:o.error,retry:o.retry}):l.length===0&&o.status==="idle"?t.jsx(D,{status:"installing",error:null,retry:o.retry}):l.length>1&&!a?t.jsxs("div",{className:"flex flex-col py-2",children:[t.jsx("div",{className:"px-4 py-2",children:t.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Select a connection"})}),l.map(n=>t.jsxs("button",{type:"button",onClick:()=>C(n),className:"flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left",children:[n.icon?t.jsx("img",{src:n.icon,alt:n.title,className:"size-7 rounded-full shrink-0"}):t.jsx("div",{className:"size-7 rounded-full bg-muted flex items-center justify-center shrink-0",children:t.jsx(P,{className:"size-3.5 text-muted-foreground"})}),t.jsx("span",{className:"text-sm font-medium",children:n.title})]},n.id))]}):a?i?t.jsx(Ne,{connectionId:a.id,orgId:s.id,orgSlug:s.slug,installation:i,onSelectRepo:n=>d.mutate(n),isSaving:d.isPending}):t.jsx(be,{connectionId:a.id,orgId:s.id,orgSlug:s.slug,onSelect:f,showBackButton:l.length>1,onBack:()=>C(null)}):null}function be(N){const e=R.c(47),{connectionId:i,orgId:f,orgSlug:v,onSelect:g,showBackButton:s,onBack:h}=N;let x;e[0]!==f||e[1]!==v?(x={connectionId:V,orgId:f,orgSlug:v},e[0]=f,e[1]=v,e[2]=x):x=e[2];const p=U(x),C=$(),b=M();let l;e[3]!==i||e[4]!==f?(l=G.githubUserOrgs(f,i),e[3]=i,e[4]=f,e[5]=l):l=e[5];let o;e[6]!==i||e[7]!==p?(o=()=>fe(m=>p.callTool(m),i),e[6]=i,e[7]=p,e[8]=o):o=e[8];let a;e[9]!==l||e[10]!==o?(a={queryKey:l,queryFn:o},e[9]=l,e[10]=o,e[11]=a):a=e[11];const c=X(a);let r;e[12]!==b||e[13]!==i||e[14]!==c||e[15]!==f||e[16]!==v||e[17]!==C?(r={mutationFn:async()=>{const m=await K({connectionId:i,orgId:f,orgSlug:v,persistFallback:E=>b.update.mutateAsync({id:i,data:{connection_token:E}}).then(je)});if(m.ran&&!m.ok)throw new Error(m.error??"no token received");const _=new URL(`/api/${v}/mcp/${i}`,window.location.origin);await C.invalidateQueries({queryKey:G.isMCPAuthenticated(_.href,null)}),await C.invalidateQueries({queryKey:G.mcpClientPrefix()}),await c.refetch()},onError:ye},e[12]=b,e[13]=i,e[14]=c,e[15]=f,e[16]=v,e[17]=C,e[18]=r):r=e[18];const u=B(r);if(c.isLoading){let m;return e[19]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[19]=m):m=e[19],m}if(c.isError){let m,_;e[20]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("p",{className:"text-sm text-destructive",children:"Failed to load GitHub accounts"}),_=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[280px] leading-relaxed",children:"Your GitHub connection may have expired. Reconnect to restore access."}),e[20]=m,e[21]=_):(m=e[20],_=e[21]);let E;e[22]!==u?(E=()=>u.mutate(),e[22]=u,e[23]=E):E=e[23];let A;e[24]!==u.isPending?(A=u.isPending?t.jsx(z,{size:14,className:"animate-spin"}):t.jsx(P,{className:"size-3.5"}),e[24]=u.isPending,e[25]=A):A=e[25];let L;return e[26]!==u.isPending||e[27]!==E||e[28]!==A?(L=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 px-6 text-center",children:[m,_,t.jsxs(Z,{type:"button",variant:"outline",size:"sm",onClick:E,disabled:u.isPending,children:[A,"Reconnect GitHub"]})]}),e[26]=u.isPending,e[27]=E,e[28]=A,e[29]=L):L=e[29],L}const y=c.data;if(!y)return null;let d;e[30]!==h||e[31]!==s?(d=s&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:h,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(J,{size:12}),"Change connection"]})}),e[30]=h,e[31]=s,e[32]=d):d=e[32];let n;if(e[33]!==y.installations||e[34]!==g){let m;e[36]!==g?(m=_=>t.jsxs("button",{type:"button",onClick:()=>g(_),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left group",children:[t.jsx("img",{src:_.avatarUrl,alt:_.login,className:"size-7 rounded-full shrink-0 ring-1 ring-border"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"text-sm font-medium leading-none",children:_.login}),_.type==="User"&&t.jsx("span",{className:"text-xs text-muted-foreground mt-1",children:"Personal account"})]}),t.jsx("span",{className:"text-xs text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0",children:"Select →"})]},_.installationId),e[36]=g,e[37]=m):m=e[37],n=y.installations.map(m),e[33]=y.installations,e[34]=g,e[35]=n}else n=e[35];let j;e[38]!==n?(j=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden [scrollbar-gutter:stable]",children:n}),e[38]=n,e[39]=j):j=e[39];const S=y.appSlug?`https://github.com/apps/${y.appSlug}/installations/new`:"https://github.com/settings/installations";let k;e[40]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx("span",{className:"underline underline-offset-2",children:"Install the GitHub App"}),e[40]=k):k=e[40];let w;e[41]!==S?(w=t.jsx("div",{className:"px-4 py-3 border-t border-border shrink-0",children:t.jsxs("a",{href:S,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:["Account not listed?"," ",k]})}),e[41]=S,e[42]=w):w=e[42];let I;return e[43]!==w||e[44]!==d||e[45]!==j?(I=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[d,j,w]}),e[43]=w,e[44]=d,e[45]=j,e[46]=I):I=e[46],I}function ye(N){O.error("Failed to reconnect GitHub: "+(N instanceof Error?N.message:"Unknown error"))}function je(){}function Ne(N){const e=R.c(20),{connectionId:i,orgId:f,orgSlug:v,installation:g,onSelectRepo:s,isSaving:h}=N,[x,p]=T.useState(""),C=le(x,300),b=T.useDeferredValue(C),l=x!==b;let o;e[0]!==l||e[1]!==x?(o=t.jsx(re,{placeholder:"Search repositories...",value:x,onChange:p,isSearching:l}),e[0]=l,e[1]=x,e[2]=o):o=e[2];const a=l?"opacity-40":"opacity-100";let c;e[3]!==a?(c=F("flex-1 overflow-hidden flex flex-col transition-opacity duration-150",a),e[3]=a,e[4]=c):c=e[4];let r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=r):r=e[5];let u;e[6]!==i||e[7]!==b||e[8]!==g||e[9]!==h||e[10]!==s||e[11]!==f||e[12]!==v?(u=t.jsx(T.Suspense,{fallback:r,children:t.jsx(ve,{connectionId:i,orgId:f,orgSlug:v,installation:g,query:b,onSelectRepo:s,isSaving:h})}),e[6]=i,e[7]=b,e[8]=g,e[9]=h,e[10]=s,e[11]=f,e[12]=v,e[13]=u):u=e[13];let y;e[14]!==c||e[15]!==u?(y=t.jsx("div",{className:c,children:u}),e[14]=c,e[15]=u,e[16]=y):y=e[16];let d;return e[17]!==o||e[18]!==y?(d=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[o,y]}),e[17]=o,e[18]=y,e[19]=d):d=e[19],d}function ve(N){const e=R.c(29),{connectionId:i,orgId:f,orgSlug:v,installation:g,query:s,onSelectRepo:h,isSaving:x}=N;let p;e[0]!==i||e[1]!==f||e[2]!==v?(p={connectionId:i,orgId:f,orgSlug:v},e[0]=i,e[1]=f,e[2]=v,e[3]=p):p=e[3];const C=U(p),b=g.type==="User"?"user":"org",l=s?`${b}:${g.login} ${s} in:name`:`${b}:${g.login}`;let o;e[4]!==i||e[5]!==g.login||e[6]!==f||e[7]!==s?(o=G.githubOrgRepos(f,i,g.login,s),e[4]=i,e[5]=g.login,e[6]=f,e[7]=s,e[8]=o):o=e[8];let a;e[9]!==C||e[10]!==l?(a=async d=>{const{signal:n}=d,S=(await C.callTool({name:"search_repositories",arguments:{query:l,page:1,perPage:30}},void 0,{signal:n})).content?.[0]?.text;if(!S)throw new Error("No response from search_repositories");return(JSON.parse(S).items??[]).map(we)},e[9]=C,e[10]=l,e[11]=a):a=e[11];let c;e[12]!==o||e[13]!==a?(c={queryKey:o,queryFn:a},e[12]=o,e[13]=a,e[14]=c):c=e[14];const{data:r}=ee(c);if(r.length===0){let d;e[15]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("p",{className:"text-sm text-muted-foreground",children:"No repositories found"}),e[15]=d):d=e[15];let n;e[16]!==s?(n=s&&t.jsx("p",{className:"text-xs text-muted-foreground/60",children:"Try a different search term"}),e[16]=s,e[17]=n):n=e[17];let j;return e[18]!==n?(j=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-1",children:[d,n]}),e[18]=n,e[19]=j):j=e[19],j}let u;if(e[20]!==x||e[21]!==h||e[22]!==r){let d;e[24]!==x||e[25]!==h?(d=n=>t.jsxs("button",{type:"button",onClick:()=>h(n),disabled:x,className:"flex items-start gap-3 px-4 py-3 hover:bg-accent transition-colors text-left disabled:opacity-50 disabled:cursor-not-allowed",children:[t.jsx(P,{className:"size-4 text-muted-foreground mt-0.5 shrink-0"}),t.jsx("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:t.jsx("span",{className:"text-sm font-medium truncate",children:n.name})}),t.jsxs("span",{className:"flex items-center gap-1 text-xs font-medium text-muted-foreground border border-border rounded px-1.5 py-0.5 shrink-0 leading-none",children:[n.private?t.jsx(te,{size:10}):t.jsx(ce,{size:10}),n.private?"Private":"Public"]})]},n.fullName),e[24]=x,e[25]=h,e[26]=d):d=e[26],u=r.map(d),e[20]=x,e[21]=h,e[22]=r,e[23]=u}else u=e[23];let y;return e[27]!==u?(y=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden flex flex-col [scrollbar-gutter:stable]",children:u}),e[27]=u,e[28]=y):y=e[28],y}function we(N){return{name:N.name,fullName:N.full_name,owner:N.full_name.split("/")[0]??"",url:N.html_url,private:N.private,description:N.description,updatedAt:N.updated_at}}function D(N){const e=R.c(33),{status:i,error:f,retry:v}=N;if(i==="error"){let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S=t.jsx("div",{className:"size-10 rounded-full bg-destructive/10 flex items-center justify-center",children:t.jsx(P,{className:"size-5 text-destructive"})}),e[0]=S):S=e[0];let k;e[1]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx("p",{className:"text-sm font-medium",children:"Connection failed"}),e[1]=k):k=e[1];const w=f??"Something went wrong while connecting to GitHub.";let I;e[2]!==w?(I=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[k,t.jsx("p",{className:"text-xs text-muted-foreground max-w-[260px] leading-relaxed",children:w})]}),e[2]=w,e[3]=I):I=e[3];let m;e[4]!==v?(m=t.jsx("button",{type:"button",onClick:v,className:"text-xs font-medium text-foreground border border-border rounded-md px-3 py-1.5 hover:bg-accent transition-colors",children:"Try again"}),e[4]=v,e[5]=m):m=e[5];let _;return e[6]!==I||e[7]!==m?(_=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[S,I,m]}),e[6]=I,e[7]=m,e[8]=_):_=e[8],_}const g=i==="authenticating";let s;e[9]===Symbol.for("react.memo_cache_sentinel")?(s=t.jsx("div",{className:"size-10 rounded-full bg-muted flex items-center justify-center",children:t.jsx(P,{className:"size-5 text-foreground"})}),e[9]=s):s=e[9];let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsxs("div",{className:"relative size-10",children:[s,t.jsx("div",{className:"absolute -bottom-0.5 -right-0.5 size-4 rounded-full bg-background flex items-center justify-center",children:t.jsx(z,{size:12,className:"animate-spin text-muted-foreground"})})]}),e[10]=h):h=e[10];const x=g?"Authenticating with GitHub":"Setting up GitHub";let p;e[11]!==x?(p=t.jsx("p",{className:"text-sm font-medium",children:x}),e[11]=x,e[12]=p):p=e[12];const C=g?"Complete the OAuth flow in your browser":"Installing the GitHub connection...";let b;e[13]!==C?(b=t.jsx("p",{className:"text-xs text-muted-foreground",children:C}),e[13]=C,e[14]=b):b=e[14];let l;e[15]!==p||e[16]!==b?(l=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[p,b]}),e[15]=p,e[16]=b,e[17]=l):l=e[17];const o=g?"bg-muted-foreground/30":"bg-foreground animate-pulse";let a;e[18]!==o?(a=F("size-1.5 rounded-full",o),e[18]=o,e[19]=a):a=e[19];let c;e[20]!==a?(c=t.jsx("span",{className:a}),e[20]=a,e[21]=c):c=e[21];const r=g?"bg-foreground animate-pulse":"bg-muted-foreground/30";let u;e[22]!==r?(u=F("size-1.5 rounded-full",r),e[22]=r,e[23]=u):u=e[23];let y;e[24]!==u?(y=t.jsx("span",{className:u}),e[24]=u,e[25]=y):y=e[25];let d;e[26]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("span",{className:"size-1.5 rounded-full bg-muted-foreground/30"}),e[26]=d):d=e[26];let n;e[27]!==c||e[28]!==y?(n=t.jsxs("div",{className:"flex items-center gap-1.5",children:[c,y,d]}),e[27]=c,e[28]=y,e[29]=n):n=e[29];let j;return e[30]!==n||e[31]!==l?(j=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[h,l,n]}),e[30]=n,e[31]=l,e[32]=j):j=e[32],j}export{Oe as G,he as u};
|
|
1
|
+
import{C as Q,a as Y,n as $,r as T,ac as H,c as R,j as t,i as z,d as B,t as O,dF as W,K as G,m as X,B as Z,l as F,v as ee,w as te}from"./index-bvt6B0Yy.js";import{D as ne,a as se,d as oe,e as ie}from"./dialog-ce-Qx0nk.js";import{C as re}from"./collection-search-D203oksE.js";import{u as le}from"./use-debounced-value-DIO0fI4A.js";import{b as M,u as ae}from"./use-connection-BGgh4Z4A.js";import{u as U,S as V}from"./use-mcp-client-DZtUWYQn.js";import{a as K}from"./authenticate-and-persist-oauth-DIRXI7dv.js";import{b as J}from"./Settings02-BIkAwpdB.js";import{Q as ce}from"./agent-icon-ButnHDJH.js";import{u as ue,G as P}from"./use-registry-app-WK1I8DLf.js";import{e as de}from"./extract-connection-data-CCkEYOfz.js";import{c as me}from"./use-navigate-to-agent-CBoPLhJu.js";import{p as q,f as fe}from"./provision-repo-scoped-github-connection-2iDn-wQ1.js";import{g as xe}from"./github-repo-scope-DjMZbiKa.js";const ge="deco/mcp-github";function he(N){const{org:e}=Q(),{data:i}=Y.useSession(),f=M(),v=$(),[g,s]=T.useState("idle"),[h,x]=T.useState(null),[p,C]=T.useState(null),{data:b,isLoading:l}=ue(ge,{enabled:N.enabled}),o=T.useRef(!1);N.enabled&&b&&!l&&!o.current&&i?.user?.id&&g==="idle"&&(o.current=!0,a());async function a(){if(!(!b||!i?.user?.id||!e))try{s("installing"),x(null);const r=de(b,e.id,i.user.id,{remoteIndex:0});if(!r.connection_url)throw new Error("Registry item is missing a remote URL for mcp-github");const{id:y}=await f.create.mutateAsync(r);s("authenticating");const d=await K({connectionId:y,orgId:e.id,orgSlug:e.slug,persistFallback:n=>f.update.mutateAsync({id:y,data:{connection_token:n}}).then(()=>{})});if(d.ran&&!d.ok){try{await f.delete.mutateAsync(y)}catch{}throw new Error(d.error&&d.error!=="no token received"?d.error:"No token received from GitHub")}H(v,e.id),C(r),s("ready")}catch(r){x(r instanceof Error?r.message:String(r)),s("error")}}function c(){s("idle"),x(null),C(null),o.current=!1}return N.enabled&&l&&g==="idle"?{status:"installing",error:null,connection:null,retry:c}:{status:g,error:h,connection:p,retry:c}}function Oe(N){const e=R.c(22),{open:i,onOpenChange:f,title:v,onImportComplete:g,mode:s}=N,h=s===void 0?"agent":s,x=v??(h==="connection"?"Add repo":"Import from GitHub"),[p,C]=T.useState(null);let b;e[0]!==x?(b=t.jsx(ne,{className:"sr-only",children:t.jsx(se,{children:x})}),e[0]=x,e[1]=b):b=e[1];let l;e[2]!==x||e[3]!==p?(l=t.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 gap-3 shrink-0",children:p?t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",onClick:()=>C(null),className:"flex items-center justify-center text-muted-foreground hover:text-foreground transition-colors shrink-0","aria-label":"Back to accounts",children:t.jsx(J,{size:16})}),t.jsx("img",{src:p.avatarUrl,alt:p.login,className:"size-5 rounded-full ring-1 ring-border shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:p.login})]}):t.jsxs(t.Fragment,{children:[t.jsx(P,{className:"size-4 text-foreground shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:x})]})}),e[2]=x,e[3]=p,e[4]=l):l=e[4];let o;e[5]===Symbol.for("react.memo_cache_sentinel")?(o=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=o):o=e[5];let a;e[6]!==f?(a=()=>f(!1),e[6]=f,e[7]=a):a=e[7];let c;e[8]!==h||e[9]!==g||e[10]!==i||e[11]!==p||e[12]!==a?(c=t.jsx("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:t.jsx(T.Suspense,{fallback:o,children:t.jsx(pe,{open:i,onComplete:a,selectedInstallation:p,onSelectInstallation:C,onImportComplete:g,mode:h})})}),e[8]=h,e[9]=g,e[10]=i,e[11]=p,e[12]=a,e[13]=c):c=e[13];let r;e[14]!==b||e[15]!==l||e[16]!==c?(r=t.jsxs(oe,{className:"sm:max-w-[560px] h-[85svh] sm:h-[520px] p-0 gap-0 overflow-hidden flex flex-col",children:[b,l,c]}),e[14]=b,e[15]=l,e[16]=c,e[17]=r):r=e[17];let u;return e[18]!==f||e[19]!==i||e[20]!==r?(u=t.jsx(ie,{open:i,onOpenChange:f,children:r}),e[18]=f,e[19]=i,e[20]=r,e[21]=u):u=e[21],u}function pe({open:N,onComplete:e,selectedInstallation:i,onSelectInstallation:f,onImportComplete:v,mode:g="agent"}){const{org:s}=Q(),h=$(),x=me(),[p,C]=T.useState(null),b=ae({slug:"mcp-github"}),l=xe(b),o=he({enabled:N&&l.length===0}),a=l.length===1?l[0]??null:p,c=U({connectionId:a?.id??"",orgId:s.id,orgSlug:s.slug}),r=U({connectionId:V,orgId:s.id,orgSlug:s.slug}),u=async(n,j)=>{try{const k=await c.callTool({name:"get_file_contents",arguments:{owner:n.owner,repo:n.name,path:j}});if(k.isError)return null;const I=k.content?.find(m=>m.type==="resource")?.resource?.text;if(!I)return null;try{const m=JSON.parse(I);return typeof m=="string"?m:JSON.stringify(m)}catch{return I}}catch{return null}},y=(n,j)=>{Promise.all([u(j,"AGENTS.md"),u(j,"CLAUDE.md")]).then(async([S,k])=>{const w=S??k??null;w&&(await r.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:n,data:{metadata:{instructions:w}}}}),H(h,s.id))}).catch(S=>{console.error("GitHub instructions fetch failed:",S)})},d=B({mutationFn:async n=>{if(!a||!i)throw new Error("No GitHub connection or installation");const j=i.installationId;if(g==="connection"){const{childConnectionId:w}=await q({orgSlug:s.slug,sourceConnection:a,installationId:j,owner:n.owner,repo:n.name,githubCallTool:I=>c.callTool(I),selfCallTool:I=>r.callTool(I),orgShared:!0});return{virtualMcpId:null,repo:n,connectionId:w,item:null}}const{childConnectionId:S}=await q({orgSlug:s.slug,sourceConnection:a,installationId:j,owner:n.owner,repo:n.name,githubCallTool:w=>c.callTool(w),selfCallTool:w=>r.callTool(w)});let k=null;try{const w=await r.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:n.name,description:n.description||"Imported from GitHub",pinned:!1,icon:null,metadata:{githubRepo:{owner:n.owner,name:n.name,url:n.url,installationId:j,connectionId:S},instructions:null,ui:{pinnedViews:null,layout:{defaultMainView:{type:"preview"},chatDefaultOpen:!0}}},connections:[{connection_id:S}]}}}),I=w.structuredContent??w,m=I.item?.id;if(!I.item||!m)throw new Error("Failed to create the imported agent");return k=m,{virtualMcpId:m,repo:n,connectionId:S,item:I.item}}catch(w){throw k&&await r.callTool({name:"COLLECTION_VIRTUAL_MCP_DELETE",arguments:{id:k}}).catch(()=>{}),await r.callTool({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:S,force:!0}}).catch(()=>{}),w}},onSuccess:({virtualMcpId:n,repo:j,connectionId:S,item:k})=>{if(g==="connection"||!n||!k){H(h,s.id),W(h,s.id),O.success(`Added ${j.name}`),e();return}if(h.setQueryData(G.collectionItem(r,s.id,"","VIRTUAL_MCP",n),{item:k}),H(h,s.id),y(n,j),v){v({virtualMcpId:n,repo:j,connectionId:S});return}O.success(`Imported ${j.name} from GitHub`),e(),localStorage.setItem("mesh:sidebar-open",JSON.stringify(!1)),x(n)},onError:n=>{O.error("Failed to import repo: "+(n instanceof Error?n.message:"Unknown error"))}});return o.status==="installing"||o.status==="authenticating"?t.jsx(D,{status:o.status,error:null,retry:o.retry}):o.status==="error"?t.jsx(D,{status:"error",error:o.error,retry:o.retry}):l.length===0&&o.status==="idle"?t.jsx(D,{status:"installing",error:null,retry:o.retry}):l.length>1&&!a?t.jsxs("div",{className:"flex flex-col py-2",children:[t.jsx("div",{className:"px-4 py-2",children:t.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Select a connection"})}),l.map(n=>t.jsxs("button",{type:"button",onClick:()=>C(n),className:"flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left",children:[n.icon?t.jsx("img",{src:n.icon,alt:n.title,className:"size-7 rounded-full shrink-0"}):t.jsx("div",{className:"size-7 rounded-full bg-muted flex items-center justify-center shrink-0",children:t.jsx(P,{className:"size-3.5 text-muted-foreground"})}),t.jsx("span",{className:"text-sm font-medium",children:n.title})]},n.id))]}):a?i?t.jsx(Ne,{connectionId:a.id,orgId:s.id,orgSlug:s.slug,installation:i,onSelectRepo:n=>d.mutate(n),isSaving:d.isPending}):t.jsx(be,{connectionId:a.id,orgId:s.id,orgSlug:s.slug,onSelect:f,showBackButton:l.length>1,onBack:()=>C(null)}):null}function be(N){const e=R.c(47),{connectionId:i,orgId:f,orgSlug:v,onSelect:g,showBackButton:s,onBack:h}=N;let x;e[0]!==f||e[1]!==v?(x={connectionId:V,orgId:f,orgSlug:v},e[0]=f,e[1]=v,e[2]=x):x=e[2];const p=U(x),C=$(),b=M();let l;e[3]!==i||e[4]!==f?(l=G.githubUserOrgs(f,i),e[3]=i,e[4]=f,e[5]=l):l=e[5];let o;e[6]!==i||e[7]!==p?(o=()=>fe(m=>p.callTool(m),i),e[6]=i,e[7]=p,e[8]=o):o=e[8];let a;e[9]!==l||e[10]!==o?(a={queryKey:l,queryFn:o},e[9]=l,e[10]=o,e[11]=a):a=e[11];const c=X(a);let r;e[12]!==b||e[13]!==i||e[14]!==c||e[15]!==f||e[16]!==v||e[17]!==C?(r={mutationFn:async()=>{const m=await K({connectionId:i,orgId:f,orgSlug:v,persistFallback:E=>b.update.mutateAsync({id:i,data:{connection_token:E}}).then(je)});if(m.ran&&!m.ok)throw new Error(m.error??"no token received");const _=new URL(`/api/${v}/mcp/${i}`,window.location.origin);await C.invalidateQueries({queryKey:G.isMCPAuthenticated(_.href,null)}),await C.invalidateQueries({queryKey:G.mcpClientPrefix()}),await c.refetch()},onError:ye},e[12]=b,e[13]=i,e[14]=c,e[15]=f,e[16]=v,e[17]=C,e[18]=r):r=e[18];const u=B(r);if(c.isLoading){let m;return e[19]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[19]=m):m=e[19],m}if(c.isError){let m,_;e[20]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("p",{className:"text-sm text-destructive",children:"Failed to load GitHub accounts"}),_=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[280px] leading-relaxed",children:"Your GitHub connection may have expired. Reconnect to restore access."}),e[20]=m,e[21]=_):(m=e[20],_=e[21]);let E;e[22]!==u?(E=()=>u.mutate(),e[22]=u,e[23]=E):E=e[23];let A;e[24]!==u.isPending?(A=u.isPending?t.jsx(z,{size:14,className:"animate-spin"}):t.jsx(P,{className:"size-3.5"}),e[24]=u.isPending,e[25]=A):A=e[25];let L;return e[26]!==u.isPending||e[27]!==E||e[28]!==A?(L=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 px-6 text-center",children:[m,_,t.jsxs(Z,{type:"button",variant:"outline",size:"sm",onClick:E,disabled:u.isPending,children:[A,"Reconnect GitHub"]})]}),e[26]=u.isPending,e[27]=E,e[28]=A,e[29]=L):L=e[29],L}const y=c.data;if(!y)return null;let d;e[30]!==h||e[31]!==s?(d=s&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:h,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(J,{size:12}),"Change connection"]})}),e[30]=h,e[31]=s,e[32]=d):d=e[32];let n;if(e[33]!==y.installations||e[34]!==g){let m;e[36]!==g?(m=_=>t.jsxs("button",{type:"button",onClick:()=>g(_),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left group",children:[t.jsx("img",{src:_.avatarUrl,alt:_.login,className:"size-7 rounded-full shrink-0 ring-1 ring-border"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"text-sm font-medium leading-none",children:_.login}),_.type==="User"&&t.jsx("span",{className:"text-xs text-muted-foreground mt-1",children:"Personal account"})]}),t.jsx("span",{className:"text-xs text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0",children:"Select →"})]},_.installationId),e[36]=g,e[37]=m):m=e[37],n=y.installations.map(m),e[33]=y.installations,e[34]=g,e[35]=n}else n=e[35];let j;e[38]!==n?(j=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden [scrollbar-gutter:stable]",children:n}),e[38]=n,e[39]=j):j=e[39];const S=y.appSlug?`https://github.com/apps/${y.appSlug}/installations/new`:"https://github.com/settings/installations";let k;e[40]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx("span",{className:"underline underline-offset-2",children:"Install the GitHub App"}),e[40]=k):k=e[40];let w;e[41]!==S?(w=t.jsx("div",{className:"px-4 py-3 border-t border-border shrink-0",children:t.jsxs("a",{href:S,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:["Account not listed?"," ",k]})}),e[41]=S,e[42]=w):w=e[42];let I;return e[43]!==w||e[44]!==d||e[45]!==j?(I=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[d,j,w]}),e[43]=w,e[44]=d,e[45]=j,e[46]=I):I=e[46],I}function ye(N){O.error("Failed to reconnect GitHub: "+(N instanceof Error?N.message:"Unknown error"))}function je(){}function Ne(N){const e=R.c(20),{connectionId:i,orgId:f,orgSlug:v,installation:g,onSelectRepo:s,isSaving:h}=N,[x,p]=T.useState(""),C=le(x,300),b=T.useDeferredValue(C),l=x!==b;let o;e[0]!==l||e[1]!==x?(o=t.jsx(re,{placeholder:"Search repositories...",value:x,onChange:p,isSearching:l}),e[0]=l,e[1]=x,e[2]=o):o=e[2];const a=l?"opacity-40":"opacity-100";let c;e[3]!==a?(c=F("flex-1 overflow-hidden flex flex-col transition-opacity duration-150",a),e[3]=a,e[4]=c):c=e[4];let r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(z,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=r):r=e[5];let u;e[6]!==i||e[7]!==b||e[8]!==g||e[9]!==h||e[10]!==s||e[11]!==f||e[12]!==v?(u=t.jsx(T.Suspense,{fallback:r,children:t.jsx(ve,{connectionId:i,orgId:f,orgSlug:v,installation:g,query:b,onSelectRepo:s,isSaving:h})}),e[6]=i,e[7]=b,e[8]=g,e[9]=h,e[10]=s,e[11]=f,e[12]=v,e[13]=u):u=e[13];let y;e[14]!==c||e[15]!==u?(y=t.jsx("div",{className:c,children:u}),e[14]=c,e[15]=u,e[16]=y):y=e[16];let d;return e[17]!==o||e[18]!==y?(d=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[o,y]}),e[17]=o,e[18]=y,e[19]=d):d=e[19],d}function ve(N){const e=R.c(29),{connectionId:i,orgId:f,orgSlug:v,installation:g,query:s,onSelectRepo:h,isSaving:x}=N;let p;e[0]!==i||e[1]!==f||e[2]!==v?(p={connectionId:i,orgId:f,orgSlug:v},e[0]=i,e[1]=f,e[2]=v,e[3]=p):p=e[3];const C=U(p),b=g.type==="User"?"user":"org",l=s?`${b}:${g.login} ${s} in:name`:`${b}:${g.login}`;let o;e[4]!==i||e[5]!==g.login||e[6]!==f||e[7]!==s?(o=G.githubOrgRepos(f,i,g.login,s),e[4]=i,e[5]=g.login,e[6]=f,e[7]=s,e[8]=o):o=e[8];let a;e[9]!==C||e[10]!==l?(a=async d=>{const{signal:n}=d,S=(await C.callTool({name:"search_repositories",arguments:{query:l,page:1,perPage:30}},void 0,{signal:n})).content?.[0]?.text;if(!S)throw new Error("No response from search_repositories");return(JSON.parse(S).items??[]).map(we)},e[9]=C,e[10]=l,e[11]=a):a=e[11];let c;e[12]!==o||e[13]!==a?(c={queryKey:o,queryFn:a},e[12]=o,e[13]=a,e[14]=c):c=e[14];const{data:r}=ee(c);if(r.length===0){let d;e[15]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("p",{className:"text-sm text-muted-foreground",children:"No repositories found"}),e[15]=d):d=e[15];let n;e[16]!==s?(n=s&&t.jsx("p",{className:"text-xs text-muted-foreground/60",children:"Try a different search term"}),e[16]=s,e[17]=n):n=e[17];let j;return e[18]!==n?(j=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-1",children:[d,n]}),e[18]=n,e[19]=j):j=e[19],j}let u;if(e[20]!==x||e[21]!==h||e[22]!==r){let d;e[24]!==x||e[25]!==h?(d=n=>t.jsxs("button",{type:"button",onClick:()=>h(n),disabled:x,className:"flex items-start gap-3 px-4 py-3 hover:bg-accent transition-colors text-left disabled:opacity-50 disabled:cursor-not-allowed",children:[t.jsx(P,{className:"size-4 text-muted-foreground mt-0.5 shrink-0"}),t.jsx("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:t.jsx("span",{className:"text-sm font-medium truncate",children:n.name})}),t.jsxs("span",{className:"flex items-center gap-1 text-xs font-medium text-muted-foreground border border-border rounded px-1.5 py-0.5 shrink-0 leading-none",children:[n.private?t.jsx(te,{size:10}):t.jsx(ce,{size:10}),n.private?"Private":"Public"]})]},n.fullName),e[24]=x,e[25]=h,e[26]=d):d=e[26],u=r.map(d),e[20]=x,e[21]=h,e[22]=r,e[23]=u}else u=e[23];let y;return e[27]!==u?(y=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden flex flex-col [scrollbar-gutter:stable]",children:u}),e[27]=u,e[28]=y):y=e[28],y}function we(N){return{name:N.name,fullName:N.full_name,owner:N.full_name.split("/")[0]??"",url:N.html_url,private:N.private,description:N.description,updatedAt:N.updated_at}}function D(N){const e=R.c(33),{status:i,error:f,retry:v}=N;if(i==="error"){let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S=t.jsx("div",{className:"size-10 rounded-full bg-destructive/10 flex items-center justify-center",children:t.jsx(P,{className:"size-5 text-destructive"})}),e[0]=S):S=e[0];let k;e[1]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx("p",{className:"text-sm font-medium",children:"Connection failed"}),e[1]=k):k=e[1];const w=f??"Something went wrong while connecting to GitHub.";let I;e[2]!==w?(I=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[k,t.jsx("p",{className:"text-xs text-muted-foreground max-w-[260px] leading-relaxed",children:w})]}),e[2]=w,e[3]=I):I=e[3];let m;e[4]!==v?(m=t.jsx("button",{type:"button",onClick:v,className:"text-xs font-medium text-foreground border border-border rounded-md px-3 py-1.5 hover:bg-accent transition-colors",children:"Try again"}),e[4]=v,e[5]=m):m=e[5];let _;return e[6]!==I||e[7]!==m?(_=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[S,I,m]}),e[6]=I,e[7]=m,e[8]=_):_=e[8],_}const g=i==="authenticating";let s;e[9]===Symbol.for("react.memo_cache_sentinel")?(s=t.jsx("div",{className:"size-10 rounded-full bg-muted flex items-center justify-center",children:t.jsx(P,{className:"size-5 text-foreground"})}),e[9]=s):s=e[9];let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsxs("div",{className:"relative size-10",children:[s,t.jsx("div",{className:"absolute -bottom-0.5 -right-0.5 size-4 rounded-full bg-background flex items-center justify-center",children:t.jsx(z,{size:12,className:"animate-spin text-muted-foreground"})})]}),e[10]=h):h=e[10];const x=g?"Authenticating with GitHub":"Setting up GitHub";let p;e[11]!==x?(p=t.jsx("p",{className:"text-sm font-medium",children:x}),e[11]=x,e[12]=p):p=e[12];const C=g?"Complete the OAuth flow in your browser":"Installing the GitHub connection...";let b;e[13]!==C?(b=t.jsx("p",{className:"text-xs text-muted-foreground",children:C}),e[13]=C,e[14]=b):b=e[14];let l;e[15]!==p||e[16]!==b?(l=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[p,b]}),e[15]=p,e[16]=b,e[17]=l):l=e[17];const o=g?"bg-muted-foreground/30":"bg-foreground animate-pulse";let a;e[18]!==o?(a=F("size-1.5 rounded-full",o),e[18]=o,e[19]=a):a=e[19];let c;e[20]!==a?(c=t.jsx("span",{className:a}),e[20]=a,e[21]=c):c=e[21];const r=g?"bg-foreground animate-pulse":"bg-muted-foreground/30";let u;e[22]!==r?(u=F("size-1.5 rounded-full",r),e[22]=r,e[23]=u):u=e[23];let y;e[24]!==u?(y=t.jsx("span",{className:u}),e[24]=u,e[25]=y):y=e[25];let d;e[26]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("span",{className:"size-1.5 rounded-full bg-muted-foreground/30"}),e[26]=d):d=e[26];let n;e[27]!==c||e[28]!==y?(n=t.jsxs("div",{className:"flex items-center gap-1.5",children:[c,y,d]}),e[27]=c,e[28]=y,e[29]=n):n=e[29];let j;return e[30]!==n||e[31]!==l?(j=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[h,l,n]}),e[30]=n,e[31]=l,e[32]=j):j=e[32],j}export{Oe as G,he as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{dw as St,dx as It,be as N,I as c,dy as de,bk as ze,dz as Et,bd as Tt,aW as wt,ag as O,af as G,ad as oe,H as _,bf as m,b3 as F,dA as Mt,dB as I,ae as At,t as ge,c as Ee,r as W,C as Ot,j as Ct}from"./index-
|
|
1
|
+
import{dw as St,dx as It,be as N,I as c,dy as de,bk as ze,dz as Et,bd as Tt,aW as wt,ag as O,af as G,ad as oe,H as _,bf as m,b3 as F,dA as Mt,dB as I,ae as At,t as ge,c as Ee,r as W,C as Ot,j as Ct}from"./index-bvt6B0Yy.js";import{S as Nt,u as Rt}from"./use-mcp-client-DZtUWYQn.js";import{d as xt,D as Pt}from"./decopilot-sse-pool-DGCW5Rjt.js";import{d as Dt}from"./delay-CnY5UFtP.js";import{e as kt}from"./backoff-CrEUbyZT.js";var re;(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function a(s){throw new Error}t.assertNever=a,t.arrayToEnum=s=>{const o={};for(const i of s)o[i]=i;return o},t.getValidEnumValues=s=>{const o=t.objectKeys(s).filter(n=>typeof s[s[n]]!="number"),i={};for(const n of o)i[n]=s[n];return t.objectValues(i)},t.objectValues=s=>t.objectKeys(s).map(function(o){return s[o]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const o=[];for(const i in s)Object.prototype.hasOwnProperty.call(s,i)&&o.push(i);return o},t.find=(s,o)=>{for(const i of s)if(o(i))return i},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,o=" | "){return s.map(i=>typeof i=="string"?`'${i}'`:i).join(o)}t.joinValues=r,t.jsonStringifyReplacer=(s,o)=>typeof o=="bigint"?o.toString():o})(re||(re={}));var Ae;(function(t){t.mergeShapes=(e,a)=>({...e,...a})})(Ae||(Ae={}));re.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);re.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class ce extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const a=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,a):this.__proto__=a,this.name="ZodError",this.issues=e}format(e){const a=e||function(o){return o.message},r={_errors:[]},s=o=>{for(const i of o.issues)if(i.code==="invalid_union")i.unionErrors.map(s);else if(i.code==="invalid_return_type")s(i.returnTypeError);else if(i.code==="invalid_arguments")s(i.argumentsError);else if(i.path.length===0)r._errors.push(a(i));else{let n=r,p=0;for(;p<i.path.length;){const u=i.path[p];p===i.path.length-1?(n[u]=n[u]||{_errors:[]},n[u]._errors.push(a(i))):n[u]=n[u]||{_errors:[]},n=n[u],p++}}};return s(this),r}static assert(e){if(!(e instanceof ce))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,re.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=a=>a.message){const a=Object.create(null),r=[];for(const s of this.issues)if(s.path.length>0){const o=s.path[0];a[o]=a[o]||[],a[o].push(e(s))}else r.push(e(s));return{formErrors:r,fieldErrors:a}}get formErrors(){return this.flatten()}}ce.create=t=>new ce(t);var Oe;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(Oe||(Oe={}));var h;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(h||(h={}));var Je="vercel.ai.error",Lt=Symbol.for(Je),Ce,Ne,Z=class We extends(Ne=Error,Ce=Lt,Ne){constructor({name:e,message:a,cause:r}){super(a),this[Ce]=!0,this.name=e,this.cause=r}static isInstance(e){return We.hasMarker(e,Je)}static hasMarker(e,a){const r=Symbol.for(a);return e!=null&&typeof e=="object"&&r in e&&typeof e[r]=="boolean"&&e[r]===!0}};function Ge(t){return t==null?"unknown error":typeof t=="string"?t:t instanceof Error?t.message:JSON.stringify(t)}var Ye="AI_InvalidArgumentError",He=`vercel.ai.error.${Ye}`,jt=Symbol.for(He),Re,xe,Zt=class extends(xe=Z,Re=jt,xe){constructor({message:t,cause:e,argument:a}){super({name:Ye,message:t,cause:e}),this[Re]=!0,this.argument=a}static isInstance(t){return Z.hasMarker(t,He)}},qe="AI_JSONParseError",Xe=`vercel.ai.error.${qe}`,$t=Symbol.for(Xe),Pe,De,ke=class extends(De=Z,Pe=$t,De){constructor({text:t,cause:e}){super({name:qe,message:`JSON parsing failed: Text: ${t}.
|
|
2
2
|
Error message: ${Ge(e)}`,cause:e}),this[Pe]=!0,this.text=t}static isInstance(t){return Z.hasMarker(t,Xe)}},Qe="AI_TypeValidationError",Ke=`vercel.ai.error.${Qe}`,Ut=Symbol.for(Ke),Le,je,X=class ve extends(je=Z,Le=Ut,je){constructor({value:e,cause:a,context:r}){let s="Type validation failed";if(r?.field&&(s+=` for ${r.field}`),r?.entityName||r?.entityId){s+=" (";const o=[];r.entityName&&o.push(r.entityName),r.entityId&&o.push(`id: "${r.entityId}"`),s+=o.join(", "),s+=")"}super({name:Qe,message:`${s}: Value: ${JSON.stringify(e)}.
|
|
3
3
|
Error message: ${Ge(a)}`,cause:a}),this[Le]=!0,this.value=e,this.context=r}static isInstance(e){return Z.hasMarker(e,Ke)}static wrap({value:e,cause:a,context:r}){var s,o,i;return ve.isInstance(a)&&a.value===e&&((s=a.context)==null?void 0:s.field)===r?.field&&((o=a.context)==null?void 0:o.entityName)===r?.entityName&&((i=a.context)==null?void 0:i.entityId)===r?.entityId?a:new ve({value:e,cause:a,context:r})}},ie=({prefix:t,size:e=16,alphabet:a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:r="-"}={})=>{const s=()=>{const o=a.length,i=new Array(e);for(let n=0;n<e;n++)i[n]=a[Math.random()*o|0];return i.join("")};if(t==null)return s;if(a.includes(r))throw new Zt({argument:"separator",message:`The separator "${r}" must not be part of the alphabet "${a}".`});return()=>`${t}${r}${s()}`};ie();var Ft=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Bt=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function Ze(t){const e=JSON.parse(t);return e===null||typeof e!="object"||Ft.test(t)===!1&&Bt.test(t)===!1?e:Vt(e)}function Vt(t){let e=[t];for(;e.length;){const a=e;e=[];for(const r of a){if(Object.prototype.hasOwnProperty.call(r,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(r,"constructor")&&r.constructor!==null&&typeof r.constructor=="object"&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const s in r){const o=r[s];o&&typeof o=="object"&&e.push(o)}}}return t}function zt(t){const{stackTraceLimit:e}=Error;try{Error.stackTraceLimit=0}catch{return Ze(t)}try{return Ze(t)}finally{Error.stackTraceLimit=e}}function Te(t){if(t.type==="object"||Array.isArray(t.type)&&t.type.includes("object")){t.additionalProperties=!1;const{properties:a}=t;if(a!=null)for(const r of Object.keys(a))a[r]=z(a[r])}t.items!=null&&(t.items=Array.isArray(t.items)?t.items.map(z):z(t.items)),t.anyOf!=null&&(t.anyOf=t.anyOf.map(z)),t.allOf!=null&&(t.allOf=t.allOf.map(z)),t.oneOf!=null&&(t.oneOf=t.oneOf.map(z));const{definitions:e}=t;if(e!=null)for(const a of Object.keys(e))e[a]=z(e[a]);return t}function z(t){return typeof t=="boolean"?t:Te(t)}var Jt=Symbol("Let zodToJsonSchema decide on which parser to use"),$e={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Wt=t=>typeof t=="string"?{...$e,name:t}:{...$e,...t};function R(){return{}}function Gt(t,e){var a,r,s;const o={type:"array"};return(a=t.type)!=null&&a._def&&((s=(r=t.type)==null?void 0:r._def)==null?void 0:s.typeName)!==h.ZodAny&&(o.items=b(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&(o.minItems=t.minLength.value),t.maxLength&&(o.maxItems=t.maxLength.value),t.exactLength&&(o.minItems=t.exactLength.value,o.maxItems=t.exactLength.value),o}function Yt(t){const e={type:"integer",format:"int64"};if(!t.checks)return e;for(const a of t.checks)switch(a.kind){case"min":a.inclusive?e.minimum=a.value:e.exclusiveMinimum=a.value;break;case"max":a.inclusive?e.maximum=a.value:e.exclusiveMaximum=a.value;break;case"multipleOf":e.multipleOf=a.value;break}return e}function Ht(){return{type:"boolean"}}function et(t,e){return b(t.type._def,e)}var qt=(t,e)=>b(t.innerType._def,e);function tt(t,e,a){const r=a??e.dateStrategy;if(Array.isArray(r))return{anyOf:r.map((s,o)=>tt(t,e,s))};switch(r){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Xt(t)}}var Xt=t=>{const e={type:"integer",format:"unix-time"};for(const a of t.checks)switch(a.kind){case"min":e.minimum=a.value;break;case"max":e.maximum=a.value;break}return e};function Qt(t,e){return{...b(t.innerType._def,e),default:t.defaultValue()}}function Kt(t,e){return e.effectStrategy==="input"?b(t.schema._def,e):R()}function ea(t){return{type:"string",enum:Array.from(t.values)}}var ta=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function aa(t,e){const a=[b(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),b(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),r=[];return a.forEach(s=>{if(ta(s))r.push(...s.allOf);else{let o=s;if("additionalProperties"in s&&s.additionalProperties===!1){const{additionalProperties:i,...n}=s;o=n}r.push(o)}}),r.length?{allOf:r}:void 0}function ra(t){const e=typeof t.value;return e!=="bigint"&&e!=="number"&&e!=="boolean"&&e!=="string"?{type:Array.isArray(t.value)?"array":"object"}:{type:e==="bigint"?"integer":e,const:t.value}}var me=void 0,P={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(me===void 0&&(me=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),me),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function at(t,e){const a={type:"string"};if(t.checks)for(const r of t.checks)switch(r.kind){case"min":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value;break;case"max":a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"email":switch(e.emailStrategy){case"format:email":D(a,"email",r.message,e);break;case"format:idn-email":D(a,"idn-email",r.message,e);break;case"pattern:zod":A(a,P.email,r.message,e);break}break;case"url":D(a,"uri",r.message,e);break;case"uuid":D(a,"uuid",r.message,e);break;case"regex":A(a,r.regex,r.message,e);break;case"cuid":A(a,P.cuid,r.message,e);break;case"cuid2":A(a,P.cuid2,r.message,e);break;case"startsWith":A(a,RegExp(`^${he(r.value,e)}`),r.message,e);break;case"endsWith":A(a,RegExp(`${he(r.value,e)}$`),r.message,e);break;case"datetime":D(a,"date-time",r.message,e);break;case"date":D(a,"date",r.message,e);break;case"time":D(a,"time",r.message,e);break;case"duration":D(a,"duration",r.message,e);break;case"length":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value,a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"includes":{A(a,RegExp(he(r.value,e)),r.message,e);break}case"ip":{r.version!=="v6"&&D(a,"ipv4",r.message,e),r.version!=="v4"&&D(a,"ipv6",r.message,e);break}case"base64url":A(a,P.base64url,r.message,e);break;case"jwt":A(a,P.jwt,r.message,e);break;case"cidr":{r.version!=="v6"&&A(a,P.ipv4Cidr,r.message,e),r.version!=="v4"&&A(a,P.ipv6Cidr,r.message,e);break}case"emoji":A(a,P.emoji(),r.message,e);break;case"ulid":{A(a,P.ulid,r.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{D(a,"binary",r.message,e);break}case"contentEncoding:base64":{a.contentEncoding="base64";break}case"pattern:zod":{A(a,P.base64,r.message,e);break}}break}case"nanoid":A(a,P.nanoid,r.message,e)}return a}function he(t,e){return e.patternStrategy==="escape"?na(t):t}var sa=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function na(t){let e="";for(let a=0;a<t.length;a++)sa.has(t[a])||(e+="\\"),e+=t[a];return e}function D(t,e,a,r){var s;t.format||(s=t.anyOf)!=null&&s.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format}),delete t.format),t.anyOf.push({format:e,...a&&r.errorMessages&&{errorMessage:{format:a}}})):t.format=e}function A(t,e,a,r){var s;t.pattern||(s=t.allOf)!=null&&s.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern}),delete t.pattern),t.allOf.push({pattern:Ue(e,r),...a&&r.errorMessages&&{errorMessage:{pattern:a}}})):t.pattern=Ue(e,r)}function Ue(t,e){var a;if(!e.applyRegexFlags||!t.flags)return t.source;const r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},s=r.i?t.source.toLowerCase():t.source;let o="",i=!1,n=!1,p=!1;for(let u=0;u<s.length;u++){if(i){o+=s[u],i=!1;continue}if(r.i){if(n){if(s[u].match(/[a-z]/)){p?(o+=s[u],o+=`${s[u-2]}-${s[u]}`.toUpperCase(),p=!1):s[u+1]==="-"&&((a=s[u+2])!=null&&a.match(/[a-z]/))?(o+=s[u],p=!0):o+=`${s[u]}${s[u].toUpperCase()}`;continue}}else if(s[u].match(/[a-z]/)){o+=`[${s[u]}${s[u].toUpperCase()}]`;continue}}if(r.m){if(s[u]==="^"){o+=`(^|(?<=[\r
|
|
4
4
|
]))`;continue}else if(s[u]==="$"){o+=`($|(?=[\r
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as $,C as de,n as Je,d as Ge,K as X,m as ie,aY as jn,r as N,ap as $s,l as ce,j as r,U as Ps,i as Es,B as J,aL as kn,t as ue,w as Ds,L as Ts,e as Fs,b as Sn,u as Nn,E as Et}from"./index-sFWrAEhV.js";import{s as zn}from"./Eye-C4EdnvCy.js";import{a as ft}from"./Palette-CgeepDBa.js";import{s as Is}from"./Plus-CrJgwez2.js";import{i as Ms}from"./SearchLg-C0Ivi-8H.js";import{i as ht}from"./Upload01-DEV8Z4Dc.js";import{s as Cn}from"./XClose-D3_gG3OK.js";import{i as Ut}from"./Zap-YU62l_VL.js";import{u as $n}from"./use-mobile-CP1t536v.js";import{f as Ls,a as Os,b as Rs,c as As,d as _s,e as Us,A as Bs,g as Hs}from"./alert-dialog-C7g7ElPm.js";import{D as Pn,a as Ue,d as et,e as tt,i as En,h as qs,c as Ks}from"./dialog-onuPvsFb.js";import{I as Xe}from"./input-Cbu4x9Ul.js";import{F as ke,M as Bt,d as Dn}from"./file-type-icon-CEXR2pOt.js";import{T as Ws}from"./toolbar-BhBjqHoy.js";import{a as Gs}from"./Package-DIT0RrcY.js";import{u as Vs}from"./use-debounced-value-C-nLAxmh.js";import{p as gt,b as le,a as Me,c as Tn,d as Xs}from"./location-BpLtHjTZ.js";import{b as Qs,f as ct,s as Ys,c as tn,d as Zs,g as Js,i as el,h as Fn,a as In,j as tl,e as nl}from"./ZoomOut-BX-CZu6O.js";import{S as ae}from"./skeleton-Ce-hSFOr.js";import{T as sl}from"./textarea-Du3mybxt.js";import{t as ll}from"./ChevronDown-C6TPbm1q.js";import{n as rl}from"./ChevronUp-CfEGPhJ4.js";import{i as mt}from"./X-DEJG4s29.js";import{P as il,b as ol,a as al}from"./popover-CPaLMNs0.js";import{b as be,T as ye,a as ve}from"./tooltip-DvowFfuR.js";import{i as cl}from"./Check-sncoz7x5.js";import{a as dl}from"./Copy01-C3Ms0WJG.js";import{n as Qe,i as bt}from"./Globe01-CDaTtsZa.js";import{i as Mn}from"./Key01-CwdjHu82.js";import{n as Ln}from"./LinkExternal01-BUz_5hcr.js";import{l as ul,F as fl}from"./index-DSzU-fG7.js";import{a as hl}from"./Image01-C65at7v2.js";import{D as Ht,a as qt,c as Kt,d as Fe}from"./dropdown-menu-BKJ3boJ3.js";import{i as ml}from"./LayoutLeft-DK0M2sGJ.js";import{i as pl}from"./ChevronRight-MhmFO-WP.js";import{t as xl}from"./Stars01-6a-hAwh6.js";import{i as On}from"./DotsVertical-CayGWKkz.js";import{s as Rn}from"./Trash01-C00Vq8kG.js";function An(n){return n.contentHash??`${n.size}-${n.updatedAt}`}function pe(n,e,t,s){const l=new URLSearchParams(s).toString();return`/api/${encodeURIComponent(n)}/fs/${encodeURIComponent(e)}/${t}${l?`?${l}`:""}`}async function fe(n,e,t){const s=await fetch(n,e);if(s.ok||t?.allow404&&s.status===404)return s;let l="";try{l=(await s.json()).error??""}catch{}throw new Error(l||`HTTP ${s.status}`)}function Wt(n,e){const t=$.c(11),{org:s}=de();let l;t[0]!==s.id||t[1]!==e||t[2]!==n?(l=X.orgFsList(s.id,n,e),t[0]=s.id,t[1]=e,t[2]=n,t[3]=l):l=t[3];let i;t[4]!==s.slug||t[5]!==e||t[6]!==n?(i=async()=>(await(await fe(pe(s.slug,n,"list",{path:e}))).json()).entries.toSorted(gl),t[4]=s.slug,t[5]=e,t[6]=n,t[7]=i):i=t[7];let o;return t[8]!==l||t[9]!==i?(o={queryKey:l,placeholderData:jn,queryFn:i},t[8]=l,t[9]=i,t[10]=o):o=t[10],ie(o)}function gl(n,e){return n.kind!==e.kind?n.kind==="dir"?-1:1:n.path.localeCompare(e.path)}function _n(n,e,t){const s=$.c(15),{org:l}=de();let i;s[0]!==l.id||s[1]!==e||s[2]!==n?(i=X.orgFsStat(l.id,n??"",e),s[0]=l.id,s[1]=e,s[2]=n,s[3]=i):i=s[3];const o=n!==null;let a;s[4]!==t?(a=t?.refetchIntervalWhenAbsent?f=>f.state.data?!1:t.refetchIntervalWhenAbsent??!1:void 0,s[4]=t,s[5]=a):a=s[5];let c;s[6]!==l.slug||s[7]!==e||s[8]!==n?(c=async()=>{const f=await fe(pe(l.slug,n??"","stat",{path:e}),void 0,{allow404:!0});return f.status===404?null:(await f.json()).entry},s[6]=l.slug,s[7]=e,s[8]=n,s[9]=c):c=s[9];let d;return s[10]!==i||s[11]!==o||s[12]!==a||s[13]!==c?(d={queryKey:i,enabled:o,refetchInterval:a,queryFn:c},s[10]=i,s[11]=o,s[12]=a,s[13]=c,s[14]=d):d=s[14],ie(d)}function bl(n){const e=$.c(9),{org:t}=de();let s;e[0]!==t.id||e[1]!==n?(s=X.orgFsUsage(t.id,n),e[0]=t.id,e[1]=n,e[2]=s):s=e[2];let l;e[3]!==t.slug||e[4]!==n?(l=async()=>await(await fe(pe(t.slug,n,"usage"))).json(),e[3]=t.slug,e[4]=n,e[5]=l):l=e[5];let i;return e[6]!==s||e[7]!==l?(i={queryKey:s,queryFn:l},e[6]=s,e[7]=l,e[8]=i):i=e[8],ie(i)}function yl(n,e){const t=$.c(9),s=n===void 0?60:n,{org:l}=de();let i;t[0]!==l.id?(i=X.orgFsRecent(l.id),t[0]=l.id,t[1]=i):i=t[1];const o=e?.enabled;let a;t[2]!==s||t[3]!==l.slug?(a=async()=>(await(await fe(`/api/${encodeURIComponent(l.slug)}/fs/recent?limit=${s}`)).json()).entries,t[2]=s,t[3]=l.slug,t[4]=a):a=t[4];let c;return t[5]!==i||t[6]!==o||t[7]!==a?(c={queryKey:i,enabled:o,queryFn:a},t[5]=i,t[6]=o,t[7]=a,t[8]=c):c=t[8],ie(c)}function vl(n,e){const t=$.c(11),s=50,{org:l}=de();let i;t[0]!==l.id||t[1]!==n?(i=X.orgFsSearch(l.id,n),t[0]=l.id,t[1]=n,t[2]=i):i=t[2];const o=n.length>0;let a;t[3]!==s||t[4]!==l.slug||t[5]!==n?(a=async()=>(await(await fe(`/api/${encodeURIComponent(l.slug)}/fs/search?q=${encodeURIComponent(n)}&limit=${s}`)).json()).entries,t[3]=s,t[4]=l.slug,t[5]=n,t[6]=a):a=t[6];let c;return t[7]!==i||t[8]!==o||t[9]!==a?(c={queryKey:i,enabled:o,placeholderData:jn,queryFn:a},t[7]=i,t[8]=o,t[9]=a,t[10]=c):c=t[10],ie(c)}function Ao(n){const e=$.c(8),{org:t}=de();let s;e[0]!==t.id?(s=X.orgFsSkills(t.id),e[0]=t.id,e[1]=s):s=e[1];const l=n?.enabled;let i;e[2]!==t.slug?(i=async()=>{const a=await fe(`/api/${encodeURIComponent(t.slug)}/fs/skills`),{skills:c}=await a.json();return c.map(wl)},e[2]=t.slug,e[3]=i):i=e[3];let o;return e[4]!==s||e[5]!==l||e[6]!==i?(o={queryKey:s,enabled:l,queryFn:i},e[4]=s,e[5]=l,e[6]=i,e[7]=o):o=e[7],ie(o)}function wl(n){return{volume:n.volume,path:n.path}}async function _o(n){const e=await fe(`/api/${encodeURIComponent(n)}/fs/skills`),{skills:t}=await e.json();return t}async function jl(n,e,t){return(await fe(pe(n,e,"read",{path:t}))).text()}const kl=new Set(["md","mdx","markdown","txt","text"]),Sl=25,Nl=64*1024,zl=256*1024,Cl=4;function $l(n){const e=n.lastIndexOf(".");return e===-1?!1:kl.has(n.slice(e+1).toLowerCase())}async function Uo(n,e,t){const s=t?`${t}/`:"",l=u=>u.startsWith(s)?u.slice(s.length):u,i=[],o=[],a=[{path:t,depth:0}];for(;a.length>0;){const u=a.shift();if(!u)break;let h;try{h=(await(await fe(pe(n,e,"list",{path:u.path}))).json()).entries}catch{continue}for(const m of[...h].sort((p,x)=>p.path.localeCompare(x.path))){if(m.kind==="dir"){u.depth<Cl&&a.push({path:m.path,depth:u.depth+1});continue}$l(m.path)&&m.size<=Nl&&i.length<Sl?i.push(m.path):o.push(l(m.path))}}const c=await Promise.all(i.map(u=>jl(n,e,u).catch(()=>null))),d=[];let f=0;return i.forEach((u,h)=>{const m=c[h];if(m==null||f+m.length>zl){o.push(l(u));return}f+=m.length,d.push({relPath:l(u),content:m})}),d.sort((u,h)=>u.relPath==="SKILL.md"?-1:h.relPath==="SKILL.md"?1:u.relPath.localeCompare(h.relPath)),o.sort(),{files:d,omittedPaths:o}}function Un(){const n=$.c(7),{org:e}=de();let t;n[0]!==e.id?(t=X.orgFsPublicSets(e.id),n[0]=e.id,n[1]=t):t=n[1];let s;n[2]!==e.slug?(s=async()=>(await(await fe(`/api/${encodeURIComponent(e.slug)}/fs/public-sets`)).json()).sets,n[2]=e.slug,n[3]=s):s=n[3];let l;return n[4]!==t||n[5]!==s?(l={queryKey:t,staleTime:3e5,queryFn:s},n[4]=t,n[5]=s,n[6]=l):l=n[6],ie(l)}function Pl(n){const e=$.c(3),{org:t}=de();let s;return e[0]!==t.slug||e[1]!==n?(s=l=>pe(t.slug,n,"read",{path:l}),e[0]=t.slug,e[1]=n,e[2]=s):s=e[2],s}function nt(){const n=$.c(2),{org:e}=de();let t;return n[0]!==e.slug?(t=(s,l)=>pe(e.slug,s,"read",{path:l}),n[0]=e.slug,n[1]=t):t=n[1],t}function Bn(n){const e=$.c(3),{org:t}=de();let s;return e[0]!==t||e[1]!==n?(s={mutationFn:async l=>(await(await fe(pe(t.slug,n,"file",{path:l.path}),{method:"PUT",headers:{"content-type":l.contentType??"text/html; charset=utf-8"},body:l.body})).json()).entry},e[0]=t,e[1]=n,e[2]=s):s=e[2],Ge(s)}function El(n){const e=$.c(18),{org:t}=de(),s=Je();let l;e[0]!==t||e[1]!==n?(l=async d=>(await(await fe(pe(t.slug,n,"public",{path:d.path}),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({mode:d.mode,password:d.password})})).json()).entry,e[0]=t,e[1]=n,e[2]=l):l=e[2];let i;e[3]!==t||e[4]!==s||e[5]!==n?(i=async d=>{const f=X.orgFsStat(t.id,n,d.path);await s.cancelQueries({queryKey:f});const u=s.getQueryData(f),h=d.mode!=="private";return s.setQueryData(f,m=>m&&{...m,readPublic:h,effectivePublic:h,shareMode:d.mode}),{key:f,previous:u}},e[3]=t,e[4]=s,e[5]=n,e[6]=i):i=e[6];let o;e[7]!==s?(o=(d,f,u)=>{u&&s.setQueryData(u.key,u.previous)},e[7]=s,e[8]=o):o=e[8];let a;e[9]!==t||e[10]!==s||e[11]!==n?(a=(d,f,u)=>{s.invalidateQueries({queryKey:X.orgFsStat(t.id,n,u.path)}),s.invalidateQueries({queryKey:X.orgFsVolume(t.id,n)}),s.invalidateQueries({queryKey:X.orgFsRecent(t.id)}),s.invalidateQueries({queryKey:X.orgFsSearchRoot(t.id)})},e[9]=t,e[10]=s,e[11]=n,e[12]=a):a=e[12];let c;return e[13]!==l||e[14]!==i||e[15]!==o||e[16]!==a?(c={mutationFn:l,onMutate:i,onError:o,onSettled:a},e[13]=l,e[14]=i,e[15]=o,e[16]=a,e[17]=c):c=e[17],Ge(c)}function Ot(n){const e=$.c(26),{org:t}=de(),s=Je();let l;e[0]!==t||e[1]!==s||e[2]!==n?(l=()=>{s.invalidateQueries({queryKey:X.orgFsVolume(t.id,n)}),s.invalidateQueries({queryKey:X.orgFsRecent(t.id)}),s.invalidateQueries({queryKey:X.orgFsSearchRoot(t.id)})},e[0]=t,e[1]=s,e[2]=n,e[3]=l):l=e[3];const i=l;let o;e[4]!==t||e[5]!==n?(o=async g=>{const y=(await Promise.allSettled(g.files.map(v=>{const k=g.dir?`${g.dir}/${v.name}`:v.name;return fe(pe(t.slug,n,"file",{path:k}),{method:"PUT",headers:{"content-type":v.type||"application/octet-stream"},body:v})}))).find(Dl);if(y)throw y.reason},e[4]=t,e[5]=n,e[6]=o):o=e[6];let a;e[7]!==i||e[8]!==o?(a={mutationFn:o,onSettled:i},e[7]=i,e[8]=o,e[9]=a):a=e[9];const c=Ge(a);let d;e[10]!==t||e[11]!==n?(d=async g=>{await fe(pe(t.slug,n,"dir",{path:g}),{method:"POST"})},e[10]=t,e[11]=n,e[12]=d):d=e[12];let f;e[13]!==i||e[14]!==d?(f={mutationFn:d,onSuccess:i},e[13]=i,e[14]=d,e[15]=f):f=e[15];const u=Ge(f);let h;e[16]!==t||e[17]!==n?(h=async g=>{await fe(pe(t.slug,n,"file",{path:g}),{method:"DELETE"})},e[16]=t,e[17]=n,e[18]=h):h=e[18];let m;e[19]!==i||e[20]!==h?(m={mutationFn:h,onSuccess:i},e[19]=i,e[20]=h,e[21]=m):m=e[21];const p=Ge(m);let x;return e[22]!==u||e[23]!==p||e[24]!==c?(x={upload:c,mkdir:u,remove:p},e[22]=u,e[23]=p,e[24]=c,e[25]=x):x=e[25],x}function Dl(n){return n.status==="rejected"}const yt=N.createContext(null);yt.displayName="PanelGroupContext";const se={group:"data-panel-group",groupDirection:"data-panel-group-direction",groupId:"data-panel-group-id",panel:"data-panel",panelCollapsible:"data-panel-collapsible",panelId:"data-panel-id",panelSize:"data-panel-size",resizeHandle:"data-resize-handle",resizeHandleActive:"data-resize-handle-active",resizeHandleEnabled:"data-panel-resize-handle-enabled",resizeHandleId:"data-panel-resize-handle-id",resizeHandleState:"data-resize-handle-state"},Gt=10,Te=N.useLayoutEffect,nn=$s.useId,Tl=typeof nn=="function"?nn:()=>null;let Fl=0;function Vt(n=null){const e=Tl(),t=N.useRef(n||e||null);return t.current===null&&(t.current=""+Fl++),n??t.current}function Hn({children:n,className:e="",collapsedSize:t,collapsible:s,defaultSize:l,forwardedRef:i,id:o,maxSize:a,minSize:c,onCollapse:d,onExpand:f,onResize:u,order:h,style:m,tagName:p="div",...x}){const g=N.useContext(yt);if(g===null)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:b,expandPanel:y,getPanelSize:v,getPanelStyle:k,groupId:C,isPanelCollapsed:S,reevaluatePanelConstraints:j,registerPanel:B,resizePanel:R,unregisterPanel:_}=g,w=Vt(o),I=N.useRef({callbacks:{onCollapse:d,onExpand:f,onResize:u},constraints:{collapsedSize:t,collapsible:s,defaultSize:l,maxSize:a,minSize:c},id:w,idIsFromProps:o!==void 0,order:h});N.useRef({didLogMissingDefaultSizeWarning:!1}),Te(()=>{const{callbacks:U,constraints:O}=I.current,H={...O};I.current.id=w,I.current.idIsFromProps=o!==void 0,I.current.order=h,U.onCollapse=d,U.onExpand=f,U.onResize=u,O.collapsedSize=t,O.collapsible=s,O.defaultSize=l,O.maxSize=a,O.minSize=c,(H.collapsedSize!==O.collapsedSize||H.collapsible!==O.collapsible||H.maxSize!==O.maxSize||H.minSize!==O.minSize)&&j(I.current,H)}),Te(()=>{const U=I.current;return B(U),()=>{_(U)}},[h,w,B,_]),N.useImperativeHandle(i,()=>({collapse:()=>{b(I.current)},expand:U=>{y(I.current,U)},getId(){return w},getSize(){return v(I.current)},isCollapsed(){return S(I.current)},isExpanded(){return!S(I.current)},resize:U=>{R(I.current,U)}}),[b,y,v,S,w,R]);const Z=k(I.current,l);return N.createElement(p,{...x,children:n,className:e,id:w,style:{...Z,...m},[se.groupId]:C,[se.panel]:"",[se.panelCollapsible]:s||void 0,[se.panelId]:w,[se.panelSize]:parseFloat(""+Z.flexGrow).toFixed(1)})}const qn=N.forwardRef((n,e)=>N.createElement(Hn,{...n,forwardedRef:e}));Hn.displayName="Panel";qn.displayName="forwardRef(Panel)";let Rt=null,ut=-1,ze=null;function Il(n,e){if(e){const t=(e&Xn)!==0,s=(e&Qn)!==0,l=(e&Yn)!==0,i=(e&Zn)!==0;if(t)return l?"se-resize":i?"ne-resize":"e-resize";if(s)return l?"sw-resize":i?"nw-resize":"w-resize";if(l)return"s-resize";if(i)return"n-resize"}switch(n){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}function Ml(){ze!==null&&(document.head.removeChild(ze),Rt=null,ze=null,ut=-1)}function Dt(n,e){var t,s;const l=Il(n,e);if(Rt!==l){if(Rt=l,ze===null&&(ze=document.createElement("style"),document.head.appendChild(ze)),ut>=0){var i;(i=ze.sheet)===null||i===void 0||i.removeRule(ut)}ut=(t=(s=ze.sheet)===null||s===void 0?void 0:s.insertRule(`*{cursor: ${l} !important;}`))!==null&&t!==void 0?t:-1}}function Kn(n){return n.type==="keydown"}function Wn(n){return n.type.startsWith("pointer")}function Gn(n){return n.type.startsWith("mouse")}function vt(n){if(Wn(n)){if(n.isPrimary)return{x:n.clientX,y:n.clientY}}else if(Gn(n))return{x:n.clientX,y:n.clientY};return{x:1/0,y:1/0}}function Ll(){if(typeof matchMedia=="function")return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}function Ol(n,e,t){return n.x<e.x+e.width&&n.x+n.width>e.x&&n.y<e.y+e.height&&n.y+n.height>e.y}function Rl(n,e){if(n===e)throw new Error("Cannot compare node with itself");const t={a:rn(n),b:rn(e)};let s;for(;t.a.at(-1)===t.b.at(-1);)n=t.a.pop(),e=t.b.pop(),s=n;G(s,"Stacking order can only be calculated for elements with a common ancestor");const l={a:ln(sn(t.a)),b:ln(sn(t.b))};if(l.a===l.b){const i=s.childNodes,o={a:t.a.at(-1),b:t.b.at(-1)};let a=i.length;for(;a--;){const c=i[a];if(c===o.a)return 1;if(c===o.b)return-1}}return Math.sign(l.a-l.b)}const Al=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function _l(n){var e;const t=getComputedStyle((e=Vn(n))!==null&&e!==void 0?e:n).display;return t==="flex"||t==="inline-flex"}function Ul(n){const e=getComputedStyle(n);return!!(e.position==="fixed"||e.zIndex!=="auto"&&(e.position!=="static"||_l(n))||+e.opacity<1||"transform"in e&&e.transform!=="none"||"webkitTransform"in e&&e.webkitTransform!=="none"||"mixBlendMode"in e&&e.mixBlendMode!=="normal"||"filter"in e&&e.filter!=="none"||"webkitFilter"in e&&e.webkitFilter!=="none"||"isolation"in e&&e.isolation==="isolate"||Al.test(e.willChange)||e.webkitOverflowScrolling==="touch")}function sn(n){let e=n.length;for(;e--;){const t=n[e];if(G(t,"Missing node"),Ul(t))return t}return null}function ln(n){return n&&Number(getComputedStyle(n).zIndex)||0}function rn(n){const e=[];for(;n;)e.push(n),n=Vn(n);return e}function Vn(n){const{parentNode:e}=n;return e&&e instanceof ShadowRoot?e.host:e}const Xn=1,Qn=2,Yn=4,Zn=8,Bl=Ll()==="coarse";let xe=[],_e=!1,De=new Map,wt=new Map;const Ye=new Set;function Hl(n,e,t,s,l){var i;const{ownerDocument:o}=e,a={direction:t,element:e,hitAreaMargins:s,setResizeHandlerState:l},c=(i=De.get(o))!==null&&i!==void 0?i:0;return De.set(o,c+1),Ye.add(a),pt(),function(){var f;wt.delete(n),Ye.delete(a);const u=(f=De.get(o))!==null&&f!==void 0?f:1;if(De.set(o,u-1),pt(),u===1&&De.delete(o),xe.includes(a)){const h=xe.indexOf(a);h>=0&&xe.splice(h,1),Qt(),l("up",!0,null)}}}function ql(n){const{target:e}=n,{x:t,y:s}=vt(n);_e=!0,Xt({target:e,x:t,y:s}),pt(),xe.length>0&&(xt("down",n),n.preventDefault(),Jn(e)||n.stopImmediatePropagation())}function Tt(n){const{x:e,y:t}=vt(n);if(_e&&n.buttons===0&&(_e=!1,xt("up",n)),!_e){const{target:s}=n;Xt({target:s,x:e,y:t})}xt("move",n),Qt(),xe.length>0&&n.preventDefault()}function Ft(n){const{target:e}=n,{x:t,y:s}=vt(n);wt.clear(),_e=!1,xe.length>0&&(n.preventDefault(),Jn(e)||n.stopImmediatePropagation()),xt("up",n),Xt({target:e,x:t,y:s}),Qt(),pt()}function Jn(n){let e=n;for(;e;){if(e.hasAttribute(se.resizeHandle))return!0;e=e.parentElement}return!1}function Xt({target:n,x:e,y:t}){xe.splice(0);let s=null;(n instanceof HTMLElement||n instanceof SVGElement)&&(s=n),Ye.forEach(l=>{const{element:i,hitAreaMargins:o}=l,a=i.getBoundingClientRect(),{bottom:c,left:d,right:f,top:u}=a,h=Bl?o.coarse:o.fine;if(e>=d-h&&e<=f+h&&t>=u-h&&t<=c+h){if(s!==null&&document.contains(s)&&i!==s&&!i.contains(s)&&!s.contains(i)&&Rl(s,i)>0){let p=s,x=!1;for(;p&&!p.contains(i);){if(Ol(p.getBoundingClientRect(),a)){x=!0;break}p=p.parentElement}if(x)return}xe.push(l)}})}function It(n,e){wt.set(n,e)}function Qt(){let n=!1,e=!1;xe.forEach(s=>{const{direction:l}=s;l==="horizontal"?n=!0:e=!0});let t=0;wt.forEach(s=>{t|=s}),n&&e?Dt("intersection",t):n?Dt("horizontal",t):e?Dt("vertical",t):Ml()}let Mt=new AbortController;function pt(){Mt.abort(),Mt=new AbortController;const n={capture:!0,signal:Mt.signal};Ye.size&&(_e?(xe.length>0&&De.forEach((e,t)=>{const{body:s}=t;e>0&&(s.addEventListener("contextmenu",Ft,n),s.addEventListener("pointerleave",Tt,n),s.addEventListener("pointermove",Tt,n))}),window.addEventListener("pointerup",Ft,n),window.addEventListener("pointercancel",Ft,n)):De.forEach((e,t)=>{const{body:s}=t;e>0&&(s.addEventListener("pointerdown",ql,n),s.addEventListener("pointermove",Tt,n))}))}function xt(n,e){Ye.forEach(t=>{const{setResizeHandlerState:s}=t,l=xe.includes(t);s(n,l,e)})}function Kl(){const[n,e]=N.useState(0);return N.useCallback(()=>e(t=>t+1),[])}function G(n,e){if(!n)throw console.error(e),Error(e)}function Ie(n,e,t=Gt){return n.toFixed(t)===e.toFixed(t)?0:n>e?1:-1}function we(n,e,t=Gt){return Ie(n,e,t)===0}function me(n,e,t){return Ie(n,e,t)===0}function Wl(n,e,t){if(n.length!==e.length)return!1;for(let s=0;s<n.length;s++){const l=n[s],i=e[s];if(!me(l,i,t))return!1}return!0}function Ae({panelConstraints:n,panelIndex:e,size:t}){const s=n[e];G(s!=null,`Panel constraints not found for index ${e}`);let{collapsedSize:l=0,collapsible:i,maxSize:o=100,minSize:a=0}=s;if(Ie(t,a)<0)if(i){const c=(l+a)/2;Ie(t,c)<0?t=l:t=a}else t=a;return t=Math.min(o,t),t=parseFloat(t.toFixed(Gt)),t}function qe({delta:n,initialLayout:e,panelConstraints:t,pivotIndices:s,prevLayout:l,trigger:i}){if(me(n,0))return e;const o=[...e],[a,c]=s;G(a!=null,"Invalid first pivot index"),G(c!=null,"Invalid second pivot index");let d=0;if(i==="keyboard"){{const u=n<0?c:a,h=t[u];G(h,`Panel constraints not found for index ${u}`);const{collapsedSize:m=0,collapsible:p,minSize:x=0}=h;if(p){const g=e[u];if(G(g!=null,`Previous layout not found for panel index ${u}`),me(g,m)){const b=x-g;Ie(b,Math.abs(n))>0&&(n=n<0?0-b:b)}}}{const u=n<0?a:c,h=t[u];G(h,`No panel constraints found for index ${u}`);const{collapsedSize:m=0,collapsible:p,minSize:x=0}=h;if(p){const g=e[u];if(G(g!=null,`Previous layout not found for panel index ${u}`),me(g,x)){const b=g-m;Ie(b,Math.abs(n))>0&&(n=n<0?0-b:b)}}}}{const u=n<0?1:-1;let h=n<0?c:a,m=0;for(;;){const x=e[h];G(x!=null,`Previous layout not found for panel index ${h}`);const b=Ae({panelConstraints:t,panelIndex:h,size:100})-x;if(m+=b,h+=u,h<0||h>=t.length)break}const p=Math.min(Math.abs(n),Math.abs(m));n=n<0?0-p:p}{let h=n<0?a:c;for(;h>=0&&h<t.length;){const m=Math.abs(n)-Math.abs(d),p=e[h];G(p!=null,`Previous layout not found for panel index ${h}`);const x=p-m,g=Ae({panelConstraints:t,panelIndex:h,size:x});if(!me(p,g)&&(d+=p-g,o[h]=g,d.toPrecision(3).localeCompare(Math.abs(n).toPrecision(3),void 0,{numeric:!0})>=0))break;n<0?h--:h++}}if(Wl(l,o))return l;{const u=n<0?c:a,h=e[u];G(h!=null,`Previous layout not found for panel index ${u}`);const m=h+d,p=Ae({panelConstraints:t,panelIndex:u,size:m});if(o[u]=p,!me(p,m)){let x=m-p,b=n<0?c:a;for(;b>=0&&b<t.length;){const y=o[b];G(y!=null,`Previous layout not found for panel index ${b}`);const v=y+x,k=Ae({panelConstraints:t,panelIndex:b,size:v});if(me(y,k)||(x-=k-y,o[b]=k),me(x,0))break;n>0?b--:b++}}}const f=o.reduce((u,h)=>h+u,0);return me(f,100)?o:l}function Gl({layout:n,panelsArray:e,pivotIndices:t}){let s=0,l=100,i=0,o=0;const a=t[0];G(a!=null,"No pivot index found"),e.forEach((u,h)=>{const{constraints:m}=u,{maxSize:p=100,minSize:x=0}=m;h===a?(s=x,l=p):(i+=x,o+=p)});const c=Math.min(l,100-i),d=Math.max(s,100-o),f=n[a];return{valueMax:c,valueMin:d,valueNow:f}}function Ze(n,e=document){return Array.from(e.querySelectorAll(`[${se.resizeHandleId}][data-panel-group-id="${n}"]`))}function es(n,e,t=document){const l=Ze(n,t).findIndex(i=>i.getAttribute(se.resizeHandleId)===e);return l??null}function ts(n,e,t){const s=es(n,e,t);return s!=null?[s,s+1]:[-1,-1]}function ns(n,e=document){var t;if(e instanceof HTMLElement&&(e==null||(t=e.dataset)===null||t===void 0?void 0:t.panelGroupId)==n)return e;const s=e.querySelector(`[data-panel-group][data-panel-group-id="${n}"]`);return s||null}function jt(n,e=document){const t=e.querySelector(`[${se.resizeHandleId}="${n}"]`);return t||null}function Vl(n,e,t,s=document){var l,i,o,a;const c=jt(e,s),d=Ze(n,s),f=c?d.indexOf(c):-1,u=(l=(i=t[f])===null||i===void 0?void 0:i.id)!==null&&l!==void 0?l:null,h=(o=(a=t[f+1])===null||a===void 0?void 0:a.id)!==null&&o!==void 0?o:null;return[u,h]}function Xl({committedValuesRef:n,eagerValuesRef:e,groupId:t,layout:s,panelDataArray:l,panelGroupElement:i,setLayout:o}){N.useRef({didWarnAboutMissingResizeHandle:!1}),Te(()=>{if(!i)return;const a=Ze(t,i);for(let c=0;c<l.length-1;c++){const{valueMax:d,valueMin:f,valueNow:u}=Gl({layout:s,panelsArray:l,pivotIndices:[c,c+1]}),h=a[c];if(h!=null){const m=l[c];G(m,`No panel data found for index "${c}"`),h.setAttribute("aria-controls",m.id),h.setAttribute("aria-valuemax",""+Math.round(d)),h.setAttribute("aria-valuemin",""+Math.round(f)),h.setAttribute("aria-valuenow",u!=null?""+Math.round(u):"")}}return()=>{a.forEach((c,d)=>{c.removeAttribute("aria-controls"),c.removeAttribute("aria-valuemax"),c.removeAttribute("aria-valuemin"),c.removeAttribute("aria-valuenow")})}},[t,s,l,i]),N.useEffect(()=>{if(!i)return;const a=e.current;G(a,"Eager values not found");const{panelDataArray:c}=a,d=ns(t,i);G(d!=null,`No group found for id "${t}"`);const f=Ze(t,i);G(f,`No resize handles found for group id "${t}"`);const u=f.map(h=>{const m=h.getAttribute(se.resizeHandleId);G(m,"Resize handle element has no handle id attribute");const[p,x]=Vl(t,m,c,i);if(p==null||x==null)return()=>{};const g=b=>{if(!b.defaultPrevented)switch(b.key){case"Enter":{b.preventDefault();const y=c.findIndex(v=>v.id===p);if(y>=0){const v=c[y];G(v,`No panel data found for index ${y}`);const k=s[y],{collapsedSize:C=0,collapsible:S,minSize:j=0}=v.constraints;if(k!=null&&S){const B=qe({delta:me(k,C)?j-C:C-k,initialLayout:s,panelConstraints:c.map(R=>R.constraints),pivotIndices:ts(t,m,i),prevLayout:s,trigger:"keyboard"});s!==B&&o(B)}}break}}};return h.addEventListener("keydown",g),()=>{h.removeEventListener("keydown",g)}});return()=>{u.forEach(h=>h())}},[i,n,e,t,s,l,o])}function on(n,e){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0}function ss(n,e){const t=n==="horizontal",{x:s,y:l}=vt(e);return t?s:l}function Ql(n,e,t,s,l){const i=t==="horizontal",o=jt(e,l);G(o,`No resize handle element found for id "${e}"`);const a=o.getAttribute(se.groupId);G(a,"Resize handle element has no group id attribute");let{initialCursorPosition:c}=s;const d=ss(t,n),f=ns(a,l);G(f,`No group element found for id "${a}"`);const u=f.getBoundingClientRect(),h=i?u.width:u.height;return(d-c)/h*100}function Yl(n,e,t,s,l,i){if(Kn(n)){const o=t==="horizontal";let a=0;n.shiftKey?a=100:l!=null?a=l:a=10;let c=0;switch(n.key){case"ArrowDown":c=o?0:a;break;case"ArrowLeft":c=o?-a:0;break;case"ArrowRight":c=o?a:0;break;case"ArrowUp":c=o?0:-a;break;case"End":c=100;break;case"Home":c=-100;break}return c}else return s==null?0:Ql(n,e,t,s,i)}function Zl({panelDataArray:n}){const e=Array(n.length),t=n.map(i=>i.constraints);let s=0,l=100;for(let i=0;i<n.length;i++){const o=t[i];G(o,`Panel constraints not found for index ${i}`);const{defaultSize:a}=o;a!=null&&(s++,e[i]=a,l-=a)}for(let i=0;i<n.length;i++){const o=t[i];G(o,`Panel constraints not found for index ${i}`);const{defaultSize:a}=o;if(a!=null)continue;const c=n.length-s,d=l/c;s++,e[i]=d,l-=d}return e}function Le(n,e,t){e.forEach((s,l)=>{const i=n[l];G(i,`Panel data not found for index ${l}`);const{callbacks:o,constraints:a,id:c}=i,{collapsedSize:d=0,collapsible:f}=a,u=t[c];if(u==null||s!==u){t[c]=s;const{onCollapse:h,onExpand:m,onResize:p}=o;p&&p(s,u),f&&(h||m)&&(m&&(u==null||we(u,d))&&!we(s,d)&&m(),h&&(u==null||!we(u,d))&&we(s,d)&&h())}})}function dt(n,e){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t])return!1;return!0}function Jl({defaultSize:n,dragState:e,layout:t,panelData:s,panelIndex:l,precision:i=3}){const o=t[l];let a;return o==null?a=n!=null?n.toPrecision(i):"1":s.length===1?a="1":a=o.toPrecision(i),{flexBasis:0,flexGrow:a,flexShrink:1,overflow:"hidden",pointerEvents:e!==null?"none":void 0}}function er(n,e=10){let t=null;return(...l)=>{t!==null&&clearTimeout(t),t=setTimeout(()=>{n(...l)},e)}}function an(n){try{if(typeof localStorage<"u")n.getItem=e=>localStorage.getItem(e),n.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw new Error("localStorage not supported in this environment")}catch(e){console.error(e),n.getItem=()=>null,n.setItem=()=>{}}}function ls(n){return`react-resizable-panels:${n}`}function rs(n){return n.map(e=>{const{constraints:t,id:s,idIsFromProps:l,order:i}=e;return l?s:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(",")}function is(n,e){try{const t=ls(n),s=e.getItem(t);if(s){const l=JSON.parse(s);if(typeof l=="object"&&l!=null)return l}}catch{}return null}function tr(n,e,t){var s,l;const i=(s=is(n,t))!==null&&s!==void 0?s:{},o=rs(e);return(l=i[o])!==null&&l!==void 0?l:null}function nr(n,e,t,s,l){var i;const o=ls(n),a=rs(e),c=(i=is(n,l))!==null&&i!==void 0?i:{};c[a]={expandToSizes:Object.fromEntries(t.entries()),layout:s};try{l.setItem(o,JSON.stringify(c))}catch(d){console.error(d)}}function cn({layout:n,panelConstraints:e}){const t=[...n],s=t.reduce((i,o)=>i+o,0);if(t.length!==e.length)throw Error(`Invalid ${e.length} panel layout: ${t.map(i=>`${i}%`).join(", ")}`);if(!me(s,100)&&t.length>0)for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=100/s*o;t[i]=a}let l=0;for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=Ae({panelConstraints:e,panelIndex:i,size:o});o!=a&&(l+=o-a,t[i]=a)}if(!me(l,0))for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=o+l,c=Ae({panelConstraints:e,panelIndex:i,size:a});if(o!==c&&(l-=c-o,t[i]=c,me(l,0)))break}return t}const sr=100,Ke={getItem:n=>(an(Ke),Ke.getItem(n)),setItem:(n,e)=>{an(Ke),Ke.setItem(n,e)}},dn={};function os({autoSaveId:n=null,children:e,className:t="",direction:s,forwardedRef:l,id:i=null,onLayout:o=null,keyboardResizeBy:a=null,storage:c=Ke,style:d,tagName:f="div",...u}){const h=Vt(i),m=N.useRef(null),[p,x]=N.useState(null),[g,b]=N.useState([]),y=Kl(),v=N.useRef({}),k=N.useRef(new Map),C=N.useRef(0),S=N.useRef({autoSaveId:n,direction:s,dragState:p,id:h,keyboardResizeBy:a,onLayout:o,storage:c}),j=N.useRef({layout:g,panelDataArray:[],panelDataArrayChanged:!1});N.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),N.useImperativeHandle(l,()=>({getId:()=>S.current.id,getLayout:()=>{const{layout:z}=j.current;return z},setLayout:z=>{const{onLayout:F}=S.current,{layout:M,panelDataArray:L}=j.current,D=cn({layout:z,panelConstraints:L.map(A=>A.constraints)});on(M,D)||(b(D),j.current.layout=D,F&&F(D),Le(L,D,v.current))}}),[]),Te(()=>{S.current.autoSaveId=n,S.current.direction=s,S.current.dragState=p,S.current.id=h,S.current.onLayout=o,S.current.storage=c}),Xl({committedValuesRef:S,eagerValuesRef:j,groupId:h,layout:g,panelDataArray:j.current.panelDataArray,setLayout:b,panelGroupElement:m.current}),N.useEffect(()=>{const{panelDataArray:z}=j.current;if(n){if(g.length===0||g.length!==z.length)return;let F=dn[n];F==null&&(F=er(nr,sr),dn[n]=F);const M=[...z],L=new Map(k.current);F(n,M,L,g,c)}},[n,g,c]),N.useEffect(()=>{});const B=N.useCallback(z=>{const{onLayout:F}=S.current,{layout:M,panelDataArray:L}=j.current;if(z.constraints.collapsible){const D=L.map(he=>he.constraints),{collapsedSize:A=0,panelSize:Q,pivotIndices:te}=Ee(L,z,M);if(G(Q!=null,`Panel size not found for panel "${z.id}"`),!we(Q,A)){k.current.set(z.id,Q);const P=Oe(L,z)===L.length-1?Q-A:A-Q,V=qe({delta:P,initialLayout:M,panelConstraints:D,pivotIndices:te,prevLayout:M,trigger:"imperative-api"});dt(M,V)||(b(V),j.current.layout=V,F&&F(V),Le(L,V,v.current))}}},[]),R=N.useCallback((z,F)=>{const{onLayout:M}=S.current,{layout:L,panelDataArray:D}=j.current;if(z.constraints.collapsible){const A=D.map(ne=>ne.constraints),{collapsedSize:Q=0,panelSize:te=0,minSize:he=0,pivotIndices:P}=Ee(D,z,L),V=F??he;if(we(te,Q)){const ne=k.current.get(z.id),ge=ne!=null&&ne>=V?ne:V,$e=Oe(D,z)===D.length-1?te-ge:ge-te,oe=qe({delta:$e,initialLayout:L,panelConstraints:A,pivotIndices:P,prevLayout:L,trigger:"imperative-api"});dt(L,oe)||(b(oe),j.current.layout=oe,M&&M(oe),Le(D,oe,v.current))}}},[]),_=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{panelSize:L}=Ee(M,z,F);return G(L!=null,`Panel size not found for panel "${z.id}"`),L},[]),w=N.useCallback((z,F)=>{const{panelDataArray:M}=j.current,L=Oe(M,z);return Jl({defaultSize:F,dragState:p,layout:g,panelData:M,panelIndex:L})},[p,g]),I=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{collapsedSize:L=0,collapsible:D,panelSize:A}=Ee(M,z,F);return G(A!=null,`Panel size not found for panel "${z.id}"`),D===!0&&we(A,L)},[]),Z=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{collapsedSize:L=0,collapsible:D,panelSize:A}=Ee(M,z,F);return G(A!=null,`Panel size not found for panel "${z.id}"`),!D||Ie(A,L)>0},[]),U=N.useCallback(z=>{const{panelDataArray:F}=j.current;F.push(z),F.sort((M,L)=>{const D=M.order,A=L.order;return D==null&&A==null?0:D==null?-1:A==null?1:D-A}),j.current.panelDataArrayChanged=!0,y()},[y]);Te(()=>{if(j.current.panelDataArrayChanged){j.current.panelDataArrayChanged=!1;const{autoSaveId:z,onLayout:F,storage:M}=S.current,{layout:L,panelDataArray:D}=j.current;let A=null;if(z){const te=tr(z,D,M);te&&(k.current=new Map(Object.entries(te.expandToSizes)),A=te.layout)}A==null&&(A=Zl({panelDataArray:D}));const Q=cn({layout:A,panelConstraints:D.map(te=>te.constraints)});on(L,Q)||(b(Q),j.current.layout=Q,F&&F(Q),Le(D,Q,v.current))}}),Te(()=>{const z=j.current;return()=>{z.layout=[]}},[]);const O=N.useCallback(z=>{let F=!1;const M=m.current;return M&&window.getComputedStyle(M,null).getPropertyValue("direction")==="rtl"&&(F=!0),function(D){D.preventDefault();const A=m.current;if(!A)return()=>null;const{direction:Q,dragState:te,id:he,keyboardResizeBy:P,onLayout:V}=S.current,{layout:ne,panelDataArray:ge}=j.current,{initialLayout:Se}=te??{},$e=ts(he,z,A);let oe=Yl(D,z,Q,te,P,A);const it=Q==="horizontal";it&&F&&(oe=-oe);const $t=ge.map(Pt=>Pt.constraints),Pe=qe({delta:oe,initialLayout:Se??ne,panelConstraints:$t,pivotIndices:$e,prevLayout:ne,trigger:Kn(D)?"keyboard":"mouse-or-touch"}),ot=!dt(ne,Pe);(Wn(D)||Gn(D))&&C.current!=oe&&(C.current=oe,!ot&&oe!==0?it?It(z,oe<0?Xn:Qn):It(z,oe<0?Yn:Zn):It(z,0)),ot&&(b(Pe),j.current.layout=Pe,V&&V(Pe),Le(ge,Pe,v.current))}},[]),H=N.useCallback((z,F)=>{const{onLayout:M}=S.current,{layout:L,panelDataArray:D}=j.current,A=D.map(ne=>ne.constraints),{panelSize:Q,pivotIndices:te}=Ee(D,z,L);G(Q!=null,`Panel size not found for panel "${z.id}"`);const P=Oe(D,z)===D.length-1?Q-F:F-Q,V=qe({delta:P,initialLayout:L,panelConstraints:A,pivotIndices:te,prevLayout:L,trigger:"imperative-api"});dt(L,V)||(b(V),j.current.layout=V,M&&M(V),Le(D,V,v.current))},[]),W=N.useCallback((z,F)=>{const{layout:M,panelDataArray:L}=j.current,{collapsedSize:D=0,collapsible:A}=F,{collapsedSize:Q=0,collapsible:te,maxSize:he=100,minSize:P=0}=z.constraints,{panelSize:V}=Ee(L,z,M);V!=null&&(A&&te&&we(V,D)?we(D,Q)||H(z,Q):V<P?H(z,P):V>he&&H(z,he))},[H]),q=N.useCallback((z,F)=>{const{direction:M}=S.current,{layout:L}=j.current;if(!m.current)return;const D=jt(z,m.current);G(D,`Drag handle element not found for id "${z}"`);const A=ss(M,F);x({dragHandleId:z,dragHandleRect:D.getBoundingClientRect(),initialCursorPosition:A,initialLayout:L})},[]),ee=N.useCallback(()=>{x(null)},[]),Y=N.useCallback(z=>{const{panelDataArray:F}=j.current,M=Oe(F,z);M>=0&&(F.splice(M,1),delete v.current[z.id],j.current.panelDataArrayChanged=!0,y())},[y]),T=N.useMemo(()=>({collapsePanel:B,direction:s,dragState:p,expandPanel:R,getPanelSize:_,getPanelStyle:w,groupId:h,isPanelCollapsed:I,isPanelExpanded:Z,reevaluatePanelConstraints:W,registerPanel:U,registerResizeHandle:O,resizePanel:H,startDragging:q,stopDragging:ee,unregisterPanel:Y,panelGroupElement:m.current}),[B,p,s,R,_,w,h,I,Z,W,U,O,H,q,ee,Y]),K={display:"flex",flexDirection:s==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return N.createElement(yt.Provider,{value:T},N.createElement(f,{...u,children:e,className:t,id:i,ref:m,style:{...K,...d},[se.group]:"",[se.groupDirection]:s,[se.groupId]:h}))}const as=N.forwardRef((n,e)=>N.createElement(os,{...n,forwardedRef:e}));os.displayName="PanelGroup";as.displayName="forwardRef(PanelGroup)";function Oe(n,e){return n.findIndex(t=>t===e||t.id===e.id)}function Ee(n,e,t){const s=Oe(n,e),i=s===n.length-1?[s-1,s]:[s,s+1],o=t[s];return{...e.constraints,panelSize:o,pivotIndices:i}}function lr({disabled:n,handleId:e,resizeHandler:t,panelGroupElement:s}){N.useEffect(()=>{if(n||t==null||s==null)return;const l=jt(e,s);if(l==null)return;const i=o=>{if(!o.defaultPrevented)switch(o.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{o.preventDefault(),t(o);break}case"F6":{o.preventDefault();const a=l.getAttribute(se.groupId);G(a,`No group element found for id "${a}"`);const c=Ze(a,s),d=es(a,e,s);G(d!==null,`No resize element found for id "${e}"`);const f=o.shiftKey?d>0?d-1:c.length-1:d+1<c.length?d+1:0;c[f].focus();break}}};return l.addEventListener("keydown",i),()=>{l.removeEventListener("keydown",i)}},[s,n,e,t])}function cs({children:n=null,className:e="",disabled:t=!1,hitAreaMargins:s,id:l,onBlur:i,onClick:o,onDragging:a,onFocus:c,onPointerDown:d,onPointerUp:f,style:u={},tabIndex:h=0,tagName:m="div",...p}){var x,g;const b=N.useRef(null),y=N.useRef({onClick:o,onDragging:a,onPointerDown:d,onPointerUp:f});N.useEffect(()=>{y.current.onClick=o,y.current.onDragging=a,y.current.onPointerDown=d,y.current.onPointerUp=f});const v=N.useContext(yt);if(v===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:k,groupId:C,registerResizeHandle:S,startDragging:j,stopDragging:B,panelGroupElement:R}=v,_=Vt(l),[w,I]=N.useState("inactive"),[Z,U]=N.useState(!1),[O,H]=N.useState(null),W=N.useRef({state:w});Te(()=>{W.current.state=w}),N.useEffect(()=>{if(t)H(null);else{const T=S(_);H(()=>T)}},[t,_,S]);const q=(x=s?.coarse)!==null&&x!==void 0?x:15,ee=(g=s?.fine)!==null&&g!==void 0?g:5;N.useEffect(()=>{if(t||O==null)return;const T=b.current;G(T,"Element ref not attached");let K=!1;return Hl(_,T,k,{coarse:q,fine:ee},(F,M,L)=>{if(!M){I("inactive");return}switch(F){case"down":{I("drag"),K=!1,G(L,'Expected event to be defined for "down" action'),j(_,L);const{onDragging:D,onPointerDown:A}=y.current;D?.(!0),A?.();break}case"move":{const{state:D}=W.current;K=!0,D!=="drag"&&I("hover"),G(L,'Expected event to be defined for "move" action'),O(L);break}case"up":{I("hover"),B();const{onClick:D,onDragging:A,onPointerUp:Q}=y.current;A?.(!1),Q?.(),K||D?.();break}}})},[q,k,t,ee,S,_,O,j,B]),lr({disabled:t,handleId:_,resizeHandler:O,panelGroupElement:R});const Y={touchAction:"none",userSelect:"none"};return N.createElement(m,{...p,children:n,className:e,id:l,onBlur:()=>{U(!1),i?.()},onFocus:()=>{U(!0),c?.()},ref:b,role:"separator",style:{...Y,...u},tabIndex:h,[se.groupDirection]:k,[se.groupId]:C,[se.resizeHandle]:"",[se.resizeHandleActive]:w==="drag"?"pointer":Z?"keyboard":void 0,[se.resizeHandleEnabled]:!t,[se.resizeHandleId]:_,[se.resizeHandleState]:w})}cs.displayName="PanelResizeHandle";function rr(n){const e=$.c(10);let t,s,l;e[0]!==n?({className:t,ref:l,...s}=n,e[0]=n,e[1]=t,e[2]=s,e[3]=l):(t=e[1],s=e[2],l=e[3]);let i;e[4]!==t?(i=ce("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",t),e[4]=t,e[5]=i):i=e[5];let o;return e[6]!==s||e[7]!==l||e[8]!==i?(o=r.jsx(as,{ref:l,"data-slot":"resizable-panel-group",className:i,...s}),e[6]=s,e[7]=l,e[8]=i,e[9]=o):o=e[9],o}function un(n){const e=$.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let s;return e[2]!==t?(s=r.jsx(qn,{"data-slot":"resizable-panel",...t}),e[2]=t,e[3]=s):s=e[3],s}function ir(n){const e=$.c(12);let t,s,l;e[0]!==n?({withHandle:l,className:t,...s}=n,e[0]=n,e[1]=t,e[2]=s,e[3]=l):(t=e[1],s=e[2],l=e[3]);let i;e[4]!==t?(i=ce("bg-border focus-visible:ring-ring relative flex w-[0.5px] items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",t),e[4]=t,e[5]=i):i=e[5];let o;e[6]!==l?(o=l&&r.jsx("div",{className:"bg-border z-10 flex h-4 w-3 items-center justify-center rounded-xs border",children:r.jsx(Qs,{className:"size-2.5"})}),e[6]=l,e[7]=o):o=e[7];let a;return e[8]!==s||e[9]!==i||e[10]!==o?(a=r.jsx(cs,{"data-slot":"resizable-handle",className:i,...s,children:o}),e[8]=s,e[9]=i,e[10]=o,e[11]=a):a=e[11],a}function or(n){if(!n||n.includes("\\")||n.includes("..")||n.includes("\0"))return!0;try{const e=decodeURIComponent(n);if(e.includes("\\")||e.includes("..")||e.includes("\0"))return!0;if(e!==n&&e.includes("/")){const t=(n.match(/\//g)??[]).length;if((e.match(/\//g)??[]).length>t)return!0}return!1}catch{return!0}}function ar(n){if(or(n))throw new Error(`Invalid block key: ${n||"(empty)"}`)}function cr(n){try{return decodeURIComponent(n)}catch{return n}}function dr(n){return ar(n),encodeURIComponent(n)}function ur(n){return`.deco/blocks/${dr(n)}.json`}function Bo(n){return`/${ur(n)}`}const Ho=1e4,fr=3;function At(n){return n.trim()?(n.startsWith("/")?n:`/${n}`).replace(/\/+/g,"/"):"/"}function kt(n){return n.startsWith("/")?n.slice(1):n}function qo(n){const e=kt(n);return!e||e.includes("..")||e.includes("\\")?!1:e.startsWith(".deco/blocks/")||!e.startsWith("/")&&!e.includes("://")}function Be(n){return n.trim()?n.startsWith("/")?n:`/${n}`:"/"}function hr(n){const e=Be(n);if(e==="/")return"/";const t=e.split("/").filter(Boolean);return t.pop(),t.length===0?"/":`/${t.join("/")}`}function Ko(n,e){const t=e.replace(/^\/+|\/+$/g,"");return Be(t?`${n==="/"?"":n}/${t}`:n)}function Wo(n,e){return e==="directory"?n:hr(n)}function Go(n){const e=n.trim();return e?e.includes("/")||e.includes("\\")||e.includes("..")||e.includes("\0")?"Name cannot contain /, \\, or ..":null:"Name is required"}function mr(n){const e=kt(n);return e?e.split("/").filter(Boolean).length:0}function Vo(n,e,t,s=!1){return{files:[...new Set([...n,...t.files])],directories:[...new Set([...e,...t.directories??[]])],truncated:s||!!t.truncated}}function Xo(n,e){return mr(n)>=fr&&!e.has(n)}function Qo(n,e,t=[]){const s=kt(n);if(e.includes(s)||t.includes(s))return!0;if(!s)return!1;const l=`${s}/`;return e.some(i=>i.startsWith(l))||t.some(i=>i.startsWith(l))}function Yo(n){const e=kt(n),t=".deco/blocks/";if(!e.startsWith(t)||!e.endsWith(".json"))return null;const s=e.slice(t.length,-5);return cr(s)}function pr(n){if(!n)return"plaintext";const e=n.toLowerCase();return e.endsWith(".tsx")||e.endsWith(".ts")?"typescript":e.endsWith(".jsx")||e.endsWith(".js")||e.endsWith(".mjs")||e.endsWith(".cjs")?"javascript":e.endsWith(".json")?"json":e.endsWith(".md")||e.endsWith(".mdx")?"markdown":e.endsWith(".css")?"css":e.endsWith(".scss")?"scss":e.endsWith(".html")?"html":e.endsWith(".yaml")||e.endsWith(".yml")?"yaml":e.endsWith(".xml")||e.endsWith(".svg")?"xml":e.endsWith(".py")?"python":e.endsWith(".sql")?"sql":e.endsWith(".sh")?"shell":"plaintext"}const xr="#94a3b8";function Zo(n){const e=n.toLowerCase();return e.endsWith(".tsx")||e.endsWith(".ts")?{Icon:ct,color:"#3b82f6"}:e.endsWith(".jsx")||e.endsWith(".js")||e.endsWith(".mjs")||e.endsWith(".cjs")?{Icon:ct,color:"#d9a441"}:e.endsWith(".json")?{Icon:Ys,color:"#cb9b3f"}:e.endsWith(".css")||e.endsWith(".scss")?{Icon:ct,color:"#06b6d4"}:e.endsWith(".html")||e.endsWith(".xml")?{Icon:ct,color:"#f97316"}:/\.(png|jpe?g|gif|webp|avif|ico|svg)$/.test(e)?{Icon:hl,color:"#a855f7"}:e.endsWith(".md")||e.endsWith(".mdx")?{Icon:tn,color:"#64748b"}:{Icon:tn,color:xr}}function Jo(n){const e=At(n).split("/").filter(Boolean),t=["/"];let s="";for(const l of e.slice(0,-1))s+=`/${l}`,t.push(s);return t}function ea(n,e=[]){const t={path:"/",children:[]},s=new Map,l=a=>{let c=s.get(a.path);return c||(c=new Map,s.set(a.path,c)),c},i=a=>{const d=At(a).split("/").filter(Boolean);let f=t,u="";for(const h of d){u+=`/${h}`;const m=l(f);let p=m.get(h);p?p.kind==="file"&&(p.kind="directory"):(p={name:h,path:u,kind:"directory",children:[]},f.children.push(p),m.set(h,p)),f=p}};for(const a of n){const d=At(a).split("/").filter(Boolean);let f=t,u="";d.forEach((h,m)=>{u+=`/${h}`;const p=m===d.length-1,x=l(f);let g=x.get(h);g||(g={name:h,path:u,kind:p?"file":"directory",children:[]},f.children.push(g),x.set(h,g)),f=g})}for(const a of e)i(Be(a));const o=a=>{a.sort((c,d)=>c.kind!==d.kind?c.kind==="directory"?-1:1:c.name.localeCompare(d.name));for(const c of a)c.children.length>0&&o(c.children)};return o(t.children),t.children}function gr(n,e,t=0){const s=[];for(const l of n)l.name!==".gitkeep"&&(s.push({node:l,depth:t}),l.kind==="directory"&&l.children.length>0&&e.has(l.path)&&s.push(...gr(l.children,e,t+1)));return s}function ta(n){const e=[];for(const t of n.split(`
|
|
1
|
+
import{c as $,C as de,n as Je,d as Ge,K as X,m as ie,aY as jn,r as N,ap as $s,l as ce,j as r,U as Ps,i as Es,B as J,aL as kn,t as ue,w as Ds,L as Ts,e as Fs,b as Sn,u as Nn,E as Et}from"./index-bvt6B0Yy.js";import{s as zn}from"./Eye-BtHcxK2n.js";import{a as ft}from"./Palette-C3sZqQgv.js";import{s as Is}from"./Plus-DJTge5Ah.js";import{i as Ms}from"./SearchLg-hVazihuf.js";import{i as ht}from"./Upload01-CojMKof7.js";import{s as Cn}from"./XClose-Z4qzlqxW.js";import{i as Ut}from"./Zap-xCtz_CDI.js";import{u as $n}from"./use-mobile-CYm445nj.js";import{f as Ls,a as Os,b as Rs,c as As,d as _s,e as Us,A as Bs,g as Hs}from"./alert-dialog-CqoQavE6.js";import{D as Pn,a as Ue,d as et,e as tt,i as En,h as qs,c as Ks}from"./dialog-ce-Qx0nk.js";import{I as Xe}from"./input-19CBzlwE.js";import{F as ke,M as Bt,d as Dn}from"./file-type-icon-2EiIwjtp.js";import{T as Ws}from"./toolbar-yc9hURpP.js";import{a as Gs}from"./Package-aZxSik2v.js";import{u as Vs}from"./use-debounced-value-DIO0fI4A.js";import{p as gt,b as le,a as Me,c as Tn,d as Xs}from"./location-BpLtHjTZ.js";import{b as Qs,f as ct,s as Ys,c as tn,d as Zs,g as Js,i as el,h as Fn,a as In,j as tl,e as nl}from"./ZoomOut-D8iaovQJ.js";import{S as ae}from"./skeleton-DVqWtgCt.js";import{T as sl}from"./textarea-Cdqs67Ha.js";import{t as ll}from"./ChevronDown-DZMsrOs6.js";import{n as rl}from"./ChevronUp-B6Uq6AW8.js";import{i as mt}from"./X-BgjVXDn7.js";import{P as il,b as ol,a as al}from"./popover-Be7PXZdu.js";import{b as be,T as ye,a as ve}from"./tooltip-C_0v-6f4.js";import{i as cl}from"./Check-C0H30Wxb.js";import{a as dl}from"./Copy01-BoWLDhss.js";import{n as Qe,i as bt}from"./Globe01-EAhUiFjU.js";import{i as Mn}from"./Key01-mDG6MyFp.js";import{n as Ln}from"./LinkExternal01-BHqrbFVP.js";import{l as ul,F as fl}from"./index-dan5F593.js";import{a as hl}from"./Image01-8zrK5mCU.js";import{D as Ht,a as qt,c as Kt,d as Fe}from"./dropdown-menu-C2zl-ro_.js";import{i as ml}from"./LayoutLeft-BvaWgpl-.js";import{i as pl}from"./ChevronRight-CbPC1vn5.js";import{t as xl}from"./Stars01-DoaL2Q2J.js";import{i as On}from"./DotsVertical-CkPbKnHx.js";import{s as Rn}from"./Trash01-CJnDCJ3G.js";function An(n){return n.contentHash??`${n.size}-${n.updatedAt}`}function pe(n,e,t,s){const l=new URLSearchParams(s).toString();return`/api/${encodeURIComponent(n)}/fs/${encodeURIComponent(e)}/${t}${l?`?${l}`:""}`}async function fe(n,e,t){const s=await fetch(n,e);if(s.ok||t?.allow404&&s.status===404)return s;let l="";try{l=(await s.json()).error??""}catch{}throw new Error(l||`HTTP ${s.status}`)}function Wt(n,e){const t=$.c(11),{org:s}=de();let l;t[0]!==s.id||t[1]!==e||t[2]!==n?(l=X.orgFsList(s.id,n,e),t[0]=s.id,t[1]=e,t[2]=n,t[3]=l):l=t[3];let i;t[4]!==s.slug||t[5]!==e||t[6]!==n?(i=async()=>(await(await fe(pe(s.slug,n,"list",{path:e}))).json()).entries.toSorted(gl),t[4]=s.slug,t[5]=e,t[6]=n,t[7]=i):i=t[7];let o;return t[8]!==l||t[9]!==i?(o={queryKey:l,placeholderData:jn,queryFn:i},t[8]=l,t[9]=i,t[10]=o):o=t[10],ie(o)}function gl(n,e){return n.kind!==e.kind?n.kind==="dir"?-1:1:n.path.localeCompare(e.path)}function _n(n,e,t){const s=$.c(15),{org:l}=de();let i;s[0]!==l.id||s[1]!==e||s[2]!==n?(i=X.orgFsStat(l.id,n??"",e),s[0]=l.id,s[1]=e,s[2]=n,s[3]=i):i=s[3];const o=n!==null;let a;s[4]!==t?(a=t?.refetchIntervalWhenAbsent?f=>f.state.data?!1:t.refetchIntervalWhenAbsent??!1:void 0,s[4]=t,s[5]=a):a=s[5];let c;s[6]!==l.slug||s[7]!==e||s[8]!==n?(c=async()=>{const f=await fe(pe(l.slug,n??"","stat",{path:e}),void 0,{allow404:!0});return f.status===404?null:(await f.json()).entry},s[6]=l.slug,s[7]=e,s[8]=n,s[9]=c):c=s[9];let d;return s[10]!==i||s[11]!==o||s[12]!==a||s[13]!==c?(d={queryKey:i,enabled:o,refetchInterval:a,queryFn:c},s[10]=i,s[11]=o,s[12]=a,s[13]=c,s[14]=d):d=s[14],ie(d)}function bl(n){const e=$.c(9),{org:t}=de();let s;e[0]!==t.id||e[1]!==n?(s=X.orgFsUsage(t.id,n),e[0]=t.id,e[1]=n,e[2]=s):s=e[2];let l;e[3]!==t.slug||e[4]!==n?(l=async()=>await(await fe(pe(t.slug,n,"usage"))).json(),e[3]=t.slug,e[4]=n,e[5]=l):l=e[5];let i;return e[6]!==s||e[7]!==l?(i={queryKey:s,queryFn:l},e[6]=s,e[7]=l,e[8]=i):i=e[8],ie(i)}function yl(n,e){const t=$.c(9),s=n===void 0?60:n,{org:l}=de();let i;t[0]!==l.id?(i=X.orgFsRecent(l.id),t[0]=l.id,t[1]=i):i=t[1];const o=e?.enabled;let a;t[2]!==s||t[3]!==l.slug?(a=async()=>(await(await fe(`/api/${encodeURIComponent(l.slug)}/fs/recent?limit=${s}`)).json()).entries,t[2]=s,t[3]=l.slug,t[4]=a):a=t[4];let c;return t[5]!==i||t[6]!==o||t[7]!==a?(c={queryKey:i,enabled:o,queryFn:a},t[5]=i,t[6]=o,t[7]=a,t[8]=c):c=t[8],ie(c)}function vl(n,e){const t=$.c(11),s=50,{org:l}=de();let i;t[0]!==l.id||t[1]!==n?(i=X.orgFsSearch(l.id,n),t[0]=l.id,t[1]=n,t[2]=i):i=t[2];const o=n.length>0;let a;t[3]!==s||t[4]!==l.slug||t[5]!==n?(a=async()=>(await(await fe(`/api/${encodeURIComponent(l.slug)}/fs/search?q=${encodeURIComponent(n)}&limit=${s}`)).json()).entries,t[3]=s,t[4]=l.slug,t[5]=n,t[6]=a):a=t[6];let c;return t[7]!==i||t[8]!==o||t[9]!==a?(c={queryKey:i,enabled:o,placeholderData:jn,queryFn:a},t[7]=i,t[8]=o,t[9]=a,t[10]=c):c=t[10],ie(c)}function Ao(n){const e=$.c(8),{org:t}=de();let s;e[0]!==t.id?(s=X.orgFsSkills(t.id),e[0]=t.id,e[1]=s):s=e[1];const l=n?.enabled;let i;e[2]!==t.slug?(i=async()=>{const a=await fe(`/api/${encodeURIComponent(t.slug)}/fs/skills`),{skills:c}=await a.json();return c.map(wl)},e[2]=t.slug,e[3]=i):i=e[3];let o;return e[4]!==s||e[5]!==l||e[6]!==i?(o={queryKey:s,enabled:l,queryFn:i},e[4]=s,e[5]=l,e[6]=i,e[7]=o):o=e[7],ie(o)}function wl(n){return{volume:n.volume,path:n.path}}async function _o(n){const e=await fe(`/api/${encodeURIComponent(n)}/fs/skills`),{skills:t}=await e.json();return t}async function jl(n,e,t){return(await fe(pe(n,e,"read",{path:t}))).text()}const kl=new Set(["md","mdx","markdown","txt","text"]),Sl=25,Nl=64*1024,zl=256*1024,Cl=4;function $l(n){const e=n.lastIndexOf(".");return e===-1?!1:kl.has(n.slice(e+1).toLowerCase())}async function Uo(n,e,t){const s=t?`${t}/`:"",l=u=>u.startsWith(s)?u.slice(s.length):u,i=[],o=[],a=[{path:t,depth:0}];for(;a.length>0;){const u=a.shift();if(!u)break;let h;try{h=(await(await fe(pe(n,e,"list",{path:u.path}))).json()).entries}catch{continue}for(const m of[...h].sort((p,x)=>p.path.localeCompare(x.path))){if(m.kind==="dir"){u.depth<Cl&&a.push({path:m.path,depth:u.depth+1});continue}$l(m.path)&&m.size<=Nl&&i.length<Sl?i.push(m.path):o.push(l(m.path))}}const c=await Promise.all(i.map(u=>jl(n,e,u).catch(()=>null))),d=[];let f=0;return i.forEach((u,h)=>{const m=c[h];if(m==null||f+m.length>zl){o.push(l(u));return}f+=m.length,d.push({relPath:l(u),content:m})}),d.sort((u,h)=>u.relPath==="SKILL.md"?-1:h.relPath==="SKILL.md"?1:u.relPath.localeCompare(h.relPath)),o.sort(),{files:d,omittedPaths:o}}function Un(){const n=$.c(7),{org:e}=de();let t;n[0]!==e.id?(t=X.orgFsPublicSets(e.id),n[0]=e.id,n[1]=t):t=n[1];let s;n[2]!==e.slug?(s=async()=>(await(await fe(`/api/${encodeURIComponent(e.slug)}/fs/public-sets`)).json()).sets,n[2]=e.slug,n[3]=s):s=n[3];let l;return n[4]!==t||n[5]!==s?(l={queryKey:t,staleTime:3e5,queryFn:s},n[4]=t,n[5]=s,n[6]=l):l=n[6],ie(l)}function Pl(n){const e=$.c(3),{org:t}=de();let s;return e[0]!==t.slug||e[1]!==n?(s=l=>pe(t.slug,n,"read",{path:l}),e[0]=t.slug,e[1]=n,e[2]=s):s=e[2],s}function nt(){const n=$.c(2),{org:e}=de();let t;return n[0]!==e.slug?(t=(s,l)=>pe(e.slug,s,"read",{path:l}),n[0]=e.slug,n[1]=t):t=n[1],t}function Bn(n){const e=$.c(3),{org:t}=de();let s;return e[0]!==t||e[1]!==n?(s={mutationFn:async l=>(await(await fe(pe(t.slug,n,"file",{path:l.path}),{method:"PUT",headers:{"content-type":l.contentType??"text/html; charset=utf-8"},body:l.body})).json()).entry},e[0]=t,e[1]=n,e[2]=s):s=e[2],Ge(s)}function El(n){const e=$.c(18),{org:t}=de(),s=Je();let l;e[0]!==t||e[1]!==n?(l=async d=>(await(await fe(pe(t.slug,n,"public",{path:d.path}),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({mode:d.mode,password:d.password})})).json()).entry,e[0]=t,e[1]=n,e[2]=l):l=e[2];let i;e[3]!==t||e[4]!==s||e[5]!==n?(i=async d=>{const f=X.orgFsStat(t.id,n,d.path);await s.cancelQueries({queryKey:f});const u=s.getQueryData(f),h=d.mode!=="private";return s.setQueryData(f,m=>m&&{...m,readPublic:h,effectivePublic:h,shareMode:d.mode}),{key:f,previous:u}},e[3]=t,e[4]=s,e[5]=n,e[6]=i):i=e[6];let o;e[7]!==s?(o=(d,f,u)=>{u&&s.setQueryData(u.key,u.previous)},e[7]=s,e[8]=o):o=e[8];let a;e[9]!==t||e[10]!==s||e[11]!==n?(a=(d,f,u)=>{s.invalidateQueries({queryKey:X.orgFsStat(t.id,n,u.path)}),s.invalidateQueries({queryKey:X.orgFsVolume(t.id,n)}),s.invalidateQueries({queryKey:X.orgFsRecent(t.id)}),s.invalidateQueries({queryKey:X.orgFsSearchRoot(t.id)})},e[9]=t,e[10]=s,e[11]=n,e[12]=a):a=e[12];let c;return e[13]!==l||e[14]!==i||e[15]!==o||e[16]!==a?(c={mutationFn:l,onMutate:i,onError:o,onSettled:a},e[13]=l,e[14]=i,e[15]=o,e[16]=a,e[17]=c):c=e[17],Ge(c)}function Ot(n){const e=$.c(26),{org:t}=de(),s=Je();let l;e[0]!==t||e[1]!==s||e[2]!==n?(l=()=>{s.invalidateQueries({queryKey:X.orgFsVolume(t.id,n)}),s.invalidateQueries({queryKey:X.orgFsRecent(t.id)}),s.invalidateQueries({queryKey:X.orgFsSearchRoot(t.id)})},e[0]=t,e[1]=s,e[2]=n,e[3]=l):l=e[3];const i=l;let o;e[4]!==t||e[5]!==n?(o=async g=>{const y=(await Promise.allSettled(g.files.map(v=>{const k=g.dir?`${g.dir}/${v.name}`:v.name;return fe(pe(t.slug,n,"file",{path:k}),{method:"PUT",headers:{"content-type":v.type||"application/octet-stream"},body:v})}))).find(Dl);if(y)throw y.reason},e[4]=t,e[5]=n,e[6]=o):o=e[6];let a;e[7]!==i||e[8]!==o?(a={mutationFn:o,onSettled:i},e[7]=i,e[8]=o,e[9]=a):a=e[9];const c=Ge(a);let d;e[10]!==t||e[11]!==n?(d=async g=>{await fe(pe(t.slug,n,"dir",{path:g}),{method:"POST"})},e[10]=t,e[11]=n,e[12]=d):d=e[12];let f;e[13]!==i||e[14]!==d?(f={mutationFn:d,onSuccess:i},e[13]=i,e[14]=d,e[15]=f):f=e[15];const u=Ge(f);let h;e[16]!==t||e[17]!==n?(h=async g=>{await fe(pe(t.slug,n,"file",{path:g}),{method:"DELETE"})},e[16]=t,e[17]=n,e[18]=h):h=e[18];let m;e[19]!==i||e[20]!==h?(m={mutationFn:h,onSuccess:i},e[19]=i,e[20]=h,e[21]=m):m=e[21];const p=Ge(m);let x;return e[22]!==u||e[23]!==p||e[24]!==c?(x={upload:c,mkdir:u,remove:p},e[22]=u,e[23]=p,e[24]=c,e[25]=x):x=e[25],x}function Dl(n){return n.status==="rejected"}const yt=N.createContext(null);yt.displayName="PanelGroupContext";const se={group:"data-panel-group",groupDirection:"data-panel-group-direction",groupId:"data-panel-group-id",panel:"data-panel",panelCollapsible:"data-panel-collapsible",panelId:"data-panel-id",panelSize:"data-panel-size",resizeHandle:"data-resize-handle",resizeHandleActive:"data-resize-handle-active",resizeHandleEnabled:"data-panel-resize-handle-enabled",resizeHandleId:"data-panel-resize-handle-id",resizeHandleState:"data-resize-handle-state"},Gt=10,Te=N.useLayoutEffect,nn=$s.useId,Tl=typeof nn=="function"?nn:()=>null;let Fl=0;function Vt(n=null){const e=Tl(),t=N.useRef(n||e||null);return t.current===null&&(t.current=""+Fl++),n??t.current}function Hn({children:n,className:e="",collapsedSize:t,collapsible:s,defaultSize:l,forwardedRef:i,id:o,maxSize:a,minSize:c,onCollapse:d,onExpand:f,onResize:u,order:h,style:m,tagName:p="div",...x}){const g=N.useContext(yt);if(g===null)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:b,expandPanel:y,getPanelSize:v,getPanelStyle:k,groupId:C,isPanelCollapsed:S,reevaluatePanelConstraints:j,registerPanel:B,resizePanel:R,unregisterPanel:_}=g,w=Vt(o),I=N.useRef({callbacks:{onCollapse:d,onExpand:f,onResize:u},constraints:{collapsedSize:t,collapsible:s,defaultSize:l,maxSize:a,minSize:c},id:w,idIsFromProps:o!==void 0,order:h});N.useRef({didLogMissingDefaultSizeWarning:!1}),Te(()=>{const{callbacks:U,constraints:O}=I.current,H={...O};I.current.id=w,I.current.idIsFromProps=o!==void 0,I.current.order=h,U.onCollapse=d,U.onExpand=f,U.onResize=u,O.collapsedSize=t,O.collapsible=s,O.defaultSize=l,O.maxSize=a,O.minSize=c,(H.collapsedSize!==O.collapsedSize||H.collapsible!==O.collapsible||H.maxSize!==O.maxSize||H.minSize!==O.minSize)&&j(I.current,H)}),Te(()=>{const U=I.current;return B(U),()=>{_(U)}},[h,w,B,_]),N.useImperativeHandle(i,()=>({collapse:()=>{b(I.current)},expand:U=>{y(I.current,U)},getId(){return w},getSize(){return v(I.current)},isCollapsed(){return S(I.current)},isExpanded(){return!S(I.current)},resize:U=>{R(I.current,U)}}),[b,y,v,S,w,R]);const Z=k(I.current,l);return N.createElement(p,{...x,children:n,className:e,id:w,style:{...Z,...m},[se.groupId]:C,[se.panel]:"",[se.panelCollapsible]:s||void 0,[se.panelId]:w,[se.panelSize]:parseFloat(""+Z.flexGrow).toFixed(1)})}const qn=N.forwardRef((n,e)=>N.createElement(Hn,{...n,forwardedRef:e}));Hn.displayName="Panel";qn.displayName="forwardRef(Panel)";let Rt=null,ut=-1,ze=null;function Il(n,e){if(e){const t=(e&Xn)!==0,s=(e&Qn)!==0,l=(e&Yn)!==0,i=(e&Zn)!==0;if(t)return l?"se-resize":i?"ne-resize":"e-resize";if(s)return l?"sw-resize":i?"nw-resize":"w-resize";if(l)return"s-resize";if(i)return"n-resize"}switch(n){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}function Ml(){ze!==null&&(document.head.removeChild(ze),Rt=null,ze=null,ut=-1)}function Dt(n,e){var t,s;const l=Il(n,e);if(Rt!==l){if(Rt=l,ze===null&&(ze=document.createElement("style"),document.head.appendChild(ze)),ut>=0){var i;(i=ze.sheet)===null||i===void 0||i.removeRule(ut)}ut=(t=(s=ze.sheet)===null||s===void 0?void 0:s.insertRule(`*{cursor: ${l} !important;}`))!==null&&t!==void 0?t:-1}}function Kn(n){return n.type==="keydown"}function Wn(n){return n.type.startsWith("pointer")}function Gn(n){return n.type.startsWith("mouse")}function vt(n){if(Wn(n)){if(n.isPrimary)return{x:n.clientX,y:n.clientY}}else if(Gn(n))return{x:n.clientX,y:n.clientY};return{x:1/0,y:1/0}}function Ll(){if(typeof matchMedia=="function")return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}function Ol(n,e,t){return n.x<e.x+e.width&&n.x+n.width>e.x&&n.y<e.y+e.height&&n.y+n.height>e.y}function Rl(n,e){if(n===e)throw new Error("Cannot compare node with itself");const t={a:rn(n),b:rn(e)};let s;for(;t.a.at(-1)===t.b.at(-1);)n=t.a.pop(),e=t.b.pop(),s=n;G(s,"Stacking order can only be calculated for elements with a common ancestor");const l={a:ln(sn(t.a)),b:ln(sn(t.b))};if(l.a===l.b){const i=s.childNodes,o={a:t.a.at(-1),b:t.b.at(-1)};let a=i.length;for(;a--;){const c=i[a];if(c===o.a)return 1;if(c===o.b)return-1}}return Math.sign(l.a-l.b)}const Al=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function _l(n){var e;const t=getComputedStyle((e=Vn(n))!==null&&e!==void 0?e:n).display;return t==="flex"||t==="inline-flex"}function Ul(n){const e=getComputedStyle(n);return!!(e.position==="fixed"||e.zIndex!=="auto"&&(e.position!=="static"||_l(n))||+e.opacity<1||"transform"in e&&e.transform!=="none"||"webkitTransform"in e&&e.webkitTransform!=="none"||"mixBlendMode"in e&&e.mixBlendMode!=="normal"||"filter"in e&&e.filter!=="none"||"webkitFilter"in e&&e.webkitFilter!=="none"||"isolation"in e&&e.isolation==="isolate"||Al.test(e.willChange)||e.webkitOverflowScrolling==="touch")}function sn(n){let e=n.length;for(;e--;){const t=n[e];if(G(t,"Missing node"),Ul(t))return t}return null}function ln(n){return n&&Number(getComputedStyle(n).zIndex)||0}function rn(n){const e=[];for(;n;)e.push(n),n=Vn(n);return e}function Vn(n){const{parentNode:e}=n;return e&&e instanceof ShadowRoot?e.host:e}const Xn=1,Qn=2,Yn=4,Zn=8,Bl=Ll()==="coarse";let xe=[],_e=!1,De=new Map,wt=new Map;const Ye=new Set;function Hl(n,e,t,s,l){var i;const{ownerDocument:o}=e,a={direction:t,element:e,hitAreaMargins:s,setResizeHandlerState:l},c=(i=De.get(o))!==null&&i!==void 0?i:0;return De.set(o,c+1),Ye.add(a),pt(),function(){var f;wt.delete(n),Ye.delete(a);const u=(f=De.get(o))!==null&&f!==void 0?f:1;if(De.set(o,u-1),pt(),u===1&&De.delete(o),xe.includes(a)){const h=xe.indexOf(a);h>=0&&xe.splice(h,1),Qt(),l("up",!0,null)}}}function ql(n){const{target:e}=n,{x:t,y:s}=vt(n);_e=!0,Xt({target:e,x:t,y:s}),pt(),xe.length>0&&(xt("down",n),n.preventDefault(),Jn(e)||n.stopImmediatePropagation())}function Tt(n){const{x:e,y:t}=vt(n);if(_e&&n.buttons===0&&(_e=!1,xt("up",n)),!_e){const{target:s}=n;Xt({target:s,x:e,y:t})}xt("move",n),Qt(),xe.length>0&&n.preventDefault()}function Ft(n){const{target:e}=n,{x:t,y:s}=vt(n);wt.clear(),_e=!1,xe.length>0&&(n.preventDefault(),Jn(e)||n.stopImmediatePropagation()),xt("up",n),Xt({target:e,x:t,y:s}),Qt(),pt()}function Jn(n){let e=n;for(;e;){if(e.hasAttribute(se.resizeHandle))return!0;e=e.parentElement}return!1}function Xt({target:n,x:e,y:t}){xe.splice(0);let s=null;(n instanceof HTMLElement||n instanceof SVGElement)&&(s=n),Ye.forEach(l=>{const{element:i,hitAreaMargins:o}=l,a=i.getBoundingClientRect(),{bottom:c,left:d,right:f,top:u}=a,h=Bl?o.coarse:o.fine;if(e>=d-h&&e<=f+h&&t>=u-h&&t<=c+h){if(s!==null&&document.contains(s)&&i!==s&&!i.contains(s)&&!s.contains(i)&&Rl(s,i)>0){let p=s,x=!1;for(;p&&!p.contains(i);){if(Ol(p.getBoundingClientRect(),a)){x=!0;break}p=p.parentElement}if(x)return}xe.push(l)}})}function It(n,e){wt.set(n,e)}function Qt(){let n=!1,e=!1;xe.forEach(s=>{const{direction:l}=s;l==="horizontal"?n=!0:e=!0});let t=0;wt.forEach(s=>{t|=s}),n&&e?Dt("intersection",t):n?Dt("horizontal",t):e?Dt("vertical",t):Ml()}let Mt=new AbortController;function pt(){Mt.abort(),Mt=new AbortController;const n={capture:!0,signal:Mt.signal};Ye.size&&(_e?(xe.length>0&&De.forEach((e,t)=>{const{body:s}=t;e>0&&(s.addEventListener("contextmenu",Ft,n),s.addEventListener("pointerleave",Tt,n),s.addEventListener("pointermove",Tt,n))}),window.addEventListener("pointerup",Ft,n),window.addEventListener("pointercancel",Ft,n)):De.forEach((e,t)=>{const{body:s}=t;e>0&&(s.addEventListener("pointerdown",ql,n),s.addEventListener("pointermove",Tt,n))}))}function xt(n,e){Ye.forEach(t=>{const{setResizeHandlerState:s}=t,l=xe.includes(t);s(n,l,e)})}function Kl(){const[n,e]=N.useState(0);return N.useCallback(()=>e(t=>t+1),[])}function G(n,e){if(!n)throw console.error(e),Error(e)}function Ie(n,e,t=Gt){return n.toFixed(t)===e.toFixed(t)?0:n>e?1:-1}function we(n,e,t=Gt){return Ie(n,e,t)===0}function me(n,e,t){return Ie(n,e,t)===0}function Wl(n,e,t){if(n.length!==e.length)return!1;for(let s=0;s<n.length;s++){const l=n[s],i=e[s];if(!me(l,i,t))return!1}return!0}function Ae({panelConstraints:n,panelIndex:e,size:t}){const s=n[e];G(s!=null,`Panel constraints not found for index ${e}`);let{collapsedSize:l=0,collapsible:i,maxSize:o=100,minSize:a=0}=s;if(Ie(t,a)<0)if(i){const c=(l+a)/2;Ie(t,c)<0?t=l:t=a}else t=a;return t=Math.min(o,t),t=parseFloat(t.toFixed(Gt)),t}function qe({delta:n,initialLayout:e,panelConstraints:t,pivotIndices:s,prevLayout:l,trigger:i}){if(me(n,0))return e;const o=[...e],[a,c]=s;G(a!=null,"Invalid first pivot index"),G(c!=null,"Invalid second pivot index");let d=0;if(i==="keyboard"){{const u=n<0?c:a,h=t[u];G(h,`Panel constraints not found for index ${u}`);const{collapsedSize:m=0,collapsible:p,minSize:x=0}=h;if(p){const g=e[u];if(G(g!=null,`Previous layout not found for panel index ${u}`),me(g,m)){const b=x-g;Ie(b,Math.abs(n))>0&&(n=n<0?0-b:b)}}}{const u=n<0?a:c,h=t[u];G(h,`No panel constraints found for index ${u}`);const{collapsedSize:m=0,collapsible:p,minSize:x=0}=h;if(p){const g=e[u];if(G(g!=null,`Previous layout not found for panel index ${u}`),me(g,x)){const b=g-m;Ie(b,Math.abs(n))>0&&(n=n<0?0-b:b)}}}}{const u=n<0?1:-1;let h=n<0?c:a,m=0;for(;;){const x=e[h];G(x!=null,`Previous layout not found for panel index ${h}`);const b=Ae({panelConstraints:t,panelIndex:h,size:100})-x;if(m+=b,h+=u,h<0||h>=t.length)break}const p=Math.min(Math.abs(n),Math.abs(m));n=n<0?0-p:p}{let h=n<0?a:c;for(;h>=0&&h<t.length;){const m=Math.abs(n)-Math.abs(d),p=e[h];G(p!=null,`Previous layout not found for panel index ${h}`);const x=p-m,g=Ae({panelConstraints:t,panelIndex:h,size:x});if(!me(p,g)&&(d+=p-g,o[h]=g,d.toPrecision(3).localeCompare(Math.abs(n).toPrecision(3),void 0,{numeric:!0})>=0))break;n<0?h--:h++}}if(Wl(l,o))return l;{const u=n<0?c:a,h=e[u];G(h!=null,`Previous layout not found for panel index ${u}`);const m=h+d,p=Ae({panelConstraints:t,panelIndex:u,size:m});if(o[u]=p,!me(p,m)){let x=m-p,b=n<0?c:a;for(;b>=0&&b<t.length;){const y=o[b];G(y!=null,`Previous layout not found for panel index ${b}`);const v=y+x,k=Ae({panelConstraints:t,panelIndex:b,size:v});if(me(y,k)||(x-=k-y,o[b]=k),me(x,0))break;n>0?b--:b++}}}const f=o.reduce((u,h)=>h+u,0);return me(f,100)?o:l}function Gl({layout:n,panelsArray:e,pivotIndices:t}){let s=0,l=100,i=0,o=0;const a=t[0];G(a!=null,"No pivot index found"),e.forEach((u,h)=>{const{constraints:m}=u,{maxSize:p=100,minSize:x=0}=m;h===a?(s=x,l=p):(i+=x,o+=p)});const c=Math.min(l,100-i),d=Math.max(s,100-o),f=n[a];return{valueMax:c,valueMin:d,valueNow:f}}function Ze(n,e=document){return Array.from(e.querySelectorAll(`[${se.resizeHandleId}][data-panel-group-id="${n}"]`))}function es(n,e,t=document){const l=Ze(n,t).findIndex(i=>i.getAttribute(se.resizeHandleId)===e);return l??null}function ts(n,e,t){const s=es(n,e,t);return s!=null?[s,s+1]:[-1,-1]}function ns(n,e=document){var t;if(e instanceof HTMLElement&&(e==null||(t=e.dataset)===null||t===void 0?void 0:t.panelGroupId)==n)return e;const s=e.querySelector(`[data-panel-group][data-panel-group-id="${n}"]`);return s||null}function jt(n,e=document){const t=e.querySelector(`[${se.resizeHandleId}="${n}"]`);return t||null}function Vl(n,e,t,s=document){var l,i,o,a;const c=jt(e,s),d=Ze(n,s),f=c?d.indexOf(c):-1,u=(l=(i=t[f])===null||i===void 0?void 0:i.id)!==null&&l!==void 0?l:null,h=(o=(a=t[f+1])===null||a===void 0?void 0:a.id)!==null&&o!==void 0?o:null;return[u,h]}function Xl({committedValuesRef:n,eagerValuesRef:e,groupId:t,layout:s,panelDataArray:l,panelGroupElement:i,setLayout:o}){N.useRef({didWarnAboutMissingResizeHandle:!1}),Te(()=>{if(!i)return;const a=Ze(t,i);for(let c=0;c<l.length-1;c++){const{valueMax:d,valueMin:f,valueNow:u}=Gl({layout:s,panelsArray:l,pivotIndices:[c,c+1]}),h=a[c];if(h!=null){const m=l[c];G(m,`No panel data found for index "${c}"`),h.setAttribute("aria-controls",m.id),h.setAttribute("aria-valuemax",""+Math.round(d)),h.setAttribute("aria-valuemin",""+Math.round(f)),h.setAttribute("aria-valuenow",u!=null?""+Math.round(u):"")}}return()=>{a.forEach((c,d)=>{c.removeAttribute("aria-controls"),c.removeAttribute("aria-valuemax"),c.removeAttribute("aria-valuemin"),c.removeAttribute("aria-valuenow")})}},[t,s,l,i]),N.useEffect(()=>{if(!i)return;const a=e.current;G(a,"Eager values not found");const{panelDataArray:c}=a,d=ns(t,i);G(d!=null,`No group found for id "${t}"`);const f=Ze(t,i);G(f,`No resize handles found for group id "${t}"`);const u=f.map(h=>{const m=h.getAttribute(se.resizeHandleId);G(m,"Resize handle element has no handle id attribute");const[p,x]=Vl(t,m,c,i);if(p==null||x==null)return()=>{};const g=b=>{if(!b.defaultPrevented)switch(b.key){case"Enter":{b.preventDefault();const y=c.findIndex(v=>v.id===p);if(y>=0){const v=c[y];G(v,`No panel data found for index ${y}`);const k=s[y],{collapsedSize:C=0,collapsible:S,minSize:j=0}=v.constraints;if(k!=null&&S){const B=qe({delta:me(k,C)?j-C:C-k,initialLayout:s,panelConstraints:c.map(R=>R.constraints),pivotIndices:ts(t,m,i),prevLayout:s,trigger:"keyboard"});s!==B&&o(B)}}break}}};return h.addEventListener("keydown",g),()=>{h.removeEventListener("keydown",g)}});return()=>{u.forEach(h=>h())}},[i,n,e,t,s,l,o])}function on(n,e){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0}function ss(n,e){const t=n==="horizontal",{x:s,y:l}=vt(e);return t?s:l}function Ql(n,e,t,s,l){const i=t==="horizontal",o=jt(e,l);G(o,`No resize handle element found for id "${e}"`);const a=o.getAttribute(se.groupId);G(a,"Resize handle element has no group id attribute");let{initialCursorPosition:c}=s;const d=ss(t,n),f=ns(a,l);G(f,`No group element found for id "${a}"`);const u=f.getBoundingClientRect(),h=i?u.width:u.height;return(d-c)/h*100}function Yl(n,e,t,s,l,i){if(Kn(n)){const o=t==="horizontal";let a=0;n.shiftKey?a=100:l!=null?a=l:a=10;let c=0;switch(n.key){case"ArrowDown":c=o?0:a;break;case"ArrowLeft":c=o?-a:0;break;case"ArrowRight":c=o?a:0;break;case"ArrowUp":c=o?0:-a;break;case"End":c=100;break;case"Home":c=-100;break}return c}else return s==null?0:Ql(n,e,t,s,i)}function Zl({panelDataArray:n}){const e=Array(n.length),t=n.map(i=>i.constraints);let s=0,l=100;for(let i=0;i<n.length;i++){const o=t[i];G(o,`Panel constraints not found for index ${i}`);const{defaultSize:a}=o;a!=null&&(s++,e[i]=a,l-=a)}for(let i=0;i<n.length;i++){const o=t[i];G(o,`Panel constraints not found for index ${i}`);const{defaultSize:a}=o;if(a!=null)continue;const c=n.length-s,d=l/c;s++,e[i]=d,l-=d}return e}function Le(n,e,t){e.forEach((s,l)=>{const i=n[l];G(i,`Panel data not found for index ${l}`);const{callbacks:o,constraints:a,id:c}=i,{collapsedSize:d=0,collapsible:f}=a,u=t[c];if(u==null||s!==u){t[c]=s;const{onCollapse:h,onExpand:m,onResize:p}=o;p&&p(s,u),f&&(h||m)&&(m&&(u==null||we(u,d))&&!we(s,d)&&m(),h&&(u==null||!we(u,d))&&we(s,d)&&h())}})}function dt(n,e){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t])return!1;return!0}function Jl({defaultSize:n,dragState:e,layout:t,panelData:s,panelIndex:l,precision:i=3}){const o=t[l];let a;return o==null?a=n!=null?n.toPrecision(i):"1":s.length===1?a="1":a=o.toPrecision(i),{flexBasis:0,flexGrow:a,flexShrink:1,overflow:"hidden",pointerEvents:e!==null?"none":void 0}}function er(n,e=10){let t=null;return(...l)=>{t!==null&&clearTimeout(t),t=setTimeout(()=>{n(...l)},e)}}function an(n){try{if(typeof localStorage<"u")n.getItem=e=>localStorage.getItem(e),n.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw new Error("localStorage not supported in this environment")}catch(e){console.error(e),n.getItem=()=>null,n.setItem=()=>{}}}function ls(n){return`react-resizable-panels:${n}`}function rs(n){return n.map(e=>{const{constraints:t,id:s,idIsFromProps:l,order:i}=e;return l?s:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(",")}function is(n,e){try{const t=ls(n),s=e.getItem(t);if(s){const l=JSON.parse(s);if(typeof l=="object"&&l!=null)return l}}catch{}return null}function tr(n,e,t){var s,l;const i=(s=is(n,t))!==null&&s!==void 0?s:{},o=rs(e);return(l=i[o])!==null&&l!==void 0?l:null}function nr(n,e,t,s,l){var i;const o=ls(n),a=rs(e),c=(i=is(n,l))!==null&&i!==void 0?i:{};c[a]={expandToSizes:Object.fromEntries(t.entries()),layout:s};try{l.setItem(o,JSON.stringify(c))}catch(d){console.error(d)}}function cn({layout:n,panelConstraints:e}){const t=[...n],s=t.reduce((i,o)=>i+o,0);if(t.length!==e.length)throw Error(`Invalid ${e.length} panel layout: ${t.map(i=>`${i}%`).join(", ")}`);if(!me(s,100)&&t.length>0)for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=100/s*o;t[i]=a}let l=0;for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=Ae({panelConstraints:e,panelIndex:i,size:o});o!=a&&(l+=o-a,t[i]=a)}if(!me(l,0))for(let i=0;i<e.length;i++){const o=t[i];G(o!=null,`No layout data found for index ${i}`);const a=o+l,c=Ae({panelConstraints:e,panelIndex:i,size:a});if(o!==c&&(l-=c-o,t[i]=c,me(l,0)))break}return t}const sr=100,Ke={getItem:n=>(an(Ke),Ke.getItem(n)),setItem:(n,e)=>{an(Ke),Ke.setItem(n,e)}},dn={};function os({autoSaveId:n=null,children:e,className:t="",direction:s,forwardedRef:l,id:i=null,onLayout:o=null,keyboardResizeBy:a=null,storage:c=Ke,style:d,tagName:f="div",...u}){const h=Vt(i),m=N.useRef(null),[p,x]=N.useState(null),[g,b]=N.useState([]),y=Kl(),v=N.useRef({}),k=N.useRef(new Map),C=N.useRef(0),S=N.useRef({autoSaveId:n,direction:s,dragState:p,id:h,keyboardResizeBy:a,onLayout:o,storage:c}),j=N.useRef({layout:g,panelDataArray:[],panelDataArrayChanged:!1});N.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),N.useImperativeHandle(l,()=>({getId:()=>S.current.id,getLayout:()=>{const{layout:z}=j.current;return z},setLayout:z=>{const{onLayout:F}=S.current,{layout:M,panelDataArray:L}=j.current,D=cn({layout:z,panelConstraints:L.map(A=>A.constraints)});on(M,D)||(b(D),j.current.layout=D,F&&F(D),Le(L,D,v.current))}}),[]),Te(()=>{S.current.autoSaveId=n,S.current.direction=s,S.current.dragState=p,S.current.id=h,S.current.onLayout=o,S.current.storage=c}),Xl({committedValuesRef:S,eagerValuesRef:j,groupId:h,layout:g,panelDataArray:j.current.panelDataArray,setLayout:b,panelGroupElement:m.current}),N.useEffect(()=>{const{panelDataArray:z}=j.current;if(n){if(g.length===0||g.length!==z.length)return;let F=dn[n];F==null&&(F=er(nr,sr),dn[n]=F);const M=[...z],L=new Map(k.current);F(n,M,L,g,c)}},[n,g,c]),N.useEffect(()=>{});const B=N.useCallback(z=>{const{onLayout:F}=S.current,{layout:M,panelDataArray:L}=j.current;if(z.constraints.collapsible){const D=L.map(he=>he.constraints),{collapsedSize:A=0,panelSize:Q,pivotIndices:te}=Ee(L,z,M);if(G(Q!=null,`Panel size not found for panel "${z.id}"`),!we(Q,A)){k.current.set(z.id,Q);const P=Oe(L,z)===L.length-1?Q-A:A-Q,V=qe({delta:P,initialLayout:M,panelConstraints:D,pivotIndices:te,prevLayout:M,trigger:"imperative-api"});dt(M,V)||(b(V),j.current.layout=V,F&&F(V),Le(L,V,v.current))}}},[]),R=N.useCallback((z,F)=>{const{onLayout:M}=S.current,{layout:L,panelDataArray:D}=j.current;if(z.constraints.collapsible){const A=D.map(ne=>ne.constraints),{collapsedSize:Q=0,panelSize:te=0,minSize:he=0,pivotIndices:P}=Ee(D,z,L),V=F??he;if(we(te,Q)){const ne=k.current.get(z.id),ge=ne!=null&&ne>=V?ne:V,$e=Oe(D,z)===D.length-1?te-ge:ge-te,oe=qe({delta:$e,initialLayout:L,panelConstraints:A,pivotIndices:P,prevLayout:L,trigger:"imperative-api"});dt(L,oe)||(b(oe),j.current.layout=oe,M&&M(oe),Le(D,oe,v.current))}}},[]),_=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{panelSize:L}=Ee(M,z,F);return G(L!=null,`Panel size not found for panel "${z.id}"`),L},[]),w=N.useCallback((z,F)=>{const{panelDataArray:M}=j.current,L=Oe(M,z);return Jl({defaultSize:F,dragState:p,layout:g,panelData:M,panelIndex:L})},[p,g]),I=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{collapsedSize:L=0,collapsible:D,panelSize:A}=Ee(M,z,F);return G(A!=null,`Panel size not found for panel "${z.id}"`),D===!0&&we(A,L)},[]),Z=N.useCallback(z=>{const{layout:F,panelDataArray:M}=j.current,{collapsedSize:L=0,collapsible:D,panelSize:A}=Ee(M,z,F);return G(A!=null,`Panel size not found for panel "${z.id}"`),!D||Ie(A,L)>0},[]),U=N.useCallback(z=>{const{panelDataArray:F}=j.current;F.push(z),F.sort((M,L)=>{const D=M.order,A=L.order;return D==null&&A==null?0:D==null?-1:A==null?1:D-A}),j.current.panelDataArrayChanged=!0,y()},[y]);Te(()=>{if(j.current.panelDataArrayChanged){j.current.panelDataArrayChanged=!1;const{autoSaveId:z,onLayout:F,storage:M}=S.current,{layout:L,panelDataArray:D}=j.current;let A=null;if(z){const te=tr(z,D,M);te&&(k.current=new Map(Object.entries(te.expandToSizes)),A=te.layout)}A==null&&(A=Zl({panelDataArray:D}));const Q=cn({layout:A,panelConstraints:D.map(te=>te.constraints)});on(L,Q)||(b(Q),j.current.layout=Q,F&&F(Q),Le(D,Q,v.current))}}),Te(()=>{const z=j.current;return()=>{z.layout=[]}},[]);const O=N.useCallback(z=>{let F=!1;const M=m.current;return M&&window.getComputedStyle(M,null).getPropertyValue("direction")==="rtl"&&(F=!0),function(D){D.preventDefault();const A=m.current;if(!A)return()=>null;const{direction:Q,dragState:te,id:he,keyboardResizeBy:P,onLayout:V}=S.current,{layout:ne,panelDataArray:ge}=j.current,{initialLayout:Se}=te??{},$e=ts(he,z,A);let oe=Yl(D,z,Q,te,P,A);const it=Q==="horizontal";it&&F&&(oe=-oe);const $t=ge.map(Pt=>Pt.constraints),Pe=qe({delta:oe,initialLayout:Se??ne,panelConstraints:$t,pivotIndices:$e,prevLayout:ne,trigger:Kn(D)?"keyboard":"mouse-or-touch"}),ot=!dt(ne,Pe);(Wn(D)||Gn(D))&&C.current!=oe&&(C.current=oe,!ot&&oe!==0?it?It(z,oe<0?Xn:Qn):It(z,oe<0?Yn:Zn):It(z,0)),ot&&(b(Pe),j.current.layout=Pe,V&&V(Pe),Le(ge,Pe,v.current))}},[]),H=N.useCallback((z,F)=>{const{onLayout:M}=S.current,{layout:L,panelDataArray:D}=j.current,A=D.map(ne=>ne.constraints),{panelSize:Q,pivotIndices:te}=Ee(D,z,L);G(Q!=null,`Panel size not found for panel "${z.id}"`);const P=Oe(D,z)===D.length-1?Q-F:F-Q,V=qe({delta:P,initialLayout:L,panelConstraints:A,pivotIndices:te,prevLayout:L,trigger:"imperative-api"});dt(L,V)||(b(V),j.current.layout=V,M&&M(V),Le(D,V,v.current))},[]),W=N.useCallback((z,F)=>{const{layout:M,panelDataArray:L}=j.current,{collapsedSize:D=0,collapsible:A}=F,{collapsedSize:Q=0,collapsible:te,maxSize:he=100,minSize:P=0}=z.constraints,{panelSize:V}=Ee(L,z,M);V!=null&&(A&&te&&we(V,D)?we(D,Q)||H(z,Q):V<P?H(z,P):V>he&&H(z,he))},[H]),q=N.useCallback((z,F)=>{const{direction:M}=S.current,{layout:L}=j.current;if(!m.current)return;const D=jt(z,m.current);G(D,`Drag handle element not found for id "${z}"`);const A=ss(M,F);x({dragHandleId:z,dragHandleRect:D.getBoundingClientRect(),initialCursorPosition:A,initialLayout:L})},[]),ee=N.useCallback(()=>{x(null)},[]),Y=N.useCallback(z=>{const{panelDataArray:F}=j.current,M=Oe(F,z);M>=0&&(F.splice(M,1),delete v.current[z.id],j.current.panelDataArrayChanged=!0,y())},[y]),T=N.useMemo(()=>({collapsePanel:B,direction:s,dragState:p,expandPanel:R,getPanelSize:_,getPanelStyle:w,groupId:h,isPanelCollapsed:I,isPanelExpanded:Z,reevaluatePanelConstraints:W,registerPanel:U,registerResizeHandle:O,resizePanel:H,startDragging:q,stopDragging:ee,unregisterPanel:Y,panelGroupElement:m.current}),[B,p,s,R,_,w,h,I,Z,W,U,O,H,q,ee,Y]),K={display:"flex",flexDirection:s==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return N.createElement(yt.Provider,{value:T},N.createElement(f,{...u,children:e,className:t,id:i,ref:m,style:{...K,...d},[se.group]:"",[se.groupDirection]:s,[se.groupId]:h}))}const as=N.forwardRef((n,e)=>N.createElement(os,{...n,forwardedRef:e}));os.displayName="PanelGroup";as.displayName="forwardRef(PanelGroup)";function Oe(n,e){return n.findIndex(t=>t===e||t.id===e.id)}function Ee(n,e,t){const s=Oe(n,e),i=s===n.length-1?[s-1,s]:[s,s+1],o=t[s];return{...e.constraints,panelSize:o,pivotIndices:i}}function lr({disabled:n,handleId:e,resizeHandler:t,panelGroupElement:s}){N.useEffect(()=>{if(n||t==null||s==null)return;const l=jt(e,s);if(l==null)return;const i=o=>{if(!o.defaultPrevented)switch(o.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{o.preventDefault(),t(o);break}case"F6":{o.preventDefault();const a=l.getAttribute(se.groupId);G(a,`No group element found for id "${a}"`);const c=Ze(a,s),d=es(a,e,s);G(d!==null,`No resize element found for id "${e}"`);const f=o.shiftKey?d>0?d-1:c.length-1:d+1<c.length?d+1:0;c[f].focus();break}}};return l.addEventListener("keydown",i),()=>{l.removeEventListener("keydown",i)}},[s,n,e,t])}function cs({children:n=null,className:e="",disabled:t=!1,hitAreaMargins:s,id:l,onBlur:i,onClick:o,onDragging:a,onFocus:c,onPointerDown:d,onPointerUp:f,style:u={},tabIndex:h=0,tagName:m="div",...p}){var x,g;const b=N.useRef(null),y=N.useRef({onClick:o,onDragging:a,onPointerDown:d,onPointerUp:f});N.useEffect(()=>{y.current.onClick=o,y.current.onDragging=a,y.current.onPointerDown=d,y.current.onPointerUp=f});const v=N.useContext(yt);if(v===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:k,groupId:C,registerResizeHandle:S,startDragging:j,stopDragging:B,panelGroupElement:R}=v,_=Vt(l),[w,I]=N.useState("inactive"),[Z,U]=N.useState(!1),[O,H]=N.useState(null),W=N.useRef({state:w});Te(()=>{W.current.state=w}),N.useEffect(()=>{if(t)H(null);else{const T=S(_);H(()=>T)}},[t,_,S]);const q=(x=s?.coarse)!==null&&x!==void 0?x:15,ee=(g=s?.fine)!==null&&g!==void 0?g:5;N.useEffect(()=>{if(t||O==null)return;const T=b.current;G(T,"Element ref not attached");let K=!1;return Hl(_,T,k,{coarse:q,fine:ee},(F,M,L)=>{if(!M){I("inactive");return}switch(F){case"down":{I("drag"),K=!1,G(L,'Expected event to be defined for "down" action'),j(_,L);const{onDragging:D,onPointerDown:A}=y.current;D?.(!0),A?.();break}case"move":{const{state:D}=W.current;K=!0,D!=="drag"&&I("hover"),G(L,'Expected event to be defined for "move" action'),O(L);break}case"up":{I("hover"),B();const{onClick:D,onDragging:A,onPointerUp:Q}=y.current;A?.(!1),Q?.(),K||D?.();break}}})},[q,k,t,ee,S,_,O,j,B]),lr({disabled:t,handleId:_,resizeHandler:O,panelGroupElement:R});const Y={touchAction:"none",userSelect:"none"};return N.createElement(m,{...p,children:n,className:e,id:l,onBlur:()=>{U(!1),i?.()},onFocus:()=>{U(!0),c?.()},ref:b,role:"separator",style:{...Y,...u},tabIndex:h,[se.groupDirection]:k,[se.groupId]:C,[se.resizeHandle]:"",[se.resizeHandleActive]:w==="drag"?"pointer":Z?"keyboard":void 0,[se.resizeHandleEnabled]:!t,[se.resizeHandleId]:_,[se.resizeHandleState]:w})}cs.displayName="PanelResizeHandle";function rr(n){const e=$.c(10);let t,s,l;e[0]!==n?({className:t,ref:l,...s}=n,e[0]=n,e[1]=t,e[2]=s,e[3]=l):(t=e[1],s=e[2],l=e[3]);let i;e[4]!==t?(i=ce("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",t),e[4]=t,e[5]=i):i=e[5];let o;return e[6]!==s||e[7]!==l||e[8]!==i?(o=r.jsx(as,{ref:l,"data-slot":"resizable-panel-group",className:i,...s}),e[6]=s,e[7]=l,e[8]=i,e[9]=o):o=e[9],o}function un(n){const e=$.c(4);let t;e[0]!==n?({...t}=n,e[0]=n,e[1]=t):t=e[1];let s;return e[2]!==t?(s=r.jsx(qn,{"data-slot":"resizable-panel",...t}),e[2]=t,e[3]=s):s=e[3],s}function ir(n){const e=$.c(12);let t,s,l;e[0]!==n?({withHandle:l,className:t,...s}=n,e[0]=n,e[1]=t,e[2]=s,e[3]=l):(t=e[1],s=e[2],l=e[3]);let i;e[4]!==t?(i=ce("bg-border focus-visible:ring-ring relative flex w-[0.5px] items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",t),e[4]=t,e[5]=i):i=e[5];let o;e[6]!==l?(o=l&&r.jsx("div",{className:"bg-border z-10 flex h-4 w-3 items-center justify-center rounded-xs border",children:r.jsx(Qs,{className:"size-2.5"})}),e[6]=l,e[7]=o):o=e[7];let a;return e[8]!==s||e[9]!==i||e[10]!==o?(a=r.jsx(cs,{"data-slot":"resizable-handle",className:i,...s,children:o}),e[8]=s,e[9]=i,e[10]=o,e[11]=a):a=e[11],a}function or(n){if(!n||n.includes("\\")||n.includes("..")||n.includes("\0"))return!0;try{const e=decodeURIComponent(n);if(e.includes("\\")||e.includes("..")||e.includes("\0"))return!0;if(e!==n&&e.includes("/")){const t=(n.match(/\//g)??[]).length;if((e.match(/\//g)??[]).length>t)return!0}return!1}catch{return!0}}function ar(n){if(or(n))throw new Error(`Invalid block key: ${n||"(empty)"}`)}function cr(n){try{return decodeURIComponent(n)}catch{return n}}function dr(n){return ar(n),encodeURIComponent(n)}function ur(n){return`.deco/blocks/${dr(n)}.json`}function Bo(n){return`/${ur(n)}`}const Ho=1e4,fr=3;function At(n){return n.trim()?(n.startsWith("/")?n:`/${n}`).replace(/\/+/g,"/"):"/"}function kt(n){return n.startsWith("/")?n.slice(1):n}function qo(n){const e=kt(n);return!e||e.includes("..")||e.includes("\\")?!1:e.startsWith(".deco/blocks/")||!e.startsWith("/")&&!e.includes("://")}function Be(n){return n.trim()?n.startsWith("/")?n:`/${n}`:"/"}function hr(n){const e=Be(n);if(e==="/")return"/";const t=e.split("/").filter(Boolean);return t.pop(),t.length===0?"/":`/${t.join("/")}`}function Ko(n,e){const t=e.replace(/^\/+|\/+$/g,"");return Be(t?`${n==="/"?"":n}/${t}`:n)}function Wo(n,e){return e==="directory"?n:hr(n)}function Go(n){const e=n.trim();return e?e.includes("/")||e.includes("\\")||e.includes("..")||e.includes("\0")?"Name cannot contain /, \\, or ..":null:"Name is required"}function mr(n){const e=kt(n);return e?e.split("/").filter(Boolean).length:0}function Vo(n,e,t,s=!1){return{files:[...new Set([...n,...t.files])],directories:[...new Set([...e,...t.directories??[]])],truncated:s||!!t.truncated}}function Xo(n,e){return mr(n)>=fr&&!e.has(n)}function Qo(n,e,t=[]){const s=kt(n);if(e.includes(s)||t.includes(s))return!0;if(!s)return!1;const l=`${s}/`;return e.some(i=>i.startsWith(l))||t.some(i=>i.startsWith(l))}function Yo(n){const e=kt(n),t=".deco/blocks/";if(!e.startsWith(t)||!e.endsWith(".json"))return null;const s=e.slice(t.length,-5);return cr(s)}function pr(n){if(!n)return"plaintext";const e=n.toLowerCase();return e.endsWith(".tsx")||e.endsWith(".ts")?"typescript":e.endsWith(".jsx")||e.endsWith(".js")||e.endsWith(".mjs")||e.endsWith(".cjs")?"javascript":e.endsWith(".json")?"json":e.endsWith(".md")||e.endsWith(".mdx")?"markdown":e.endsWith(".css")?"css":e.endsWith(".scss")?"scss":e.endsWith(".html")?"html":e.endsWith(".yaml")||e.endsWith(".yml")?"yaml":e.endsWith(".xml")||e.endsWith(".svg")?"xml":e.endsWith(".py")?"python":e.endsWith(".sql")?"sql":e.endsWith(".sh")?"shell":"plaintext"}const xr="#94a3b8";function Zo(n){const e=n.toLowerCase();return e.endsWith(".tsx")||e.endsWith(".ts")?{Icon:ct,color:"#3b82f6"}:e.endsWith(".jsx")||e.endsWith(".js")||e.endsWith(".mjs")||e.endsWith(".cjs")?{Icon:ct,color:"#d9a441"}:e.endsWith(".json")?{Icon:Ys,color:"#cb9b3f"}:e.endsWith(".css")||e.endsWith(".scss")?{Icon:ct,color:"#06b6d4"}:e.endsWith(".html")||e.endsWith(".xml")?{Icon:ct,color:"#f97316"}:/\.(png|jpe?g|gif|webp|avif|ico|svg)$/.test(e)?{Icon:hl,color:"#a855f7"}:e.endsWith(".md")||e.endsWith(".mdx")?{Icon:tn,color:"#64748b"}:{Icon:tn,color:xr}}function Jo(n){const e=At(n).split("/").filter(Boolean),t=["/"];let s="";for(const l of e.slice(0,-1))s+=`/${l}`,t.push(s);return t}function ea(n,e=[]){const t={path:"/",children:[]},s=new Map,l=a=>{let c=s.get(a.path);return c||(c=new Map,s.set(a.path,c)),c},i=a=>{const d=At(a).split("/").filter(Boolean);let f=t,u="";for(const h of d){u+=`/${h}`;const m=l(f);let p=m.get(h);p?p.kind==="file"&&(p.kind="directory"):(p={name:h,path:u,kind:"directory",children:[]},f.children.push(p),m.set(h,p)),f=p}};for(const a of n){const d=At(a).split("/").filter(Boolean);let f=t,u="";d.forEach((h,m)=>{u+=`/${h}`;const p=m===d.length-1,x=l(f);let g=x.get(h);g||(g={name:h,path:u,kind:p?"file":"directory",children:[]},f.children.push(g),x.set(h,g)),f=g})}for(const a of e)i(Be(a));const o=a=>{a.sort((c,d)=>c.kind!==d.kind?c.kind==="directory"?-1:1:c.name.localeCompare(d.name));for(const c of a)c.children.length>0&&o(c.children)};return o(t.children),t.children}function gr(n,e,t=0){const s=[];for(const l of n)l.name!==".gitkeep"&&(s.push({node:l,depth:t}),l.kind==="directory"&&l.children.length>0&&e.has(l.path)&&s.push(...gr(l.children,e,t+1)));return s}function ta(n){const e=[];for(const t of n.split(`
|
|
2
2
|
`)){if(!t)continue;const s=t.indexOf(":");if(s<0)continue;const l=t.indexOf(":",s+1);if(l<0)continue;const i=Number.parseInt(t.slice(s+1,l),10);Number.isFinite(i)&&e.push({path:Be(t.slice(0,s)),line:i,text:t.slice(l+1)})}return e}function na(n,e,t){const s=e.trim().toLowerCase();if(!s)return[];const l=[];for(const i of n)if((i.split("/").pop()??i).toLowerCase().includes(s)&&(l.push(Be(i)),l.length>=t))break;return l}const fn=24;function sa(n,e){const t=n.replace(/^\s+/,""),s=e.trim().toLowerCase();if(!s)return{leadingEllipsis:!1,segments:[{text:t,match:!1}]};const l=t.toLowerCase().indexOf(s);if(l<0)return{leadingEllipsis:!1,segments:[{text:t,match:!1}]};const i=l>fn,o=i?t.slice(l-fn):t,a=o.toLowerCase(),c=[];let d=0;for(;;){const f=a.indexOf(s,d);if(f<0){d<o.length&&c.push({text:o.slice(d),match:!1});break}f>d&&c.push({text:o.slice(d,f),match:!1}),c.push({text:o.slice(f,f+s.length),match:!0}),d=f+s.length}return{leadingEllipsis:i,segments:c}}function la(n){const e=[],t=new Map;for(const s of n){let l=t.get(s.path);l||(l={path:s.path,matches:[]},t.set(s.path,l),e.push(l)),l.matches.push(s)}return e}function ra(n){return n.split(`
|
|
3
3
|
`).map(e=>e.replace(/^\d+\t/,"")).join(`
|
|
4
4
|
`)}ul.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});function br(n){const e=$.c(11),{value:t,filename:s}=n,[l]=Ps(),i=l.theme==="dark"||l.theme==="system"&&typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").matches;let o;e[0]!==s?(o=pr(s),e[0]=s,e[1]=o):o=e[1];const a=i?"vs-dark":"light";let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=r.jsx("div",{className:"flex h-full w-full items-center justify-center",children:r.jsx(Es,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=c):c=e[2];let d,f;e[3]===Symbol.for("react.memo_cache_sentinel")?(d={enabled:!1},f={top:12,bottom:12},e[3]=d,e[4]=f):(d=e[3],f=e[4]);let u;e[5]===Symbol.for("react.memo_cache_sentinel")?(u={readOnly:!0,domReadOnly:!0,fontSize:13,scrollBeyondLastLine:!1,automaticLayout:!0,lineNumbersMinChars:3,wordWrap:"on",minimap:d,padding:f,renderLineHighlight:"none",scrollbar:{vertical:"auto",horizontal:"auto",verticalScrollbarSize:8,horizontalScrollbarSize:8}},e[5]=u):u=e[5];let h;return e[6]!==s||e[7]!==o||e[8]!==a||e[9]!==t?(h=r.jsx(fl,{path:s,language:o,value:t,theme:a,loading:c,options:u},s),e[6]=s,e[7]=o,e[8]=a,e[9]=t,e[10]=h):h=e[10],h}function ds(n){return n<1024?`${n} B`:n<1024*1024?`${(n/1024).toFixed(1)} KB`:`${(n/(1024*1024)).toFixed(1)} MB`}const yr=new Set(["png","jpg","jpeg","gif","webp","svg","avif"]),vr=new Set(["txt","json","csv","tsv","log","yaml","yml","xml","toml","ts","tsx","js","jsx","py","rb","go","rs","java","sh","sql"]),hn=2*1024*1024;function wr(n,e){const t=n.split(".").pop()?.toLowerCase()??"";return yr.has(t)?"image":t==="pdf"?"pdf":t==="html"||t==="htm"?"html":t==="md"||t==="markdown"?e<=hn?"markdown":"download":vr.has(t)&&e<=hn?"text":"download"}function us(){const n=$.c(2);let e;n[0]===Symbol.for("react.memo_cache_sentinel")?(e=r.jsx(ae,{className:"h-6 w-2/3"}),n[0]=e):e=n[0];let t;return n[1]===Symbol.for("react.memo_cache_sentinel")?(t=r.jsx("div",{className:"flex h-full w-full items-center justify-center",children:r.jsxs("div",{className:"flex w-3/4 max-w-md flex-col gap-3 p-6",children:[e,r.jsxs("div",{className:"flex flex-col gap-1.5",children:[r.jsx(ae,{className:"h-3 w-full"}),r.jsx(ae,{className:"h-3 w-5/6"}),r.jsx(ae,{className:"h-3 w-2/3"})]})]})}),n[1]=t):t=n[1],t}function fs(n){const e=$.c(20),{file:t,note:s}=n;let l;e[0]!==t.filename?(l=r.jsx(ke,{filename:t.filename,className:"h-12 w-10"}),e[0]=t.filename,e[1]=l):l=e[1];let i;e[2]!==t.filename?(i=r.jsx("span",{className:"text-sm font-medium text-foreground",children:t.filename}),e[2]=t.filename,e[3]=i):i=e[3];let o;e[4]!==t.size?(o=ds(t.size),e[4]=t.size,e[5]=o):o=e[5];const a=s?` · ${s}`:"";let c;e[6]!==o||e[7]!==a?(c=r.jsxs("span",{className:"text-xs text-muted-foreground",children:[o,a]}),e[6]=o,e[7]=a,e[8]=c):c=e[8];let d;e[9]!==i||e[10]!==c?(d=r.jsxs("div",{className:"flex flex-col items-center gap-0.5",children:[i,c]}),e[9]=i,e[10]=c,e[11]=d):d=e[11];let f;e[12]===Symbol.for("react.memo_cache_sentinel")?(f=r.jsx(Qe,{size:14}),e[12]=f):f=e[12];let u;e[13]!==t.downloadUrl||e[14]!==t.filename?(u=r.jsx(J,{asChild:!0,variant:"outline",size:"sm",children:r.jsxs("a",{href:t.downloadUrl,download:t.filename,children:[f,"Download"]})}),e[13]=t.downloadUrl,e[14]=t.filename,e[15]=u):u=e[15];let h;return e[16]!==l||e[17]!==d||e[18]!==u?(h=r.jsx("div",{className:"flex h-full w-full items-center justify-center",children:r.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-border bg-muted/30 px-10 py-8",children:[l,d,u]})}),e[16]=l,e[17]=d,e[18]=u,e[19]=h):h=e[19],h}function mn(n){const e=$.c(16),{file:t,markdown:s}=n;let l;e[0]!==t.downloadUrl?(l=X.fileText(t.downloadUrl),e[0]=t.downloadUrl,e[1]=l):l=e[1];let i;e[2]!==t.downloadUrl?(i=async()=>{const u=await fetch(t.downloadUrl,{credentials:"include"});if(!u.ok)throw new Error(`fetch failed: ${u.status}`);return u.text()},e[2]=t.downloadUrl,e[3]=i):i=e[3];let o;e[4]!==l||e[5]!==i?(o={queryKey:l,queryFn:i,staleTime:6e4,retry:!1},e[4]=l,e[5]=i,e[6]=o):o=e[6];const{data:a,isPending:c,isError:d}=ie(o);if(c){let u;return e[7]===Symbol.for("react.memo_cache_sentinel")?(u=r.jsx(us,{}),e[7]=u):u=e[7],u}if(d||a===void 0){let u;return e[8]!==t?(u=r.jsx(fs,{file:t,note:"preview unavailable"}),e[8]=t,e[9]=u):u=e[9],u}if(s){const u=`file-preview-${t.key}`;let h;return e[10]!==a||e[11]!==u?(h=r.jsx("div",{className:"h-full overflow-y-auto",children:r.jsx("div",{className:"prose prose-sm dark:prose-invert mx-auto max-w-3xl px-6 py-6",children:r.jsx(Bt,{id:u,text:a})})}),e[10]=a,e[11]=u,e[12]=h):h=e[12],h}let f;return e[13]!==a||e[14]!==t.filename?(f=r.jsx(br,{value:a,filename:t.filename}),e[13]=a,e[14]=t.filename,e[15]=f):f=e[15],f}function hs(n){const e=$.c(15),{file:t}=n;switch(wr(t.filename,t.size)){case"image":{let l;return e[0]!==t.downloadUrl||e[1]!==t.filename?(l=r.jsx("div",{className:"flex h-full w-full items-center justify-center overflow-auto bg-muted/30 p-4",children:r.jsx("img",{src:t.downloadUrl,alt:t.filename,className:"max-h-full max-w-full rounded-lg object-contain"})}),e[0]=t.downloadUrl,e[1]=t.filename,e[2]=l):l=e[2],l}case"pdf":{let l;return e[3]!==t.downloadUrl||e[4]!==t.filename?(l=r.jsx("iframe",{src:t.downloadUrl,title:t.filename,className:"block h-full w-full bg-white"}),e[3]=t.downloadUrl,e[4]=t.filename,e[5]=l):l=e[5],l}case"html":{let l;return e[6]!==t.downloadUrl||e[7]!==t.filename?(l=r.jsx("iframe",{src:t.downloadUrl,title:t.filename,sandbox:"allow-scripts",className:"block h-full w-full bg-white"}),e[6]=t.downloadUrl,e[7]=t.filename,e[8]=l):l=e[8],l}case"markdown":{let l;return e[9]!==t?(l=r.jsx(mn,{file:t,markdown:!0}),e[9]=t,e[10]=l):l=e[10],l}case"text":{let l;return e[11]!==t?(l=r.jsx(mn,{file:t,markdown:!1}),e[11]=t,e[12]=l):l=e[12],l}default:{let l;return e[13]!==t?(l=r.jsx(fs,{file:t}),e[13]=t,e[14]=l):l=e[14],l}}}function jr(n){const e=$.c(40),{readUrl:t,editor:s,downloadName:l,trailing:i}=n;let o;e[0]!==t?(o=new URL(t,window.location.origin).toString(),e[0]=t,e[1]=o):o=e[1];const a=o;let c;e[2]!==s?(c=s.deckDetected&&r.jsxs(be,{children:[r.jsx(ye,{asChild:!0,children:r.jsx(J,{variant:s.railOpen?"secondary":"ghost",size:"icon","aria-label":s.railOpen?"Hide slide list":"Show slide list",onClick:()=>s.setRailOpen(!s.railOpen),children:r.jsx(ml,{size:14})})}),r.jsx(ve,{side:"bottom",children:s.railOpen?"Hide slide list":"Show slide list"})]}),e[2]=s,e[3]=c):c=e[3];let d;e[4]!==a?(d=()=>window.open(a,"_blank","noopener"),e[4]=a,e[5]=d):d=e[5];let f;e[6]!==a?(f=r.jsx("span",{className:"truncate",children:a}),e[6]=a,e[7]=f):f=e[7];let u;e[8]!==a||e[9]!==d||e[10]!==f?(u=r.jsx("button",{type:"button",onClick:d,className:"flex min-w-0 flex-1 items-center rounded-md px-2 py-1 text-left text-xs text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",title:a,children:f}),e[8]=a,e[9]=d,e[10]=f,e[11]=u):u=e[11];let h;e[12]!==s.agentUpdated||e[13]!==s.reload?(h=s.agentUpdated&&r.jsxs(be,{children:[r.jsx(ye,{asChild:!0,children:r.jsxs(J,{variant:"outline",size:"sm",className:"h-7 gap-1 text-xs",onClick:s.reload,children:[r.jsx(kn,{size:12}),"Agent updated — reload"]})}),r.jsx(ve,{side:"bottom",children:"The agent rewrote this deck while you were editing. Reloading discards unsaved differences."})]}),e[12]=s.agentUpdated,e[13]=s.reload,e[14]=h):h=e[14];let m;e[15]!==s.saving?(m=s.saving&&r.jsx("span",{className:"px-1 text-xs text-muted-foreground",children:"Saving…"}),e[15]=s.saving,e[16]=m):m=e[16];let p;e[17]!==s?(p=s.deckDetected&&s.writable&&r.jsxs(be,{children:[r.jsx(ye,{asChild:!0,children:r.jsx(J,{variant:s.editMode?"secondary":"ghost",size:"icon","aria-label":s.editMode?"Done editing":"Edit inline",className:ce(s.editMode&&"text-primary"),onClick:()=>s.setEditMode(!s.editMode),children:r.jsx(Zs,{size:14})})}),r.jsx(ve,{side:"bottom",children:s.editMode?"Done editing":"Edit inline (text, reorder, delete)"})]}),e[17]=s,e[18]=p):p=e[18];let x;e[19]!==a||e[20]!==l||e[21]!==s.deckDetected?(x=s.deckDetected?r.jsxs(Ht,{children:[r.jsx(qt,{asChild:!0,children:r.jsx(J,{variant:"ghost",size:"icon","aria-label":"Download",children:r.jsx(Qe,{size:14})})}),r.jsxs(Kt,{align:"end",children:[r.jsxs(Fe,{onClick:()=>window.open(`${a}#print`,"_blank","noopener"),children:[r.jsx(Js,{size:14}),"Export as PDF"]}),r.jsx(Fe,{asChild:!0,children:r.jsxs("a",{href:a,download:l,children:[r.jsx(el,{size:14}),"Download HTML"]})})]})]}):r.jsxs(be,{children:[r.jsx(ye,{asChild:!0,children:r.jsx(J,{variant:"ghost",size:"icon","aria-label":"Download",asChild:!0,children:r.jsx("a",{href:a,download:l,children:r.jsx(Qe,{size:14})})})}),r.jsx(ve,{side:"bottom",children:"Download"})]}),e[19]=a,e[20]=l,e[21]=s.deckDetected,e[22]=x):x=e[22];let g;e[23]!==a?(g=()=>window.open(a,"_blank","noopener"),e[23]=a,e[24]=g):g=e[24];let b;e[25]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Ln,{size:14}),e[25]=b):b=e[25];let y;e[26]!==g?(y=r.jsx(ye,{asChild:!0,children:r.jsx(J,{variant:"ghost",size:"icon","aria-label":"Open in new tab",onClick:g,children:b})}),e[26]=g,e[27]=y):y=e[27];let v;e[28]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx(ve,{side:"bottom",children:"Open in new tab"}),e[28]=v):v=e[28];let k;e[29]!==y?(k=r.jsxs(be,{children:[y,v]}),e[29]=y,e[30]=k):k=e[30];let C;return e[31]!==k||e[32]!==c||e[33]!==u||e[34]!==h||e[35]!==m||e[36]!==p||e[37]!==x||e[38]!==i?(C=r.jsxs("div",{className:"flex h-9 shrink-0 items-center gap-1 border-b border-border/60 px-2",children:[c,u,h,m,p,x,k,i]}),e[31]=k,e[32]=c,e[33]=u,e[34]=h,e[35]=m,e[36]=p,e[37]=x,e[38]=i,e[39]=C):C=e[39],C}const Re=1;function kr(n){if(typeof n!="object"||n===null||n.v!==Re||n.source!=="deck-viewer")return null;const e=n;return e.type==="ready"||e.type==="state"||e.type==="op"&&typeof e.opId=="string"&&e.op?e:null}class Ne extends Error{constructor(e,t){super(e),this.code=t,this.name="DeckOpError"}code}function ms(n){return[...n.children].filter(e=>!/^(TEMPLATE|SCRIPT|STYLE)$/.test(e.tagName))}function Sr(n){const t=new DOMParser().parseFromString(n,"text/html").querySelector("deck-viewer");return t?ms(t).length:null}function Nr(n,e){const t=new DOMParser().parseFromString(n,"text/html"),s=t.querySelector("deck-viewer");if(!s)throw new Ne("no <deck-viewer> element in source","no-viewer");const l=ms(s),i=e.kind==="move"?e.from:e.at,o=l[i];if(!o)throw new Ne(`slide index ${i} out of range (${l.length})`,"stale-index");switch(e.kind){case"remove":{if(l.length<=1)throw new Ne("cannot remove the last slide","bad-op");o.remove();break}case"duplicate":{const c=o.cloneNode(!0);c.removeAttribute("id");for(const d of c.querySelectorAll("[id]"))d.removeAttribute("id");o.after(c);break}case"move":{if(e.to<0||e.to>=l.length)throw new Ne(`move target ${e.to} out of range`,"stale-index");if(e.to!==e.from){const c=e.to<e.from?l[e.to]:l[e.to].nextSibling;s.insertBefore(o,c)}break}case"set-attr":{if(!/^[a-zA-Z][\w-]*$/.test(e.name))throw new Ne(`invalid attribute name: ${e.name}`,"bad-op");o.setAttribute(e.name,e.value);break}case"remove-attr":{o.removeAttribute(e.name);break}case"replace":{const d=new DOMParser().parseFromString(e.html,"text/html").body.firstElementChild;if(!d)throw new Ne("replace html has no root element","bad-op");o.replaceWith(t.importNode(d,!0));break}default:throw new Ne(`unknown op kind: ${e.kind}`,"bad-op")}return`${n.trimStart().toLowerCase().startsWith("<!doctype")?`<!DOCTYPE html>
|