@acedatacloud/nexior 3.351.4 → 3.351.6
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/assets/{ApiCodeButton-DCLoOHa7.js → ApiCodeButton-CWiYAicH.js} +1 -1
- package/dist/assets/{Artifacts-BGU6YS-q.js → Artifacts-DZrJejTY.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-BnrXf6Bb.js → AskUserQuestionCard-DIRm-MSJ.js} +1 -1
- package/dist/assets/{Auth-D2AXQTih.js → Auth-B2k7vKVG.js} +1 -1
- package/dist/assets/{Bare-C3yLSelb.js → Bare-vptsTYxC.js} +1 -1
- package/dist/assets/{BotPlaceholder-_QxGzCkh.js → BotPlaceholder-BHQueIfj.js} +1 -1
- package/dist/assets/{BottomFooter-BKXNUFu0.js → BottomFooter-cESF8u7r.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-DS6OfiLz.js → BrowserPairingDialog-kUSsJKyI.js} +1 -1
- package/dist/assets/{Callback-BpamxSQd.js → Callback-B97V3jOr.js} +1 -1
- package/dist/assets/{CodeSnippet-4fOCT0H3.js → CodeSnippet-c6Sd91X3.js} +1 -1
- package/dist/assets/{Console-B55H7Dqh.js → Console-AOWTreCM.js} +1 -1
- package/dist/assets/{Consumption-DZVrxh1r.js → Consumption-N9Abtlt1.js} +1 -1
- package/dist/assets/{Conversation-8En8UjR6.js → Conversation-CW0CSUPn.js} +1 -1
- package/dist/assets/{Conversation-B6tA-Als.js → Conversation-D8wskZgv.js} +1 -1
- package/dist/assets/{CopyToClipboard-BwVdHYYm.js → CopyToClipboard-DVZZKKIn.js} +1 -1
- package/dist/assets/{Detail-BrJJlxj0.js → Detail-K7chxtBx.js} +2 -2
- package/dist/assets/Extra-DjKRvqs2.js +1 -0
- package/dist/assets/{FilePreview-j7Q9LeP4.js → FilePreview-B6I6kKaC.js} +1 -1
- package/dist/assets/{Hailuo-DQLyD_bF.js → Hailuo-C2ebFNAx.js} +1 -1
- package/dist/assets/{History-CTDtC0ip.js → History-DsC3jjzY.js} +1 -1
- package/dist/assets/{ImagePreview-Dkx4nOhz.js → ImagePreview-BnDg8SMo.js} +1 -1
- package/dist/assets/{ImageWrapper-DzKNoUuD.js → ImageWrapper-Jwh0NBdB.js} +1 -1
- package/dist/assets/{Index-e7QvPpEr.css → Index-1JH-rMu2.css} +1 -1
- package/dist/assets/Index-1RtTbuhL.js +1 -0
- package/dist/assets/{Index-f2ZVLm9G.js → Index-93HsN9hi.js} +1 -1
- package/dist/assets/{Index-CV5wFTbR.js → Index-B9G8qnKi.js} +1 -1
- package/dist/assets/{Index-D2jff1gQ2.js → Index-BAL9rhD92.js} +1 -1
- package/dist/assets/Index-BBuVgL90.js +1 -0
- package/dist/assets/Index-BMQ4wVID2.js +1 -0
- package/dist/assets/Index-BNwrqbE-.js +1 -0
- package/dist/assets/{Index-Cra9uKXi.js → Index-BeHaNPAl.js} +1 -1
- package/dist/assets/{Index-LmSu5TWC.js → Index-Bf5ZdbUi.js} +1 -1
- package/dist/assets/Index-BjleO-8V2.js +1 -0
- package/dist/assets/{Index-Ds-wuQBr.js → Index-Bmc-W7Ti.js} +1 -1
- package/dist/assets/Index-BsYZSSeu.js +1 -0
- package/dist/assets/{Index-H8nkvJ4H2.js → Index-BxEK8H_I2.js} +2 -2
- package/dist/assets/{Index-TnUtdgpw.js → Index-Bz-MqL-D.js} +1 -1
- package/dist/assets/{Index-CFhvhp2C.js → Index-C4Jlcf-_.js} +1 -1
- package/dist/assets/{Index-D7k0vcAL.js → Index-CA1mwjrQ.js} +1 -1
- package/dist/assets/{Index-BuUleifP.css → Index-CFWzLtB2.css} +1 -1
- package/dist/assets/{Index-BFypMmYX.css → Index-CIZ0JZtW.css} +1 -1
- package/dist/assets/{Index-wE-HDH8C.js → Index-CNANiIuw.js} +1 -1
- package/dist/assets/{Index-n9pHJWeT.js → Index-CWpe-a_S.js} +1 -1
- package/dist/assets/Index-CXngK-bo.js +1 -0
- package/dist/assets/{Index-DSDWxLwi.js → Index-CqsMJzzs.js} +1 -1
- package/dist/assets/{Index-DRPr9Q59.js → Index-CvNX8Rpq.js} +1 -1
- package/dist/assets/Index-D-rXaQWx.js +1 -0
- package/dist/assets/{Index-B07c3dmP.css → Index-D2mc8okS.css} +1 -1
- package/dist/assets/{Index-V_tNypZ7.js → Index-DI9SWffO.js} +1 -1
- package/dist/assets/{Index-BAjuF6iL.js → Index-DNH-lcd-.js} +1 -1
- package/dist/assets/Index-DPI8Fu-1.js +1 -0
- package/dist/assets/{Index--965M8K8.js → Index-DRJtx_pN.js} +1 -1
- package/dist/assets/{Index-CFwcoV8k.js → Index-DSi2yqSe.js} +1 -1
- package/dist/assets/Index-DkJaSkoV2.js +1 -0
- package/dist/assets/{Index-CjUf85zA.css → Index-DkjjfRHH.css} +1 -1
- package/dist/assets/{Index-CKUWg7nT.js → Index-ZL-MwGi6.js} +1 -1
- package/dist/assets/Index-_nOPv_e3.css +1 -0
- package/dist/assets/Index-dL2ArM37.js +1 -0
- package/dist/assets/{Index-CHUyax9v.js → Index-hAoMtAPz.js} +1 -1
- package/dist/assets/{Index-CgCMZxoV.js → Index-n_ElHp0x.js} +1 -1
- package/dist/assets/{Index-9yN7BNbJ.js → Index-sZmhi3kj.js} +1 -1
- package/dist/assets/{Invitees-CHjUOzah.js → Invitees-et9QAl45.js} +1 -1
- package/dist/assets/List-CFXGd3Zx.js +1 -0
- package/dist/assets/{List-CNbC9ZjS.js → List-DupEBozx.js} +1 -1
- package/dist/assets/{List-BaB6uPTE.js → List-Ol7hBsVJ.js} +1 -1
- package/dist/assets/{LocalTools-D_TI5mgE.js → LocalTools-BGsRtmfM.js} +1 -1
- package/dist/assets/LocalTools-BJP81aJX.js +5 -0
- package/dist/assets/{Logo-Bcua1I6L.js → Logo-By4wlUy2.js} +1 -1
- package/dist/assets/{Main-BwjYXWnF.js → Main-BNGu4ECB.js} +1 -1
- package/dist/assets/Message-DcoJB-ne.js +3 -0
- package/dist/assets/Model-Dp_gJaGO.js +1 -0
- package/dist/assets/Navigator-BPaNQ0j7.css +1 -0
- package/dist/assets/Navigator-CrwR_1m7.js +8 -0
- package/dist/assets/{NotFound-CcX420Vg.js → NotFound-B1kF8C7f.js} +1 -1
- package/dist/assets/{PageHeader-D_z9tvk6.js → PageHeader-RatwVDYh.js} +1 -1
- package/dist/assets/Pay-CBK5r_J1.js +1 -0
- package/dist/assets/{Player-CijppEWi.js → Player-WrYA_czH.js} +1 -1
- package/dist/assets/{Poivelle-B4rePU6F.js → Poivelle-Bwd-gMLK.js} +1 -1
- package/dist/assets/{RealtimeCall-DSbtM2oh.js → RealtimeCall-BuYdLiLd.js} +1 -1
- package/dist/assets/{ReportButton-D7wL8z6N.js → ReportButton-bTSHZewr.js} +1 -1
- package/dist/assets/{ReportDialog-DmLZYKsg.js → ReportDialog-YFeHG_CR.js} +1 -1
- package/dist/assets/{ScheduledTasks-SHHuBJXY.js → ScheduledTasks-D3jj-vEm.js} +2 -2
- package/dist/assets/{Status-Byf1BGNz.js → Status-DBr7DmmH.js} +1 -1
- package/dist/assets/{Subscribe-DMIUeh-M.js → Subscribe-D9OrwH1Z.js} +1 -1
- package/dist/assets/{TabSwitcher-CkVeMT9Q.js → TabSwitcher-CuHTRfhU.js} +1 -1
- package/dist/assets/{Tts-BIR4bVcF.js → Tts-BFw0ZrRL.js} +1 -1
- package/dist/assets/{VideoPlayer-DNi7m8bA.js → VideoPlayer-B5wPvH-Y.js} +1 -1
- package/dist/assets/{VideoPreview-zwRKh4wS.js → VideoPreview-Bg7a5qjZ.js} +1 -1
- package/dist/assets/arrow-down-B_frOIPC.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-CTf9kjmq.js → arrow-down-wide-narrow-CyX7ECtk.js} +1 -1
- package/dist/assets/arrow-left-CJ0n8LA_.js +1 -0
- package/dist/assets/arrow-right-Br_YYe9p.js +1 -0
- package/dist/assets/arrow-up-BVQIU7Wp.js +1 -0
- package/dist/assets/authorizeFlow-DDuPRkQ6.js +1 -0
- package/dist/assets/{avatar-BleL6GzX.js → avatar-CNnchEqv.js} +1 -1
- package/dist/assets/{basic-Doxjv01y.js → basic-DAmfySfk.js} +1 -1
- package/dist/assets/{book-open-DQz2Q2l9.js → book-open-BJrmFN4r.js} +1 -1
- package/dist/assets/{box-BvlGqOWM.js → box-5RQYuqPM.js} +1 -1
- package/dist/assets/{boxes-DUY7PSM3.js → boxes-XPhVUNqy.js} +1 -1
- package/dist/assets/{brain-BCjZJIDc.js → brain-TD9WNpE6.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-C1pmeUHK.js → chart-no-axes-combined-DJpDso2B.js} +1 -1
- package/dist/assets/{chat-CerS7yOd.js → chat-Dan7BQ_0.js} +1 -1
- package/dist/assets/check-CaL0o823.js +1 -0
- package/dist/assets/chevron-down-C9iuUElc.js +1 -0
- package/dist/assets/chevron-right-CF0ttnXF.js +1 -0
- package/dist/assets/circle-check-CI_AaSn_.js +1 -0
- package/dist/assets/{circle-question-mark-sV-hbdKL.js → circle-question-mark-UZBen5vb.js} +1 -1
- package/dist/assets/{clipboard-list-D9k9N7WV.js → clipboard-list-DGrwWttH.js} +1 -1
- package/dist/assets/clock-D1-Kt6-f.js +1 -0
- package/dist/assets/code-C_2s4NTL.js +1 -0
- package/dist/assets/{codingBridge-B0hxLvGQ.js → codingBridge-C3gfb5tE.js} +2 -2
- package/dist/assets/{codingBridgeNotify-DZmFpjsW.js → codingBridgeNotify-CM10j5Yv.js} +2 -2
- package/dist/assets/{coins-BZ_wfGuU.js → coins-BzTWgwI6.js} +1 -1
- package/dist/assets/{collapse-BvBcmWkW.js → collapse-DnwOyVfC.js} +1 -1
- package/dist/assets/{constants-B8L8Pvf9.js → constants-DQjc0Ctr.js} +1 -1
- package/dist/assets/{copy-Czdnsq2s.js → copy-C20Z1lQD.js} +1 -1
- package/dist/assets/{createTaskActions-CdwXVqnB.js → createTaskActions-BMApVkC0.js} +1 -1
- package/dist/assets/{digitalhuman-CWEze7ks.js → digitalhuman-DzulZMpY.js} +1 -1
- package/dist/assets/{dollar-sign-DxOGv055.js → dollar-sign-z6SJbu2X.js} +1 -1
- package/dist/assets/{download-p5s-7lQs.js → download-Bjl7D12N.js} +1 -1
- package/dist/assets/{drawer-CrLrAuYO.js → drawer-CKa-RvLj.js} +1 -1
- package/dist/assets/{dropdown-DyoepdCT.js → dropdown-Iu9QeHww.js} +1 -1
- package/dist/assets/{dropdown-BD0rUmhS.js → dropdown-cV8wOdWz.js} +1 -1
- package/dist/assets/{ellipsis-Ca0WK_wY.js → ellipsis-BU0uayKw.js} +1 -1
- package/dist/assets/{esm-D5Zso_6z.js → esm-BJAwkUFj.js} +1 -1
- package/dist/assets/{esm-eLTRmw18.js → esm-CddC7qip.js} +2 -2
- package/dist/assets/{esm-Bwe9360M.js → esm-CgDYfwnr.js} +2 -2
- package/dist/assets/{esm-DWBcpseK.js → esm-Ch3U7MD6.js} +3 -3
- package/dist/assets/{esm-T5JwpYBQ.js → esm-Det_wcOd.js} +1 -1
- package/dist/assets/esm-DrJmtPL7.js +1 -0
- package/dist/assets/{esm-BH5cQo4z.js → esm-aLmpyIkQ.js} +1 -1
- package/dist/assets/{external-link-rYo7EM25.js → external-link-Bv7xVKE1.js} +1 -1
- package/dist/assets/{eye-Bu3r5iIo.js → eye-CzKIbV3W.js} +1 -1
- package/dist/assets/{file-DM-F2LrK.js → file-B_liOBtz.js} +1 -1
- package/dist/assets/{file-output-BXLii2KQ.js → file-output-DbxM5kN5.js} +1 -1
- package/dist/assets/{file-text-DtTY8Ab2.js → file-text-BLdKFglG.js} +1 -1
- package/dist/assets/{fish-BPI58rQU.js → fish-WUB4MCXn.js} +1 -1
- package/dist/assets/{flux-Cc45uz14.js → flux-aigopm_p.js} +1 -1
- package/dist/assets/{folder-SyICqENP.js → folder-NsgWKb6i.js} +1 -1
- package/dist/assets/gauge-IUCx-_5y.js +1 -0
- package/dist/assets/{globe-DWRnXAvB.js → globe-CmEoR8gp.js} +1 -1
- package/dist/assets/{grokvideo-CP09bddr.js → grokvideo-DuzxqFZj.js} +1 -1
- package/dist/assets/{hailuo-tW8FkBVT.js → hailuo-DMXL3rub.js} +1 -1
- package/dist/assets/{headphones-BK6018mW.js → headphones-DwfquY-K.js} +1 -1
- package/dist/assets/{history-fXY0W9RL.js → history-un45_T_n.js} +1 -1
- package/dist/assets/{house-DdTij0jl.js → house-CPXShJ2M.js} +1 -1
- package/dist/assets/{i18n-C7mhX7UU.js → i18n-BzCApSeU.js} +1 -1
- package/dist/assets/{image-DH6_XR7_.js → image-D9EEgt17.js} +1 -1
- package/dist/assets/{index-La_21d58.js → index-CD2-hqNW.js} +11 -11
- package/dist/assets/{index-B7qOZtH1.css → index-D79dSvv7.css} +1 -1
- package/dist/assets/{index.browser.esm-DzlqWLCL.js → index.browser.esm-BKmjgYx3.js} +1 -1
- package/dist/assets/{index.es-B0uCFN0A.js → index.es-Ds-FIqsY.js} +1 -1
- package/dist/assets/{info-jO8_tFCf.js → info-B1cNmQ-o.js} +1 -1
- package/dist/assets/{input-number-CUrnNTMQ.js → input-number-D6pYNASF.js} +1 -1
- package/dist/assets/{key-round-BXkeXtnZ.js → key-round-B3nKnP4v.js} +1 -1
- package/dist/assets/{kling-IZq2C-bG.js → kling-Bmlq2Ex9.js} +1 -1
- package/dist/assets/{languages-Bwkdn4oI.js → languages-BuIV0FmG.js} +1 -1
- package/dist/assets/{laptop-C-_vh-A_.js → laptop-dgLGqDJT.js} +1 -1
- package/dist/assets/{lightbulb-C9oNH906.js → lightbulb-DJmYMTty.js} +1 -1
- package/dist/assets/{link-CPXxEbEz.js → link-Drwjhjzx.js} +1 -1
- package/dist/assets/loader-circle-BSTNdJW2.js +1 -0
- package/dist/assets/{lock-BjokhHtF.js → lock-DAPZQEW-.js} +1 -1
- package/dist/assets/{luma-CF7RU-Wm.js → luma-MHX9O_-v.js} +1 -1
- package/dist/assets/{maestro-Cq8EHdaJ.js → maestro-3z8ioYKY.js} +1 -1
- package/dist/assets/{maestro-CEV5xpEP.js → maestro-jbHMBkLA.js} +1 -1
- package/dist/assets/{mail-BGpjitir.js → mail-DYOEAP3i.js} +1 -1
- package/dist/assets/{message-circle-CbtAeLuX.js → message-circle-C2n1Tllg.js} +1 -1
- package/dist/assets/{mic-sKvsM2cC.js → mic-BLEuIvo5.js} +1 -1
- package/dist/assets/{midjourney-BnGm99YC.js → midjourney-BFmyZ_tU.js} +1 -1
- package/dist/assets/{mobileLocalExec-B91NceKM.js → mobileLocalExec-hkgnAyxe.js} +2 -2
- package/dist/assets/{models-BgHU_JUY.js → models-OSW29aqo.js} +1 -1
- package/dist/assets/{monitor-wQk0uytX.js → monitor-Di7iE4c5.js} +1 -1
- package/dist/assets/{mouse-pointer-2-8qCCU6ip.js → mouse-pointer-2-C1h_KY8D.js} +1 -1
- package/dist/assets/music-2-DYNSFUWX.js +1 -0
- package/dist/assets/{nanobanana-DxJAS5TP.js → nanobanana-PYaELAh2.js} +1 -1
- package/dist/assets/{seedance-vB2qylN9.js → omni-DDt3d_Oj.js} +1 -1
- package/dist/assets/{openaiimage-Cdb7dt1T.js → openaiimage-DHNDrMex.js} +1 -1
- package/dist/assets/{pagination-BM9WMdjP.js → pagination-CyddWiCJ.js} +2 -2
- package/dist/assets/{pagination-Dt_gVul4.js → pagination-DXXXQ5cp.js} +1 -1
- package/dist/assets/{pagination-Czi4oCtx.js → pagination-TqCcRUaD.js} +1 -1
- package/dist/assets/{palette-CsAaSTAe.js → palette-DFAnY6jW.js} +1 -1
- package/dist/assets/{paperclip-BlTI2s6T.js → paperclip-BAszH3iv.js} +1 -1
- package/dist/assets/{pause-CHLpZfXy.js → pause-5G63TB0J.js} +1 -1
- package/dist/assets/{pencil-DIZQXLg1.js → pencil-BJ_6ojX2.js} +1 -1
- package/dist/assets/{pika-XsMUSJLb.js → pika-BzWKiitX.js} +1 -1
- package/dist/assets/{pixverse-DNvzHQlB.js → pixverse-D3A0XjE_.js} +1 -1
- package/dist/assets/play-BI7VWnLS.js +1 -0
- package/dist/assets/{plug-tJZnqV8-.js → plug-BoylcuFT.js} +1 -1
- package/dist/assets/plus-B_IO_O6G.js +1 -0
- package/dist/assets/{poivelle-TikNUfHv.js → poivelle-CPlUdPaK.js} +1 -1
- package/dist/assets/{popover-Cza6Wizf.js → popover-Dt75xsHQ.js} +1 -1
- package/dist/assets/{producer-kIoOuj5t.js → producer--xGbOart.js} +1 -1
- package/dist/assets/{qrart-YF8dr22X.js → qrart-D0n1nlRD.js} +1 -1
- package/dist/assets/realtime-DuOffBBr.js +1 -0
- package/dist/assets/{refresh-cw-BnfrSaXN.js → refresh-cw-Tn7gJ13d.js} +1 -1
- package/dist/assets/rotate-ccw-BOWa3Fk_.js +1 -0
- package/dist/assets/rotate-cw-cd-8ZJKX.js +1 -0
- package/dist/assets/{row-C4QREo9_.js → row-G9xh75fd.js} +1 -1
- package/dist/assets/search-DxOwIk71.js +1 -0
- package/dist/assets/{omni-BLShh1HO.js → seedance-tFAlAOfn.js} +1 -1
- package/dist/assets/{seedream-BURXd2G7.js → seedream-Gt4aau_1.js} +1 -1
- package/dist/assets/{select--hLaPd-X.js → select-3zeZnDWr.js} +1 -1
- package/dist/assets/{serp-8Oh3j2wf.js → serp-DjMqZxkM.js} +1 -1
- package/dist/assets/{shield-C7MvkIOP.js → shield-BJg_SW7v.js} +1 -1
- package/dist/assets/{shuffle-SN5Wtmny.js → shuffle-BcaNQO-S.js} +1 -1
- package/dist/assets/site-1xgEhbO6.js +1 -0
- package/dist/assets/site-B5zJrPVl.js +1 -0
- package/dist/assets/site-BBDZczgF.js +1 -0
- package/dist/assets/site-BMCSBExN.js +1 -0
- package/dist/assets/site-BR9Vxjhw.js +1 -0
- package/dist/assets/site-BSxPfgFR.js +1 -0
- package/dist/assets/site-C-3I6wyT.js +1 -0
- package/dist/assets/site-CQXt-Z4-.js +1 -0
- package/dist/assets/site-CfYu3uIz.js +1 -0
- package/dist/assets/site-DAAhVx1y.js +1 -0
- package/dist/assets/site-DBVhGl1z.js +1 -0
- package/dist/assets/site-DCWqRFJ7.js +1 -0
- package/dist/assets/site-DK1zHGNG.js +1 -0
- package/dist/assets/site-DOmGrg03.js +1 -0
- package/dist/assets/site-DeFrKxu6.js +1 -0
- package/dist/assets/site-Dj2gRcSc.js +1 -0
- package/dist/assets/site-Dtk-o0B8.js +1 -0
- package/dist/assets/site-TgBr6qXv.js +1 -0
- package/dist/assets/{slider-EWdGsOow.js → slider-WaUKHi3z.js} +1 -1
- package/dist/assets/{solana-wallets-DDkmI1Ma.js → solana-wallets-DNpZJ0FH.js} +2 -2
- package/dist/assets/{solana-wallets-vue-D9U8nDT2.js → solana-wallets-vue-C1VmdDik.js} +1 -1
- package/dist/assets/sora-BERB9XTM.js +1 -0
- package/dist/assets/{sparkles-DyBQZW7g.js → sparkles-4u5uzQOL.js} +1 -1
- package/dist/assets/square-5QWQXF9g.js +1 -0
- package/dist/assets/{store-CH2delsy.js → store-Jc8QTABa.js} +1 -1
- package/dist/assets/{suno-COhADiph.js → suno-Chn2b9Yw.js} +1 -1
- package/dist/assets/{switch-C-kdhFRG.js → switch-B8KB4C7k.js} +1 -1
- package/dist/assets/{table-BUug70Yr.js → table-CvCqswG1.js} +1 -1
- package/dist/assets/{tabs-DN6nwakT.js → tabs-CPEEm64y.js} +1 -1
- package/dist/assets/{tag-bZ7tDonU.js → tag-RstAx2l-.js} +1 -1
- package/dist/assets/terminal-DSaSnXUU.js +1 -0
- package/dist/assets/{time-picker-B9jqCc2T.js → time-picker-C6uBKm3r.js} +1 -1
- package/dist/assets/{tooltip-BWmio9dL.js → tooltip-CPF0ns2F.js} +1 -1
- package/dist/assets/{trash-2-DSacCdhQ.js → trash-2-CO44aulg.js} +1 -1
- package/dist/assets/{triangle-alert-CZT0mF2a.js → triangle-alert-QijY2HDu.js} +1 -1
- package/dist/assets/{upload-D3MEiFFV.js → upload-B9LBkWpk.js} +1 -1
- package/dist/assets/{upload-Ch10sTtH.js → upload-BngN7c-y.js} +1 -1
- package/dist/assets/user-a4Rp6J3a.js +1 -0
- package/dist/assets/{veo-DyPaJigc.js → veo-NwNcRspq.js} +1 -1
- package/dist/assets/{video-BEAXv7aW.js → video-Dx41_516.js} +1 -1
- package/dist/assets/{volume-2-X4B74AS-.js → volume-2-N0VJQa8U.js} +1 -1
- package/dist/assets/{wallet-BlAJi5BB.js → wallet-Cwtb7YQp.js} +1 -1
- package/dist/assets/{wan-DDNUnFpM.js → wan-BV3Hy5p7.js} +1 -1
- package/dist/assets/{wand-sparkles-ZWpynNLr.js → wand-sparkles-BxwmnK2z.js} +1 -1
- package/dist/assets/{web-B3PuXcPR.js → web-B46bWo_4.js} +1 -1
- package/dist/assets/{web-CGPMqt82.js → web-BK57F_t0.js} +1 -1
- package/dist/assets/{web-CNVVZA0M.js → web-CQtlWScV.js} +1 -1
- package/dist/assets/{web-Dauv6_FY.js → web-Dju-sTdk.js} +1 -1
- package/dist/assets/{web-DUT3F6BN.js → web-DxWEviRF.js} +1 -1
- package/dist/assets/{webextrator-jDziCKyl.js → webextrator-iNFF8-7T.js} +1 -1
- package/dist/assets/{zap-C4BJjqMY.js → zap-Ct4mMP79.js} +1 -1
- package/dist/index.html +5 -5
- package/package.json +1 -1
- package/dist/assets/Extra-Do0UEYb_.js +0 -1
- package/dist/assets/Index-1cKLnPC3.js +0 -1
- package/dist/assets/Index-BQXgAPJu.js +0 -1
- package/dist/assets/Index-BVB2MYOC2.js +0 -1
- package/dist/assets/Index-C5U0uLSJ.js +0 -1
- package/dist/assets/Index-CBUKd72T.js +0 -1
- package/dist/assets/Index-CPtY5Hco.js +0 -1
- package/dist/assets/Index-CRre2POV.js +0 -1
- package/dist/assets/Index-CUFBu9DL.js +0 -1
- package/dist/assets/Index-CtI4ILxP2.js +0 -1
- package/dist/assets/Index-DDCO5Hu-2.js +0 -1
- package/dist/assets/Index-DFvuoKQS.js +0 -1
- package/dist/assets/Index-MrkXwWqk.css +0 -1
- package/dist/assets/List-Q31zqOMn.js +0 -1
- package/dist/assets/LocalTools-08oAoyJ9.js +0 -5
- package/dist/assets/Message-CTdVkdVd.js +0 -3
- package/dist/assets/Model-DuY5M-cI.js +0 -1
- package/dist/assets/Navigator-DCIHDbRt.css +0 -1
- package/dist/assets/Navigator-DXsPtho6.js +0 -8
- package/dist/assets/Pay-BJDGPdEG.js +0 -1
- package/dist/assets/arrow-down-DdR-qktQ.js +0 -1
- package/dist/assets/arrow-left-CaX06B3X.js +0 -1
- package/dist/assets/arrow-right-DXS23sL5.js +0 -1
- package/dist/assets/arrow-up-DQbwE7SZ.js +0 -1
- package/dist/assets/authorizeFlow-HRRmbMZ_.js +0 -1
- package/dist/assets/check-YpVnY9c1.js +0 -1
- package/dist/assets/chevron-down-Df1Wh7Rr.js +0 -1
- package/dist/assets/chevron-right-CI8JXKuk.js +0 -1
- package/dist/assets/circle-check-Ds2W-BZ1.js +0 -1
- package/dist/assets/clock-B3fFaHCL.js +0 -1
- package/dist/assets/code-W66KfHwS.js +0 -1
- package/dist/assets/esm-BC-wRwdz.js +0 -1
- package/dist/assets/gauge-BY-ww5QY.js +0 -1
- package/dist/assets/loader-circle-Ke2n_987.js +0 -1
- package/dist/assets/music-2-B2NVYpjb.js +0 -1
- package/dist/assets/play-CKAALMrr.js +0 -1
- package/dist/assets/plus-CXRduJme.js +0 -1
- package/dist/assets/realtime-BxqIKGiq.js +0 -1
- package/dist/assets/rotate-ccw-CaWc0VQQ.js +0 -1
- package/dist/assets/rotate-cw-DVJU4kTT.js +0 -1
- package/dist/assets/search-CFnTlN_S.js +0 -1
- package/dist/assets/site-2IxXJVw5.js +0 -1
- package/dist/assets/site-B7STEPzk.js +0 -1
- package/dist/assets/site-B7iTr4CT.js +0 -1
- package/dist/assets/site-BARH_1co.js +0 -1
- package/dist/assets/site-BHwcYovh.js +0 -1
- package/dist/assets/site-B_Pczrz5.js +0 -1
- package/dist/assets/site-BoU-uYP2.js +0 -1
- package/dist/assets/site-C4YvqCCW.js +0 -1
- package/dist/assets/site-CZ1G_Cuv.js +0 -1
- package/dist/assets/site-CcIdItfF.js +0 -1
- package/dist/assets/site-Cv1ZLuu-.js +0 -1
- package/dist/assets/site-D-PZVUpL.js +0 -1
- package/dist/assets/site-D7fKzUxG.js +0 -1
- package/dist/assets/site-D9VMv2NL.js +0 -1
- package/dist/assets/site-DKdYs9pS.js +0 -1
- package/dist/assets/site-FtehB9mz.js +0 -1
- package/dist/assets/site-W8uqN1Qz.js +0 -1
- package/dist/assets/site-q2KJNgfH.js +0 -1
- package/dist/assets/sora-CjIlRd31.js +0 -1
- package/dist/assets/square-BZfUhceA.js +0 -1
- package/dist/assets/terminal-DTCjo7w_.js +0 -1
- package/dist/assets/user-CphygOn_.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,b as u,ht as d,j as f,mt as p,ot as m,qt as h,rt as g,st as _,tt as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select--hLaPd-X.js";import{n as S,t as C}from"./tabs-DN6nwakT.js";import{t as w}from"./tooltip-BWmio9dL.js";import{v as T}from"./models-BgHU_JUY.js";import{n as E,r as D,t as O}from"./dropdown-BD0rUmhS.js";import{t as k}from"./pagination-Dt_gVul4.js";import{t as A}from"./switch-C-kdhFRG.js";import{t as j}from"./arrow-down-DdR-qktQ.js";import{t as M}from"./arrow-left-CaX06B3X.js";import{t as N}from"./book-open-DQz2Q2l9.js";import{t as P}from"./chevron-down-Df1Wh7Rr.js";import{t as F}from"./chevron-right-CI8JXKuk.js";import{t as I}from"./circle-check-Ds2W-BZ1.js";import{t as L}from"./circle-question-mark-sV-hbdKL.js";import{t as ee}from"./clipboard-list-D9k9N7WV.js";import{t as te}from"./code-W66KfHwS.js";import{t as R}from"./copy-Czdnsq2s.js";import{t as ne}from"./ellipsis-Ca0WK_wY.js";import{t as re}from"./eye-Bu3r5iIo.js";import{t as ie}from"./file-text-DtTY8Ab2.js";import{t as z}from"./file-DM-F2LrK.js";import{t as B}from"./folder-SyICqENP.js";import{t as ae}from"./image-DH6_XR7_.js";import{t as oe}from"./lock-BjokhHtF.js";import{t as V}from"./plus-CXRduJme.js";import{n as se,t as ce}from"./store-CH2delsy.js";import{t as le}from"./search-CFnTlN_S.js";import{t as ue}from"./trash-2-DSacCdhQ.js";import{t as de}from"./triangle-alert-CZT0mF2a.js";import{t as fe}from"./upload-D3MEiFFV.js";import{t as pe}from"./wand-sparkles-ZWpynNLr.js";import{Ai as me,Bi as H,Ci as U,Cr as W,Mi as G,O as K,_i as q,ai as he,ci as ge,li as _e,mi as ve,ri as ye,ui as be,vi as xe,yi as J}from"./index-La_21d58.js";import{a as Se,c as Ce,d as we,f as Te,i as Ee,l as De,m as Y,n as Oe,o as ke,p as Ae,r as je,s as Me,t as Ne,u as Pe}from"./vendor-highlight-BHrfT4-E.js";import{t as Fe}from"./index.es-B0uCFN0A.js";import{t as Ie}from"./VueMarkdown-CiiRjbWs.js";import{t as Le}from"./PageHeader-D_z9tvk6.js";var Re=q(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),ze=q(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),Be=q(`file-code-corner`,[[`path`,{d:`M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35`,key:`1wthlu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m5 16-3 3 3 3`,key:`331omg`}],[`path`,{d:`m9 22 3-3-3-3`,key:`lsp7cz`}]]),Ve=q(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),He=q(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),X=()=>({baseURL:`${ye()}/api/v1`}),Z=new class{key=`skills/installed`;async list(){return W.get(`/${this.key}/`,X())}async get(e){return W.get(`/${this.key}/${e}/`,X())}async createMarkdown(e){return W.post(`/${this.key}/`,e,X())}async createTarball(e){let t=new FormData;return t.append(`tarball`,e),W.post(`/${this.key}/`,t,{...X(),headers:{"Content-Type":`multipart/form-data`}})}async update(e,t){return W.patch(`/${this.key}/${e}/`,t,X())}async remove(e){return W.delete(`/${this.key}/${e}/`,X())}async enable(e){return W.post(`/${this.key}/${e}/enable/`,void 0,X())}async disable(e){return W.post(`/${this.key}/${e}/disable/`,void 0,X())}async fetchFile(e,t){let n=await W.get(`/${this.key}/${e}/files/`,{...X(),params:{path:t},responseType:`arraybuffer`}),r=n.headers[`content-type`]||`application/octet-stream`;return{blob:new Blob([n.data],{type:r}),contentType:r}}},Q=new class{key=`skills`;async list(e={}){return W.get(`/${this.key}/`,{...X(),params:e})}async get(e){return W.get(`/${this.key}/${e}/`,X())}async categories(){return W.get(`/${this.key}/categories/`,X())}async install(e,t={}){return W.post(`/${this.key}/${e}/install/`,t,X())}};function Ue(){let e=new Set;_e()&&e.add(`desktop`),be()&&e.add(`ios`),ge()&&e.add(`android`),ve()&&e.add(`web`);let t=he();if(t===`mac`)e.add(`mac`);else if(t===`windows`)e.add(`windows`);else if(typeof navigator<`u`){let t=navigator.userAgent||``,n=navigator.userAgentData?.platform,r=/macintosh/i.test(t)&&(navigator.maxTouchPoints||0)>1;!be()&&!r&&(n===`macOS`||/mac os x|macintosh/i.test(t))&&e.add(`mac`),(n===`Windows`||/windows nt/i.test(t))&&e.add(`windows`)}return e}var We=new Set([`mac`,`windows`,`desktop`,`web`,`ios`,`android`]);function Ge(e){let t=e.filter(e=>We.has(e));if(!t.length)return!0;let n=Ue();return t.some(e=>n.has(e))}Y.registerLanguage(`bash`,Ae),Y.registerLanguage(`json`,Te),Y.registerLanguage(`markdown`,we),Y.registerLanguage(`python`,Pe),Y.registerLanguage(`shell`,De),Y.registerLanguage(`yaml`,Ce),Y.registerAliases([`yml`],{languageName:`yaml`}),Y.registerAliases([`py`],{languageName:`python`}),Y.registerAliases([`sh`,`zsh`],{languageName:`bash`});var Ke=12,qe=y({name:`BrowseSkillsDialog`,components:{VueMarkdown:Ie,ElDialog:U,ElInput:H,ElButton:G,ElPagination:k,ElSelect:b,ElOption:x,FontAwesomeIcon:Fe,AddIcon:V,BackIcon:M,DownIcon:j,InstallIcon:Re,LockIcon:oe,SearchIcon:le,SuccessIcon:I},directives:{loading:J},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{loading:!1,installing:!1,items:[],total:0,currentPage:1,searchQuery:``,namespaceFilter:``,sortBy:`popular`,selectedItem:null,searchTimer:null,knownNamespaces:[],publisherByNamespace:{}}},computed:{pageSize(){return Ke},namespaceOptions(){let e=new Set(this.knownNamespaces);for(let t of this.items)e.add(t.namespace);return Array.from(e).sort().map(e=>({value:e,label:this.publisherForNamespace(e)}))},detailBody(){return this.selectedItem?this.selectedItem.content.replace(/^---\n[\s\S]*?\n---\n?/,``):``}},methods:{onOpen(){this.selectedItem=null,this.searchQuery=``,this.namespaceFilter=``,this.sortBy=`popular`,this.currentPage=1,this.knownNamespaces=[],this.publisherByNamespace={},this.loadFacets(),this.reload()},openDetail(e){this.selectedItem=e},async loadFacets(){try{let{data:e}=await Q.categories(),t=new Set;for(let n of e.namespaces)t.add(n.namespace);this.knownNamespaces=Array.from(t).sort()}catch(e){console.warn(`failed to load skill catalog facets`,e)}},reloadFromFirstPage(){this.currentPage=1,this.reload()},onPageChange(e){this.currentPage=e,this.reload(),this.$nextTick(()=>{let e=this.$el.querySelector(`.directory-grid-wrapper`);e&&(e.scrollTop=0)})},onSearchInput(){this.searchTimer!==null&&window.clearTimeout(this.searchTimer),this.searchTimer=window.setTimeout(()=>{this.searchTimer=null,this.reloadFromFirstPage()},250)},async reload(){this.loading=!0;try{let{data:e}=await Q.list({q:this.searchQuery.trim()||void 0,namespace:this.namespaceFilter||void 0,sort:this.sortBy,limit:this.pageSize,offset:(this.currentPage-1)*this.pageSize});this.items=e.items,this.total=e.total;for(let t of e.items)t.publisher&&(this.publisherByNamespace[t.namespace]=t.publisher)}catch(e){console.error(e),T.error(this.$t(`skill.directory.loadFailed`))}finally{this.loading=!1}},async onInstall(e){if(!this.installing&&!e.installed){if(!this.canInstallOnSurface(e)){T.warning(this.$t(`skill.directory.surfaceBlocked`,{platforms:this.surfaceLabels(e)}));return}this.installing=!0;try{let{data:t}=await Q.install(e.id);T.success(this.$t(`skill.directory.installSuccess`,{name:e.slug})),this.$emit(`installed`,t.id),e.installed=!0,e.install_count+=1}catch(t){let n=this.extractError(t);n.includes(`already exists`)?(e.installed=!0,T.warning(this.$t(`skill.directory.alreadyInstalled`,{name:e.slug}))):T.error(this.$t(`skill.directory.installFailed`,{detail:n}))}finally{this.installing=!1}}},extractError(e){return e?.response?.data?.detail||String(e)||`unknown error`},formatCount(e){return e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)},publisherForNamespace(e){if(this.publisherByNamespace[e])return this.publisherByNamespace[e];let t=this.items.find(t=>t.namespace===e);return t?t.publisher:e},restrictedSurfaces(e){let t=e.frontmatter?.surfaces;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim().toLowerCase()):[]},surfaceLabel(e){let t=`skill.directory.surface.${e}`,n=this.$t(t);return n===t?e:n},surfaceLabels(e){return this.restrictedSurfaces(e).map(e=>this.surfaceLabel(e)).join(` / `)},canInstallOnSurface(e){return Ge(this.restrictedSurfaces(e))}}}),Je={class:`directory`},Ye={class:`directory-main`},Xe={class:`directory-header`},Ze={class:`directory-controls`},Qe={class:`directory-grid-wrapper`},$e={key:0,class:`directory-empty`},et={key:1,class:`directory-grid`},tt=[`onClick`],nt={class:`directory-card-head`},rt={class:`directory-card-title`},it=[`title`],at=[`title`],ot=[`aria-label`,`title`,`onClick`],st=[`title`],ct={class:`directory-card-meta`},lt={class:`directory-card-publisher`},ut={key:0,class:`directory-card-count`},dt=[`title`],ft={class:`directory-card-desc`},pt={key:0,class:`directory-footer`},mt={class:`directory-detail-head`},ht={class:`directory-detail-actions`},gt=[`href`],_t={class:`directory-detail-body`},vt={class:`directory-detail-title`},yt={class:`directory-detail-meta`},bt={key:0},xt={key:1},St=[`title`],Ct={class:`directory-detail-desc`};function wt(u,h,_,y,b,x){let S=l(`search-icon`),C=l(`el-input`),w=l(`el-option`),T=l(`el-select`),E=l(`success-icon`),D=l(`lock-icon`),O=l(`add-icon`),k=l(`down-icon`),A=l(`el-pagination`),j=l(`back-icon`),M=l(`font-awesome-icon`),N=l(`el-button`),P=l(`install-icon`),F=l(`vue-markdown`),I=l(`el-dialog`),L=m(`loading`);return v(),f(I,{"model-value":u.modelValue,title:u.$t(`skill.dialog.directoryTitle`),width:`min(960px, 94vw)`,"align-center":``,class:`directory-dialog`,"close-on-click-modal":!u.installing,"show-close":!u.installing,"onUpdate:modelValue":h[5]||=e=>u.$emit(`update:modelValue`,e),onOpen:u.onOpen},{default:p(()=>[e(`div`,Je,[e(`main`,Ye,[u.selectedItem?(v(),s(c,{key:1},[e(`header`,mt,[e(`button`,{class:`directory-back-btn`,onClick:h[3]||=e=>u.selectedItem=null},[a(j,{size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.back`)),1)]),e(`div`,ht,[u.selectedItem.source_url?(v(),s(`a`,{key:0,href:u.selectedItem.source_url,target:`_blank`,class:`directory-link`},[a(M,{icon:`fa-brands fa-github`}),r(` `+i(u.$t(`skill.directory.viewSource`)),1)],8,gt)):o(``,!0),u.selectedItem.installed?(v(),f(N,{key:1,disabled:``,type:`success`,plain:``},{default:p(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.installed`)),1)]),_:1})):u.selectedItem.installable&&!u.canInstallOnSurface(u.selectedItem)?(v(),f(N,{key:2,disabled:``,title:u.$t(`skill.directory.surfaceBlocked`,{platforms:u.surfaceLabels(u.selectedItem)})},{default:p(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.surfaceUnavailable`)),1)]),_:1},8,[`title`])):u.selectedItem.installable?(v(),f(N,{key:3,type:`primary`,loading:u.installing,onClick:h[4]||=e=>u.onInstall(u.selectedItem)},{default:p(()=>[a(P,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.install`)),1)]),_:1},8,[`loading`])):(v(),f(N,{key:4,disabled:``,title:u.selectedItem.license},{default:p(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.selectedItem.license||u.$t(`skill.directory.notInstallable`)),1)]),_:1},8,[`title`]))])]),e(`div`,_t,[e(`h2`,vt,`/`+i(u.selectedItem.slug),1),e(`div`,yt,[e(`span`,null,[e(`strong`,null,i(u.$t(`skill.meta.addedBy`))+`:`,1),r(` `+i(u.selectedItem.publisher),1)]),u.selectedItem.license?(v(),s(`span`,bt,[e(`strong`,null,i(u.$t(`skill.directory.license`))+`:`,1),r(` `+i(u.selectedItem.license),1)])):o(``,!0),u.selectedItem.version?(v(),s(`span`,xt,`v`+i(u.selectedItem.version),1)):o(``,!0),u.surfaceLabels(u.selectedItem)?(v(),s(`span`,{key:2,class:`directory-detail-surface`,title:u.$t(`skill.directory.surfaceHint`)},i(u.$t(`skill.directory.surfaceOnly`,{platforms:u.surfaceLabels(u.selectedItem)})),9,St)):o(``,!0)]),e(`p`,Ct,i(u.selectedItem.description),1),a(F,{class:`directory-detail-content`,source:u.detailBody,sanitize:``},null,8,[`source`])])],64)):(v(),s(c,{key:0},[e(`header`,Xe,[a(C,{modelValue:u.searchQuery,"onUpdate:modelValue":h[0]||=e=>u.searchQuery=e,class:`directory-search`,size:`default`,clearable:``,placeholder:u.$t(`skill.directory.searchPlaceholder`),onInput:u.onSearchInput},{prefix:p(()=>[a(S,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`,`onInput`]),e(`div`,Ze,[a(T,{modelValue:u.namespaceFilter,"onUpdate:modelValue":h[1]||=e=>u.namespaceFilter=e,class:`directory-select`,placeholder:u.$t(`skill.directory.allPublishers`),clearable:``,size:`default`,onChange:u.reloadFromFirstPage},{default:p(()=>[(v(!0),s(c,null,g(u.namespaceOptions,e=>(v(),f(w,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),a(T,{modelValue:u.sortBy,"onUpdate:modelValue":h[2]||=e=>u.sortBy=e,class:`directory-select directory-select-sm`,size:`default`,onChange:u.reloadFromFirstPage},{default:p(()=>[a(w,{label:u.$t(`skill.directory.sort.popular`),value:`popular`},null,8,[`label`]),a(w,{label:u.$t(`skill.directory.sort.recent`),value:`recent`},null,8,[`label`]),a(w,{label:u.$t(`skill.directory.sort.name`),value:`name`},null,8,[`label`])]),_:1},8,[`modelValue`,`onChange`])])]),d((v(),s(`div`,Qe,[!u.loading&&u.total===0?(v(),s(`p`,$e,i(u.$t(`skill.directory.empty`)),1)):(v(),s(`div`,et,[(v(!0),s(c,null,g(u.items,c=>(v(),s(`article`,{key:c.id,class:n([`directory-card`,{"is-installed":c.installed}]),onClick:e=>u.openDetail(c)},[e(`div`,nt,[e(`span`,rt,`/`+i(c.slug),1),c.installed?(v(),s(`span`,{key:0,class:`directory-card-action is-installed`,title:u.$t(`skill.directory.installed`)},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,it)):c.installable&&!u.canInstallOnSurface(c)?(v(),s(`span`,{key:1,class:`directory-card-locked`,title:u.$t(`skill.directory.surfaceBlocked`,{platforms:u.surfaceLabels(c)})},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,at)):c.installable?(v(),s(`button`,{key:2,class:`directory-card-action`,"aria-label":u.$t(`skill.directory.install`),title:u.$t(`skill.directory.install`),onClick:t(e=>u.onInstall(c),[`stop`])},[a(O,{size:16,"aria-hidden":`true`,focusable:`false`})],8,ot)):(v(),s(`span`,{key:3,class:`directory-card-locked`,title:c.license},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,st))]),e(`div`,ct,[e(`span`,lt,i(c.publisher),1),c.install_count>0?(v(),s(`span`,ut,[a(k,{size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.formatCount(c.install_count)),1)])):o(``,!0),u.surfaceLabels(c)?(v(),s(`span`,{key:1,class:`directory-card-surface`,title:u.$t(`skill.directory.surfaceHint`)},i(u.surfaceLabels(c)),9,dt)):o(``,!0)]),e(`p`,ft,i(c.description),1)],10,tt))),128))]))])),[[L,u.loading]]),u.total>u.pageSize?(v(),s(`footer`,pt,[a(A,{"current-page":u.currentPage,"page-size":u.pageSize,total:u.total,"pager-count":5,background:``,layout:`prev, pager, next, total`,onCurrentChange:u.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onCurrentChange`])])):o(``,!0)],64))])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`show-close`,`onOpen`])}var Tt=K(qe,[[`render`,wt],[`__scopeId`,`data-v-a9be2dc3`]]);Y.registerLanguage(`bash`,Ae),Y.registerLanguage(`css`,Me),Y.registerLanguage(`go`,ke),Y.registerLanguage(`javascript`,Se),Y.registerLanguage(`json`,Te),Y.registerLanguage(`markdown`,we),Y.registerLanguage(`python`,Pe),Y.registerLanguage(`rust`,Ee),Y.registerLanguage(`shell`,De),Y.registerLanguage(`sql`,je),Y.registerLanguage(`typescript`,Oe),Y.registerLanguage(`xml`,Ne),Y.registerLanguage(`html`,Ne),Y.registerLanguage(`yaml`,Ce),Y.registerAliases([`yml`],{languageName:`yaml`}),Y.registerAliases([`ts`,`tsx`],{languageName:`typescript`}),Y.registerAliases([`js`,`jsx`],{languageName:`javascript`}),Y.registerAliases([`py`],{languageName:`python`}),Y.registerAliases([`rs`],{languageName:`rust`}),Y.registerAliases([`sh`,`zsh`],{languageName:`bash`});var $=1e6;function Et(e,t){let n=(e.split(`.`).pop()||``).toLowerCase();return n===`md`||t.startsWith(`text/markdown`)?`markdown`:n===`html`||n===`htm`||t.startsWith(`text/html`)?`html`:t.startsWith(`image/`)||[`png`,`jpg`,`jpeg`,`gif`,`webp`,`svg`].includes(n)?`image`:t.startsWith(`text/`)||[`json`,`application/json`].includes(t.split(`;`)[0])?n?`code`:`text`:`binary`}function Dt(e){let t=(e.split(`.`).pop()||``).toLowerCase();return Y.getLanguage(t)?t:`plain`}var Ot=y({name:`SkillFilePreview`,components:{ElButton:G,ElTooltip:w,ElTabs:S,ElTabPane:C,CodeIcon:te,CopyIcon:R,FileIcon:z,SaveIcon:Ve,ViewIcon:re,WarningIcon:de,VueMarkdown:Ie},directives:{loading:J},props:{skillId:{type:String,required:!0},path:{type:String,required:!0},editable:{type:Boolean,default:!1}},emits:[`save`],data(){return{MAX_PREVIEW_BYTES:$,loading:!1,error:``,contentType:``,size:0,textContent:``,imageUrl:``,truncated:!1,viewMode:`rendered`,dirty:!1,saving:!1}},computed:{kind(){return this.path?Et(this.path,this.contentType):`text`},canRender(){return this.kind===`markdown`||this.kind===`html`},hljsLang(){return`language-${Dt(this.path)}`},truncatedText(){return this.textContent}},watch:{path:{handler(){this.fetch()},immediate:!0}},beforeUnmount(){this.imageUrl&&URL.revokeObjectURL(this.imageUrl)},methods:{humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},async fetch(){if(this.path){this.loading=!0,this.error=``,this.textContent=``,this.truncated=!1,this.dirty=!1,this.imageUrl&&=(URL.revokeObjectURL(this.imageUrl),``);try{let{blob:e,contentType:t}=await Z.fetchFile(this.skillId,this.path);this.contentType=t,this.size=e.size;let n=Et(this.path,t);if(n===`image`)this.imageUrl=URL.createObjectURL(e);else if(n!==`binary`){let t=await e.text();t.length>$&&(t=t.slice(0,$),this.truncated=!0),this.textContent=t,this.viewMode=n===`markdown`||n===`html`?`rendered`:`source`}}catch(e){let t=e,n=t?.response?.status,r=t?.response?.data?.detail||String(e);this.error=n?`(${n}) ${r}`:r}finally{this.loading=!1,this.$nextTick(()=>this.applyHighlight())}}},applyHighlight(){let e=this.$refs.codeEl;e&&this.kind===`code`&&this.viewMode!==`rendered`&&(delete e.dataset.highlighted,Y.highlightElement(e))},async onCopy(){if(this.textContent)try{await navigator.clipboard.writeText(this.textContent),T.success(this.$t(`skill.preview.copied`))}catch{T.error(this.$t(`skill.preview.copyFailed`))}},async onSave(){this.saving=!0;try{await new Promise((e,t)=>{this.$emit(`save`,this.textContent,{resolve:e,reject:t})}),this.dirty=!1}catch{}finally{this.saving=!1}}}}),kt={class:`preview-root`},At={class:`toolbar`},jt={class:`path-display`},Mt={key:0,class:`size-display`},Nt={class:`body`},Pt={key:0,class:`error`},Ft=[`srcdoc`],It={key:3,class:`image-pane`},Lt=[`src`,`alt`],Rt={key:4,class:`binary`},zt=[`placeholder`],Bt={key:6,class:`source-pane`},Vt={key:7,class:`truncated-warning`};function Ht(t,c,h,g,_,y){let b=l(`save-icon`),x=l(`el-button`),S=l(`copy-icon`),C=l(`el-tooltip`),w=l(`view-icon`),T=l(`el-tab-pane`),E=l(`code-icon`),D=l(`el-tabs`),O=l(`warning-icon`),k=l(`vue-markdown`),A=l(`file-icon`),j=m(`loading`);return d((v(),s(`div`,kt,[e(`div`,At,[e(`span`,jt,i(t.path||`—`),1),t.size?(v(),s(`span`,Mt,i(t.humanSize(t.size)),1)):o(``,!0),c[3]||=e(`span`,{class:`toolbar-spacer`},null,-1),t.editable?(v(),f(x,{key:1,type:`primary`,size:`small`,disabled:!t.dirty||t.saving,loading:t.saving,onClick:t.onSave},{default:p(()=>[a(b,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.save`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):o(``,!0),a(C,{content:t.$t(`skill.preview.copy`),placement:`bottom`},{default:p(()=>[a(x,{size:`small`,circle:``,disabled:!t.textContent,"aria-label":t.$t(`skill.preview.copy`),title:t.$t(`skill.preview.copy`),onClick:t.onCopy},{default:p(()=>[a(S,{size:16,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`disabled`,`aria-label`,`title`,`onClick`])]),_:1},8,[`content`])]),t.canRender?(v(),f(D,{key:0,modelValue:t.viewMode,"onUpdate:modelValue":c[0]||=e=>t.viewMode=e,class:`view-tabs`},{default:p(()=>[a(T,{name:`rendered`},{label:p(()=>[a(w,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.preview.viewRendered`)),1)]),_:1}),a(T,{name:`source`},{label:p(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.preview.viewSource`)),1)]),_:1})]),_:1},8,[`modelValue`])):o(``,!0),e(`div`,Nt,[t.error?(v(),s(`div`,Pt,[a(O,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.error),1)])):t.kind===`markdown`&&t.viewMode===`rendered`?(v(),f(k,{key:1,class:`markdown-rendered`,source:t.textContent,sanitize:``},null,8,[`source`])):t.kind===`html`&&t.viewMode===`rendered`?(v(),s(`iframe`,{key:2,ref:`htmlFrame`,class:`html-frame`,sandbox:``,srcdoc:t.textContent},null,8,Ft)):t.kind===`image`?(v(),s(`div`,It,[e(`img`,{src:t.imageUrl,alt:t.path,class:`image-content`},null,8,Lt)])):t.kind===`binary`?(v(),s(`div`,Rt,[a(A,{class:`binary-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,i(t.$t(`skill.preview.binary`,{type:t.contentType})),1)])):t.editable?d((v(),s(`textarea`,{key:5,"onUpdate:modelValue":c[1]||=e=>t.textContent=e,class:`source-editor`,spellcheck:`false`,placeholder:t.$t(`skill.placeholder.content`),onInput:c[2]||=e=>t.dirty=!0},null,40,zt)),[[u,t.textContent]]):(v(),s(`pre`,Bt,[e(`code`,{ref:`codeEl`,class:n(t.hljsLang)},i(t.truncatedText),3)])),t.truncated?(v(),s(`p`,Vt,i(t.$t(`skill.preview.truncated`,{size:t.humanSize(t.MAX_PREVIEW_BYTES)})),1)):o(``,!0)])])),[[j,t.loading]])}var Ut=K(Ot,[[`render`,Ht],[`__scopeId`,`data-v-ec0a447e`]]),Wt=new Set([`py`,`ts`,`tsx`,`js`,`jsx`,`json`,`yaml`,`yml`,`sh`,`bash`,`zsh`,`css`,`html`,`sql`,`go`,`rs`,`rb`,`java`,`cpp`,`c`,`h`,`toml`]),Gt=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`svg`]);function Kt(e){let t=e.split(`/`).pop()||e,n=(t.split(`.`).pop()||``).toLowerCase();return t===`SKILL.md`?N:n===`md`?ie:Gt.has(n)?ae:Wt.has(n)?Be:z}function qt(e){let t=new Map;t.set(``,new Map);let n=(e,n)=>{let r=t.get(e);r||(r=new Map,t.set(e,r));let i=e?`${e}/${n}`:n,a=r.get(n);return a||(a={label:n,path:i,isLeaf:!1,children:[]},r.set(n,a),t.set(i,new Map)),a};for(let r of e){let e=r.split(`/`).filter(Boolean);if(e.length===0)continue;let i=e[e.length-1],a=e.slice(0,-1),o=``;for(let e of a)o=n(o,e).path;let s={label:i,path:r,isLeaf:!0},c=t.get(o);c||(c=new Map,t.set(o,c)),c.set(i,s)}let r=e=>{let n=t.get(e);if(!n)return[];let i=Array.from(n.values());for(let e of i)e.isLeaf||(e.children=r(e.path));return i.sort((e,t)=>e.path===`SKILL.md`?-1:t.path===`SKILL.md`?1:e.isLeaf===t.isLeaf?e.label.localeCompare(t.label):e.isLeaf?1:-1)};return r(``)}var Jt=y({name:`FileNode`,components:{ExpandDownIcon:P,ExpandRightIcon:F,FontAwesomeIcon:Fe},props:{node:{type:Object,required:!0},selectedSkillId:{type:String,required:!0},selectedPath:{type:String,required:!0},skill:{type:Object,required:!0},depth:{type:Number,default:1}},emits:[`select-file`],data(){return{open:!0}},computed:{indent(){return 8+this.depth*16},isActive(){return this.node.isLeaf&&this.selectedSkillId===this.skill.id&&this.selectedPath===this.node.path}},methods:{isHtmlFile(e){return e.isLeaf&&e.path.toLowerCase().endsWith(`.html`)},iconFor(e){return e.isLeaf?Kt(e.path):B},onClick(){this.node.isLeaf?this.$emit(`select-file`,this.node.path):this.open=!this.open}}}),Yt=[`aria-label`,`title`],Xt={key:1,class:`node-chevron-spacer`},Zt={class:`node-label`},Qt={key:0,class:`children`};function $t(r,a,u,d,p,m){let y=l(`expand-down-icon`),b=l(`expand-right-icon`),x=l(`font-awesome-icon`),S=l(`file-node`,!0);return v(),s(`li`,null,[e(`div`,{class:n([`file-node`,{active:r.isActive}]),style:h({paddingLeft:r.indent+`px`}),onClick:a[1]||=(...e)=>r.onClick&&r.onClick(...e)},[r.node.isLeaf?(v(),s(`span`,Xt)):(v(),s(`button`,{key:0,class:`node-chevron`,"aria-label":r.$t(r.open?`common.button.collapse`:`common.button.expand`),title:r.$t(r.open?`common.button.collapse`:`common.button.expand`),onClick:a[0]||=t(e=>r.open=!r.open,[`stop`])},[r.open?(v(),f(y,{key:0,size:14,"aria-hidden":`true`,focusable:`false`})):(v(),f(b,{key:1,size:14,"aria-hidden":`true`,focusable:`false`}))],8,Yt)),r.isHtmlFile(r.node)?(v(),f(x,{key:2,icon:`fa-brands fa-html5`,class:`node-icon`})):(v(),f(_(r.iconFor(r.node)),{key:3,class:`node-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,Zt,i(r.node.label),1)],6),!r.node.isLeaf&&r.open?(v(),s(`ul`,Qt,[(v(!0),s(c,null,g(r.node.children||[],e=>(v(),f(S,{key:e.path,node:e,"selected-skill-id":r.selectedSkillId,"selected-path":r.selectedPath,skill:r.skill,depth:r.depth+1,onSelectFile:a[2]||=e=>r.$emit(`select-file`,e)},null,8,[`node`,`selected-skill-id`,`selected-path`,`skill`,`depth`]))),128))])):o(``,!0)])}var en=y({name:`SkillRow`,components:{ExpandDownIcon:P,ExpandRightIcon:F,SkillIcon:se,FileNode:K(Jt,[[`render`,$t],[`__scopeId`,`data-v-5240087b`]])},props:{skill:{type:Object,required:!0},selectedSkillId:{type:String,required:!0},selectedPath:{type:String,required:!0},expanded:{type:Boolean,default:!1}},emits:[`toggle-expand`,`select-skill`,`select-file`],computed:{tree(){return qt(this.skill.asset_bundle_files)},hasChildren(){return this.skill.asset_bundle_files.length>1},isSkillSelected(){return this.selectedSkillId===this.skill.id&&!this.selectedPath}},methods:{onSelectFile(e){this.$emit(`select-file`,this.skill,e)}}}),tn={class:`skill-row-wrapper`},nn=[`aria-label`,`title`],rn={key:1,class:`row-chevron-spacer`},an=[`title`],on={key:0,class:`file-list`};function sn(r,u,d,p,m,h){let _=l(`expand-down-icon`),y=l(`expand-right-icon`),b=l(`skill-icon`),x=l(`file-node`);return v(),s(`li`,tn,[e(`div`,{class:n([`skill-row`,{active:r.isSkillSelected}]),onClick:u[1]||=e=>r.$emit(`select-skill`,r.skill)},[r.hasChildren?(v(),s(`button`,{key:0,class:`row-chevron`,"aria-label":r.$t(r.expanded?`common.button.collapse`:`common.button.expand`),title:r.$t(r.expanded?`common.button.collapse`:`common.button.expand`),onClick:u[0]||=t(e=>r.$emit(`toggle-expand`,r.skill),[`stop`])},[r.expanded?(v(),f(_,{key:0,size:14,"aria-hidden":`true`,focusable:`false`})):(v(),f(y,{key:1,size:14,"aria-hidden":`true`,focusable:`false`}))],8,nn)):(v(),s(`span`,rn)),a(b,{class:`row-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,{class:`row-label`,title:r.skill.name},i(r.skill.slug),9,an)],2),r.expanded&&r.hasChildren?(v(),s(`ul`,on,[(v(!0),s(c,null,g(r.tree,e=>(v(),f(x,{key:e.path,node:e,"selected-skill-id":r.selectedSkillId,"selected-path":r.selectedPath,skill:r.skill,depth:1,onSelectFile:r.onSelectFile},null,8,[`node`,`selected-skill-id`,`selected-path`,`skill`,`onSelectFile`]))),128))])):o(``,!0)])}var cn=K(en,[[`render`,sn],[`__scopeId`,`data-v-231c2ce1`]]),ln=10*1024*1024,un=/\.(tar\.gz|tgz|tar|zip|md)$/i,dn=y({name:`UploadSkillDialog`,components:{ElDialog:U,ElButton:G,AddFileIcon:He,CloudUploadIcon:ze},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{file:null,isDragging:!1,uploading:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.uploading||this.$emit(`update:modelValue`,!1)},reset(){this.file=null,this.isDragging=!1;let e=this.$refs.fileInput;e&&(e.value=``)},humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},onPickFile(){this.uploading||this.$refs.fileInput?.click()},onFilePicked(e){let t=e.target.files?.[0]||null;this.acceptFile(t)},onDrop(e){this.isDragging=!1;let t=e.dataTransfer?.files?.[0]||null;this.acceptFile(t)},acceptFile(e){if(!e){this.file=null;return}if(e.size>ln){T.error(this.$t(`skill.message.fileTooLarge`));return}if(!un.test(e.name)){T.error(this.$t(`skill.message.fileTypeWrong`));return}this.file=e},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.file){this.uploading=!0;try{if(/\.md$/i.test(this.file.name)){let e=await this.file.text(),{data:t}=await Z.createMarkdown({content:e});T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,t.id)}else{let{data:e}=await Z.createTarball(this.file);T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id)}this.$emit(`update:modelValue`,!1)}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.uploading=!1}}}}}),fn={key:0,class:`dropzone-hint`},pn={key:1,class:`dropzone-file`},mn={class:`dropzone-file-name`},hn={class:`dropzone-file-size`},gn={class:`requirements`},_n={class:`requirements-title`};function vn(o,c,u,d,m,h){let g=l(`add-file-icon`),_=l(`el-button`),y=l(`cloud-upload-icon`),b=l(`el-dialog`);return v(),f(b,{"model-value":o.modelValue,title:o.$t(`skill.dialog.uploadTitle`),width:`min(520px, 94vw)`,"align-center":``,"close-on-click-modal":!o.uploading,"close-on-press-escape":!o.uploading,"show-close":!o.uploading,"onUpdate:modelValue":o.onVisibleChange,onClosed:o.reset},{footer:p(()=>[a(_,{disabled:o.uploading,onClick:o.onClose},{default:p(()=>[r(i(o.$t(`skill.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(_,{type:`primary`,loading:o.uploading,disabled:!o.file,onClick:o.onSubmit},{default:p(()=>[a(y,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(o.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`input`,{ref:`fileInput`,type:`file`,accept:`.tar.gz,.tgz,.tar,.zip,.md,application/gzip,application/zip,application/x-tar,text/markdown`,hidden:``,onChange:c[0]||=(...e)=>o.onFilePicked&&o.onFilePicked(...e)},null,544),e(`div`,{class:n([`dropzone`,{"is-dragging":o.isDragging,"has-file":!!o.file}]),onClick:c[1]||=(...e)=>o.onPickFile&&o.onPickFile(...e),onDragover:c[2]||=t(e=>o.isDragging=!0,[`prevent`]),onDragleave:c[3]||=t(e=>o.isDragging=!1,[`prevent`]),onDrop:c[4]||=t((...e)=>o.onDrop&&o.onDrop(...e),[`prevent`])},[a(g,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o.file?(v(),s(`p`,pn,[e(`span`,mn,i(o.file.name),1),e(`span`,hn,i(o.humanSize(o.file.size)),1)])):(v(),s(`p`,fn,i(o.$t(`skill.dialog.uploadDrop`)),1))],34),e(`div`,gn,[e(`p`,_n,i(o.$t(`skill.dialog.fileRequirements`)),1),e(`ul`,null,[e(`li`,null,i(o.$t(`skill.dialog.requirementMd`)),1),e(`li`,null,i(o.$t(`skill.dialog.requirementArchive`)),1)])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var yn=K(dn,[[`render`,vn],[`__scopeId`,`data-v-01ead824`]]),bn=y({name:`WriteSkillDialog`,components:{ElDialog:U,ElButton:G,ElInput:H,CloudUploadIcon:ze},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{content:``,saving:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.saving||this.$emit(`update:modelValue`,!1)},reset(){this.content=``},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.content.trim()){this.saving=!0;try{let{data:e}=await Z.createMarkdown({content:this.content});T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id),this.$emit(`update:modelValue`,!1)}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.saving=!1}}}}}),xn={class:`hint`};function Sn(t,n,o,s,c,u){let d=l(`el-input`),m=l(`el-button`),h=l(`cloud-upload-icon`),g=l(`el-dialog`);return v(),f(g,{"model-value":t.modelValue,title:t.$t(`skill.dialog.writeTitle`),width:`min(720px, 94vw)`,"align-center":``,"close-on-click-modal":!t.saving,"close-on-press-escape":!t.saving,"show-close":!t.saving,"onUpdate:modelValue":t.onVisibleChange,onClosed:t.reset},{footer:p(()=>[a(m,{disabled:t.saving,onClick:t.onClose},{default:p(()=>[r(i(t.$t(`skill.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(m,{type:`primary`,loading:t.saving,disabled:!t.content.trim(),onClick:t.onSubmit},{default:p(()=>[a(h,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`p`,xn,i(t.$t(`skill.dialog.writeHint`)),1),a(d,{modelValue:t.content,"onUpdate:modelValue":n[0]||=e=>t.content=e,type:`textarea`,rows:18,placeholder:t.$t(`skill.placeholder.content`),spellcheck:`false`,class:`editor`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Cn=y({name:`UserSkills`,components:{ConsolePageHeader:Le,ElInput:H,ElSwitch:A,ElTag:me,ElTooltip:w,ElDropdown:O,ElDropdownMenu:D,ElDropdownItem:E,AddIcon:V,AiCreateIcon:pe,DeleteIcon:ue,ExpandDownIcon:P,ExpandRightIcon:F,HelpIcon:L,MarketplaceIcon:ce,MoreIcon:ne,SearchIcon:le,SkillIcon:se,UploadIcon:fe,WriteIcon:ee,BrowseSkillsDialog:Tt,SkillFilePreview:Ut,SkillRow:cn,UploadSkillDialog:yn,WriteSkillDialog:K(bn,[[`render`,Sn],[`__scopeId`,`data-v-f39aab5d`]])},directives:{loading:J},data(){return{loading:!1,skills:[],togglingId:null,selectedSkillId:``,selectedPath:``,expandedSkillIds:[],personalOpen:!0,globalsOpen:!0,searchQuery:``,uploadVisible:!1,writeVisible:!1,browseVisible:!1}},computed:{personalSkills(){return this.skills.filter(e=>e.source!==`global`)},globalSkills(){return this.skills.filter(e=>e.source===`global`)},filteredPersonal(){return this.applyFilter(this.personalSkills)},filteredGlobal(){return this.applyFilter(this.globalSkills)},selectedSkill(){return this.skills.find(e=>e.id===this.selectedSkillId)||null}},mounted(){this.fetchSkills()},methods:{applyFilter(e){let t=this.searchQuery.trim().toLowerCase();return t?e.filter(e=>e.slug.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)):e},async fetchSkills(){this.loading=!0;try{let{data:e}=await Z.list();if(this.skills=e||[],!this.selectedSkillId&&this.skills.length){let e=this.personalSkills[0]||this.skills[0];this.selectedSkillId=e.id}else this.selectedSkillId&&!this.skills.find(e=>e.id===this.selectedSkillId)&&(this.selectedSkillId=``,this.selectedPath=``)}catch(e){console.error(e),T.error(this.$t(`skill.message.loadFailed`))}finally{this.loading=!1}},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},selectSkill(e){this.selectedSkillId=e.id,this.selectedPath=``},selectFile(e,t){this.selectedSkillId=e.id,this.selectedPath=t},toggleExpand(e){let t=this.expandedSkillIds.indexOf(e.id);t>=0?this.expandedSkillIds.splice(t,1):this.expandedSkillIds.push(e.id)},openUpload(){this.uploadVisible=!0},openWrite(){this.writeVisible=!0},onBrowse(){this.browseVisible=!0},async onCreated(e){await this.fetchSkills();let t=this.skills.find(t=>t.id===e);t&&(this.selectedSkillId=t.id,this.selectedPath=``,this.personalOpen=!0)},async onSaveContent(e,t){if(!this.selectedSkill){t.reject();return}try{let{data:n}=await Z.update(this.selectedSkill.id,{content:e});T.success(this.$t(`skill.message.updateSuccess`));let r=this.skills.findIndex(e=>e.id===n.id);r>=0&&this.skills.splice(r,1,n),t.resolve()}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)})),t.reject(e)}},async onDelete(e){try{await xe.confirm(this.$t(`skill.message.deleteConfirm`,{slug:e.slug}),this.$t(`skill.button.delete`),{type:`warning`})}catch{return}try{await Z.remove(e.id),T.success(this.$t(`skill.message.deleteSuccess`)),this.selectedSkillId===e.id&&(this.selectedSkillId=``,this.selectedPath=``),await this.fetchSkills()}catch(e){T.error(this.extractError(e))}},async onToggleSkill(e,t){this.togglingId=e.id;try{t?(await Z.enable(e.id),T.success(this.$t(`skill.message.enableSuccess`))):(await Z.disable(e.id),T.success(this.$t(`skill.message.disableSuccess`))),e.enabled=t}catch(e){T.error(this.extractError(e))}finally{this.togglingId=null}}}}),wn={class:`skills-page`},Tn={class:`skills-shell`},En={class:`left-pane`},Dn={class:`left-header`},On=[`aria-label`,`title`],kn={class:`submenu-trigger`},An={class:`badge-soon`},jn={class:`left-body`},Mn={class:`section`},Nn={key:0,class:`skill-list`},Pn={key:0,class:`empty-row`},Fn={key:0,class:`section`},In={key:0,class:`skill-list`},Ln={class:`right-pane`},Rn={class:`right-header`},zn={class:`right-title`},Bn={class:`right-actions`},Vn=[`aria-label`,`title`],Hn={class:`meta-card`},Un={class:`meta-grid`},Wn={class:`meta-cell`},Gn={class:`meta-label`},Kn={class:`meta-value`},qn={class:`meta-cell`},Jn={class:`meta-label`},Yn={class:`meta-value`},Xn={key:0,class:`meta-cell`},Zn={class:`meta-label`},Qn={class:`meta-tags`},$n={key:0,class:`meta-description`},er={class:`meta-description-label`},tr={class:`meta-label`},nr={class:`preview-card`},rr={key:2,class:`right-empty`};function ir(t,n,u,h,_,y){let b=l(`console-page-header`),x=l(`search-icon`),S=l(`el-input`),C=l(`add-icon`),w=l(`marketplace-icon`),T=l(`el-dropdown-item`),E=l(`expand-right-icon`),D=l(`ai-create-icon`),O=l(`write-icon`),k=l(`upload-icon`),A=l(`el-dropdown-menu`),j=l(`el-dropdown`),M=l(`expand-down-icon`),N=l(`skill-row`),P=l(`el-switch`),F=l(`more-icon`),I=l(`delete-icon`),L=l(`el-tag`),ee=l(`help-icon`),te=l(`el-tooltip`),R=l(`skill-file-preview`),ne=l(`skill-icon`),re=l(`upload-skill-dialog`),ie=l(`write-skill-dialog`),z=l(`browse-skills-dialog`),B=m(`loading`);return v(),s(`div`,wn,[a(b,{title:t.$t(`skill.title.skills`),subtitle:t.$t(`skill.message.pageDescription`)},null,8,[`title`,`subtitle`]),e(`div`,Tn,[e(`aside`,En,[e(`header`,Dn,[a(S,{modelValue:t.searchQuery,"onUpdate:modelValue":n[0]||=e=>t.searchQuery=e,class:`search-input`,size:`default`,clearable:``,placeholder:t.$t(`skill.placeholder.search`)},{prefix:p(()=>[a(x,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(j,{trigger:`click`,placement:`bottom-end`,"hide-on-click":!1},{dropdown:p(()=>[a(A,{class:`add-menu`},{default:p(()=>[a(T,{onClick:t.onBrowse},{default:p(()=>[a(w,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.browse`)),1)]),_:1},8,[`onClick`]),a(T,{divided:``},{default:p(()=>[a(j,{trigger:`hover`,placement:`left-start`,"hide-on-click":!0},{dropdown:p(()=>[a(A,{class:`add-menu`},{default:p(()=>[a(T,{disabled:``},{default:p(()=>[a(D,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.createWithClaude`))+` `,1),e(`span`,An,i(t.$t(`skill.menu.soon`)),1)]),_:1}),a(T,{onClick:t.openWrite},{default:p(()=>[a(O,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.write`)),1)]),_:1},8,[`onClick`]),a(T,{onClick:t.openUpload},{default:p(()=>[a(k,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.upload`)),1)]),_:1},8,[`onClick`])]),_:1})]),default:p(()=>[e(`span`,kn,[a(C,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.create`))+` `,1),a(E,{class:`submenu-arrow`,size:14,"aria-hidden":`true`,focusable:`false`})])]),_:1})]),_:1})]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`add-button`,"aria-label":t.$t(`skill.button.add`),title:t.$t(`skill.button.add`)},[a(C,{size:16,"aria-hidden":`true`,focusable:`false`})],8,On)]),_:1})]),d((v(),s(`div`,jn,[e(`section`,Mn,[e(`button`,{class:`section-header`,onClick:n[1]||=e=>t.personalOpen=!t.personalOpen},[t.personalOpen?(v(),f(M,{key:0,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})):(v(),f(E,{key:1,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(t.$t(`skill.section.personal`)),1)]),t.personalOpen?(v(),s(`ul`,Nn,[!t.loading&&t.filteredPersonal.length===0?(v(),s(`li`,Pn,i(t.searchQuery?t.$t(`skill.empty.search`):t.$t(`skill.message.noSkills`)),1)):o(``,!0),(v(!0),s(c,null,g(t.filteredPersonal,e=>(v(),f(N,{key:e.id,skill:e,"selected-skill-id":t.selectedSkillId,"selected-path":t.selectedPath,expanded:t.expandedSkillIds.includes(e.id),onToggleExpand:t.toggleExpand,onSelectSkill:t.selectSkill,onSelectFile:t.selectFile},null,8,[`skill`,`selected-skill-id`,`selected-path`,`expanded`,`onToggleExpand`,`onSelectSkill`,`onSelectFile`]))),128))])):o(``,!0)]),t.globalSkills.length>0?(v(),s(`section`,Fn,[e(`button`,{class:`section-header`,onClick:n[2]||=e=>t.globalsOpen=!t.globalsOpen},[t.globalsOpen?(v(),f(M,{key:0,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})):(v(),f(E,{key:1,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(t.$t(`skill.section.platform`)),1)]),t.globalsOpen?(v(),s(`ul`,In,[(v(!0),s(c,null,g(t.filteredGlobal,e=>(v(),f(N,{key:e.id,skill:e,"selected-skill-id":t.selectedSkillId,"selected-path":t.selectedPath,expanded:t.expandedSkillIds.includes(e.id),onToggleExpand:t.toggleExpand,onSelectSkill:t.selectSkill,onSelectFile:t.selectFile},null,8,[`skill`,`selected-skill-id`,`selected-path`,`expanded`,`onToggleExpand`,`onSelectSkill`,`onSelectFile`]))),128))])):o(``,!0)])):o(``,!0)])),[[B,t.loading]])]),e(`main`,Ln,[t.selectedSkill&&!t.selectedPath?(v(),s(c,{key:0},[e(`header`,Rn,[e(`h3`,zn,i(t.selectedSkill.slug),1),e(`div`,Bn,[a(P,{"model-value":t.selectedSkill.enabled,size:`default`,loading:t.togglingId===t.selectedSkill.id,onChange:n[3]||=e=>t.onToggleSkill(t.selectedSkill,!!e)},null,8,[`model-value`,`loading`]),t.selectedSkill.source===`global`?o(``,!0):(v(),f(j,{key:0,trigger:`click`,placement:`bottom-end`},{dropdown:p(()=>[a(A,null,{default:p(()=>[a(T,{onClick:n[4]||=e=>t.onDelete(t.selectedSkill)},{default:p(()=>[a(I,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.delete`)),1)]),_:1})]),_:1})]),default:p(()=>[e(`button`,{class:`icon-btn`,"aria-label":t.$t(`skill.button.more`),title:t.$t(`skill.button.more`)},[a(F,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Vn)]),_:1}))])]),e(`div`,Hn,[e(`div`,Un,[e(`div`,Wn,[e(`span`,Gn,i(t.$t(`skill.meta.addedBy`)),1),e(`span`,Kn,i(t.selectedSkill.source===`global`?t.$t(`skill.meta.platform`):t.$t(`skill.meta.you`)),1)]),e(`div`,qn,[e(`span`,Jn,i(t.$t(`skill.meta.lastUpdated`)),1),e(`span`,Yn,i(t.$dayjs.format(t.selectedSkill.updated_at)),1)]),t.selectedSkill.required_connections.length?(v(),s(`div`,Xn,[e(`span`,Zn,i(t.$t(`skill.field.requiredConnections`)),1),e(`div`,Qn,[(v(!0),s(c,null,g(t.selectedSkill.required_connections,e=>(v(),f(L,{key:e,size:`small`,type:`info`},{default:p(()=>[r(i(e),1)]),_:2},1024))),128))])])):o(``,!0)]),t.selectedSkill.description?(v(),s(`div`,$n,[e(`div`,er,[e(`span`,tr,i(t.$t(`skill.field.description`)),1),t.selectedSkill.when_to_use?(v(),f(te,{key:0,content:t.selectedSkill.when_to_use,placement:`top`},{default:p(()=>[a(ee,{class:`meta-info-icon`,size:12,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])):o(``,!0)]),e(`p`,null,i(t.selectedSkill.description),1)])):o(``,!0)]),e(`div`,nr,[(v(),f(R,{key:`${t.selectedSkill.id}:SKILL.md`,"skill-id":t.selectedSkill.id,path:`SKILL.md`,editable:t.selectedSkill.source===`upload`,onSave:t.onSaveContent},null,8,[`skill-id`,`editable`,`onSave`]))])],64)):t.selectedSkill&&t.selectedPath?(v(),f(R,{key:`${t.selectedSkill.id}:${t.selectedPath}`,"skill-id":t.selectedSkill.id,path:t.selectedPath,editable:!1},null,8,[`skill-id`,`path`])):(v(),s(`div`,rr,[a(ne,{class:`right-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,i(t.$t(`skill.preview.selectSkill`)),1)]))])]),a(re,{modelValue:t.uploadVisible,"onUpdate:modelValue":n[5]||=e=>t.uploadVisible=e,onCreated:t.onCreated},null,8,[`modelValue`,`onCreated`]),a(ie,{modelValue:t.writeVisible,"onUpdate:modelValue":n[6]||=e=>t.writeVisible=e,onCreated:t.onCreated},null,8,[`modelValue`,`onCreated`]),a(z,{modelValue:t.browseVisible,"onUpdate:modelValue":n[7]||=e=>t.browseVisible=e,onInstalled:t.onCreated},null,8,[`modelValue`,`onInstalled`])])}var ar=K(Cn,[[`render`,ir],[`__scopeId`,`data-v-e3209347`]]);export{ar as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,b as u,ht as d,j as f,mt as p,ot as m,qt as h,rt as g,st as _,tt as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select-3zeZnDWr.js";import{n as S,t as C}from"./tabs-CPEEm64y.js";import{t as w}from"./tooltip-CPF0ns2F.js";import{v as T}from"./models-OSW29aqo.js";import{n as E,r as D,t as O}from"./dropdown-cV8wOdWz.js";import{t as k}from"./pagination-DXXXQ5cp.js";import{t as A}from"./switch-B8KB4C7k.js";import{t as j}from"./arrow-down-B_frOIPC.js";import{t as M}from"./arrow-left-CJ0n8LA_.js";import{t as N}from"./book-open-BJrmFN4r.js";import{t as P}from"./chevron-down-C9iuUElc.js";import{t as F}from"./chevron-right-CF0ttnXF.js";import{t as I}from"./circle-check-CI_AaSn_.js";import{t as L}from"./circle-question-mark-UZBen5vb.js";import{t as ee}from"./clipboard-list-DGrwWttH.js";import{t as te}from"./code-C_2s4NTL.js";import{t as R}from"./copy-C20Z1lQD.js";import{t as ne}from"./ellipsis-BU0uayKw.js";import{t as re}from"./eye-CzKIbV3W.js";import{t as ie}from"./file-text-BLdKFglG.js";import{t as z}from"./file-B_liOBtz.js";import{t as B}from"./folder-NsgWKb6i.js";import{t as ae}from"./image-D9EEgt17.js";import{t as oe}from"./lock-DAPZQEW-.js";import{t as V}from"./plus-B_IO_O6G.js";import{n as se,t as ce}from"./store-Jc8QTABa.js";import{t as le}from"./search-DxOwIk71.js";import{t as ue}from"./trash-2-CO44aulg.js";import{t as de}from"./triangle-alert-QijY2HDu.js";import{t as fe}from"./upload-B9LBkWpk.js";import{t as pe}from"./wand-sparkles-BxwmnK2z.js";import{Hi as H,Mi as me,O as U,Pi as W,Ti as G,Tr as K,ai as he,bi as ge,di as _e,fi as ve,gi as ye,si as be,ui as xe,xi as q,yi as J}from"./index-CD2-hqNW.js";import{a as Se,c as Ce,d as we,f as Te,i as Ee,l as De,m as Y,n as Oe,o as ke,p as Ae,r as je,s as Me,t as Ne,u as Pe}from"./vendor-highlight-BHrfT4-E.js";import{t as Fe}from"./index.es-Ds-FIqsY.js";import{t as Ie}from"./VueMarkdown-CiiRjbWs.js";import{t as Le}from"./PageHeader-RatwVDYh.js";var Re=J(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),ze=J(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),Be=J(`file-code-corner`,[[`path`,{d:`M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35`,key:`1wthlu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m5 16-3 3 3 3`,key:`331omg`}],[`path`,{d:`m9 22 3-3-3-3`,key:`lsp7cz`}]]),Ve=J(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),He=J(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),X=()=>({baseURL:`${he()}/api/v1`}),Z=new class{key=`skills/installed`;async list(){return K.get(`/${this.key}/`,X())}async get(e){return K.get(`/${this.key}/${e}/`,X())}async createMarkdown(e){return K.post(`/${this.key}/`,e,X())}async createTarball(e){let t=new FormData;return t.append(`tarball`,e),K.post(`/${this.key}/`,t,{...X(),headers:{"Content-Type":`multipart/form-data`}})}async update(e,t){return K.patch(`/${this.key}/${e}/`,t,X())}async remove(e){return K.delete(`/${this.key}/${e}/`,X())}async enable(e){return K.post(`/${this.key}/${e}/enable/`,void 0,X())}async disable(e){return K.post(`/${this.key}/${e}/disable/`,void 0,X())}async fetchFile(e,t){let n=await K.get(`/${this.key}/${e}/files/`,{...X(),params:{path:t},responseType:`arraybuffer`}),r=n.headers[`content-type`]||`application/octet-stream`;return{blob:new Blob([n.data],{type:r}),contentType:r}}},Q=new class{key=`skills`;async list(e={}){return K.get(`/${this.key}/`,{...X(),params:e})}async get(e){return K.get(`/${this.key}/${e}/`,X())}async categories(){return K.get(`/${this.key}/categories/`,X())}async install(e,t={}){return K.post(`/${this.key}/${e}/install/`,t,X())}};function Ue(){let e=new Set;_e()&&e.add(`desktop`),ve()&&e.add(`ios`),xe()&&e.add(`android`),ye()&&e.add(`web`);let t=be();if(t===`mac`)e.add(`mac`);else if(t===`windows`)e.add(`windows`);else if(typeof navigator<`u`){let t=navigator.userAgent||``,n=navigator.userAgentData?.platform,r=/macintosh/i.test(t)&&(navigator.maxTouchPoints||0)>1;!ve()&&!r&&(n===`macOS`||/mac os x|macintosh/i.test(t))&&e.add(`mac`),(n===`Windows`||/windows nt/i.test(t))&&e.add(`windows`)}return e}var We=new Set([`mac`,`windows`,`desktop`,`web`,`ios`,`android`]);function Ge(e){let t=e.filter(e=>We.has(e));if(!t.length)return!0;let n=Ue();return t.some(e=>n.has(e))}Y.registerLanguage(`bash`,Ae),Y.registerLanguage(`json`,Te),Y.registerLanguage(`markdown`,we),Y.registerLanguage(`python`,Pe),Y.registerLanguage(`shell`,De),Y.registerLanguage(`yaml`,Ce),Y.registerAliases([`yml`],{languageName:`yaml`}),Y.registerAliases([`py`],{languageName:`python`}),Y.registerAliases([`sh`,`zsh`],{languageName:`bash`});var Ke=12,qe=y({name:`BrowseSkillsDialog`,components:{VueMarkdown:Ie,ElDialog:G,ElInput:H,ElButton:W,ElPagination:k,ElSelect:b,ElOption:x,FontAwesomeIcon:Fe,AddIcon:V,BackIcon:M,DownIcon:j,InstallIcon:Re,LockIcon:oe,SearchIcon:le,SuccessIcon:I},directives:{loading:q},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{loading:!1,installing:!1,items:[],total:0,currentPage:1,searchQuery:``,namespaceFilter:``,sortBy:`popular`,selectedItem:null,searchTimer:null,knownNamespaces:[],publisherByNamespace:{}}},computed:{pageSize(){return Ke},namespaceOptions(){let e=new Set(this.knownNamespaces);for(let t of this.items)e.add(t.namespace);return Array.from(e).sort().map(e=>({value:e,label:this.publisherForNamespace(e)}))},detailBody(){return this.selectedItem?this.selectedItem.content.replace(/^---\n[\s\S]*?\n---\n?/,``):``}},methods:{onOpen(){this.selectedItem=null,this.searchQuery=``,this.namespaceFilter=``,this.sortBy=`popular`,this.currentPage=1,this.knownNamespaces=[],this.publisherByNamespace={},this.loadFacets(),this.reload()},openDetail(e){this.selectedItem=e},async loadFacets(){try{let{data:e}=await Q.categories(),t=new Set;for(let n of e.namespaces)t.add(n.namespace);this.knownNamespaces=Array.from(t).sort()}catch(e){console.warn(`failed to load skill catalog facets`,e)}},reloadFromFirstPage(){this.currentPage=1,this.reload()},onPageChange(e){this.currentPage=e,this.reload(),this.$nextTick(()=>{let e=this.$el.querySelector(`.directory-grid-wrapper`);e&&(e.scrollTop=0)})},onSearchInput(){this.searchTimer!==null&&window.clearTimeout(this.searchTimer),this.searchTimer=window.setTimeout(()=>{this.searchTimer=null,this.reloadFromFirstPage()},250)},async reload(){this.loading=!0;try{let{data:e}=await Q.list({q:this.searchQuery.trim()||void 0,namespace:this.namespaceFilter||void 0,sort:this.sortBy,limit:this.pageSize,offset:(this.currentPage-1)*this.pageSize});this.items=e.items,this.total=e.total;for(let t of e.items)t.publisher&&(this.publisherByNamespace[t.namespace]=t.publisher)}catch(e){console.error(e),T.error(this.$t(`skill.directory.loadFailed`))}finally{this.loading=!1}},async onInstall(e){if(!this.installing&&!e.installed){if(!this.canInstallOnSurface(e)){T.warning(this.$t(`skill.directory.surfaceBlocked`,{platforms:this.surfaceLabels(e)}));return}this.installing=!0;try{let{data:t}=await Q.install(e.id);T.success(this.$t(`skill.directory.installSuccess`,{name:e.slug})),this.$emit(`installed`,t.id),e.installed=!0,e.install_count+=1}catch(t){let n=this.extractError(t);n.includes(`already exists`)?(e.installed=!0,T.warning(this.$t(`skill.directory.alreadyInstalled`,{name:e.slug}))):T.error(this.$t(`skill.directory.installFailed`,{detail:n}))}finally{this.installing=!1}}},extractError(e){return e?.response?.data?.detail||String(e)||`unknown error`},formatCount(e){return e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)},publisherForNamespace(e){if(this.publisherByNamespace[e])return this.publisherByNamespace[e];let t=this.items.find(t=>t.namespace===e);return t?t.publisher:e},restrictedSurfaces(e){let t=e.frontmatter?.surfaces;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim().toLowerCase()):[]},surfaceLabel(e){let t=`skill.directory.surface.${e}`,n=this.$t(t);return n===t?e:n},surfaceLabels(e){return this.restrictedSurfaces(e).map(e=>this.surfaceLabel(e)).join(` / `)},canInstallOnSurface(e){return Ge(this.restrictedSurfaces(e))}}}),Je={class:`directory`},Ye={class:`directory-main`},Xe={class:`directory-header`},Ze={class:`directory-controls`},Qe={class:`directory-grid-wrapper`},$e={key:0,class:`directory-empty`},et={key:1,class:`directory-grid`},tt=[`onClick`],nt={class:`directory-card-head`},rt={class:`directory-card-title`},it=[`title`],at=[`title`],ot=[`aria-label`,`title`,`onClick`],st=[`title`],ct={class:`directory-card-meta`},lt={class:`directory-card-publisher`},ut={key:0,class:`directory-card-count`},dt=[`title`],ft={class:`directory-card-desc`},pt={key:0,class:`directory-footer`},mt={class:`directory-detail-head`},ht={class:`directory-detail-actions`},gt=[`href`],_t={class:`directory-detail-body`},vt={class:`directory-detail-title`},yt={class:`directory-detail-meta`},bt={key:0},xt={key:1},St=[`title`],Ct={class:`directory-detail-desc`};function wt(u,h,_,y,b,x){let S=l(`search-icon`),C=l(`el-input`),w=l(`el-option`),T=l(`el-select`),E=l(`success-icon`),D=l(`lock-icon`),O=l(`add-icon`),k=l(`down-icon`),A=l(`el-pagination`),j=l(`back-icon`),M=l(`font-awesome-icon`),N=l(`el-button`),P=l(`install-icon`),F=l(`vue-markdown`),I=l(`el-dialog`),L=m(`loading`);return v(),f(I,{"model-value":u.modelValue,title:u.$t(`skill.dialog.directoryTitle`),width:`min(960px, 94vw)`,"align-center":``,class:`directory-dialog`,"close-on-click-modal":!u.installing,"show-close":!u.installing,"onUpdate:modelValue":h[5]||=e=>u.$emit(`update:modelValue`,e),onOpen:u.onOpen},{default:p(()=>[e(`div`,Je,[e(`main`,Ye,[u.selectedItem?(v(),s(c,{key:1},[e(`header`,mt,[e(`button`,{class:`directory-back-btn`,onClick:h[3]||=e=>u.selectedItem=null},[a(j,{size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.back`)),1)]),e(`div`,ht,[u.selectedItem.source_url?(v(),s(`a`,{key:0,href:u.selectedItem.source_url,target:`_blank`,class:`directory-link`},[a(M,{icon:`fa-brands fa-github`}),r(` `+i(u.$t(`skill.directory.viewSource`)),1)],8,gt)):o(``,!0),u.selectedItem.installed?(v(),f(N,{key:1,disabled:``,type:`success`,plain:``},{default:p(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.installed`)),1)]),_:1})):u.selectedItem.installable&&!u.canInstallOnSurface(u.selectedItem)?(v(),f(N,{key:2,disabled:``,title:u.$t(`skill.directory.surfaceBlocked`,{platforms:u.surfaceLabels(u.selectedItem)})},{default:p(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.surfaceUnavailable`)),1)]),_:1},8,[`title`])):u.selectedItem.installable?(v(),f(N,{key:3,type:`primary`,loading:u.installing,onClick:h[4]||=e=>u.onInstall(u.selectedItem)},{default:p(()=>[a(P,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`skill.directory.install`)),1)]),_:1},8,[`loading`])):(v(),f(N,{key:4,disabled:``,title:u.selectedItem.license},{default:p(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.selectedItem.license||u.$t(`skill.directory.notInstallable`)),1)]),_:1},8,[`title`]))])]),e(`div`,_t,[e(`h2`,vt,`/`+i(u.selectedItem.slug),1),e(`div`,yt,[e(`span`,null,[e(`strong`,null,i(u.$t(`skill.meta.addedBy`))+`:`,1),r(` `+i(u.selectedItem.publisher),1)]),u.selectedItem.license?(v(),s(`span`,bt,[e(`strong`,null,i(u.$t(`skill.directory.license`))+`:`,1),r(` `+i(u.selectedItem.license),1)])):o(``,!0),u.selectedItem.version?(v(),s(`span`,xt,`v`+i(u.selectedItem.version),1)):o(``,!0),u.surfaceLabels(u.selectedItem)?(v(),s(`span`,{key:2,class:`directory-detail-surface`,title:u.$t(`skill.directory.surfaceHint`)},i(u.$t(`skill.directory.surfaceOnly`,{platforms:u.surfaceLabels(u.selectedItem)})),9,St)):o(``,!0)]),e(`p`,Ct,i(u.selectedItem.description),1),a(F,{class:`directory-detail-content`,source:u.detailBody,sanitize:``},null,8,[`source`])])],64)):(v(),s(c,{key:0},[e(`header`,Xe,[a(C,{modelValue:u.searchQuery,"onUpdate:modelValue":h[0]||=e=>u.searchQuery=e,class:`directory-search`,size:`default`,clearable:``,placeholder:u.$t(`skill.directory.searchPlaceholder`),onInput:u.onSearchInput},{prefix:p(()=>[a(S,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`,`onInput`]),e(`div`,Ze,[a(T,{modelValue:u.namespaceFilter,"onUpdate:modelValue":h[1]||=e=>u.namespaceFilter=e,class:`directory-select`,placeholder:u.$t(`skill.directory.allPublishers`),clearable:``,size:`default`,onChange:u.reloadFromFirstPage},{default:p(()=>[(v(!0),s(c,null,g(u.namespaceOptions,e=>(v(),f(w,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),a(T,{modelValue:u.sortBy,"onUpdate:modelValue":h[2]||=e=>u.sortBy=e,class:`directory-select directory-select-sm`,size:`default`,onChange:u.reloadFromFirstPage},{default:p(()=>[a(w,{label:u.$t(`skill.directory.sort.popular`),value:`popular`},null,8,[`label`]),a(w,{label:u.$t(`skill.directory.sort.recent`),value:`recent`},null,8,[`label`]),a(w,{label:u.$t(`skill.directory.sort.name`),value:`name`},null,8,[`label`])]),_:1},8,[`modelValue`,`onChange`])])]),d((v(),s(`div`,Qe,[!u.loading&&u.total===0?(v(),s(`p`,$e,i(u.$t(`skill.directory.empty`)),1)):(v(),s(`div`,et,[(v(!0),s(c,null,g(u.items,c=>(v(),s(`article`,{key:c.id,class:n([`directory-card`,{"is-installed":c.installed}]),onClick:e=>u.openDetail(c)},[e(`div`,nt,[e(`span`,rt,`/`+i(c.slug),1),c.installed?(v(),s(`span`,{key:0,class:`directory-card-action is-installed`,title:u.$t(`skill.directory.installed`)},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,it)):c.installable&&!u.canInstallOnSurface(c)?(v(),s(`span`,{key:1,class:`directory-card-locked`,title:u.$t(`skill.directory.surfaceBlocked`,{platforms:u.surfaceLabels(c)})},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,at)):c.installable?(v(),s(`button`,{key:2,class:`directory-card-action`,"aria-label":u.$t(`skill.directory.install`),title:u.$t(`skill.directory.install`),onClick:t(e=>u.onInstall(c),[`stop`])},[a(O,{size:16,"aria-hidden":`true`,focusable:`false`})],8,ot)):(v(),s(`span`,{key:3,class:`directory-card-locked`,title:c.license},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,st))]),e(`div`,ct,[e(`span`,lt,i(c.publisher),1),c.install_count>0?(v(),s(`span`,ut,[a(k,{size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.formatCount(c.install_count)),1)])):o(``,!0),u.surfaceLabels(c)?(v(),s(`span`,{key:1,class:`directory-card-surface`,title:u.$t(`skill.directory.surfaceHint`)},i(u.surfaceLabels(c)),9,dt)):o(``,!0)]),e(`p`,ft,i(c.description),1)],10,tt))),128))]))])),[[L,u.loading]]),u.total>u.pageSize?(v(),s(`footer`,pt,[a(A,{"current-page":u.currentPage,"page-size":u.pageSize,total:u.total,"pager-count":5,background:``,layout:`prev, pager, next, total`,onCurrentChange:u.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onCurrentChange`])])):o(``,!0)],64))])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`show-close`,`onOpen`])}var Tt=U(qe,[[`render`,wt],[`__scopeId`,`data-v-a9be2dc3`]]);Y.registerLanguage(`bash`,Ae),Y.registerLanguage(`css`,Me),Y.registerLanguage(`go`,ke),Y.registerLanguage(`javascript`,Se),Y.registerLanguage(`json`,Te),Y.registerLanguage(`markdown`,we),Y.registerLanguage(`python`,Pe),Y.registerLanguage(`rust`,Ee),Y.registerLanguage(`shell`,De),Y.registerLanguage(`sql`,je),Y.registerLanguage(`typescript`,Oe),Y.registerLanguage(`xml`,Ne),Y.registerLanguage(`html`,Ne),Y.registerLanguage(`yaml`,Ce),Y.registerAliases([`yml`],{languageName:`yaml`}),Y.registerAliases([`ts`,`tsx`],{languageName:`typescript`}),Y.registerAliases([`js`,`jsx`],{languageName:`javascript`}),Y.registerAliases([`py`],{languageName:`python`}),Y.registerAliases([`rs`],{languageName:`rust`}),Y.registerAliases([`sh`,`zsh`],{languageName:`bash`});var $=1e6;function Et(e,t){let n=(e.split(`.`).pop()||``).toLowerCase();return n===`md`||t.startsWith(`text/markdown`)?`markdown`:n===`html`||n===`htm`||t.startsWith(`text/html`)?`html`:t.startsWith(`image/`)||[`png`,`jpg`,`jpeg`,`gif`,`webp`,`svg`].includes(n)?`image`:t.startsWith(`text/`)||[`json`,`application/json`].includes(t.split(`;`)[0])?n?`code`:`text`:`binary`}function Dt(e){let t=(e.split(`.`).pop()||``).toLowerCase();return Y.getLanguage(t)?t:`plain`}var Ot=y({name:`SkillFilePreview`,components:{ElButton:W,ElTooltip:w,ElTabs:S,ElTabPane:C,CodeIcon:te,CopyIcon:R,FileIcon:z,SaveIcon:Ve,ViewIcon:re,WarningIcon:de,VueMarkdown:Ie},directives:{loading:q},props:{skillId:{type:String,required:!0},path:{type:String,required:!0},editable:{type:Boolean,default:!1}},emits:[`save`],data(){return{MAX_PREVIEW_BYTES:$,loading:!1,error:``,contentType:``,size:0,textContent:``,imageUrl:``,truncated:!1,viewMode:`rendered`,dirty:!1,saving:!1}},computed:{kind(){return this.path?Et(this.path,this.contentType):`text`},canRender(){return this.kind===`markdown`||this.kind===`html`},hljsLang(){return`language-${Dt(this.path)}`},truncatedText(){return this.textContent}},watch:{path:{handler(){this.fetch()},immediate:!0}},beforeUnmount(){this.imageUrl&&URL.revokeObjectURL(this.imageUrl)},methods:{humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},async fetch(){if(this.path){this.loading=!0,this.error=``,this.textContent=``,this.truncated=!1,this.dirty=!1,this.imageUrl&&=(URL.revokeObjectURL(this.imageUrl),``);try{let{blob:e,contentType:t}=await Z.fetchFile(this.skillId,this.path);this.contentType=t,this.size=e.size;let n=Et(this.path,t);if(n===`image`)this.imageUrl=URL.createObjectURL(e);else if(n!==`binary`){let t=await e.text();t.length>$&&(t=t.slice(0,$),this.truncated=!0),this.textContent=t,this.viewMode=n===`markdown`||n===`html`?`rendered`:`source`}}catch(e){let t=e,n=t?.response?.status,r=t?.response?.data?.detail||String(e);this.error=n?`(${n}) ${r}`:r}finally{this.loading=!1,this.$nextTick(()=>this.applyHighlight())}}},applyHighlight(){let e=this.$refs.codeEl;e&&this.kind===`code`&&this.viewMode!==`rendered`&&(delete e.dataset.highlighted,Y.highlightElement(e))},async onCopy(){if(this.textContent)try{await navigator.clipboard.writeText(this.textContent),T.success(this.$t(`skill.preview.copied`))}catch{T.error(this.$t(`skill.preview.copyFailed`))}},async onSave(){this.saving=!0;try{await new Promise((e,t)=>{this.$emit(`save`,this.textContent,{resolve:e,reject:t})}),this.dirty=!1}catch{}finally{this.saving=!1}}}}),kt={class:`preview-root`},At={class:`toolbar`},jt={class:`path-display`},Mt={key:0,class:`size-display`},Nt={class:`body`},Pt={key:0,class:`error`},Ft=[`srcdoc`],It={key:3,class:`image-pane`},Lt=[`src`,`alt`],Rt={key:4,class:`binary`},zt=[`placeholder`],Bt={key:6,class:`source-pane`},Vt={key:7,class:`truncated-warning`};function Ht(t,c,h,g,_,y){let b=l(`save-icon`),x=l(`el-button`),S=l(`copy-icon`),C=l(`el-tooltip`),w=l(`view-icon`),T=l(`el-tab-pane`),E=l(`code-icon`),D=l(`el-tabs`),O=l(`warning-icon`),k=l(`vue-markdown`),A=l(`file-icon`),j=m(`loading`);return d((v(),s(`div`,kt,[e(`div`,At,[e(`span`,jt,i(t.path||`—`),1),t.size?(v(),s(`span`,Mt,i(t.humanSize(t.size)),1)):o(``,!0),c[3]||=e(`span`,{class:`toolbar-spacer`},null,-1),t.editable?(v(),f(x,{key:1,type:`primary`,size:`small`,disabled:!t.dirty||t.saving,loading:t.saving,onClick:t.onSave},{default:p(()=>[a(b,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.save`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):o(``,!0),a(C,{content:t.$t(`skill.preview.copy`),placement:`bottom`},{default:p(()=>[a(x,{size:`small`,circle:``,disabled:!t.textContent,"aria-label":t.$t(`skill.preview.copy`),title:t.$t(`skill.preview.copy`),onClick:t.onCopy},{default:p(()=>[a(S,{size:16,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`disabled`,`aria-label`,`title`,`onClick`])]),_:1},8,[`content`])]),t.canRender?(v(),f(D,{key:0,modelValue:t.viewMode,"onUpdate:modelValue":c[0]||=e=>t.viewMode=e,class:`view-tabs`},{default:p(()=>[a(T,{name:`rendered`},{label:p(()=>[a(w,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.preview.viewRendered`)),1)]),_:1}),a(T,{name:`source`},{label:p(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.preview.viewSource`)),1)]),_:1})]),_:1},8,[`modelValue`])):o(``,!0),e(`div`,Nt,[t.error?(v(),s(`div`,Pt,[a(O,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.error),1)])):t.kind===`markdown`&&t.viewMode===`rendered`?(v(),f(k,{key:1,class:`markdown-rendered`,source:t.textContent,sanitize:``},null,8,[`source`])):t.kind===`html`&&t.viewMode===`rendered`?(v(),s(`iframe`,{key:2,ref:`htmlFrame`,class:`html-frame`,sandbox:``,srcdoc:t.textContent},null,8,Ft)):t.kind===`image`?(v(),s(`div`,It,[e(`img`,{src:t.imageUrl,alt:t.path,class:`image-content`},null,8,Lt)])):t.kind===`binary`?(v(),s(`div`,Rt,[a(A,{class:`binary-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,i(t.$t(`skill.preview.binary`,{type:t.contentType})),1)])):t.editable?d((v(),s(`textarea`,{key:5,"onUpdate:modelValue":c[1]||=e=>t.textContent=e,class:`source-editor`,spellcheck:`false`,placeholder:t.$t(`skill.placeholder.content`),onInput:c[2]||=e=>t.dirty=!0},null,40,zt)),[[u,t.textContent]]):(v(),s(`pre`,Bt,[e(`code`,{ref:`codeEl`,class:n(t.hljsLang)},i(t.truncatedText),3)])),t.truncated?(v(),s(`p`,Vt,i(t.$t(`skill.preview.truncated`,{size:t.humanSize(t.MAX_PREVIEW_BYTES)})),1)):o(``,!0)])])),[[j,t.loading]])}var Ut=U(Ot,[[`render`,Ht],[`__scopeId`,`data-v-ec0a447e`]]),Wt=new Set([`py`,`ts`,`tsx`,`js`,`jsx`,`json`,`yaml`,`yml`,`sh`,`bash`,`zsh`,`css`,`html`,`sql`,`go`,`rs`,`rb`,`java`,`cpp`,`c`,`h`,`toml`]),Gt=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`svg`]);function Kt(e){let t=e.split(`/`).pop()||e,n=(t.split(`.`).pop()||``).toLowerCase();return t===`SKILL.md`?N:n===`md`?ie:Gt.has(n)?ae:Wt.has(n)?Be:z}function qt(e){let t=new Map;t.set(``,new Map);let n=(e,n)=>{let r=t.get(e);r||(r=new Map,t.set(e,r));let i=e?`${e}/${n}`:n,a=r.get(n);return a||(a={label:n,path:i,isLeaf:!1,children:[]},r.set(n,a),t.set(i,new Map)),a};for(let r of e){let e=r.split(`/`).filter(Boolean);if(e.length===0)continue;let i=e[e.length-1],a=e.slice(0,-1),o=``;for(let e of a)o=n(o,e).path;let s={label:i,path:r,isLeaf:!0},c=t.get(o);c||(c=new Map,t.set(o,c)),c.set(i,s)}let r=e=>{let n=t.get(e);if(!n)return[];let i=Array.from(n.values());for(let e of i)e.isLeaf||(e.children=r(e.path));return i.sort((e,t)=>e.path===`SKILL.md`?-1:t.path===`SKILL.md`?1:e.isLeaf===t.isLeaf?e.label.localeCompare(t.label):e.isLeaf?1:-1)};return r(``)}var Jt=y({name:`FileNode`,components:{ExpandDownIcon:P,ExpandRightIcon:F,FontAwesomeIcon:Fe},props:{node:{type:Object,required:!0},selectedSkillId:{type:String,required:!0},selectedPath:{type:String,required:!0},skill:{type:Object,required:!0},depth:{type:Number,default:1}},emits:[`select-file`],data(){return{open:!0}},computed:{indent(){return 8+this.depth*16},isActive(){return this.node.isLeaf&&this.selectedSkillId===this.skill.id&&this.selectedPath===this.node.path}},methods:{isHtmlFile(e){return e.isLeaf&&e.path.toLowerCase().endsWith(`.html`)},iconFor(e){return e.isLeaf?Kt(e.path):B},onClick(){this.node.isLeaf?this.$emit(`select-file`,this.node.path):this.open=!this.open}}}),Yt=[`aria-label`,`title`],Xt={key:1,class:`node-chevron-spacer`},Zt={class:`node-label`},Qt={key:0,class:`children`};function $t(r,a,u,d,p,m){let y=l(`expand-down-icon`),b=l(`expand-right-icon`),x=l(`font-awesome-icon`),S=l(`file-node`,!0);return v(),s(`li`,null,[e(`div`,{class:n([`file-node`,{active:r.isActive}]),style:h({paddingLeft:r.indent+`px`}),onClick:a[1]||=(...e)=>r.onClick&&r.onClick(...e)},[r.node.isLeaf?(v(),s(`span`,Xt)):(v(),s(`button`,{key:0,class:`node-chevron`,"aria-label":r.$t(r.open?`common.button.collapse`:`common.button.expand`),title:r.$t(r.open?`common.button.collapse`:`common.button.expand`),onClick:a[0]||=t(e=>r.open=!r.open,[`stop`])},[r.open?(v(),f(y,{key:0,size:14,"aria-hidden":`true`,focusable:`false`})):(v(),f(b,{key:1,size:14,"aria-hidden":`true`,focusable:`false`}))],8,Yt)),r.isHtmlFile(r.node)?(v(),f(x,{key:2,icon:`fa-brands fa-html5`,class:`node-icon`})):(v(),f(_(r.iconFor(r.node)),{key:3,class:`node-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,Zt,i(r.node.label),1)],6),!r.node.isLeaf&&r.open?(v(),s(`ul`,Qt,[(v(!0),s(c,null,g(r.node.children||[],e=>(v(),f(S,{key:e.path,node:e,"selected-skill-id":r.selectedSkillId,"selected-path":r.selectedPath,skill:r.skill,depth:r.depth+1,onSelectFile:a[2]||=e=>r.$emit(`select-file`,e)},null,8,[`node`,`selected-skill-id`,`selected-path`,`skill`,`depth`]))),128))])):o(``,!0)])}var en=y({name:`SkillRow`,components:{ExpandDownIcon:P,ExpandRightIcon:F,SkillIcon:se,FileNode:U(Jt,[[`render`,$t],[`__scopeId`,`data-v-5240087b`]])},props:{skill:{type:Object,required:!0},selectedSkillId:{type:String,required:!0},selectedPath:{type:String,required:!0},expanded:{type:Boolean,default:!1}},emits:[`toggle-expand`,`select-skill`,`select-file`],computed:{tree(){return qt(this.skill.asset_bundle_files)},hasChildren(){return this.skill.asset_bundle_files.length>1},isSkillSelected(){return this.selectedSkillId===this.skill.id&&!this.selectedPath}},methods:{onSelectFile(e){this.$emit(`select-file`,this.skill,e)}}}),tn={class:`skill-row-wrapper`},nn=[`aria-label`,`title`],rn={key:1,class:`row-chevron-spacer`},an=[`title`],on={key:0,class:`file-list`};function sn(r,u,d,p,m,h){let _=l(`expand-down-icon`),y=l(`expand-right-icon`),b=l(`skill-icon`),x=l(`file-node`);return v(),s(`li`,tn,[e(`div`,{class:n([`skill-row`,{active:r.isSkillSelected}]),onClick:u[1]||=e=>r.$emit(`select-skill`,r.skill)},[r.hasChildren?(v(),s(`button`,{key:0,class:`row-chevron`,"aria-label":r.$t(r.expanded?`common.button.collapse`:`common.button.expand`),title:r.$t(r.expanded?`common.button.collapse`:`common.button.expand`),onClick:u[0]||=t(e=>r.$emit(`toggle-expand`,r.skill),[`stop`])},[r.expanded?(v(),f(_,{key:0,size:14,"aria-hidden":`true`,focusable:`false`})):(v(),f(y,{key:1,size:14,"aria-hidden":`true`,focusable:`false`}))],8,nn)):(v(),s(`span`,rn)),a(b,{class:`row-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,{class:`row-label`,title:r.skill.name},i(r.skill.slug),9,an)],2),r.expanded&&r.hasChildren?(v(),s(`ul`,on,[(v(!0),s(c,null,g(r.tree,e=>(v(),f(x,{key:e.path,node:e,"selected-skill-id":r.selectedSkillId,"selected-path":r.selectedPath,skill:r.skill,depth:1,onSelectFile:r.onSelectFile},null,8,[`node`,`selected-skill-id`,`selected-path`,`skill`,`onSelectFile`]))),128))])):o(``,!0)])}var cn=U(en,[[`render`,sn],[`__scopeId`,`data-v-231c2ce1`]]),ln=10*1024*1024,un=/\.(tar\.gz|tgz|tar|zip|md)$/i,dn=y({name:`UploadSkillDialog`,components:{ElDialog:G,ElButton:W,AddFileIcon:He,CloudUploadIcon:ze},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{file:null,isDragging:!1,uploading:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.uploading||this.$emit(`update:modelValue`,!1)},reset(){this.file=null,this.isDragging=!1;let e=this.$refs.fileInput;e&&(e.value=``)},humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},onPickFile(){this.uploading||this.$refs.fileInput?.click()},onFilePicked(e){let t=e.target.files?.[0]||null;this.acceptFile(t)},onDrop(e){this.isDragging=!1;let t=e.dataTransfer?.files?.[0]||null;this.acceptFile(t)},acceptFile(e){if(!e){this.file=null;return}if(e.size>ln){T.error(this.$t(`skill.message.fileTooLarge`));return}if(!un.test(e.name)){T.error(this.$t(`skill.message.fileTypeWrong`));return}this.file=e},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.file){this.uploading=!0;try{if(/\.md$/i.test(this.file.name)){let e=await this.file.text(),{data:t}=await Z.createMarkdown({content:e});T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,t.id)}else{let{data:e}=await Z.createTarball(this.file);T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id)}this.$emit(`update:modelValue`,!1)}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.uploading=!1}}}}}),fn={key:0,class:`dropzone-hint`},pn={key:1,class:`dropzone-file`},mn={class:`dropzone-file-name`},hn={class:`dropzone-file-size`},gn={class:`requirements`},_n={class:`requirements-title`};function vn(o,c,u,d,m,h){let g=l(`add-file-icon`),_=l(`el-button`),y=l(`cloud-upload-icon`),b=l(`el-dialog`);return v(),f(b,{"model-value":o.modelValue,title:o.$t(`skill.dialog.uploadTitle`),width:`min(520px, 94vw)`,"align-center":``,"close-on-click-modal":!o.uploading,"close-on-press-escape":!o.uploading,"show-close":!o.uploading,"onUpdate:modelValue":o.onVisibleChange,onClosed:o.reset},{footer:p(()=>[a(_,{disabled:o.uploading,onClick:o.onClose},{default:p(()=>[r(i(o.$t(`skill.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(_,{type:`primary`,loading:o.uploading,disabled:!o.file,onClick:o.onSubmit},{default:p(()=>[a(y,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(o.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`input`,{ref:`fileInput`,type:`file`,accept:`.tar.gz,.tgz,.tar,.zip,.md,application/gzip,application/zip,application/x-tar,text/markdown`,hidden:``,onChange:c[0]||=(...e)=>o.onFilePicked&&o.onFilePicked(...e)},null,544),e(`div`,{class:n([`dropzone`,{"is-dragging":o.isDragging,"has-file":!!o.file}]),onClick:c[1]||=(...e)=>o.onPickFile&&o.onPickFile(...e),onDragover:c[2]||=t(e=>o.isDragging=!0,[`prevent`]),onDragleave:c[3]||=t(e=>o.isDragging=!1,[`prevent`]),onDrop:c[4]||=t((...e)=>o.onDrop&&o.onDrop(...e),[`prevent`])},[a(g,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o.file?(v(),s(`p`,pn,[e(`span`,mn,i(o.file.name),1),e(`span`,hn,i(o.humanSize(o.file.size)),1)])):(v(),s(`p`,fn,i(o.$t(`skill.dialog.uploadDrop`)),1))],34),e(`div`,gn,[e(`p`,_n,i(o.$t(`skill.dialog.fileRequirements`)),1),e(`ul`,null,[e(`li`,null,i(o.$t(`skill.dialog.requirementMd`)),1),e(`li`,null,i(o.$t(`skill.dialog.requirementArchive`)),1)])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var yn=U(dn,[[`render`,vn],[`__scopeId`,`data-v-01ead824`]]),bn=y({name:`WriteSkillDialog`,components:{ElDialog:G,ElButton:W,ElInput:H,CloudUploadIcon:ze},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{content:``,saving:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.saving||this.$emit(`update:modelValue`,!1)},reset(){this.content=``},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.content.trim()){this.saving=!0;try{let{data:e}=await Z.createMarkdown({content:this.content});T.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id),this.$emit(`update:modelValue`,!1)}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.saving=!1}}}}}),xn={class:`hint`};function Sn(t,n,o,s,c,u){let d=l(`el-input`),m=l(`el-button`),h=l(`cloud-upload-icon`),g=l(`el-dialog`);return v(),f(g,{"model-value":t.modelValue,title:t.$t(`skill.dialog.writeTitle`),width:`min(720px, 94vw)`,"align-center":``,"close-on-click-modal":!t.saving,"close-on-press-escape":!t.saving,"show-close":!t.saving,"onUpdate:modelValue":t.onVisibleChange,onClosed:t.reset},{footer:p(()=>[a(m,{disabled:t.saving,onClick:t.onClose},{default:p(()=>[r(i(t.$t(`skill.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(m,{type:`primary`,loading:t.saving,disabled:!t.content.trim(),onClick:t.onSubmit},{default:p(()=>[a(h,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`p`,xn,i(t.$t(`skill.dialog.writeHint`)),1),a(d,{modelValue:t.content,"onUpdate:modelValue":n[0]||=e=>t.content=e,type:`textarea`,rows:18,placeholder:t.$t(`skill.placeholder.content`),spellcheck:`false`,class:`editor`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Cn=y({name:`UserSkills`,components:{ConsolePageHeader:Le,ElInput:H,ElSwitch:A,ElTag:me,ElTooltip:w,ElDropdown:O,ElDropdownMenu:D,ElDropdownItem:E,AddIcon:V,AiCreateIcon:pe,DeleteIcon:ue,ExpandDownIcon:P,ExpandRightIcon:F,HelpIcon:L,MarketplaceIcon:ce,MoreIcon:ne,SearchIcon:le,SkillIcon:se,UploadIcon:fe,WriteIcon:ee,BrowseSkillsDialog:Tt,SkillFilePreview:Ut,SkillRow:cn,UploadSkillDialog:yn,WriteSkillDialog:U(bn,[[`render`,Sn],[`__scopeId`,`data-v-f39aab5d`]])},directives:{loading:q},data(){return{loading:!1,skills:[],togglingId:null,selectedSkillId:``,selectedPath:``,expandedSkillIds:[],personalOpen:!0,globalsOpen:!0,searchQuery:``,uploadVisible:!1,writeVisible:!1,browseVisible:!1}},computed:{personalSkills(){return this.skills.filter(e=>e.source!==`global`)},globalSkills(){return this.skills.filter(e=>e.source===`global`)},filteredPersonal(){return this.applyFilter(this.personalSkills)},filteredGlobal(){return this.applyFilter(this.globalSkills)},selectedSkill(){return this.skills.find(e=>e.id===this.selectedSkillId)||null}},mounted(){this.fetchSkills()},methods:{applyFilter(e){let t=this.searchQuery.trim().toLowerCase();return t?e.filter(e=>e.slug.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)):e},async fetchSkills(){this.loading=!0;try{let{data:e}=await Z.list();if(this.skills=e||[],!this.selectedSkillId&&this.skills.length){let e=this.personalSkills[0]||this.skills[0];this.selectedSkillId=e.id}else this.selectedSkillId&&!this.skills.find(e=>e.id===this.selectedSkillId)&&(this.selectedSkillId=``,this.selectedPath=``)}catch(e){console.error(e),T.error(this.$t(`skill.message.loadFailed`))}finally{this.loading=!1}},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},selectSkill(e){this.selectedSkillId=e.id,this.selectedPath=``},selectFile(e,t){this.selectedSkillId=e.id,this.selectedPath=t},toggleExpand(e){let t=this.expandedSkillIds.indexOf(e.id);t>=0?this.expandedSkillIds.splice(t,1):this.expandedSkillIds.push(e.id)},openUpload(){this.uploadVisible=!0},openWrite(){this.writeVisible=!0},onBrowse(){this.browseVisible=!0},async onCreated(e){await this.fetchSkills();let t=this.skills.find(t=>t.id===e);t&&(this.selectedSkillId=t.id,this.selectedPath=``,this.personalOpen=!0)},async onSaveContent(e,t){if(!this.selectedSkill){t.reject();return}try{let{data:n}=await Z.update(this.selectedSkill.id,{content:e});T.success(this.$t(`skill.message.updateSuccess`));let r=this.skills.findIndex(e=>e.id===n.id);r>=0&&this.skills.splice(r,1,n),t.resolve()}catch(e){T.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)})),t.reject(e)}},async onDelete(e){try{await ge.confirm(this.$t(`skill.message.deleteConfirm`,{slug:e.slug}),this.$t(`skill.button.delete`),{type:`warning`})}catch{return}try{await Z.remove(e.id),T.success(this.$t(`skill.message.deleteSuccess`)),this.selectedSkillId===e.id&&(this.selectedSkillId=``,this.selectedPath=``),await this.fetchSkills()}catch(e){T.error(this.extractError(e))}},async onToggleSkill(e,t){this.togglingId=e.id;try{t?(await Z.enable(e.id),T.success(this.$t(`skill.message.enableSuccess`))):(await Z.disable(e.id),T.success(this.$t(`skill.message.disableSuccess`))),e.enabled=t}catch(e){T.error(this.extractError(e))}finally{this.togglingId=null}}}}),wn={class:`skills-page`},Tn={class:`skills-shell`},En={class:`left-pane`},Dn={class:`left-header`},On=[`aria-label`,`title`],kn={class:`submenu-trigger`},An={class:`badge-soon`},jn={class:`left-body`},Mn={class:`section`},Nn={key:0,class:`skill-list`},Pn={key:0,class:`empty-row`},Fn={key:0,class:`section`},In={key:0,class:`skill-list`},Ln={class:`right-pane`},Rn={class:`right-header`},zn={class:`right-title`},Bn={class:`right-actions`},Vn=[`aria-label`,`title`],Hn={class:`meta-card`},Un={class:`meta-grid`},Wn={class:`meta-cell`},Gn={class:`meta-label`},Kn={class:`meta-value`},qn={class:`meta-cell`},Jn={class:`meta-label`},Yn={class:`meta-value`},Xn={key:0,class:`meta-cell`},Zn={class:`meta-label`},Qn={class:`meta-tags`},$n={key:0,class:`meta-description`},er={class:`meta-description-label`},tr={class:`meta-label`},nr={class:`preview-card`},rr={key:2,class:`right-empty`};function ir(t,n,u,h,_,y){let b=l(`console-page-header`),x=l(`search-icon`),S=l(`el-input`),C=l(`add-icon`),w=l(`marketplace-icon`),T=l(`el-dropdown-item`),E=l(`expand-right-icon`),D=l(`ai-create-icon`),O=l(`write-icon`),k=l(`upload-icon`),A=l(`el-dropdown-menu`),j=l(`el-dropdown`),M=l(`expand-down-icon`),N=l(`skill-row`),P=l(`el-switch`),F=l(`more-icon`),I=l(`delete-icon`),L=l(`el-tag`),ee=l(`help-icon`),te=l(`el-tooltip`),R=l(`skill-file-preview`),ne=l(`skill-icon`),re=l(`upload-skill-dialog`),ie=l(`write-skill-dialog`),z=l(`browse-skills-dialog`),B=m(`loading`);return v(),s(`div`,wn,[a(b,{title:t.$t(`skill.title.skills`),subtitle:t.$t(`skill.message.pageDescription`)},null,8,[`title`,`subtitle`]),e(`div`,Tn,[e(`aside`,En,[e(`header`,Dn,[a(S,{modelValue:t.searchQuery,"onUpdate:modelValue":n[0]||=e=>t.searchQuery=e,class:`search-input`,size:`default`,clearable:``,placeholder:t.$t(`skill.placeholder.search`)},{prefix:p(()=>[a(x,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(j,{trigger:`click`,placement:`bottom-end`,"hide-on-click":!1},{dropdown:p(()=>[a(A,{class:`add-menu`},{default:p(()=>[a(T,{onClick:t.onBrowse},{default:p(()=>[a(w,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.browse`)),1)]),_:1},8,[`onClick`]),a(T,{divided:``},{default:p(()=>[a(j,{trigger:`hover`,placement:`left-start`,"hide-on-click":!0},{dropdown:p(()=>[a(A,{class:`add-menu`},{default:p(()=>[a(T,{disabled:``},{default:p(()=>[a(D,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.createWithClaude`))+` `,1),e(`span`,An,i(t.$t(`skill.menu.soon`)),1)]),_:1}),a(T,{onClick:t.openWrite},{default:p(()=>[a(O,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.write`)),1)]),_:1},8,[`onClick`]),a(T,{onClick:t.openUpload},{default:p(()=>[a(k,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.upload`)),1)]),_:1},8,[`onClick`])]),_:1})]),default:p(()=>[e(`span`,kn,[a(C,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.menu.create`))+` `,1),a(E,{class:`submenu-arrow`,size:14,"aria-hidden":`true`,focusable:`false`})])]),_:1})]),_:1})]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`add-button`,"aria-label":t.$t(`skill.button.add`),title:t.$t(`skill.button.add`)},[a(C,{size:16,"aria-hidden":`true`,focusable:`false`})],8,On)]),_:1})]),d((v(),s(`div`,jn,[e(`section`,Mn,[e(`button`,{class:`section-header`,onClick:n[1]||=e=>t.personalOpen=!t.personalOpen},[t.personalOpen?(v(),f(M,{key:0,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})):(v(),f(E,{key:1,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(t.$t(`skill.section.personal`)),1)]),t.personalOpen?(v(),s(`ul`,Nn,[!t.loading&&t.filteredPersonal.length===0?(v(),s(`li`,Pn,i(t.searchQuery?t.$t(`skill.empty.search`):t.$t(`skill.message.noSkills`)),1)):o(``,!0),(v(!0),s(c,null,g(t.filteredPersonal,e=>(v(),f(N,{key:e.id,skill:e,"selected-skill-id":t.selectedSkillId,"selected-path":t.selectedPath,expanded:t.expandedSkillIds.includes(e.id),onToggleExpand:t.toggleExpand,onSelectSkill:t.selectSkill,onSelectFile:t.selectFile},null,8,[`skill`,`selected-skill-id`,`selected-path`,`expanded`,`onToggleExpand`,`onSelectSkill`,`onSelectFile`]))),128))])):o(``,!0)]),t.globalSkills.length>0?(v(),s(`section`,Fn,[e(`button`,{class:`section-header`,onClick:n[2]||=e=>t.globalsOpen=!t.globalsOpen},[t.globalsOpen?(v(),f(M,{key:0,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})):(v(),f(E,{key:1,class:`section-chevron`,size:12,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(t.$t(`skill.section.platform`)),1)]),t.globalsOpen?(v(),s(`ul`,In,[(v(!0),s(c,null,g(t.filteredGlobal,e=>(v(),f(N,{key:e.id,skill:e,"selected-skill-id":t.selectedSkillId,"selected-path":t.selectedPath,expanded:t.expandedSkillIds.includes(e.id),onToggleExpand:t.toggleExpand,onSelectSkill:t.selectSkill,onSelectFile:t.selectFile},null,8,[`skill`,`selected-skill-id`,`selected-path`,`expanded`,`onToggleExpand`,`onSelectSkill`,`onSelectFile`]))),128))])):o(``,!0)])):o(``,!0)])),[[B,t.loading]])]),e(`main`,Ln,[t.selectedSkill&&!t.selectedPath?(v(),s(c,{key:0},[e(`header`,Rn,[e(`h3`,zn,i(t.selectedSkill.slug),1),e(`div`,Bn,[a(P,{"model-value":t.selectedSkill.enabled,size:`default`,loading:t.togglingId===t.selectedSkill.id,onChange:n[3]||=e=>t.onToggleSkill(t.selectedSkill,!!e)},null,8,[`model-value`,`loading`]),t.selectedSkill.source===`global`?o(``,!0):(v(),f(j,{key:0,trigger:`click`,placement:`bottom-end`},{dropdown:p(()=>[a(A,null,{default:p(()=>[a(T,{onClick:n[4]||=e=>t.onDelete(t.selectedSkill)},{default:p(()=>[a(I,{class:`menu-icon`,size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.delete`)),1)]),_:1})]),_:1})]),default:p(()=>[e(`button`,{class:`icon-btn`,"aria-label":t.$t(`skill.button.more`),title:t.$t(`skill.button.more`)},[a(F,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Vn)]),_:1}))])]),e(`div`,Hn,[e(`div`,Un,[e(`div`,Wn,[e(`span`,Gn,i(t.$t(`skill.meta.addedBy`)),1),e(`span`,Kn,i(t.selectedSkill.source===`global`?t.$t(`skill.meta.platform`):t.$t(`skill.meta.you`)),1)]),e(`div`,qn,[e(`span`,Jn,i(t.$t(`skill.meta.lastUpdated`)),1),e(`span`,Yn,i(t.$dayjs.format(t.selectedSkill.updated_at)),1)]),t.selectedSkill.required_connections.length?(v(),s(`div`,Xn,[e(`span`,Zn,i(t.$t(`skill.field.requiredConnections`)),1),e(`div`,Qn,[(v(!0),s(c,null,g(t.selectedSkill.required_connections,e=>(v(),f(L,{key:e,size:`small`,type:`info`},{default:p(()=>[r(i(e),1)]),_:2},1024))),128))])])):o(``,!0)]),t.selectedSkill.description?(v(),s(`div`,$n,[e(`div`,er,[e(`span`,tr,i(t.$t(`skill.field.description`)),1),t.selectedSkill.when_to_use?(v(),f(te,{key:0,content:t.selectedSkill.when_to_use,placement:`top`},{default:p(()=>[a(ee,{class:`meta-info-icon`,size:12,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])):o(``,!0)]),e(`p`,null,i(t.selectedSkill.description),1)])):o(``,!0)]),e(`div`,nr,[(v(),f(R,{key:`${t.selectedSkill.id}:SKILL.md`,"skill-id":t.selectedSkill.id,path:`SKILL.md`,editable:t.selectedSkill.source===`upload`,onSave:t.onSaveContent},null,8,[`skill-id`,`editable`,`onSave`]))])],64)):t.selectedSkill&&t.selectedPath?(v(),f(R,{key:`${t.selectedSkill.id}:${t.selectedPath}`,"skill-id":t.selectedSkill.id,path:t.selectedPath,editable:!1},null,8,[`skill-id`,`path`])):(v(),s(`div`,rr,[a(ne,{class:`right-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,i(t.$t(`skill.preview.selectSkill`)),1)]))])]),a(re,{modelValue:t.uploadVisible,"onUpdate:modelValue":n[5]||=e=>t.uploadVisible=e,onCreated:t.onCreated},null,8,[`modelValue`,`onCreated`]),a(ie,{modelValue:t.writeVisible,"onUpdate:modelValue":n[6]||=e=>t.writeVisible=e,onCreated:t.onCreated},null,8,[`modelValue`,`onCreated`]),a(z,{modelValue:t.browseVisible,"onUpdate:modelValue":n[7]||=e=>t.browseVisible=e,onInstalled:t.onCreated},null,8,[`modelValue`,`onInstalled`])])}var ar=U(Cn,[[`render`,ir],[`__scopeId`,`data-v-e3209347`]]);export{ar as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,ht as d,j as f,mt as p,ot as m,rt as h,tt as g,x as ee,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select--hLaPd-X.js";import{n as b,t as x}from"./tabs-DN6nwakT.js";import{n as S,t as C}from"./form-BdKMEyCR.js";import{t as w}from"./tooltip-BWmio9dL.js";import{t as T}from"./alert-BprQRUmf.js";import{v as E}from"./models-BgHU_JUY.js";import{t as D}from"./avatar-DEN_WCPo.js";import{n as O,t as k}from"./checkbox-DXMDpaxv.js";import{r as A,t as j}from"./radio-BNhFzeBO.js";import{n as M,r as N,t as P}from"./dropdown-BD0rUmhS.js";import{t as F}from"./empty-C5KjRN0h.js";import{n as I,t as L}from"./skeleton-Dj_a_iIP.js";import{t as R}from"./chevron-down-Df1Wh7Rr.js";import{t as z}from"./chevron-right-CI8JXKuk.js";import{t as te}from"./circle-check-Ds2W-BZ1.js";import{t as ne}from"./ellipsis-Ca0WK_wY.js";import{t as re}from"./external-link-rYo7EM25.js";import{t as ie}from"./lightbulb-C9oNH906.js";import{t as ae}from"./loader-circle-Ke2n_987.js";import{t as oe}from"./lock-BjokhHtF.js";import{t as se}from"./monitor-wQk0uytX.js";import{t as ce}from"./plug-tJZnqV8-.js";import{t as le}from"./plus-CXRduJme.js";import{t as B}from"./search-CFnTlN_S.js";import{t as V}from"./shield-C7MvkIOP.js";import{t as ue}from"./triangle-alert-CZT0mF2a.js";import{Ai as de,Bi as H,Ci as U,Cr as W,Mi as G,O as K,_i as fe,ri as pe,vi as q}from"./index-La_21d58.js";import{n as J,t as me}from"./authorizeFlow-HRRmbMZ_.js";import{t as he}from"./PageHeader-D_z9tvk6.js";import{n as ge,t as _e}from"./BrowserPairingDialog-DS6OfiLz.js";var ve=fe(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),Y=()=>({baseURL:`${pe()}/api/v1`});function X(e,t){let n=Z(e);if(n.length!==0){if(t){let e=n.find(e=>e.id===t);if(e)return e}if(e?.recommended_method_id){let t=n.find(t=>t.id===e.recommended_method_id);if(t)return t}return n.find(e=>e.recommended)||n[0]}}function Z(e){return e?.connection_methods||[]}var Q=new class{key=`connections`;async list(){return W.get(`/${this.key}/`,Y())}async authorize(e){return W.post(`/${this.key}/authorize/`,e,Y())}async authorizeCustom(e){return W.post(`/${this.key}/authorize-custom/`,e,Y())}async exchangeCustom(e,t){return W.post(`/${this.key}/${e}/exchange-custom/`,t,Y())}async refresh(e){return W.post(`/${this.key}/${e}/refresh/`,void 0,Y())}async setDefault(e){return await W.post(`/connections/${e}/set-default/`,void 0,Y())}async rename(e,t){return await W.patch(`/connections/${e}/`,{label:t},Y())}async disconnect(e){return W.delete(`/${this.key}/${e}/`,Y())}async rebindBrowserDevice(e,t){return W.put(`/${this.key}/${e}/browser-device/`,{browser_device_id:t},Y())}async stopBrowserSessions(e){return W.post(`/${this.key}/${e}/browser-sessions/stop/`,void 0,Y())}async tools(e){return W.get(`/${this.key}/${e}/tools/`,Y())}async listCatalog(e={}){return W.get(`/connectors/`,{...Y(),params:e})}async getCatalogItem(e){return W.get(`/connectors/${e}/`,Y())}async catalogCategories(){return W.get(`/connectors/categories/`,Y())}async installFromCatalog(e,t={}){return W.post(`/connectors/${e}/install/`,t,Y())}async submitCatalogCredentials(e,t){return W.post(`/connectors/${e}/credentials/`,t,Y())}},ye=1e4,be=`https://platform.acedata.cloud/documents/acedataext`;function $(e){return e==null?``:typeof e==`string`?e:Array.isArray(e)?e.map($).filter(Boolean).join(`; `):typeof e==`object`?Object.values(e).map($).filter(Boolean).join(`; `):String(e)}var xe=_({name:`ByocCredentialsDialog`,components:{ElDialog:U,ElForm:C,ElFormItem:S,ElInput:H,ElSelect:v,ElOption:y,ElButton:G,SecurityIcon:V,WarningIcon:ue},props:{modelValue:{type:Boolean,default:!1},item:{type:Object,default:null},method:{type:Object,default:null},createNew:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{visible:this.modelValue,submitting:!1,detecting:!1,extensionReady:!1,formModel:{}}},computed:{activeMethod(){return this.method?this.method:X(this.item)||null},schema(){return this.activeMethod?.credential.credential_schema||[]},isExtension(){return this.activeMethod?.credential.source===`extension`},ACE_EXTENSION_DOC(){return be},loginUrl(){return this.activeMethod?.credential.login_url||``},captureDomain(){return((this.activeMethod?.credential.cookie_domains||[])[0]||``).replace(/^\./,``)},dialogTitle(){let e=this.item?.name||``;return this.$t(`connection.byoc.dialogTitle`,{name:e})},formRules(){let e={},t=this.$t(`connection.byoc.required`);for(let n of this.schema)n.required&&(e[n.key]=[{required:!0,message:t,trigger:`blur`}]);return e}},watch:{modelValue(e){this.visible=e,e&&(this.resetForm(),this.isExtension&&this.pollDetect(8))},visible(e){this.$emit(`update:modelValue`,e)}},methods:{isSecret(e){return e.type===`password`||!!e.secret},resetForm(){let e={};for(let t of this.schema)t.default&&!this.isSecret(t)?e[t.key]=t.default:e[t.key]=``;this.formModel=e},onClose(){this.formModel={},this.visible=!1},openLogin(){this.loginUrl&&window.open(this.loginUrl,`_blank`,`noopener`)},detectExtension(){return this.extensionReady=!!document.getElementById(`acedataext`),this.extensionReady},pollDetect(e){this.detectExtension()||e<=0||window.setTimeout(()=>this.pollDetect(e-1),400)},recheckExtension(){this.detecting=!0,window.setTimeout(()=>{this.detectExtension(),this.detecting=!1,this.extensionReady||E.warning(this.$t(`connection.byoc.extensionMissing`))},300)},captureCookies(){return new Promise((e,t)=>{if(!document.getElementById(`acedataext`)){t(Error(`extension-missing`));return}let n=!1,r=a=>{let o=a.data;!o||o.from!==`EXTENSION`||o.action!==`getCookies`||(n=!0,window.removeEventListener(`message`,r),window.clearTimeout(i),o.error?t(Error(o.error)):e(o.cookies||[]))},i=window.setTimeout(()=>{n||(window.removeEventListener(`message`,r),t(Error(`extension-missing`)))},ye);window.addEventListener(`message`,r),window.postMessage({action:`getCookies`,from:`PAGE`,domain:this.captureDomain,name:this.item?.slug},`*`)})},async onCapture(){if(this.item){this.submitting=!0;try{let e=await this.captureCookies();if(!e.length){E.error(this.$t(`connection.byoc.extensionNoCookies`));return}let{data:t}=await Q.submitCatalogCredentials(this.item.id,{payload:{cookies:e},method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});E.success(this.$t(`connection.message.installed`,{name:this.item.name})),this.$emit(`installed`,{item:this.item,connection_id:t.connection_id}),this.onClose()}catch(e){if(e?.message===`extension-missing`)E.error(this.$t(`connection.byoc.extensionMissing`));else{let t=$(e?.response?.data?.detail);E.error(t||this.$t(`connection.message.installFailed`))}}finally{this.submitting=!1}}},async onSubmit(){if(!this.item)return;let e=this.$refs.formRef;if(!(e&&!await e.validate().catch(()=>!1))){this.submitting=!0;try{let{data:e}=await Q.submitCatalogCredentials(this.item.id,{payload:Object.fromEntries(Object.entries(this.formModel).map(([e,t])=>[e,(t??``).trim()])),method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});E.success(this.$t(`connection.message.installed`,{name:this.item.name})),this.$emit(`installed`,{item:this.item,connection_id:e.connection_id}),this.onClose()}catch(e){let t=$(e?.response?.data?.detail);E.error(t||this.$t(`connection.message.installFailed`))}finally{this.submitting=!1}}}}}),Se={key:0,class:`byoc-missing`},Ce={class:`byoc-missing-body`},we={class:`byoc-missing-title`},Te={class:`byoc-missing-text`},Ee=[`href`],De={class:`byoc-intro`},Oe=[`href`],ke={class:`byoc-steps`},Ae={class:`byoc-disclaimer`},je={key:0,class:`byoc-intro`},Me={key:2,class:`byoc-help`},Ne={class:`byoc-disclaimer`};function Pe(n,c,d,m,ee,_){let v=u(`warning-icon`),y=u(`el-button`),b=u(`security-icon`),x=u(`el-option`),S=u(`el-select`),C=u(`el-input`),w=u(`el-form-item`),T=u(`el-form`),E=u(`el-dialog`);return g(),f(E,{modelValue:n.visible,"onUpdate:modelValue":c[1]||=e=>n.visible=e,title:n.dialogTitle,width:`min(520px, 94vw)`,"append-to-body":``,"destroy-on-close":``,onClose:n.onClose},{footer:p(()=>[a(y,{onClick:n.onClose},{default:p(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),n.isExtension?(g(),s(l,{key:0},[n.extensionReady?(g(),f(y,{key:1,type:`primary`,loading:n.submitting,onClick:n.onCapture},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionCapture`)),1)]),_:1},8,[`loading`,`onClick`])):(g(),f(y,{key:0,type:`primary`,loading:n.detecting,onClick:n.recheckExtension},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionRecheck`)),1)]),_:1},8,[`loading`,`onClick`]))],64)):(g(),f(y,{key:1,type:`primary`,loading:n.submitting,onClick:n.onSubmit},{default:p(()=>[r(i(n.$t(`connection.byoc.submit`)),1)]),_:1},8,[`loading`,`onClick`]))]),default:p(()=>[n.isExtension?(g(),s(l,{key:0},[n.extensionReady?(g(),s(l,{key:1},[e(`p`,De,i(n.$t(`connection.byoc.extensionIntro`)),1),e(`a`,{class:`byoc-doc-link byoc-doc-link-inline`,href:n.ACE_EXTENSION_DOC,target:`_blank`,rel:`noopener`},i(n.$t(`connection.byoc.extensionGuide`))+` → `,9,Oe),e(`ol`,ke,[e(`li`,null,[r(i(n.$t(`connection.byoc.extensionStepLogin`))+` `,1),n.loginUrl?(g(),f(y,{key:0,link:``,type:`primary`,onClick:n.openLogin},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionOpenLogin`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),e(`li`,null,i(n.$t(`connection.byoc.extensionStepCapture`)),1)]),e(`p`,Ae,[a(b,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64)):(g(),s(`div`,Se,[a(v,{class:`byoc-missing-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`div`,Ce,[e(`p`,we,i(n.$t(`connection.byoc.extensionMissingTitle`)),1),e(`p`,Te,i(n.$t(`connection.byoc.extensionMissingBody`)),1),e(`a`,{class:`byoc-doc-link`,href:n.ACE_EXTENSION_DOC,target:`_blank`,rel:`noopener`},i(n.$t(`connection.byoc.extensionGuide`))+` → `,9,Ee)])]))],64)):(g(),s(l,{key:1},[n.schema.length>0?(g(),s(`p`,je,i(n.$t(`connection.byoc.intro`)),1)):o(``,!0),a(T,{ref:`formRef`,model:n.formModel,rules:n.formRules,"label-position":`top`,class:`byoc-form`,onSubmit:c[0]||=t(()=>{},[`prevent`])},{default:p(()=>[(g(!0),s(l,null,h(n.schema,e=>(g(),f(w,{key:e.key,label:e.label,prop:e.key},{default:p(()=>[e.type===`select`?(g(),f(S,{key:0,modelValue:n.formModel[e.key],"onUpdate:modelValue":t=>n.formModel[e.key]=t,placeholder:e.help||``,filterable:``,class:`byoc-input`},{default:p(()=>[(g(!0),s(l,null,h(e.options||[],e=>(g(),f(x,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(g(),f(C,{key:1,modelValue:n.formModel[e.key],"onUpdate:modelValue":t=>n.formModel[e.key]=t,type:n.isSecret(e)?`password`:`text`,"show-password":n.isSecret(e),placeholder:e.help||``,autocomplete:n.isSecret(e)?`new-password`:`off`,class:`byoc-input`},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`show-password`,`placeholder`,`autocomplete`])),e.help?(g(),s(`div`,Me,i(e.help),1)):o(``,!0)]),_:2},1032,[`label`,`prop`]))),128))]),_:1},8,[`model`,`rules`]),e(`p`,Ne,[a(b,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64))]),_:1},8,[`modelValue`,`title`,`onClose`])}var Fe=K(xe,[[`render`,Pe],[`__scopeId`,`data-v-9a4fc02f`]]),Ie=_({name:`ConnectorMethodPicker`,components:{ElDialog:U,ElTabs:b,ElTabPane:x,ElButton:G},props:{modelValue:{type:Boolean,default:!1},item:{type:Object,default:null}},emits:[`update:modelValue`,`select`],data(){return{visible:this.modelValue,selectedId:``}},computed:{methods(){return Z(this.item)},dialogTitle(){let e=this.item?.name||``;return this.$t(`connection.method.dialogTitle`,{name:e})}},watch:{modelValue(e){this.visible=e,e&&(this.selectedId=X(this.item)?.id||``)},visible(e){this.$emit(`update:modelValue`,e)}},methods:{methodLabel(e){return e.label?e.label:e.id},methodDesc(e){return e.description||``},onConfirm(){let e=this.methods.find(e=>e.id===this.selectedId);!e||!this.item||(this.$emit(`select`,{item:this.item,method:e}),this.visible=!1)},onClose(){this.visible=!1}}}),Le={class:`picker-intro`},Re={class:`picker-tab-label`},ze={key:0,class:`picker-recommended`},Be={key:0,class:`picker-pane-desc`};function Ve(t,n,c,d,m,ee){let _=u(`el-tab-pane`),v=u(`el-tabs`),y=u(`el-button`),b=u(`el-dialog`);return g(),f(b,{modelValue:t.visible,"onUpdate:modelValue":n[1]||=e=>t.visible=e,title:t.dialogTitle,width:`min(480px, 94vw)`,"append-to-body":``,"destroy-on-close":``,onClose:t.onClose},{footer:p(()=>[a(y,{onClick:t.onClose},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),a(y,{type:`primary`,disabled:!t.selectedId,onClick:t.onConfirm},{default:p(()=>[r(i(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])]),default:p(()=>[e(`p`,Le,i(t.$t(`connection.method.heading`)),1),a(v,{modelValue:t.selectedId,"onUpdate:modelValue":n[0]||=e=>t.selectedId=e,class:`picker-tabs`},{default:p(()=>[(g(!0),s(l,null,h(t.methods,n=>(g(),f(_,{key:n.id,name:n.id},{label:p(()=>[e(`span`,Re,[r(i(t.methodLabel(n))+` `,1),n.recommended?(g(),s(`span`,ze,i(t.$t(`connection.method.recommended`)),1)):o(``,!0)])]),default:p(()=>[t.methodDesc(n)?(g(),s(`p`,Be,i(t.methodDesc(n)),1)):o(``,!0)]),_:2},1032,[`name`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`,`onClose`])}var He=K(Ie,[[`render`,Ve],[`__scopeId`,`data-v-3a0a8526`]]);function Ue(e,t){let n=new Set(e.capabilities||[]),r=t.filter(e=>!n.has(e));return e.compatible?r.length?{compatible:!1,reason:`missing_capabilities`,missingCapabilities:r}:{compatible:!0,reason:null,missingCapabilities:[]}:{compatible:!1,reason:e.incompatibility_reason||`device_inactive`,missingCapabilities:r}}var We=_({name:`BrowserDevicePicker`,components:{ElAlert:T,ElButton:G,ElDialog:U,ElEmpty:F,ElRadio:j,ElRadioGroup:A},props:{modelValue:{type:Boolean,required:!0},method:{type:Object,default:null},installing:{type:Boolean,default:!1}},emits:[`update:modelValue`,`select`,`pair`],data(){return{devices:[],selectedId:``,loading:!1,loadError:``}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},origins(){return this.method?.execution.origins||[]},requiredCapabilities(){return this.method?.execution.capabilities||[]}},methods:{missingCapabilities(e){return Ue(e,this.requiredCapabilities).missingCapabilities},compatible(e){return Ue(e,this.requiredCapabilities).compatible},incompatibilityText(e){let t=Ue(e,this.requiredCapabilities);return t.reason===`missing_capabilities`?this.$t(`connection.message.browserMissingCapabilities`,{capabilities:t.missingCapabilities.join(`, `)}).toString():this.$t(`connection.message.browserIncompatibility.${t.reason}`).toString()},async loadDevices(e=``){this.loading=!0,this.loadError=``;try{let{data:t}=await ge.list();this.devices=t.filter(e=>e.status===`active`);let n=this.devices.filter(this.compatible);e&&n.some(t=>t.id===e)?this.selectedId=e:n.length===1?this.selectedId=n[0].id:n.some(e=>e.id===this.selectedId)||(this.selectedId=``)}catch{this.loadError=this.$t(`user.browserDevice.loadFailed`).toString()}finally{this.loading=!1}},async refreshAfterPair(e){this.visible=!0,await this.loadDevices(e.id);let t=this.devices.find(t=>t.id===e.id)||e;this.compatible(t)||(this.loadError=this.$t(`connection.message.browserPairedIncompatible`,{version:t.extension_version||`?`,capabilities:this.missingCapabilities(t).join(`, `)}).toString())},showInstallError(e){this.loadError=e},confirm(){this.selectedId&&this.$emit(`select`,this.selectedId)}}}),Ge={key:1,class:`browser-policy`},Ke={class:`device-list`},qe={class:`device-name`},Je={class:`device-meta`},Ye={class:`device-meta`},Xe={class:`device-digest`},Ze={key:0,class:`device-missing`};function Qe(t,n,c,ee,_,v){let y=u(`el-alert`),b=u(`el-radio`),x=u(`el-radio-group`),S=u(`el-empty`),C=u(`el-button`),w=u(`el-dialog`),T=m(`loading`);return g(),f(w,{modelValue:t.visible,"onUpdate:modelValue":n[2]||=e=>t.visible=e,title:t.$t(`connection.message.selectBrowserDevice`),width:`min(520px, 94vw)`,"append-to-body":``,"close-on-click-modal":!1,onOpen:t.loadDevices},{footer:p(()=>[a(C,{onClick:n[1]||=e=>t.$emit(`pair`)},{default:p(()=>[r(i(t.$t(`user.browserDevice.pairButton`)),1)]),_:1}),a(C,{type:`primary`,disabled:!t.selectedId,loading:t.installing,onClick:t.confirm},{default:p(()=>[r(i(t.$t(`connection.button.connect`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:p(()=>[t.loadError?(g(),f(y,{key:0,title:t.loadError,type:`error`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`])):o(``,!0),t.origins.length?(g(),s(`p`,Ge,i(t.$t(`connection.message.browserAllowedSites`))+`: `+i(t.origins.join(`, `)),1)):o(``,!0),a(y,{title:t.$t(`connection.message.browserHighPrivilegeDisclosure`),type:`warning`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`]),d((g(),s(`div`,Ke,[t.devices.length?(g(),f(x,{key:0,modelValue:t.selectedId,"onUpdate:modelValue":n[0]||=e=>t.selectedId=e,class:`device-options`},{default:p(()=>[(g(!0),s(l,null,h(t.devices,n=>(g(),f(b,{key:n.id,value:n.id,label:n.id,disabled:!t.compatible(n),border:``,class:`device-option`},{default:p(()=>[e(`span`,qe,i(n.name),1),e(`span`,Je,i(n.platform)+` · v`+i(n.extension_version||`?`),1),e(`span`,Ye,i(t.$t(n.online?`connection.message.browserOnline`:`connection.message.browserOffline`))+` · `+i(t.$t(`connection.message.browserActiveSessions`,{count:n.active_session_count})),1),e(`span`,Xe,i(n.wire_contract_digest),1),t.compatible(n)?o(``,!0):(g(),s(`span`,Ze,i(t.incompatibilityText(n)),1))]),_:2},1032,[`value`,`label`,`disabled`]))),128))]),_:1},8,[`modelValue`])):t.loading?o(``,!0):(g(),f(S,{key:1,description:t.$t(`user.browserDevice.empty`)},null,8,[`description`]))])),[[T,t.loading]])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var $e=K(We,[[`render`,Qe],[`__scopeId`,`data-v-7eaca81f`]]);function et(e){return String(e??``).normalize(`NFKC`).trim().toLowerCase()}function tt(e){let t=[e.name,e.identifier,e.namespace,e.slug,e.short_description,e.description,e.publisher,e.category,e.acedata_service_alias,...Array.isArray(e.tags)?e.tags:[]];for(let n of e.permissions||[])t.push(n.id,n.label,n.desc);for(let n of Z(e)){t.push(n.id,n.label,n.execution.type,n.execution.server_url,n.credential.type,n.credential.provider_id);for(let e of n.permissions||[])t.push(e.id,e.label,e.desc)}return t.map(et).filter(Boolean).join(` `)}var nt=_({name:`BrowseConnectors`,components:{ElDialog:U,ElInput:H,ElSelect:v,ElOption:y,ElTooltip:w,ElDropdown:P,ElDropdownMenu:N,ElDropdownItem:M,AddIcon:le,ConnectionIcon:ce,ExpandDownIcon:R,LoadingIcon:ae,SearchIcon:B,SuccessIcon:te,ByocCredentialsDialog:Fe,ConnectorMethodPicker:He,BrowserPairingDialog:_e,BrowserDevicePicker:$e},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`,`add-account`,`manage`],data(){return{visible:this.modelValue,loading:!1,installingId:null,query:``,source:`all`,category:``,sort:`popular`,items:[],facets:[],byocDialogVisible:!1,byocDialogItem:null,byocDialogMethod:null,pickerVisible:!1,pickerItem:null,pairingDialogVisible:!1,browserDevicePickerVisible:!1,browserDialogItem:null,browserDialogMethod:null,browserInstalling:!1}},computed:{sourceOptions(){let e=this.facets.reduce((e,t)=>e+t.count,0),t={official:0,partner:0,public:0};for(let e of this.facets)t[e.source]=(t[e.source]||0)+e.count;return[{key:`all`,label:String(this.$t(`connection.label.all`)),count:e},{key:`official`,label:String(this.$t(`connection.label.official`)),count:t.official},{key:`partner`,label:String(this.$t(`connection.label.partner`)),count:t.partner},{key:`public`,label:String(this.$t(`connection.label.community`)),count:t.public}]},categoryOptions(){let e={};for(let t of this.facets){if(this.source!==`all`&&this.source!==`featured`&&t.source!==this.source)continue;let n=t.category||`uncategorized`;e[n]=(e[n]||0)+t.count}let t=Object.values(e).reduce((e,t)=>e+t,0),n=[{key:``,label:String(this.$t(`connection.category.all`)),count:t}];for(let[t,r]of Object.entries(e)){if(r<=0)continue;let e=`connection.category.${t}`,i=String(this.$t(e));n.push({key:t,label:i===e?t:i,count:r})}return n},filteredItems(){let e=et(this.query),t=this.items;return e&&(t=t.filter(t=>tt(t).includes(e))),this.source!==`all`&&this.source!==`featured`&&(t=t.filter(e=>e.source===this.source)),this.source===`featured`&&(t=t.filter(e=>e.is_featured)),this.category&&(t=t.filter(e=>(e.category||`uncategorized`)===this.category)),t}},watch:{modelValue(e){this.visible=e},visible(e){this.$emit(`update:modelValue`,e)}},methods:{onOpen(){this.fetchItems(),this.fetchFacets()},accountCount(e){let t=typeof e.account_count==`number`?e.account_count:0;return e.installed?Math.max(1,t):t},accountLabel(e){return String(this.$t(`connection.message.connectedAccounts`,{name:e.name,count:this.accountCount(e)}))},markInstalled(e){this.items=this.items.map(t=>t.id===e?{...t,installed:!0,install_count:t.install_count+1,account_count:this.accountCount(t)+1}:t)},onInstalledCommand(e,t){if(e===`addAccount`){if(!t.installable)return;this.$emit(`add-account`,{item:t});return}e===`manage`&&this.$emit(`manage`,{item:t})},sourceLabel(e){switch(e){case`official`:return String(this.$t(`connection.label.official`));case`partner`:return String(this.$t(`connection.label.partner`));case`public`:return String(this.$t(`connection.label.community`));default:return e}},setSource(e){this.source=e,this.fetchItems()},setCategory(e){this.category=e,this.fetchItems()},async fetchItems(){this.loading=!0;try{let e={sort:this.sort,limit:200};this.source!==`all`&&this.source!==`featured`&&(e.source=this.source),this.source===`featured`&&(e.featured=!0),this.category&&(e.category=this.category);let{data:t}=await Q.listCatalog(e);this.items=t.items||[]}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to load directory`)}finally{this.loading=!1}},async fetchFacets(){try{let{data:e}=await Q.catalogCategories();this.facets=e.facets||[]}catch{this.facets=[]}},async onInstall(e){if(!e.installable)return;if(Z(e).length>1){this.pickerItem=e,this.pickerVisible=!0;return}let t=X(e);t&&await this.installWithMethod(e,t)},onMethodSelected(e){this.pickerVisible=!1,this.installWithMethod(e.item,e.method)},async installWithMethod(e,t){if(t.execution.type===`browser_device`){this.browserDialogItem=e,this.browserDialogMethod=t,this.browserDevicePickerVisible=!0;return}if(t.credential.type===`user_secret`||t.credential.type===`cookie_jar`){this.byocDialogItem=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}this.installingId=e.id;try{let{data:n}=await Q.installFromCatalog(e.id,{return_url:J(),method_id:t.id});if(n.type===`redirect`){await me(n.authorization_url),this.$emit(`installed`),await this.fetchItems();return}if(n.type===`form`){this.byocDialogItem=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}this.markInstalled(e.id),E.success(this.$t(`connection.message.installed`,{name:e.name})),this.$emit(`installed`,{item:e,connection_id:n.connection_id})}catch(e){E.error(e?.message===`desktop-authorize-unsupported`?this.$t(`connection.message.desktopUpdateRequired`):e?.response?.data?.detail||this.$t(`connection.message.installFailed`))}finally{this.installingId=null}},onByocInstalled(e){this.markInstalled(e.item.id),this.$emit(`installed`,e)},openBrowserPairing(){this.browserDevicePickerVisible=!1,this.pairingDialogVisible=!0},async onBrowserPaired(e){this.pairingDialogVisible=!1,await this.$refs.browserDevicePicker?.refreshAfterPair(e)},async onBrowserDeviceSelected(e){let t=this.browserDialogItem,n=this.browserDialogMethod;if(!(!t||!n)){this.browserInstalling=!0,this.installingId=t.id;try{let{data:r}=await Q.installFromCatalog(t.id,{return_url:J(),method_id:n.id,browser_device_id:e});if(r.type!==`active`)throw Error(this.$t(`connection.message.installFailed`));this.browserDevicePickerVisible=!1,this.browserDialogItem=null,this.browserDialogMethod=null,this.markInstalled(t.id),E.success(this.$t(`connection.message.installed`,{name:t.name})),this.$emit(`installed`,{item:t,connection_id:r.connection_id})}catch(e){let t=e?.response?.data?.detail||e?.message||this.$t(`connection.message.installFailed`);this.$refs.browserDevicePicker?.showInstallError(String(t))}finally{this.browserInstalling=!1,this.installingId=null}}}}}),rt={class:`browse-intro`},it={class:`browse-toolbar`},at={class:`browse-shell`},ot={class:`browse-sidebar`},st={class:`sidebar-section`},ct=[`onClick`],lt={class:`sidebar-label`},ut={key:0,class:`sidebar-count`},dt={class:`sidebar-section`},ft={class:`sidebar-heading`},pt=[`onClick`],mt={class:`sidebar-label`},ht={key:0,class:`sidebar-count`},gt={class:`browse-grid-wrapper`},_t={key:0,class:`browse-empty`},vt={key:1,class:`browse-grid`},yt={class:`card-head`},bt={class:`card-icon`},xt=[`src`,`alt`],St={class:`card-title-block`},Ct={class:`card-title-row`},wt={class:`card-title`},Tt={class:`card-meta`},Et=[`title`],Dt={key:1,class:`card-pill card-pill-new`},Ot={key:2,class:`card-pill card-pill-trending`},kt={key:3,class:`card-publisher`},At={class:`card-action-slot`},jt=[`disabled`,`onClick`],Mt={class:`ml-1`},Nt=[`aria-label`,`title`],Pt={class:`ml-1 card-action-count`},Ft={key:0,class:`card-description`};function It(t,c,ee,_,v,y){let b=u(`search-icon`),x=u(`el-input`),S=u(`el-option`),C=u(`el-select`),w=u(`connection-icon`),T=u(`loading-icon`),E=u(`add-icon`),D=u(`el-tooltip`),O=u(`success-icon`),k=u(`expand-down-icon`),A=u(`el-dropdown-item`),j=u(`el-dropdown-menu`),M=u(`el-dropdown`),N=u(`connector-method-picker`),P=u(`browser-pairing-dialog`),F=u(`browser-device-picker`),I=u(`byoc-credentials-dialog`),L=u(`el-dialog`),R=m(`loading`);return g(),f(L,{modelValue:t.visible,"onUpdate:modelValue":c[6]||=e=>t.visible=e,title:t.$t(`connection.title.browse`),width:`min(900px, 94vw)`,top:`5vh`,"close-on-click-modal":!1,onOpen:t.onOpen},{default:p(()=>[e(`p`,rt,i(t.$t(`connection.message.browseHint`)),1),e(`div`,it,[a(x,{modelValue:t.query,"onUpdate:modelValue":c[0]||=e=>t.query=e,class:`search-input`,size:`default`,clearable:``,placeholder:t.$t(`connection.placeholder.search`)},{prefix:p(()=>[a(b,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(C,{modelValue:t.sort,"onUpdate:modelValue":c[1]||=e=>t.sort=e,size:`default`,class:`sort-select`,onChange:t.fetchItems},{default:p(()=>[a(S,{label:t.$t(`connection.label.featured`),value:`popular`},null,8,[`label`]),a(S,{label:t.$t(`connection.label.new`),value:`new`},null,8,[`label`]),a(S,{label:`A-Z`,value:`name`})]),_:1},8,[`modelValue`,`onChange`])]),d((g(),s(`div`,at,[e(`aside`,ot,[e(`div`,st,[(g(!0),s(l,null,h(t.sourceOptions,r=>(g(),s(`div`,{key:r.key,class:n([`sidebar-item`,{active:t.source===r.key}]),onClick:e=>t.setSource(r.key)},[e(`span`,lt,i(r.label),1),r.count>0?(g(),s(`span`,ut,i(r.count),1)):o(``,!0)],10,ct))),128))]),c[7]||=e(`div`,{class:`sidebar-divider`},null,-1),e(`div`,dt,[e(`div`,ft,i(t.$t(`connection.field.account`)),1),(g(!0),s(l,null,h(t.categoryOptions,r=>(g(),s(`div`,{key:r.key,class:n([`sidebar-item`,{active:t.category===r.key}]),onClick:e=>t.setCategory(r.key)},[e(`span`,mt,i(r.label),1),r.count>0?(g(),s(`span`,ht,i(r.count),1)):o(``,!0)],10,pt))),128))])]),e(`section`,gt,[!t.loading&&t.filteredItems.length===0?(g(),s(`div`,_t,i(t.$t(`connection.message.browseEmpty`)),1)):(g(),s(`div`,vt,[(g(!0),s(l,null,h(t.filteredItems,c=>(g(),s(`article`,{key:c.id,class:`card`},[e(`div`,yt,[e(`span`,bt,[c.icon_url?(g(),s(`img`,{key:0,src:c.icon_url,alt:c.name},null,8,xt)):(g(),f(w,{key:1,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`div`,St,[e(`div`,Ct,[e(`h4`,wt,i(c.name),1)]),e(`div`,Tt,[c.is_featured?(g(),s(`span`,{key:0,class:`card-pill card-pill-featured`,title:t.$t(`connection.label.featured`)},i(t.$t(`connection.label.featured`)),9,Et)):c.is_new?(g(),s(`span`,Dt,i(t.$t(`connection.label.new`)),1)):c.is_trending?(g(),s(`span`,Ot,i(t.$t(`connection.label.trending`)),1)):o(``,!0),e(`span`,{class:n([`source-badge`,`source-${c.source}`])},i(t.sourceLabel(c.source)),3),c.publisher?(g(),s(`span`,kt,i(c.publisher),1)):o(``,!0)])]),c.installed?(g(),f(M,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:e=>t.onInstalledCommand(e,c)},{dropdown:p(()=>[a(j,{class:`connection-actions-menu`},{default:p(()=>[a(A,{command:`addAccount`,disabled:!c.installable},{default:p(()=>[r(i(t.$t(`connection.button.addAccount`)),1)]),_:1},8,[`disabled`]),a(A,{command:`manage`},{default:p(()=>[r(i(t.$t(`connection.button.manageAccounts`)),1)]),_:1})]),_:2},1024)]),default:p(()=>[e(`button`,{type:`button`,class:`card-action card-action-installed`,"aria-label":t.accountLabel(c),title:t.accountLabel(c)},[a(O,{size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Pt,i(t.accountCount(c)),1),a(k,{class:`ml-1 card-action-caret`,size:12,"aria-hidden":`true`,focusable:`false`})],8,Nt)]),_:2},1032,[`onCommand`])):(g(),f(D,{key:0,disabled:c.installable,content:t.$t(`skill.menu.soon`),placement:`top`},{default:p(()=>[e(`span`,At,[e(`button`,{type:`button`,class:`card-action card-action-add`,disabled:!c.installable||t.installingId===c.id,onClick:e=>t.onInstall(c)},[t.installingId===c.id?(g(),f(T,{key:0,class:`icon-spin`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(E,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,Mt,i(t.$t(`connection.button.install`)),1)],8,jt)])]),_:2},1032,[`disabled`,`content`]))]),c.short_description||c.description?(g(),s(`p`,Ft,i(c.short_description||c.description),1)):o(``,!0)]))),128))]))])])),[[R,t.loading]]),a(N,{modelValue:t.pickerVisible,"onUpdate:modelValue":c[2]||=e=>t.pickerVisible=e,item:t.pickerItem,onSelect:t.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(P,{modelValue:t.pairingDialogVisible,"onUpdate:modelValue":c[3]||=e=>t.pairingDialogVisible=e,onPaired:t.onBrowserPaired},null,8,[`modelValue`,`onPaired`]),a(F,{ref:`browserDevicePicker`,modelValue:t.browserDevicePickerVisible,"onUpdate:modelValue":c[4]||=e=>t.browserDevicePickerVisible=e,method:t.browserDialogMethod,installing:t.browserInstalling,onPair:t.openBrowserPairing,onSelect:t.onBrowserDeviceSelected},null,8,[`modelValue`,`method`,`installing`,`onPair`,`onSelect`]),a(I,{modelValue:t.byocDialogVisible,"onUpdate:modelValue":c[5]||=e=>t.byocDialogVisible=e,item:t.byocDialogItem,method:t.byocDialogMethod,onInstalled:t.onByocInstalled},null,8,[`modelValue`,`item`,`method`,`onInstalled`])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var Lt=_({name:`UserConnections`,components:{ConsolePageHeader:he,ElButton:G,ElTag:de,ElAvatar:D,ElDialog:U,ElInput:H,ElCheckbox:k,ElCheckboxGroup:O,ElDropdown:P,ElDropdownMenu:N,ElDropdownItem:M,AddIcon:le,CollapseUpIcon:ve,ConnectionIcon:ce,DesktopIcon:se,ExpandDownIcon:R,ExpandRightIcon:z,ExternalLinkIcon:re,LockIcon:oe,MoreIcon:ne,SearchIcon:B,SuggestionIcon:ie,BrowseConnectors:K(nt,[[`render`,It],[`__scopeId`,`data-v-f373ab4f`]]),ByocCredentialsDialog:Fe,ConnectorMethodPicker:He,BrowserPairingDialog:_e,BrowserDevicePicker:$e,ElSkeleton:L,ElSkeletonItem:I,ElTooltip:w},data(){return{connections:[],connectionsRequestId:0,manageRequestId:0,catalog:[],loading:!1,loadingCatalog:!1,firstLoadComplete:!1,refreshingId:null,searchQuery:``,selectedKey:null,collapsedGroups:{},faviconBlocked:{},customServerUrl:``,customName:``,customClientId:``,customClientSecret:``,customDialogVisible:!1,customAdvancedVisible:!1,customAuthorizing:!1,scopeDialogVisible:!1,scopeDialogCatalog:null,scopeDialogMethod:null,selectedScopes:[],mcpToolsByConnection:{},mcpToolsState:{},browseDialogVisible:!1,pendingCreateNew:!1,byocDialogVisible:!1,byocDialogCatalog:null,byocDialogMethod:null,pickerVisible:!1,pickerCatalog:null,pairingDialogVisible:!1,browserDevicePickerVisible:!1,browserDialogCatalog:null,browserDialogMethod:null,browserInstalling:!1,browserRebindConnectionId:null,pairedBrowserDevice:null}},computed:{catalogByIdentifier(){let e={};for(let t of this.catalog)t.identifier&&(e[t.identifier]=t);return e},catalogForConnection(){let e=this.catalogByIdentifier;return t=>{let n=t.connector_identifier;return n?e[n]:void 0}},detailActions(){let e=this.selectedItem,t=e?.connection;if(!e||!t)return[];let n=[],r=this.normalizedStatus(t.status)===`active`,i=!!e.catalog?.installable,a=this.refreshingId===t.id;return t.supports_refresh&&n.push({command:`refresh`,label:String(this.$t(`connection.button.refresh`)),disabled:a}),e.browserSession&&r&&(n.push({command:`rebind`,label:String(this.$t(`connection.button.rebindBrowserDevice`)),disabled:this.browserInstalling}),(t.browser_device?.active_session_count||0)>0&&n.push({command:`stopSessions`,label:String(this.$t(`connection.button.stopBrowserSessions`)),disabled:a})),e.catalog&&!e.browserSession&&(n.push({command:`reconnect`,label:String(this.$t(`connection.button.reconnect`)),disabled:!i}),n.push({command:`addAccount`,label:String(this.$t(`connection.button.addAccount`)),disabled:!i})),e.catalog&&n.push({command:`setDefault`,label:String(t.is_default?this.$t(`connection.button.isDefault`):this.$t(`connection.button.setDefault`)),disabled:!!t.is_default}),n.push({command:`rename`,label:String(this.$t(`connection.button.rename`))}),n.push({command:`disconnect`,label:String(this.$t(`connection.button.disconnect`)),danger:!0,divided:!0}),n},activeConnectedCatalogIds(){let e=new Set,t=this.catalogByIdentifier;for(let n of this.connections){if(this.normalizedStatus(n.status)!==`active`)continue;let r=n.connector_identifier,i=r?t[r]:void 0;i&&e.add(i.identifier)}return e},items(){let e=[],t={};for(let e of this.connections){let n=e.connector_identifier||``;n&&(t[n]=(t[n]||0)+1)}let n=new Set(Object.keys(t).filter(e=>t[e]>1));for(let t of this.connections){let r=`connection:${t.id}`,i=this.catalogForConnection(t),a=t.execution_type===`remote_mcp`,o=t.credential_type===`user_secret`||t.credential_type===`cookie_jar`,s=t.execution_type===`browser_device`,c=a&&!i,l=this.faviconBlocked[r]?void 0:i?.icon_url||void 0;e.push({key:r,name:i?.name||(s?t.profile?.name||t.connector_identifier||String(this.$t(`user.browserDevice.title`)):a&&t.server_url||t.provider),faviconUrl:l,custom:a,byoc:o,browserSession:s,byo:c,description:i?.short_description||i?.description||void 0,serverUrl:a&&t.server_url||void 0,connection:t,catalog:i,accountLabel:this.connectionAccountLabel(t),isDefault:n.has(t.connector_identifier||``)&&!!t.is_default,clusterKey:t.connector_identifier||r,createdAt:Date.parse(t.created_at)||0,accountSeq:t.account_seq??0,groupKey:`connected`})}let r=this.activeConnectedCatalogIds;for(let t of this.catalog){if(!t.is_featured||r.has(t.identifier))continue;let n=`catalog:${t.identifier}`,i=this.faviconBlocked[n]?void 0:t.icon_url||void 0;e.push({key:n,name:t.name||t.identifier,faviconUrl:i,custom:!1,byoc:!1,browserSession:!1,byo:!1,description:t.short_description||t.description||void 0,catalog:t,groupKey:`available`})}return e},orderedItems(){let e=this.items.filter(e=>e.groupKey===`connected`),t=this.items.filter(e=>e.groupKey===`available`),n=new Map;for(let t of e){let e=t.clusterKey||t.key;n.set(e,Math.max(n.get(e)??0,t.createdAt||0))}return e.sort((e,t)=>{let r=e.clusterKey||e.key,i=t.clusterKey||t.key;if(r!==i){let e=(n.get(i)??0)-(n.get(r)??0);return e===0?r<i?-1:1:e}if(!!e.isDefault!=!!t.isDefault)return e.isDefault?-1:1;let a=(t.createdAt||0)-(e.createdAt||0);if(a!==0)return a;let o=(e.accountSeq??0)-(t.accountSeq??0);return o===0?e.key<t.key?-1:+(e.key>t.key):o}),[...e,...t]},filteredItems(){let e=this.searchQuery.trim().toLowerCase();return e?this.orderedItems.filter(t=>t.name.toLowerCase().includes(e)||(t.serverUrl||``).toLowerCase().includes(e)||(t.description||``).toLowerCase().includes(e)):this.orderedItems},filteredGroups(){let e=[],t=this.filteredItems.filter(e=>e.groupKey===`connected`),n=this.filteredItems.filter(e=>e.groupKey===`available`);return t.length&&e.push({key:`connected`,label:String(this.$t(`connection.title.groupConnected`)),collapsed:!!this.collapsedGroups.connected,items:t}),n.length&&e.push({key:`available`,label:String(this.$t(`connection.title.groupRecommended`)),collapsed:!!this.collapsedGroups.available,items:n}),e},selectedItem(){return this.selectedKey&&this.items.find(e=>e.key===this.selectedKey)||null},detailScopes(){let e=this.selectedItem;if(!e||!e.catalog)return[];let t=e.catalog.permissions||[],n=new Map(t.map(e=>[e.id,e])),r=e.connection;return r&&(r.scopes||[]).length>0?(r.scopes||[]).map(e=>{let t=n.get(e);return{id:e,label:t?.label||e,desc:t?.desc||``}}):t.map(e=>({id:e.id,label:e.label||e.id,desc:e.desc||``}))},selectedMcpTools(){let e=this.selectedItem?.connection;return!e||e.execution_type!==`remote_mcp`?null:this.mcpToolsByConnection[e.id]||null},selectedMcpToolsLoading(){let e=this.selectedItem?.connection;return!e||e.execution_type!==`remote_mcp`?!1:this.mcpToolsState[e.id]===!0},selectedMcpToolsError(){let e=this.selectedItem?.connection;if(!e||e.execution_type!==`remote_mcp`)return null;let t=this.mcpToolsState[e.id];return typeof t==`string`?t:null},permissionRowCount(){return this.selectedItem?.custom&&this.selectedItem.connection?this.selectedMcpTools?.length??0:this.detailScopes.length},showsAccountIdentity(){let e=this.selectedItem?.connection;return!e||this.selectedItem?.browserSession?!1:this.selectedItem?.byoc?!!(e.profile?.name||e.profile?.login||e.profile?.email):!0},scopeDialogPermissions(){return this.scopeDialogMethod?.permissions||this.scopeDialogCatalog?.permissions||[]},suggestions(){let e=this.selectedItem;return e&&e.catalog?.suggestions||[]},overviewText(){let e=(this.selectedItem?.catalog?.description||``).trim();return e?e===(this.selectedItem?.description||``).trim()?``:e:``},isMcpConnector(){return X(this.selectedItem?.catalog)?.execution.type===`remote_mcp`},suggestionsLocked(){let e=this.selectedItem?.connection;return!e||this.normalizedStatus(e.status)!==`active`}},watch:{orderedItems:{handler(e){if(e.length===0){this.selectedKey=null;return}(!this.selectedKey||!e.some(e=>e.key===this.selectedKey))&&(this.selectedKey=e[0].key)},immediate:!1}},async mounted(){await Promise.all([this.fetchConnections(),this.fetchCatalog()]),this.firstLoadComplete=!0,!this.selectedKey&&this.orderedItems.length&&(this.selectedKey=this.orderedItems[0].key);let e=this.selectedKey?this.items.find(e=>e.key===this.selectedKey):null;e?.connection?.execution_type===`remote_mcp`&&this.normalizedStatus(e.connection.status)===`active`&&this.loadMcpTools(e.connection.id);let t=this.$route.query.connect?.toString();if(t){let e=this.orderedItems.find(e=>e.catalog?.identifier===t);if(e){this.selectedKey=e.key;let t=e.connection&&this.normalizedStatus(e.connection.status)===`active`;e.catalog&&!t&&this.onConnect(e.catalog)}}},methods:{onSelect(e){this.selectedKey=e.key;let t=e.connection;t&&t.execution_type===`remote_mcp`&&this.normalizedStatus(t.status)===`active`&&(this.mcpToolsState[t.id]??this.loadMcpTools(t.id))},async loadMcpTools(e){this.mcpToolsState={...this.mcpToolsState,[e]:!0};try{let{data:t}=await Q.tools(e);this.mcpToolsByConnection={...this.mcpToolsByConnection,[e]:t.items||[]},this.mcpToolsState={...this.mcpToolsState,[e]:null}}catch(t){let n=t,r=n.response?.data?.detail||n.message||`Failed to load tools`;this.mcpToolsState={...this.mcpToolsState,[e]:r}}},toggleGroup(e){this.collapsedGroups={...this.collapsedGroups,[e]:!this.collapsedGroups[e]}},onFaviconError(e){this.faviconBlocked={...this.faviconBlocked,[e.key]:!0}},oauthMetadata(e){return(e.metadata||{}).oauth||{}},connectionProviderName(e){let t=this.catalogForConnection(e);return t?.name?t.name:e.execution_type===`remote_mcp`&&e.server_url||e.provider},connectionAccountLabel(e){return e.label||e.profile?.name||e.profile?.login||e.profile?.email||``},connectionAccountName(e){return e.profile?.name||e.profile?.login||e.profile?.email||`—`},connectionAvatar(e){return e.profile?.avatar||e.profile?.avatar_url||e.profile?.picture||``},connectionAccountInitial(e){let t=this.connectionAccountName(e),n=t&&t!==`—`?t.trim().charAt(0):``;return n?n.toUpperCase():`?`},connectionAccountSubtext(e){let t=e.profile?.email;return t&&t!==e.profile?.name?t:e.profile?.login||``},customAuthSummary(e){let t=this.oauthMetadata(e),n=t.token_endpoint_auth_method||`none`;return[t.client_registration_type||`dynamic`,n,(t.authorization_server_metadata||{}).issuer||t.authorization_server_url].filter(Boolean).join(` / `)},byocCredentialSummary(e){return((e.connection?.method_snapshot||X(e.catalog,e.connection?.method_id))?.credential.credential_schema||[]).map(e=>e.label).filter(Boolean).join(` · `)},normalizedStatus(e){return e.toString().toLowerCase()},statusLabel(e){return String(this.$t(`connection.status.${this.normalizedStatus(e)}`))},statusTagType(e){switch(this.normalizedStatus(e)){case`active`:return`success`;case`expired`:return`warning`;case`revoked`:return`danger`;default:return`info`}},browserDeviceStatusLabel(e){let t=e.browser_device?.status;return t?String(this.$t(`user.browserDevice.status.${t}`)):this.statusLabel(e.status)},browserDeviceStatusTagType(e){let t=e.browser_device;if(t&&!t.compatible)return t.incompatibility_reason===`device_offline`?`warning`:`danger`;let n=t?.status;if(!n)return this.statusTagType(e.status);switch(n.toLowerCase()){case`active`:return`success`;case`pending`:return`warning`;case`suspended`:case`quarantined`:case`revoked`:return`danger`;default:return`info`}},browserDeviceCompatibilityLabel(e){let t=e.browser_device;return t?t.compatible?String(this.$t(`connection.message.browserCompatible`)):String(this.$t(`connection.message.browserIncompatibility.${t.incompatibility_reason}`)):this.statusLabel(e.status)},async fetchConnections(){let e=++this.connectionsRequestId;this.loading=!0;try{let{data:t}=await Q.list();return e===this.connectionsRequestId?(this.connections=(t||[]).filter(e=>e.execution_type!==`browser_device`||this.normalizedStatus(e.status)===`active`),!0):!1}catch(e){return console.error(`Failed to load connections`,e),!1}finally{e===this.connectionsRequestId&&(this.loading=!1)}},async fetchCatalog(){this.loadingCatalog=!0;try{let{data:e}=await Q.listCatalog({sort:`popular`,limit:200});this.catalog=e?.items||[]}catch(e){console.error(`Failed to load connector catalog`,e)}finally{this.loadingCatalog=!1}},onSuggestionClick(e){let t=e.prompt;if(!t)return;let n=e.model_group||`claude`;this.$router.push({path:`/${n}/conversations`,query:{query:t,source:`connector_suggestion`,suggestion_id:e.id,...this.selectedItem?.catalog?.identifier?{connector:this.selectedItem.catalog.identifier}:{}}})},async onConnect(e,t=!1){if(!e.installable)return;if(this.pendingCreateNew=t,Z(e).length>1){this.pickerCatalog=e,this.pickerVisible=!0;return}let n=X(e);n&&await this.connectWithMethod(e,n)},clearCreateNewIntent(){this.pendingCreateNew=!1},onMethodSelected(e){this.pickerVisible=!1,this.connectWithMethod(e.item,e.method)},async connectWithMethod(e,t){if(t.execution.type===`browser_device`){this.browserRebindConnectionId=null,this.browserDialogCatalog=e,this.browserDialogMethod=t,this.browserDevicePickerVisible=!0;return}if(t.credential.type===`user_secret`||t.credential.type===`cookie_jar`){this.byocDialogCatalog=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}let n=t.permissions||[];if(n.length>1){this.scopeDialogCatalog=e,this.scopeDialogMethod=t,this.selectedScopes=n.map(e=>e.id),this.scopeDialogVisible=!0;return}try{await q.confirm(this.$t(`connection.message.connectConfirm`,{provider:e.name||e.identifier}),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),roundButton:!0})}catch{return}await this.startAuthorize(e,t,void 0)},async onConfirmScopes(){let e=this.scopeDialogCatalog,t=this.scopeDialogMethod;if(!e||!t)return;let n=[...this.selectedScopes];this.scopeDialogVisible=!1,this.scopeDialogCatalog=null,this.scopeDialogMethod=null,this.selectedScopes=[],await this.startAuthorize(e,t,n)},async startAuthorize(e,t,n){try{let{data:r}=await Q.installFromCatalog(e.id,{scopes:n&&n.length?n:void 0,return_url:J(),method_id:t.id,...this.pendingCreateNew?{create_new:!0}:{}});if(r&&r.type===`form`){this.byocDialogCatalog=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}r&&r.authorization_url?await this.runAuthorizePopup(r.authorization_url):r&&r.type===`active`&&await this.fetchConnections()}catch(e){this.pendingCreateNew=!1,E.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}},async runAuthorizePopup(e){try{await me(e)}catch(e){this.pendingCreateNew=!1,E.error(e?.message===`desktop-authorize-unsupported`?this.$t(`connection.message.desktopUpdateRequired`):e?.message||this.$t(`connection.message.installFailed`));return}this.pendingCreateNew=!1,await this.fetchConnections()},openCustomDialog(){this.customDialogVisible=!0},onAddCommand(e){e===`browse`?this.browseDialogVisible=!0:e===`custom`&&this.openCustomDialog()},async onCatalogInstalled(){this.pendingCreateNew=!1,await Promise.all([this.fetchConnections(),this.fetchCatalog()])},openBrowserPairing(){this.browserDevicePickerVisible=!1,this.pairingDialogVisible=!0},clearBrowserDialog(){this.browserDevicePickerVisible=!1,this.browserRebindConnectionId=null,this.browserDialogCatalog=null,this.browserDialogMethod=null,this.pendingCreateNew=!1},onBrowserPickerVisibility(e){e||this.$nextTick(()=>{!this.pairingDialogVisible&&!this.browserInstalling&&this.clearBrowserDialog()})},openBrowserRebind(e){let t=this.catalogForConnection(e),n=e.method_snapshot;!t||!n||(this.browserRebindConnectionId=e.id,this.browserDialogCatalog=t,this.browserDialogMethod=n,this.browserDevicePickerVisible=!0)},onBrowserPaired(e){this.pairedBrowserDevice=e,this.pairingDialogVisible=!1},async onBrowserPairingClosed(){if(this.browserDialogCatalog&&this.browserDialogMethod){let e=this.pairedBrowserDevice;this.pairedBrowserDevice=null,e?await this.$refs.browserDevicePicker?.refreshAfterPair(e):this.browserDevicePickerVisible=!0;return}this.pairedBrowserDevice=null,this.clearBrowserDialog()},async stopBrowserSessions(e){this.refreshingId=e.id;try{let{data:t}=await Q.stopBrowserSessions(e.id);E.success(this.$t(`connection.message.browserSessionsStopped`,{count:t.stopped_session_count})),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.browserSessionStopFailed`))}finally{this.refreshingId=null}},async onBrowserDeviceSelected(e){let t=this.browserDialogCatalog,n=this.browserDialogMethod;if(!(!t||!n)){this.browserInstalling=!0;try{if(this.browserRebindConnectionId){let{data:t}=await Q.rebindBrowserDevice(this.browserRebindConnectionId,e);this.connections=this.connections.map(e=>e.id===t.id?t:e),this.browserDevicePickerVisible=!1,this.browserRebindConnectionId=null,this.browserDialogCatalog=null,this.browserDialogMethod=null,E.success(this.$t(`connection.message.browserRebindSuccess`));return}let{data:r}=await Q.installFromCatalog(t.id,{return_url:J(),method_id:n.id,browser_device_id:e});if(r.type!==`active`)throw Error(this.$t(`connection.message.installFailed`));this.browserDevicePickerVisible=!1,this.browserDialogCatalog=null,this.browserDialogMethod=null,E.success(this.$t(`connection.message.installed`,{name:t.name})),await this.onCatalogInstalled()}catch(e){let t=e?.response?.data?.detail||e?.message||this.$t(`connection.message.installFailed`);this.$refs.browserDevicePicker?.showInstallError(String(t))}finally{this.browserInstalling=!1}}},async onConnectCustom(){if(this.customServerUrl){this.customAuthorizing=!0;try{let{data:e}=await Q.authorizeCustom({name:this.customName||void 0,server_url:this.customServerUrl,client_id:this.customClientId||void 0,client_secret:this.customClientSecret||void 0,provider:`mcp`,return_url:J()});e?.authorization_url&&(this.customDialogVisible=!1,await this.runAuthorizePopup(e.authorization_url))}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}finally{this.customAuthorizing=!1}}},async onReconnect(e){if(!e.installable)return;this.pendingCreateNew=!1;let t=this.selectedItem?.connection?.method_id,n=X(e,t);if(n&&t&&n.id===t){await this.connectWithMethod(e,n);return}await this.onConnect(e)},onDetailAction(e){let t=this.selectedItem,n=t?.connection;if(!(!t||!n))switch(e){case`refresh`:this.onRefresh(n);break;case`rebind`:this.openBrowserRebind(n);break;case`stopSessions`:this.stopBrowserSessions(n);break;case`reconnect`:t.catalog&&this.onReconnect(t.catalog);break;case`addAccount`:t.catalog&&this.onAddAccount(t.catalog);break;case`setDefault`:this.onSetDefault(n);break;case`rename`:this.onRename(n);break;case`disconnect`:this.onDisconnect(n);break}},async onBrowseAddAccount(e){this.browseDialogVisible=!1,await this.onAddAccount(e.item)},async onBrowseManage(e){this.browseDialogVisible=!1;let t=e.item.identifier;if(!t)return;let n=++this.manageRequestId,r=this.findConnectionRow(t),i=!0;if(!r){if(i=await this.fetchConnections(),n!==this.manageRequestId)return;r=this.findConnectionRow(t)}if(!r){i&&E.warning(this.$t(`connection.message.manageUnavailable`));return}this.searchQuery=``,this.collapsedGroups={...this.collapsedGroups,[r.groupKey]:!1},this.onSelect(r)},findConnectionRow(e){let t=this.orderedItems.filter(t=>t.connection?.connector_identifier===e);if(!t.length)return null;let n=t.filter(e=>this.normalizedStatus(e.connection.status)===`active`),r=n.length?n:t;return r.find(e=>e.connection?.is_default)||r[0]},async onAddAccount(e){await this.onConnect(e,!0)},async onSetDefault(e){try{await Q.setDefault(e.id),E.success(this.$t(`connection.message.defaultUpdated`)),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.defaultUpdateFailed`))}},async onRename(e){let t;try{let{value:n}=await q.prompt(this.$t(`connection.message.renamePrompt`),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),inputValue:this.connectionAccountLabel(e),inputValidator:e=>(e||``).length<=64,inputErrorMessage:this.$t(`connection.message.renameTooLong`),roundButton:!0});t=n||``}catch{return}try{await Q.rename(e.id,t),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.renameFailed`))}},async onRefresh(e){this.refreshingId=e.id;try{await Q.refresh(e.id),E.success(this.$t(`connection.message.refreshed`)),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.refreshFailed`))}finally{this.refreshingId=null}},async onDisconnect(e){try{await q.confirm(this.$t(`connection.message.disconnectConfirm`,{provider:this.connectionProviderName(e)}),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`,roundButton:!0})}catch{return}try{await Q.disconnect(e.id);let t=`connection:${e.id}`;this.connections=this.connections.filter(t=>t.id!==e.id),this.selectedKey===t&&(this.selectedKey=this.orderedItems[0]?.key||null),E.success(this.$t(`connection.message.disconnected`,{provider:this.connectionProviderName(e)})),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to disconnect`)}}}}),Rt={class:`connectors-page`},zt={class:`connectors-shell`},Bt={class:`connectors-list`},Vt={class:`list-toolbar`},Ht=[`aria-label`,`title`],Ut={class:`list-scroll`},Wt={class:`list-group`},Gt={class:`group-header skeleton-header`},Kt={class:`group-items`},qt={class:`group-header`},Jt=[`aria-label`,`title`,`onClick`],Yt=[`onClick`],Xt={class:`group-items`},Zt=[`onClick`],Qt={class:`list-item-icon`},$t=[`src`,`alt`,`onError`],en={class:`list-item-name`},tn=[`title`],nn={key:1,class:`list-item-badge list-item-badge-default`},rn={key:2,class:`list-item-badge`},an=[`title`],on={key:2,class:`list-empty`},sn={class:`list-footer`},cn={class:`connectors-detail`},ln={key:0,class:`detail-skeleton`},un={class:`detail-skeleton-header`},dn={class:`detail-skeleton-section`},fn={key:1,class:`detail-empty`},pn={class:`detail-empty-title`},mn={class:`detail-empty-hint`},hn={class:`detail-header`},gn={class:`detail-title-row`},_n={class:`detail-icon`},vn=[`src`,`alt`],yn={class:`detail-title`},bn={class:`detail-actions`},xn=[`aria-label`,`title`],Sn={key:0,class:`detail-server-url`},Cn={key:1,class:`detail-description`},wn={key:0,class:`detail-section`},Tn={class:`section-heading`},En={class:`section-title`},Dn={class:`overview-text`},On={key:1,class:`detail-section`},kn={class:`account-row`},An={class:`account-info`},jn={class:`account-name`},Mn={key:0,class:`account-sub`},Nn={key:2,class:`detail-section browser-session`},Pn={class:`browser-session-heading`},Fn={class:`browser-session-icon`},In={class:`browser-session-copy`},Ln={class:`meta-grid browser-session-meta`},Rn={key:0},zn={key:1,class:`muted`},Bn={class:`browser-digest-row`},Vn={key:0,class:`browser-capabilities`},Hn={class:`browser-capabilities-label`},Un={class:`browser-capability-list`},Wn={key:3,class:`detail-section`},Gn={class:`meta-grid`},Kn={key:0},qn={key:4,class:`detail-section`},Jn={class:`meta-grid`},Yn={key:0},Xn={key:1},Zn={key:5,class:`detail-section`},Qn={class:`section-heading`},$n={class:`section-title`},er={class:`section-count`},tr={class:`section-hint`},nr={class:`suggestion-list`},rr=[`role`,`tabindex`,`aria-disabled`,`onClick`,`onKeyup`],ir={class:`suggestion-text`},ar={key:6,class:`detail-section`},or={class:`section-heading`},sr={class:`section-title`},cr={key:0,class:`section-count`},lr={key:0,class:`permission-empty`},ur={key:1,class:`permission-empty error`},dr={key:2,class:`permission-list`},fr={class:`permission-name`},pr={class:`permission-tool-name`},mr={key:0,class:`permission-tool-desc`},hr={key:3,class:`permission-empty`},gr={key:1,class:`permission-empty`},_r={key:0,class:`permission-list`},vr={class:`permission-name`},yr={class:`permission-scope-label`},br={key:0,class:`permission-tool-desc`},xr={key:1,class:`permission-empty`},Sr={key:7,class:`detail-section meta-section`},Cr={class:`meta-grid`},wr={key:0},Tr={key:1,class:`muted`},Er={key:0},Dr={key:1,class:`muted`},Or={class:`custom-dialog-intro`},kr={class:`custom-dialog-form`},Ar={key:0,class:`advanced-fields`},jr={class:`custom-trust-copy`},Mr={class:`text-sm text-gray-500 mb-4`},Nr={class:`scope-dialog-label`},Pr={key:0,class:`scope-dialog-desc`};function Fr(_,v,y,b,x,S){let C=u(`console-page-header`),w=u(`search-icon`),T=u(`el-input`),E=u(`add-icon`),D=u(`el-dropdown-item`),O=u(`el-dropdown-menu`),k=u(`el-dropdown`),A=u(`el-skeleton-item`),j=u(`el-skeleton`),M=u(`expand-right-icon`),N=u(`expand-down-icon`),P=u(`desktop-icon`),F=u(`connection-icon`),I=u(`el-tag`),L=u(`el-button`),R=u(`more-icon`),z=u(`el-avatar`),te=u(`suggestion-icon`),ne=u(`lock-icon`),re=u(`external-link-icon`),ie=u(`el-tooltip`),ae=u(`browse-connectors`),oe=u(`byoc-credentials-dialog`),se=u(`connector-method-picker`),ce=u(`browser-pairing-dialog`),le=u(`browser-device-picker`),B=u(`collapse-up-icon`),V=u(`el-dialog`),ue=u(`el-checkbox`),de=u(`el-checkbox-group`),H=m(`loading`);return g(),s(`div`,Rt,[a(C,{title:_.$t(`connection.title.connections`),subtitle:_.$t(`connection.message.pageDescription`)},null,8,[`title`,`subtitle`]),e(`div`,zt,[e(`aside`,Bt,[e(`div`,Vt,[a(T,{modelValue:_.searchQuery,"onUpdate:modelValue":v[0]||=e=>_.searchQuery=e,class:`search-input`,size:`default`,clearable:``,placeholder:_.$t(`connection.placeholder.search`)},{prefix:p(()=>[a(w,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(k,{trigger:`click`,placement:`bottom-end`,onCommand:_.onAddCommand},{dropdown:p(()=>[a(O,null,{default:p(()=>[a(D,{command:`browse`},{default:p(()=>[a(w,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.title.browse`)),1)]),_:1}),a(D,{command:`custom`},{default:p(()=>[a(E,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.addCustomConnector`)),1)]),_:1})]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`add-button`,"aria-label":_.$t(`connection.title.addCustomConnector`),title:_.$t(`connection.title.addCustomConnector`)},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Ht)]),_:1},8,[`onCommand`])]),d((g(),s(`div`,Ut,[_.firstLoadComplete?_.filteredGroups.length?(g(!0),s(l,{key:1},h(_.filteredGroups,t=>(g(),s(`div`,{key:t.key,class:`list-group`},[e(`div`,qt,[e(`button`,{type:`button`,class:`group-chevron-button`,"aria-label":_.$t(t.collapsed?`common.button.expand`:`common.button.collapse`),title:_.$t(t.collapsed?`common.button.expand`:`common.button.collapse`),onClick:e=>_.toggleGroup(t.key)},[t.collapsed?(g(),f(M,{key:0,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`})):(g(),f(N,{key:1,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`}))],8,Jt),e(`span`,{class:`group-title`,onClick:e=>_.toggleGroup(t.key)},i(t.label),9,Yt)]),d(e(`ul`,Xt,[(g(!0),s(l,null,h(t.items,r=>(g(),s(`li`,{key:r.key,class:n({"list-item":!0,active:_.selectedKey===r.key}),onClick:e=>_.onSelect(r)},[e(`span`,Qt,[r.faviconUrl?(g(),s(`img`,{key:0,src:r.faviconUrl,alt:r.name,onError:e=>_.onFaviconError(r)},null,40,$t)):r.browserSession?(g(),f(P,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(F,{key:2,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`span`,en,i(r.name),1),r.accountLabel?(g(),s(`span`,{key:0,class:`list-item-account`,title:r.accountLabel},i(r.accountLabel),9,tn)):o(``,!0),r.isDefault?(g(),s(`span`,nn,i(_.$t(`connection.label.defaultAccount`)),1)):o(``,!0),r.byo?(g(),s(`span`,rn,i(_.$t(`connection.label.custom`)),1)):t.key===`available`?(g(),s(`span`,{key:3,class:`list-item-badge list-item-badge-hint`,title:_.$t(`connection.message.notConnectedYet`)},i(_.$t(`connection.label.notConnected`)),9,an)):o(``,!0)],10,Zt))),128))],512),[[ee,!t.collapsed]])]))),128)):(g(),s(`div`,on,i(_.searchQuery?_.$t(`connection.message.noMatch`):_.$t(`connection.message.noConnections`)),1)):(g(),f(j,{key:0,animated:``},{template:p(()=>[e(`div`,Wt,[e(`div`,Gt,[a(A,{variant:`text`,style:{width:`100px`,height:`11px`}})]),e(`ul`,Kt,[(g(),s(l,null,h(5,t=>e(`li`,{key:`skeleton-${t}`,class:`list-item skeleton-item`},[a(A,{variant:`image`,style:{width:`20px`,height:`20px`,"border-radius":`4px`}}),a(A,{variant:`text`,style:{flex:`1 1 auto`,height:`14px`}})])),64))])])]),_:1}))])),[[H,_.firstLoadComplete&&(_.loading||_.loadingCatalog)]]),e(`div`,sn,[e(`button`,{type:`button`,class:`browse-all-button`,onClick:v[1]||=e=>_.browseDialogVisible=!0},[a(w,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.browseAll`)),1)])])]),e(`section`,cn,[_.firstLoadComplete?_.selectedItem?o(``,!0):(g(),s(`div`,fn,[a(F,{class:`detail-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,pn,i(_.$t(`connection.message.selectConnector`)),1),e(`p`,mn,i(_.$t(`connection.message.noConnectionsHint`)),1)])):(g(),s(`div`,ln,[a(j,{animated:``},{template:p(()=>[e(`div`,un,[a(A,{variant:`circle`,style:{width:`32px`,height:`32px`}}),a(A,{variant:`h3`,style:{width:`220px`,height:`22px`,"margin-left":`12px`}})]),a(A,{variant:`text`,style:{width:`60%`,height:`12px`,"margin-top":`12px`}}),e(`div`,dn,[a(A,{variant:`text`,style:{width:`140px`,height:`14px`}}),a(A,{variant:`p`,style:{width:`33%`,"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{width:`61%`,"margin-top":`16px`}})])]),_:1})])),_.firstLoadComplete&&_.selectedItem?(g(),s(l,{key:2},[e(`header`,hn,[e(`div`,gn,[e(`span`,_n,[_.selectedItem.faviconUrl?(g(),s(`img`,{key:0,src:_.selectedItem.faviconUrl,alt:_.selectedItem.name,onError:v[2]||=e=>_.onFaviconError(_.selectedItem)},null,40,vn)):_.selectedItem.browserSession?(g(),f(P,{key:1,size:20,"aria-hidden":`true`,focusable:`false`})):(g(),f(F,{key:2,size:20,"aria-hidden":`true`,focusable:`false`}))]),e(`h3`,yn,i(_.selectedItem.name),1),_.selectedItem.byo?(g(),f(I,{key:0,size:`small`,type:`info`,class:`detail-custom-tag`},{default:p(()=>[r(i(_.$t(`connection.label.custom`)),1)]),_:1})):o(``,!0),e(`div`,bn,[!_.selectedItem.connection&&_.selectedItem.catalog?(g(),f(L,{key:0,type:`primary`,size:`small`,disabled:!_.selectedItem.catalog?.installable,onClick:v[3]||=e=>_.selectedItem.catalog&&_.onConnect(_.selectedItem.catalog)},{default:p(()=>[r(i(_.$t(`connection.button.connect`)),1)]),_:1},8,[`disabled`])):o(``,!0),_.selectedItem.connection&&_.detailActions.length?(g(),f(k,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:_.onDetailAction},{dropdown:p(()=>[a(O,{class:`connection-actions-menu`},{default:p(()=>[(g(!0),s(l,null,h(_.detailActions,e=>(g(),f(D,{key:e.command,command:e.command,disabled:e.disabled,divided:e.divided,class:n({"actions-item-danger":e.danger})},{default:p(()=>[r(i(e.label),1)]),_:2},1032,[`command`,`disabled`,`divided`,`class`]))),128))]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`actions-button`,"aria-label":_.$t(`connection.title.actions`),title:_.$t(`connection.title.actions`)},[a(R,{size:16,"aria-hidden":`true`,focusable:`false`})],8,xn)]),_:1},8,[`onCommand`])):o(``,!0)])]),_.selectedItem.serverUrl?(g(),s(`p`,Sn,i(_.selectedItem.serverUrl),1)):_.selectedItem.description?(g(),s(`p`,Cn,i(_.selectedItem.description),1)):o(``,!0)]),_.overviewText?(g(),s(`div`,wn,[e(`div`,Tn,[e(`span`,En,i(_.$t(`connection.title.overview`)),1)]),e(`p`,Dn,i(_.overviewText),1)])):o(``,!0),_.selectedItem.connection&&!_.selectedItem.custom&&_.showsAccountIdentity?(g(),s(`div`,On,[e(`div`,kn,[_.connectionAvatar(_.selectedItem.connection)?(g(),f(z,{key:0,src:_.connectionAvatar(_.selectedItem.connection),size:40},null,8,[`src`])):(g(),f(z,{key:1,size:40,class:`account-avatar-fallback`},{default:p(()=>[r(i(_.connectionAccountInitial(_.selectedItem.connection)),1)]),_:1})),e(`div`,An,[e(`span`,jn,i(_.connectionAccountName(_.selectedItem.connection)),1),_.connectionAccountSubtext(_.selectedItem.connection)?(g(),s(`span`,Mn,i(_.connectionAccountSubtext(_.selectedItem.connection)),1)):o(``,!0)]),a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])):o(``,!0),_.selectedItem.connection&&_.selectedItem.browserSession?(g(),s(`div`,Nn,[e(`div`,Pn,[e(`span`,Fn,[a(P,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,In,[e(`strong`,null,i(_.selectedItem.connection.browser_device?.name||_.$t(`user.browserDevice.title`)),1),e(`span`,null,i(_.$t(`user.browserDevice.localApprovalOnly`)),1)]),a(I,{type:_.browserDeviceStatusTagType(_.selectedItem.connection),size:`small`},{default:p(()=>[r(i(_.browserDeviceCompatibilityLabel(_.selectedItem.connection)),1)]),_:1},8,[`type`])]),e(`dl`,Ln,[e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.platform`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.platform||`—`),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.extension_version||`—`),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.lastSeen`)),1),e(`dd`,null,[_.selectedItem.connection.browser_device?.last_seen_at?(g(),s(`span`,Rn,i(_.$dayjs.format(_.selectedItem.connection.browser_device.last_seen_at)),1)):(g(),s(`span`,zn,i(_.$t(`user.browserDevice.neverSeen`)),1))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.createdAt`)),1),e(`dd`,null,i(_.$dayjs.format(_.selectedItem.connection.browser_device?.created_at||_.selectedItem.connection.created_at)),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.connectionRevision`)),1),e(`dd`,null,i(_.selectedItem.connection.revision),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.activeSessions`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.active_session_count??0),1)]),e(`div`,Bn,[e(`dt`,null,i(_.$t(`connection.field.wireContractDigest`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.wire_contract_digest||`—`),1)])]),_.selectedItem.connection.browser_device?.capabilities?.length?(g(),s(`div`,Vn,[e(`span`,Hn,i(_.$t(`user.browserDevice.capabilities`)),1),e(`div`,Un,[(g(!0),s(l,null,h(_.selectedItem.connection.browser_device.capabilities,e=>(g(),f(I,{key:e,size:`small`,effect:`plain`},{default:p(()=>[r(i(e.replaceAll(`_`,` `)),1)]),_:2},1024))),128))])])):o(``,!0)])):o(``,!0),_.selectedItem.connection&&_.selectedItem.custom?(g(),s(`div`,Wn,[e(`dl`,Gn,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])]),_.customAuthSummary(_.selectedItem.connection)?(g(),s(`div`,Kn,[e(`dt`,null,i(_.$t(`connection.label.authMethod`)),1),e(`dd`,null,i(_.customAuthSummary(_.selectedItem.connection)),1)])):o(``,!0)])])):o(``,!0),_.selectedItem.connection&&_.selectedItem.byoc?(g(),s(`div`,qn,[e(`dl`,Jn,[_.showsAccountIdentity?o(``,!0):(g(),s(`div`,Yn,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])),_.byocCredentialSummary(_.selectedItem)?(g(),s(`div`,Xn,[e(`dt`,null,i(_.$t(`connection.label.credentials`)),1),e(`dd`,null,i(_.byocCredentialSummary(_.selectedItem)),1)])):o(``,!0)])])):o(``,!0),_.suggestions.length?(g(),s(`div`,Zn,[e(`div`,Qn,[e(`span`,$n,i(_.$t(`connection.title.tryIt`)),1),e(`span`,er,i(_.suggestions.length),1)]),e(`p`,tr,i(_.suggestionsLocked?_.$t(`connection.message.tryItConnectFirst`):_.$t(`connection.message.tryItHint`)),1),e(`ul`,nr,[(g(!0),s(l,null,h(_.suggestions,r=>(g(),f(ie,{key:r.id,content:_.$t(`connection.message.tryItConnectFirst`),disabled:!_.suggestionsLocked,placement:`top`},{default:p(()=>[e(`li`,{class:n([`suggestion-row`,{locked:_.suggestionsLocked}]),role:_.suggestionsLocked?void 0:`button`,tabindex:_.suggestionsLocked?void 0:0,"aria-disabled":_.suggestionsLocked?`true`:void 0,onClick:e=>!_.suggestionsLocked&&_.onSuggestionClick(r),onKeyup:[c(e=>!_.suggestionsLocked&&_.onSuggestionClick(r),[`enter`]),c(t(e=>!_.suggestionsLocked&&_.onSuggestionClick(r),[`prevent`]),[`space`])]},[a(te,{class:`suggestion-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,ir,i(r.prompt),1),_.suggestionsLocked?(g(),f(ne,{key:0,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(re,{key:1,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`}))],42,rr)]),_:2},1032,[`content`,`disabled`]))),128))])])):o(``,!0),_.selectedItem.browserSession?o(``,!0):(g(),s(`div`,ar,[e(`div`,or,[e(`span`,sr,i(_.$t(`connection.title.toolPermissions`)),1),_.permissionRowCount?(g(),s(`span`,cr,i(_.permissionRowCount),1)):o(``,!0)]),_.selectedItem.custom&&_.selectedItem.connection?(g(),s(l,{key:0},[_.selectedMcpToolsLoading?(g(),s(`p`,lr,i(_.$t(`connection.message.toolsLoading`)),1)):_.selectedMcpToolsError?(g(),s(`p`,ur,i(_.selectedMcpToolsError),1)):_.selectedMcpTools&&_.selectedMcpTools.length?(g(),s(`ul`,dr,[(g(!0),s(l,null,h(_.selectedMcpTools,t=>(g(),s(`li`,{key:t.name,class:`permission-row`},[e(`span`,fr,[e(`span`,pr,i(t.name),1),t.description?(g(),s(`span`,mr,i(t.description),1)):o(``,!0)])]))),128))])):(g(),s(`p`,hr,i(_.$t(`connection.label.noTools`)),1))],64)):_.isMcpConnector&&!_.selectedItem.connection?(g(),s(`p`,gr,i(_.$t(`connection.label.toolsConnectFirst`)),1)):(g(),s(l,{key:2},[_.detailScopes.length?(g(),s(`ul`,_r,[(g(!0),s(l,null,h(_.detailScopes,t=>(g(),s(`li`,{key:t.id,class:`permission-row`},[e(`span`,vr,[e(`span`,yr,i(t.label),1),t.desc?(g(),s(`span`,br,i(t.desc),1)):o(``,!0)])]))),128))])):(g(),s(`p`,xr,i(_.$t(`connection.label.noScopes`)),1))],64))])),_.selectedItem.connection&&!_.selectedItem.browserSession?(g(),s(`div`,Sr,[e(`dl`,Cr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.expiresAt`)),1),e(`dd`,null,[_.selectedItem.connection.expires_at?(g(),s(`span`,wr,i(_.$dayjs.format(_.selectedItem.connection.expires_at)),1)):(g(),s(`span`,Tr,`—`))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.lastRefreshedAt`)),1),e(`dd`,null,[_.selectedItem.connection.last_refreshed_at?(g(),s(`span`,Er,i(_.$dayjs.format(_.selectedItem.connection.last_refreshed_at)),1)):(g(),s(`span`,Dr,i(_.$t(`connection.label.never`)),1))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.createdAt`)),1),e(`dd`,null,i(_.$dayjs.format(_.selectedItem.connection.created_at)),1)])])])):o(``,!0)],64)):o(``,!0)])]),a(ae,{modelValue:_.browseDialogVisible,"onUpdate:modelValue":v[4]||=e=>_.browseDialogVisible=e,onInstalled:_.onCatalogInstalled,onAddAccount:_.onBrowseAddAccount,onManage:_.onBrowseManage},null,8,[`modelValue`,`onInstalled`,`onAddAccount`,`onManage`]),a(oe,{modelValue:_.byocDialogVisible,"onUpdate:modelValue":[v[5]||=e=>_.byocDialogVisible=e,v[6]||=e=>!e&&_.clearCreateNewIntent()],item:_.byocDialogCatalog,method:_.byocDialogMethod,"create-new":_.pendingCreateNew,onInstalled:_.onCatalogInstalled},null,8,[`modelValue`,`item`,`method`,`create-new`,`onInstalled`]),a(se,{modelValue:_.pickerVisible,"onUpdate:modelValue":[v[7]||=e=>_.pickerVisible=e,v[8]||=e=>!e&&_.clearCreateNewIntent()],item:_.pickerCatalog,onSelect:_.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(ce,{modelValue:_.pairingDialogVisible,"onUpdate:modelValue":v[9]||=e=>_.pairingDialogVisible=e,onPaired:_.onBrowserPaired,onClosed:_.onBrowserPairingClosed},null,8,[`modelValue`,`onPaired`,`onClosed`]),a(le,{ref:`browserDevicePicker`,modelValue:_.browserDevicePickerVisible,"onUpdate:modelValue":[v[10]||=e=>_.browserDevicePickerVisible=e,_.onBrowserPickerVisibility],method:_.browserDialogMethod,installing:_.browserInstalling,onPair:_.openBrowserPairing,onSelect:_.onBrowserDeviceSelected},null,8,[`modelValue`,`method`,`installing`,`onPair`,`onSelect`,`onUpdate:modelValue`]),a(V,{modelValue:_.customDialogVisible,"onUpdate:modelValue":v[17]||=e=>_.customDialogVisible=e,title:_.$t(`connection.title.addCustomConnector`),width:`560px`,"close-on-click-modal":!1},{footer:p(()=>[a(L,{onClick:v[16]||=e=>_.customDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(L,{type:`primary`,loading:_.customAuthorizing,disabled:!_.customServerUrl,onClick:_.onConnectCustom},{default:p(()=>[r(i(_.$t(`connection.button.addCustom`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`p`,Or,i(_.$t(`connection.message.customConnectorHint`)),1),e(`div`,kr,[a(T,{modelValue:_.customName,"onUpdate:modelValue":v[11]||=e=>_.customName=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.name`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(T,{modelValue:_.customServerUrl,"onUpdate:modelValue":v[12]||=e=>_.customServerUrl=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.serverUrl`),clearable:``,onKeyup:c(_.onConnectCustom,[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeyup`]),e(`button`,{type:`button`,class:`advanced-toggle`,onClick:v[13]||=e=>_.customAdvancedVisible=!_.customAdvancedVisible},[_.customAdvancedVisible?(g(),f(B,{key:0,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(N,{key:1,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(_.$t(`connection.label.advancedSettings`)),1)]),_.customAdvancedVisible?(g(),s(`div`,Ar,[a(T,{modelValue:_.customClientId,"onUpdate:modelValue":v[14]||=e=>_.customClientId=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.clientId`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(T,{modelValue:_.customClientSecret,"onUpdate:modelValue":v[15]||=e=>_.customClientSecret=e,placeholder:_.$t(`connection.placeholder.clientSecret`),clearable:``,"show-password":``},null,8,[`modelValue`,`placeholder`])])):o(``,!0),e(`p`,jr,i(_.$t(`connection.message.customConnectorTrust`)),1)])]),_:1},8,[`modelValue`,`title`]),a(V,{modelValue:_.scopeDialogVisible,"onUpdate:modelValue":v[20]||=e=>_.scopeDialogVisible=e,title:_.scopeDialogCatalog?_.$t(`connection.message.selectScopes`,{provider:_.scopeDialogCatalog.name}):``,width:`480px`,"close-on-click-modal":!1,onClosed:v[21]||=e=>!_.scopeDialogCatalog&&_.clearCreateNewIntent()},{footer:p(()=>[a(L,{onClick:v[19]||=e=>_.scopeDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(L,{type:`primary`,onClick:_.onConfirmScopes},{default:p(()=>[r(i(_.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])]),default:p(()=>[e(`p`,Mr,i(_.$t(`connection.message.selectScopesHint`)),1),a(de,{modelValue:_.selectedScopes,"onUpdate:modelValue":v[18]||=e=>_.selectedScopes=e},{default:p(()=>[(g(!0),s(l,null,h(_.scopeDialogPermissions,t=>(g(),s(`div`,{key:t.id,class:`scope-dialog-row`},[a(ue,{value:t.id,label:t.id},{default:p(()=>[e(`span`,Nr,i(t.label||t.id),1)]),_:2},1032,[`value`,`label`]),t.desc?(g(),s(`p`,Pr,i(t.desc),1)):o(``,!0)]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`])])}var Ir=K(Lt,[[`render`,Fr],[`__scopeId`,`data-v-7e68c7cb`]]);export{Ir as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,ht as d,j as f,mt as p,ot as m,rt as h,tt as g,x as ee,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-3zeZnDWr.js";import{n as b,t as x}from"./tabs-CPEEm64y.js";import{n as S,t as C}from"./form-BdKMEyCR.js";import{t as w}from"./tooltip-CPF0ns2F.js";import{t as T}from"./alert-BprQRUmf.js";import{v as E}from"./models-OSW29aqo.js";import{t as D}from"./avatar-DEN_WCPo.js";import{n as O,t as k}from"./checkbox-DXMDpaxv.js";import{r as A,t as j}from"./radio-BNhFzeBO.js";import{n as M,r as N,t as P}from"./dropdown-cV8wOdWz.js";import{t as F}from"./empty-C5KjRN0h.js";import{n as I,t as L}from"./skeleton-Dj_a_iIP.js";import{t as R}from"./chevron-down-C9iuUElc.js";import{t as z}from"./chevron-right-CF0ttnXF.js";import{t as te}from"./circle-check-CI_AaSn_.js";import{t as ne}from"./ellipsis-BU0uayKw.js";import{t as re}from"./external-link-Bv7xVKE1.js";import{t as ie}from"./lightbulb-DJmYMTty.js";import{t as ae}from"./loader-circle-BSTNdJW2.js";import{t as oe}from"./lock-DAPZQEW-.js";import{t as se}from"./monitor-Di7iE4c5.js";import{t as ce}from"./plug-BoylcuFT.js";import{t as le}from"./plus-B_IO_O6G.js";import{t as B}from"./search-DxOwIk71.js";import{t as V}from"./shield-BJg_SW7v.js";import{t as ue}from"./triangle-alert-QijY2HDu.js";import{Hi as H,Mi as de,O as U,Pi as W,Ti as G,Tr as K,ai as fe,bi as q,yi as pe}from"./index-CD2-hqNW.js";import{n as J,t as me}from"./authorizeFlow-DDuPRkQ6.js";import{t as he}from"./PageHeader-RatwVDYh.js";import{n as ge,t as _e}from"./BrowserPairingDialog-kUSsJKyI.js";var ve=pe(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),Y=()=>({baseURL:`${fe()}/api/v1`});function X(e,t){let n=Z(e);if(n.length!==0){if(t){let e=n.find(e=>e.id===t);if(e)return e}if(e?.recommended_method_id){let t=n.find(t=>t.id===e.recommended_method_id);if(t)return t}return n.find(e=>e.recommended)||n[0]}}function Z(e){return e?.connection_methods||[]}var Q=new class{key=`connections`;async list(){return K.get(`/${this.key}/`,Y())}async authorize(e){return K.post(`/${this.key}/authorize/`,e,Y())}async authorizeCustom(e){return K.post(`/${this.key}/authorize-custom/`,e,Y())}async exchangeCustom(e,t){return K.post(`/${this.key}/${e}/exchange-custom/`,t,Y())}async refresh(e){return K.post(`/${this.key}/${e}/refresh/`,void 0,Y())}async setDefault(e){return await K.post(`/connections/${e}/set-default/`,void 0,Y())}async rename(e,t){return await K.patch(`/connections/${e}/`,{label:t},Y())}async disconnect(e){return K.delete(`/${this.key}/${e}/`,Y())}async rebindBrowserDevice(e,t){return K.put(`/${this.key}/${e}/browser-device/`,{browser_device_id:t},Y())}async stopBrowserSessions(e){return K.post(`/${this.key}/${e}/browser-sessions/stop/`,void 0,Y())}async tools(e){return K.get(`/${this.key}/${e}/tools/`,Y())}async listCatalog(e={}){return K.get(`/connectors/`,{...Y(),params:e})}async getCatalogItem(e){return K.get(`/connectors/${e}/`,Y())}async catalogCategories(){return K.get(`/connectors/categories/`,Y())}async installFromCatalog(e,t={}){return K.post(`/connectors/${e}/install/`,t,Y())}async submitCatalogCredentials(e,t){return K.post(`/connectors/${e}/credentials/`,t,Y())}},ye=1e4,be=`https://platform.acedata.cloud/documents/acedataext`;function $(e){return e==null?``:typeof e==`string`?e:Array.isArray(e)?e.map($).filter(Boolean).join(`; `):typeof e==`object`?Object.values(e).map($).filter(Boolean).join(`; `):String(e)}var xe=_({name:`ByocCredentialsDialog`,components:{ElDialog:G,ElForm:C,ElFormItem:S,ElInput:H,ElSelect:v,ElOption:y,ElButton:W,SecurityIcon:V,WarningIcon:ue},props:{modelValue:{type:Boolean,default:!1},item:{type:Object,default:null},method:{type:Object,default:null},createNew:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{visible:this.modelValue,submitting:!1,detecting:!1,extensionReady:!1,formModel:{}}},computed:{activeMethod(){return this.method?this.method:X(this.item)||null},schema(){return this.activeMethod?.credential.credential_schema||[]},isExtension(){return this.activeMethod?.credential.source===`extension`},ACE_EXTENSION_DOC(){return be},loginUrl(){return this.activeMethod?.credential.login_url||``},captureDomain(){return((this.activeMethod?.credential.cookie_domains||[])[0]||``).replace(/^\./,``)},dialogTitle(){let e=this.item?.name||``;return this.$t(`connection.byoc.dialogTitle`,{name:e})},formRules(){let e={},t=this.$t(`connection.byoc.required`);for(let n of this.schema)n.required&&(e[n.key]=[{required:!0,message:t,trigger:`blur`}]);return e}},watch:{modelValue(e){this.visible=e,e&&(this.resetForm(),this.isExtension&&this.pollDetect(8))},visible(e){this.$emit(`update:modelValue`,e)}},methods:{isSecret(e){return e.type===`password`||!!e.secret},resetForm(){let e={};for(let t of this.schema)t.default&&!this.isSecret(t)?e[t.key]=t.default:e[t.key]=``;this.formModel=e},onClose(){this.formModel={},this.visible=!1},openLogin(){this.loginUrl&&window.open(this.loginUrl,`_blank`,`noopener`)},detectExtension(){return this.extensionReady=!!document.getElementById(`acedataext`),this.extensionReady},pollDetect(e){this.detectExtension()||e<=0||window.setTimeout(()=>this.pollDetect(e-1),400)},recheckExtension(){this.detecting=!0,window.setTimeout(()=>{this.detectExtension(),this.detecting=!1,this.extensionReady||E.warning(this.$t(`connection.byoc.extensionMissing`))},300)},captureCookies(){return new Promise((e,t)=>{if(!document.getElementById(`acedataext`)){t(Error(`extension-missing`));return}let n=!1,r=a=>{let o=a.data;!o||o.from!==`EXTENSION`||o.action!==`getCookies`||(n=!0,window.removeEventListener(`message`,r),window.clearTimeout(i),o.error?t(Error(o.error)):e(o.cookies||[]))},i=window.setTimeout(()=>{n||(window.removeEventListener(`message`,r),t(Error(`extension-missing`)))},ye);window.addEventListener(`message`,r),window.postMessage({action:`getCookies`,from:`PAGE`,domain:this.captureDomain,name:this.item?.slug},`*`)})},async onCapture(){if(this.item){this.submitting=!0;try{let e=await this.captureCookies();if(!e.length){E.error(this.$t(`connection.byoc.extensionNoCookies`));return}let{data:t}=await Q.submitCatalogCredentials(this.item.id,{payload:{cookies:e},method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});E.success(this.$t(`connection.message.installed`,{name:this.item.name})),this.$emit(`installed`,{item:this.item,connection_id:t.connection_id}),this.onClose()}catch(e){if(e?.message===`extension-missing`)E.error(this.$t(`connection.byoc.extensionMissing`));else{let t=$(e?.response?.data?.detail);E.error(t||this.$t(`connection.message.installFailed`))}}finally{this.submitting=!1}}},async onSubmit(){if(!this.item)return;let e=this.$refs.formRef;if(!(e&&!await e.validate().catch(()=>!1))){this.submitting=!0;try{let{data:e}=await Q.submitCatalogCredentials(this.item.id,{payload:Object.fromEntries(Object.entries(this.formModel).map(([e,t])=>[e,(t??``).trim()])),method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});E.success(this.$t(`connection.message.installed`,{name:this.item.name})),this.$emit(`installed`,{item:this.item,connection_id:e.connection_id}),this.onClose()}catch(e){let t=$(e?.response?.data?.detail);E.error(t||this.$t(`connection.message.installFailed`))}finally{this.submitting=!1}}}}}),Se={key:0,class:`byoc-missing`},Ce={class:`byoc-missing-body`},we={class:`byoc-missing-title`},Te={class:`byoc-missing-text`},Ee=[`href`],De={class:`byoc-intro`},Oe=[`href`],ke={class:`byoc-steps`},Ae={class:`byoc-disclaimer`},je={key:0,class:`byoc-intro`},Me={key:2,class:`byoc-help`},Ne={class:`byoc-disclaimer`};function Pe(n,c,d,m,ee,_){let v=u(`warning-icon`),y=u(`el-button`),b=u(`security-icon`),x=u(`el-option`),S=u(`el-select`),C=u(`el-input`),w=u(`el-form-item`),T=u(`el-form`),E=u(`el-dialog`);return g(),f(E,{modelValue:n.visible,"onUpdate:modelValue":c[1]||=e=>n.visible=e,title:n.dialogTitle,width:`min(520px, 94vw)`,"append-to-body":``,"destroy-on-close":``,onClose:n.onClose},{footer:p(()=>[a(y,{onClick:n.onClose},{default:p(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),n.isExtension?(g(),s(l,{key:0},[n.extensionReady?(g(),f(y,{key:1,type:`primary`,loading:n.submitting,onClick:n.onCapture},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionCapture`)),1)]),_:1},8,[`loading`,`onClick`])):(g(),f(y,{key:0,type:`primary`,loading:n.detecting,onClick:n.recheckExtension},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionRecheck`)),1)]),_:1},8,[`loading`,`onClick`]))],64)):(g(),f(y,{key:1,type:`primary`,loading:n.submitting,onClick:n.onSubmit},{default:p(()=>[r(i(n.$t(`connection.byoc.submit`)),1)]),_:1},8,[`loading`,`onClick`]))]),default:p(()=>[n.isExtension?(g(),s(l,{key:0},[n.extensionReady?(g(),s(l,{key:1},[e(`p`,De,i(n.$t(`connection.byoc.extensionIntro`)),1),e(`a`,{class:`byoc-doc-link byoc-doc-link-inline`,href:n.ACE_EXTENSION_DOC,target:`_blank`,rel:`noopener`},i(n.$t(`connection.byoc.extensionGuide`))+` → `,9,Oe),e(`ol`,ke,[e(`li`,null,[r(i(n.$t(`connection.byoc.extensionStepLogin`))+` `,1),n.loginUrl?(g(),f(y,{key:0,link:``,type:`primary`,onClick:n.openLogin},{default:p(()=>[r(i(n.$t(`connection.byoc.extensionOpenLogin`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),e(`li`,null,i(n.$t(`connection.byoc.extensionStepCapture`)),1)]),e(`p`,Ae,[a(b,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64)):(g(),s(`div`,Se,[a(v,{class:`byoc-missing-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`div`,Ce,[e(`p`,we,i(n.$t(`connection.byoc.extensionMissingTitle`)),1),e(`p`,Te,i(n.$t(`connection.byoc.extensionMissingBody`)),1),e(`a`,{class:`byoc-doc-link`,href:n.ACE_EXTENSION_DOC,target:`_blank`,rel:`noopener`},i(n.$t(`connection.byoc.extensionGuide`))+` → `,9,Ee)])]))],64)):(g(),s(l,{key:1},[n.schema.length>0?(g(),s(`p`,je,i(n.$t(`connection.byoc.intro`)),1)):o(``,!0),a(T,{ref:`formRef`,model:n.formModel,rules:n.formRules,"label-position":`top`,class:`byoc-form`,onSubmit:c[0]||=t(()=>{},[`prevent`])},{default:p(()=>[(g(!0),s(l,null,h(n.schema,e=>(g(),f(w,{key:e.key,label:e.label,prop:e.key},{default:p(()=>[e.type===`select`?(g(),f(S,{key:0,modelValue:n.formModel[e.key],"onUpdate:modelValue":t=>n.formModel[e.key]=t,placeholder:e.help||``,filterable:``,class:`byoc-input`},{default:p(()=>[(g(!0),s(l,null,h(e.options||[],e=>(g(),f(x,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(g(),f(C,{key:1,modelValue:n.formModel[e.key],"onUpdate:modelValue":t=>n.formModel[e.key]=t,type:n.isSecret(e)?`password`:`text`,"show-password":n.isSecret(e),placeholder:e.help||``,autocomplete:n.isSecret(e)?`new-password`:`off`,class:`byoc-input`},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`show-password`,`placeholder`,`autocomplete`])),e.help?(g(),s(`div`,Me,i(e.help),1)):o(``,!0)]),_:2},1032,[`label`,`prop`]))),128))]),_:1},8,[`model`,`rules`]),e(`p`,Ne,[a(b,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64))]),_:1},8,[`modelValue`,`title`,`onClose`])}var Fe=U(xe,[[`render`,Pe],[`__scopeId`,`data-v-9a4fc02f`]]),Ie=_({name:`ConnectorMethodPicker`,components:{ElDialog:G,ElTabs:b,ElTabPane:x,ElButton:W},props:{modelValue:{type:Boolean,default:!1},item:{type:Object,default:null}},emits:[`update:modelValue`,`select`],data(){return{visible:this.modelValue,selectedId:``}},computed:{methods(){return Z(this.item)},dialogTitle(){let e=this.item?.name||``;return this.$t(`connection.method.dialogTitle`,{name:e})}},watch:{modelValue(e){this.visible=e,e&&(this.selectedId=X(this.item)?.id||``)},visible(e){this.$emit(`update:modelValue`,e)}},methods:{methodLabel(e){return e.label?e.label:e.id},methodDesc(e){return e.description||``},onConfirm(){let e=this.methods.find(e=>e.id===this.selectedId);!e||!this.item||(this.$emit(`select`,{item:this.item,method:e}),this.visible=!1)},onClose(){this.visible=!1}}}),Le={class:`picker-intro`},Re={class:`picker-tab-label`},ze={key:0,class:`picker-recommended`},Be={key:0,class:`picker-pane-desc`};function Ve(t,n,c,d,m,ee){let _=u(`el-tab-pane`),v=u(`el-tabs`),y=u(`el-button`),b=u(`el-dialog`);return g(),f(b,{modelValue:t.visible,"onUpdate:modelValue":n[1]||=e=>t.visible=e,title:t.dialogTitle,width:`min(480px, 94vw)`,"append-to-body":``,"destroy-on-close":``,onClose:t.onClose},{footer:p(()=>[a(y,{onClick:t.onClose},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),a(y,{type:`primary`,disabled:!t.selectedId,onClick:t.onConfirm},{default:p(()=>[r(i(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])]),default:p(()=>[e(`p`,Le,i(t.$t(`connection.method.heading`)),1),a(v,{modelValue:t.selectedId,"onUpdate:modelValue":n[0]||=e=>t.selectedId=e,class:`picker-tabs`},{default:p(()=>[(g(!0),s(l,null,h(t.methods,n=>(g(),f(_,{key:n.id,name:n.id},{label:p(()=>[e(`span`,Re,[r(i(t.methodLabel(n))+` `,1),n.recommended?(g(),s(`span`,ze,i(t.$t(`connection.method.recommended`)),1)):o(``,!0)])]),default:p(()=>[t.methodDesc(n)?(g(),s(`p`,Be,i(t.methodDesc(n)),1)):o(``,!0)]),_:2},1032,[`name`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`,`onClose`])}var He=U(Ie,[[`render`,Ve],[`__scopeId`,`data-v-3a0a8526`]]);function Ue(e,t){let n=new Set(e.capabilities||[]),r=t.filter(e=>!n.has(e));return e.compatible?r.length?{compatible:!1,reason:`missing_capabilities`,missingCapabilities:r}:{compatible:!0,reason:null,missingCapabilities:[]}:{compatible:!1,reason:e.incompatibility_reason||`device_inactive`,missingCapabilities:r}}var We=_({name:`BrowserDevicePicker`,components:{ElAlert:T,ElButton:W,ElDialog:G,ElEmpty:F,ElRadio:j,ElRadioGroup:A},props:{modelValue:{type:Boolean,required:!0},method:{type:Object,default:null},installing:{type:Boolean,default:!1}},emits:[`update:modelValue`,`select`,`pair`],data(){return{devices:[],selectedId:``,loading:!1,loadError:``}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},origins(){return this.method?.execution.origins||[]},requiredCapabilities(){return this.method?.execution.capabilities||[]}},methods:{missingCapabilities(e){return Ue(e,this.requiredCapabilities).missingCapabilities},compatible(e){return Ue(e,this.requiredCapabilities).compatible},incompatibilityText(e){let t=Ue(e,this.requiredCapabilities);return t.reason===`missing_capabilities`?this.$t(`connection.message.browserMissingCapabilities`,{capabilities:t.missingCapabilities.join(`, `)}).toString():this.$t(`connection.message.browserIncompatibility.${t.reason}`).toString()},async loadDevices(e=``){this.loading=!0,this.loadError=``;try{let{data:t}=await ge.list();this.devices=t.filter(e=>e.status===`active`);let n=this.devices.filter(this.compatible);e&&n.some(t=>t.id===e)?this.selectedId=e:n.length===1?this.selectedId=n[0].id:n.some(e=>e.id===this.selectedId)||(this.selectedId=``)}catch{this.loadError=this.$t(`user.browserDevice.loadFailed`).toString()}finally{this.loading=!1}},async refreshAfterPair(e){this.visible=!0,await this.loadDevices(e.id);let t=this.devices.find(t=>t.id===e.id)||e;this.compatible(t)||(this.loadError=this.$t(`connection.message.browserPairedIncompatible`,{version:t.extension_version||`?`,capabilities:this.missingCapabilities(t).join(`, `)}).toString())},showInstallError(e){this.loadError=e},confirm(){this.selectedId&&this.$emit(`select`,this.selectedId)}}}),Ge={key:1,class:`browser-policy`},Ke={class:`device-list`},qe={class:`device-name`},Je={class:`device-meta`},Ye={class:`device-meta`},Xe={class:`device-digest`},Ze={key:0,class:`device-missing`};function Qe(t,n,c,ee,_,v){let y=u(`el-alert`),b=u(`el-radio`),x=u(`el-radio-group`),S=u(`el-empty`),C=u(`el-button`),w=u(`el-dialog`),T=m(`loading`);return g(),f(w,{modelValue:t.visible,"onUpdate:modelValue":n[2]||=e=>t.visible=e,title:t.$t(`connection.message.selectBrowserDevice`),width:`min(520px, 94vw)`,"append-to-body":``,"close-on-click-modal":!1,onOpen:t.loadDevices},{footer:p(()=>[a(C,{onClick:n[1]||=e=>t.$emit(`pair`)},{default:p(()=>[r(i(t.$t(`user.browserDevice.pairButton`)),1)]),_:1}),a(C,{type:`primary`,disabled:!t.selectedId,loading:t.installing,onClick:t.confirm},{default:p(()=>[r(i(t.$t(`connection.button.connect`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:p(()=>[t.loadError?(g(),f(y,{key:0,title:t.loadError,type:`error`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`])):o(``,!0),t.origins.length?(g(),s(`p`,Ge,i(t.$t(`connection.message.browserAllowedSites`))+`: `+i(t.origins.join(`, `)),1)):o(``,!0),a(y,{title:t.$t(`connection.message.browserHighPrivilegeDisclosure`),type:`warning`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`]),d((g(),s(`div`,Ke,[t.devices.length?(g(),f(x,{key:0,modelValue:t.selectedId,"onUpdate:modelValue":n[0]||=e=>t.selectedId=e,class:`device-options`},{default:p(()=>[(g(!0),s(l,null,h(t.devices,n=>(g(),f(b,{key:n.id,value:n.id,label:n.id,disabled:!t.compatible(n),border:``,class:`device-option`},{default:p(()=>[e(`span`,qe,i(n.name),1),e(`span`,Je,i(n.platform)+` · v`+i(n.extension_version||`?`),1),e(`span`,Ye,i(t.$t(n.online?`connection.message.browserOnline`:`connection.message.browserOffline`))+` · `+i(t.$t(`connection.message.browserActiveSessions`,{count:n.active_session_count})),1),e(`span`,Xe,i(n.wire_contract_digest),1),t.compatible(n)?o(``,!0):(g(),s(`span`,Ze,i(t.incompatibilityText(n)),1))]),_:2},1032,[`value`,`label`,`disabled`]))),128))]),_:1},8,[`modelValue`])):t.loading?o(``,!0):(g(),f(S,{key:1,description:t.$t(`user.browserDevice.empty`)},null,8,[`description`]))])),[[T,t.loading]])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var $e=U(We,[[`render`,Qe],[`__scopeId`,`data-v-7eaca81f`]]);function et(e){return String(e??``).normalize(`NFKC`).trim().toLowerCase()}function tt(e){let t=[e.name,e.identifier,e.namespace,e.slug,e.short_description,e.description,e.publisher,e.category,e.acedata_service_alias,...Array.isArray(e.tags)?e.tags:[]];for(let n of e.permissions||[])t.push(n.id,n.label,n.desc);for(let n of Z(e)){t.push(n.id,n.label,n.execution.type,n.execution.server_url,n.credential.type,n.credential.provider_id);for(let e of n.permissions||[])t.push(e.id,e.label,e.desc)}return t.map(et).filter(Boolean).join(` `)}var nt=_({name:`BrowseConnectors`,components:{ElDialog:G,ElInput:H,ElSelect:v,ElOption:y,ElTooltip:w,ElDropdown:P,ElDropdownMenu:N,ElDropdownItem:M,AddIcon:le,ConnectionIcon:ce,ExpandDownIcon:R,LoadingIcon:ae,SearchIcon:B,SuccessIcon:te,ByocCredentialsDialog:Fe,ConnectorMethodPicker:He,BrowserPairingDialog:_e,BrowserDevicePicker:$e},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`,`add-account`,`manage`],data(){return{visible:this.modelValue,loading:!1,installingId:null,query:``,source:`all`,category:``,sort:`popular`,items:[],facets:[],byocDialogVisible:!1,byocDialogItem:null,byocDialogMethod:null,pickerVisible:!1,pickerItem:null,pairingDialogVisible:!1,browserDevicePickerVisible:!1,browserDialogItem:null,browserDialogMethod:null,browserInstalling:!1}},computed:{sourceOptions(){let e=this.facets.reduce((e,t)=>e+t.count,0),t={official:0,partner:0,public:0};for(let e of this.facets)t[e.source]=(t[e.source]||0)+e.count;return[{key:`all`,label:String(this.$t(`connection.label.all`)),count:e},{key:`official`,label:String(this.$t(`connection.label.official`)),count:t.official},{key:`partner`,label:String(this.$t(`connection.label.partner`)),count:t.partner},{key:`public`,label:String(this.$t(`connection.label.community`)),count:t.public}]},categoryOptions(){let e={};for(let t of this.facets){if(this.source!==`all`&&this.source!==`featured`&&t.source!==this.source)continue;let n=t.category||`uncategorized`;e[n]=(e[n]||0)+t.count}let t=Object.values(e).reduce((e,t)=>e+t,0),n=[{key:``,label:String(this.$t(`connection.category.all`)),count:t}];for(let[t,r]of Object.entries(e)){if(r<=0)continue;let e=`connection.category.${t}`,i=String(this.$t(e));n.push({key:t,label:i===e?t:i,count:r})}return n},filteredItems(){let e=et(this.query),t=this.items;return e&&(t=t.filter(t=>tt(t).includes(e))),this.source!==`all`&&this.source!==`featured`&&(t=t.filter(e=>e.source===this.source)),this.source===`featured`&&(t=t.filter(e=>e.is_featured)),this.category&&(t=t.filter(e=>(e.category||`uncategorized`)===this.category)),t}},watch:{modelValue(e){this.visible=e},visible(e){this.$emit(`update:modelValue`,e)}},methods:{onOpen(){this.fetchItems(),this.fetchFacets()},accountCount(e){let t=typeof e.account_count==`number`?e.account_count:0;return e.installed?Math.max(1,t):t},accountLabel(e){return String(this.$t(`connection.message.connectedAccounts`,{name:e.name,count:this.accountCount(e)}))},markInstalled(e){this.items=this.items.map(t=>t.id===e?{...t,installed:!0,install_count:t.install_count+1,account_count:this.accountCount(t)+1}:t)},onInstalledCommand(e,t){if(e===`addAccount`){if(!t.installable)return;this.$emit(`add-account`,{item:t});return}e===`manage`&&this.$emit(`manage`,{item:t})},sourceLabel(e){switch(e){case`official`:return String(this.$t(`connection.label.official`));case`partner`:return String(this.$t(`connection.label.partner`));case`public`:return String(this.$t(`connection.label.community`));default:return e}},setSource(e){this.source=e,this.fetchItems()},setCategory(e){this.category=e,this.fetchItems()},async fetchItems(){this.loading=!0;try{let e={sort:this.sort,limit:200};this.source!==`all`&&this.source!==`featured`&&(e.source=this.source),this.source===`featured`&&(e.featured=!0),this.category&&(e.category=this.category);let{data:t}=await Q.listCatalog(e);this.items=t.items||[]}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to load directory`)}finally{this.loading=!1}},async fetchFacets(){try{let{data:e}=await Q.catalogCategories();this.facets=e.facets||[]}catch{this.facets=[]}},async onInstall(e){if(!e.installable)return;if(Z(e).length>1){this.pickerItem=e,this.pickerVisible=!0;return}let t=X(e);t&&await this.installWithMethod(e,t)},onMethodSelected(e){this.pickerVisible=!1,this.installWithMethod(e.item,e.method)},async installWithMethod(e,t){if(t.execution.type===`browser_device`){this.browserDialogItem=e,this.browserDialogMethod=t,this.browserDevicePickerVisible=!0;return}if(t.credential.type===`user_secret`||t.credential.type===`cookie_jar`){this.byocDialogItem=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}this.installingId=e.id;try{let{data:n}=await Q.installFromCatalog(e.id,{return_url:J(),method_id:t.id});if(n.type===`redirect`){await me(n.authorization_url),this.$emit(`installed`),await this.fetchItems();return}if(n.type===`form`){this.byocDialogItem=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}this.markInstalled(e.id),E.success(this.$t(`connection.message.installed`,{name:e.name})),this.$emit(`installed`,{item:e,connection_id:n.connection_id})}catch(e){E.error(e?.message===`desktop-authorize-unsupported`?this.$t(`connection.message.desktopUpdateRequired`):e?.response?.data?.detail||this.$t(`connection.message.installFailed`))}finally{this.installingId=null}},onByocInstalled(e){this.markInstalled(e.item.id),this.$emit(`installed`,e)},openBrowserPairing(){this.browserDevicePickerVisible=!1,this.pairingDialogVisible=!0},async onBrowserPaired(e){this.pairingDialogVisible=!1,await this.$refs.browserDevicePicker?.refreshAfterPair(e)},async onBrowserDeviceSelected(e){let t=this.browserDialogItem,n=this.browserDialogMethod;if(!(!t||!n)){this.browserInstalling=!0,this.installingId=t.id;try{let{data:r}=await Q.installFromCatalog(t.id,{return_url:J(),method_id:n.id,browser_device_id:e});if(r.type!==`active`)throw Error(this.$t(`connection.message.installFailed`));this.browserDevicePickerVisible=!1,this.browserDialogItem=null,this.browserDialogMethod=null,this.markInstalled(t.id),E.success(this.$t(`connection.message.installed`,{name:t.name})),this.$emit(`installed`,{item:t,connection_id:r.connection_id})}catch(e){let t=e?.response?.data?.detail||e?.message||this.$t(`connection.message.installFailed`);this.$refs.browserDevicePicker?.showInstallError(String(t))}finally{this.browserInstalling=!1,this.installingId=null}}}}}),rt={class:`browse-intro`},it={class:`browse-toolbar`},at={class:`browse-shell`},ot={class:`browse-sidebar`},st={class:`sidebar-section`},ct=[`onClick`],lt={class:`sidebar-label`},ut={key:0,class:`sidebar-count`},dt={class:`sidebar-section`},ft={class:`sidebar-heading`},pt=[`onClick`],mt={class:`sidebar-label`},ht={key:0,class:`sidebar-count`},gt={class:`browse-grid-wrapper`},_t={key:0,class:`browse-empty`},vt={key:1,class:`browse-grid`},yt={class:`card-head`},bt={class:`card-icon`},xt=[`src`,`alt`],St={class:`card-title-block`},Ct={class:`card-title-row`},wt={class:`card-title`},Tt={class:`card-meta`},Et=[`title`],Dt={key:1,class:`card-pill card-pill-new`},Ot={key:2,class:`card-pill card-pill-trending`},kt={key:3,class:`card-publisher`},At={class:`card-action-slot`},jt=[`disabled`,`onClick`],Mt={class:`ml-1`},Nt=[`aria-label`,`title`],Pt={class:`ml-1 card-action-count`},Ft={key:0,class:`card-description`};function It(t,c,ee,_,v,y){let b=u(`search-icon`),x=u(`el-input`),S=u(`el-option`),C=u(`el-select`),w=u(`connection-icon`),T=u(`loading-icon`),E=u(`add-icon`),D=u(`el-tooltip`),O=u(`success-icon`),k=u(`expand-down-icon`),A=u(`el-dropdown-item`),j=u(`el-dropdown-menu`),M=u(`el-dropdown`),N=u(`connector-method-picker`),P=u(`browser-pairing-dialog`),F=u(`browser-device-picker`),I=u(`byoc-credentials-dialog`),L=u(`el-dialog`),R=m(`loading`);return g(),f(L,{modelValue:t.visible,"onUpdate:modelValue":c[6]||=e=>t.visible=e,title:t.$t(`connection.title.browse`),width:`min(900px, 94vw)`,top:`5vh`,"close-on-click-modal":!1,onOpen:t.onOpen},{default:p(()=>[e(`p`,rt,i(t.$t(`connection.message.browseHint`)),1),e(`div`,it,[a(x,{modelValue:t.query,"onUpdate:modelValue":c[0]||=e=>t.query=e,class:`search-input`,size:`default`,clearable:``,placeholder:t.$t(`connection.placeholder.search`)},{prefix:p(()=>[a(b,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(C,{modelValue:t.sort,"onUpdate:modelValue":c[1]||=e=>t.sort=e,size:`default`,class:`sort-select`,onChange:t.fetchItems},{default:p(()=>[a(S,{label:t.$t(`connection.label.featured`),value:`popular`},null,8,[`label`]),a(S,{label:t.$t(`connection.label.new`),value:`new`},null,8,[`label`]),a(S,{label:`A-Z`,value:`name`})]),_:1},8,[`modelValue`,`onChange`])]),d((g(),s(`div`,at,[e(`aside`,ot,[e(`div`,st,[(g(!0),s(l,null,h(t.sourceOptions,r=>(g(),s(`div`,{key:r.key,class:n([`sidebar-item`,{active:t.source===r.key}]),onClick:e=>t.setSource(r.key)},[e(`span`,lt,i(r.label),1),r.count>0?(g(),s(`span`,ut,i(r.count),1)):o(``,!0)],10,ct))),128))]),c[7]||=e(`div`,{class:`sidebar-divider`},null,-1),e(`div`,dt,[e(`div`,ft,i(t.$t(`connection.field.account`)),1),(g(!0),s(l,null,h(t.categoryOptions,r=>(g(),s(`div`,{key:r.key,class:n([`sidebar-item`,{active:t.category===r.key}]),onClick:e=>t.setCategory(r.key)},[e(`span`,mt,i(r.label),1),r.count>0?(g(),s(`span`,ht,i(r.count),1)):o(``,!0)],10,pt))),128))])]),e(`section`,gt,[!t.loading&&t.filteredItems.length===0?(g(),s(`div`,_t,i(t.$t(`connection.message.browseEmpty`)),1)):(g(),s(`div`,vt,[(g(!0),s(l,null,h(t.filteredItems,c=>(g(),s(`article`,{key:c.id,class:`card`},[e(`div`,yt,[e(`span`,bt,[c.icon_url?(g(),s(`img`,{key:0,src:c.icon_url,alt:c.name},null,8,xt)):(g(),f(w,{key:1,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`div`,St,[e(`div`,Ct,[e(`h4`,wt,i(c.name),1)]),e(`div`,Tt,[c.is_featured?(g(),s(`span`,{key:0,class:`card-pill card-pill-featured`,title:t.$t(`connection.label.featured`)},i(t.$t(`connection.label.featured`)),9,Et)):c.is_new?(g(),s(`span`,Dt,i(t.$t(`connection.label.new`)),1)):c.is_trending?(g(),s(`span`,Ot,i(t.$t(`connection.label.trending`)),1)):o(``,!0),e(`span`,{class:n([`source-badge`,`source-${c.source}`])},i(t.sourceLabel(c.source)),3),c.publisher?(g(),s(`span`,kt,i(c.publisher),1)):o(``,!0)])]),c.installed?(g(),f(M,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:e=>t.onInstalledCommand(e,c)},{dropdown:p(()=>[a(j,{class:`connection-actions-menu`},{default:p(()=>[a(A,{command:`addAccount`,disabled:!c.installable},{default:p(()=>[r(i(t.$t(`connection.button.addAccount`)),1)]),_:1},8,[`disabled`]),a(A,{command:`manage`},{default:p(()=>[r(i(t.$t(`connection.button.manageAccounts`)),1)]),_:1})]),_:2},1024)]),default:p(()=>[e(`button`,{type:`button`,class:`card-action card-action-installed`,"aria-label":t.accountLabel(c),title:t.accountLabel(c)},[a(O,{size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Pt,i(t.accountCount(c)),1),a(k,{class:`ml-1 card-action-caret`,size:12,"aria-hidden":`true`,focusable:`false`})],8,Nt)]),_:2},1032,[`onCommand`])):(g(),f(D,{key:0,disabled:c.installable,content:t.$t(`skill.menu.soon`),placement:`top`},{default:p(()=>[e(`span`,At,[e(`button`,{type:`button`,class:`card-action card-action-add`,disabled:!c.installable||t.installingId===c.id,onClick:e=>t.onInstall(c)},[t.installingId===c.id?(g(),f(T,{key:0,class:`icon-spin`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(E,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,Mt,i(t.$t(`connection.button.install`)),1)],8,jt)])]),_:2},1032,[`disabled`,`content`]))]),c.short_description||c.description?(g(),s(`p`,Ft,i(c.short_description||c.description),1)):o(``,!0)]))),128))]))])])),[[R,t.loading]]),a(N,{modelValue:t.pickerVisible,"onUpdate:modelValue":c[2]||=e=>t.pickerVisible=e,item:t.pickerItem,onSelect:t.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(P,{modelValue:t.pairingDialogVisible,"onUpdate:modelValue":c[3]||=e=>t.pairingDialogVisible=e,onPaired:t.onBrowserPaired},null,8,[`modelValue`,`onPaired`]),a(F,{ref:`browserDevicePicker`,modelValue:t.browserDevicePickerVisible,"onUpdate:modelValue":c[4]||=e=>t.browserDevicePickerVisible=e,method:t.browserDialogMethod,installing:t.browserInstalling,onPair:t.openBrowserPairing,onSelect:t.onBrowserDeviceSelected},null,8,[`modelValue`,`method`,`installing`,`onPair`,`onSelect`]),a(I,{modelValue:t.byocDialogVisible,"onUpdate:modelValue":c[5]||=e=>t.byocDialogVisible=e,item:t.byocDialogItem,method:t.byocDialogMethod,onInstalled:t.onByocInstalled},null,8,[`modelValue`,`item`,`method`,`onInstalled`])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var Lt=_({name:`UserConnections`,components:{ConsolePageHeader:he,ElButton:W,ElTag:de,ElAvatar:D,ElDialog:G,ElInput:H,ElCheckbox:k,ElCheckboxGroup:O,ElDropdown:P,ElDropdownMenu:N,ElDropdownItem:M,AddIcon:le,CollapseUpIcon:ve,ConnectionIcon:ce,DesktopIcon:se,ExpandDownIcon:R,ExpandRightIcon:z,ExternalLinkIcon:re,LockIcon:oe,MoreIcon:ne,SearchIcon:B,SuggestionIcon:ie,BrowseConnectors:U(nt,[[`render`,It],[`__scopeId`,`data-v-f373ab4f`]]),ByocCredentialsDialog:Fe,ConnectorMethodPicker:He,BrowserPairingDialog:_e,BrowserDevicePicker:$e,ElSkeleton:L,ElSkeletonItem:I,ElTooltip:w},data(){return{connections:[],connectionsRequestId:0,manageRequestId:0,catalog:[],loading:!1,loadingCatalog:!1,firstLoadComplete:!1,refreshingId:null,searchQuery:``,selectedKey:null,collapsedGroups:{},faviconBlocked:{},customServerUrl:``,customName:``,customClientId:``,customClientSecret:``,customDialogVisible:!1,customAdvancedVisible:!1,customAuthorizing:!1,scopeDialogVisible:!1,scopeDialogCatalog:null,scopeDialogMethod:null,selectedScopes:[],mcpToolsByConnection:{},mcpToolsState:{},browseDialogVisible:!1,pendingCreateNew:!1,byocDialogVisible:!1,byocDialogCatalog:null,byocDialogMethod:null,pickerVisible:!1,pickerCatalog:null,pairingDialogVisible:!1,browserDevicePickerVisible:!1,browserDialogCatalog:null,browserDialogMethod:null,browserInstalling:!1,browserRebindConnectionId:null,pairedBrowserDevice:null}},computed:{catalogByIdentifier(){let e={};for(let t of this.catalog)t.identifier&&(e[t.identifier]=t);return e},catalogForConnection(){let e=this.catalogByIdentifier;return t=>{let n=t.connector_identifier;return n?e[n]:void 0}},detailActions(){let e=this.selectedItem,t=e?.connection;if(!e||!t)return[];let n=[],r=this.normalizedStatus(t.status)===`active`,i=!!e.catalog?.installable,a=this.refreshingId===t.id;return t.supports_refresh&&n.push({command:`refresh`,label:String(this.$t(`connection.button.refresh`)),disabled:a}),e.browserSession&&r&&(n.push({command:`rebind`,label:String(this.$t(`connection.button.rebindBrowserDevice`)),disabled:this.browserInstalling}),(t.browser_device?.active_session_count||0)>0&&n.push({command:`stopSessions`,label:String(this.$t(`connection.button.stopBrowserSessions`)),disabled:a})),e.catalog&&!e.browserSession&&(n.push({command:`reconnect`,label:String(this.$t(`connection.button.reconnect`)),disabled:!i}),n.push({command:`addAccount`,label:String(this.$t(`connection.button.addAccount`)),disabled:!i})),e.catalog&&n.push({command:`setDefault`,label:String(t.is_default?this.$t(`connection.button.isDefault`):this.$t(`connection.button.setDefault`)),disabled:!!t.is_default}),n.push({command:`rename`,label:String(this.$t(`connection.button.rename`))}),n.push({command:`disconnect`,label:String(this.$t(`connection.button.disconnect`)),danger:!0,divided:!0}),n},activeConnectedCatalogIds(){let e=new Set,t=this.catalogByIdentifier;for(let n of this.connections){if(this.normalizedStatus(n.status)!==`active`)continue;let r=n.connector_identifier,i=r?t[r]:void 0;i&&e.add(i.identifier)}return e},items(){let e=[],t={};for(let e of this.connections){let n=e.connector_identifier||``;n&&(t[n]=(t[n]||0)+1)}let n=new Set(Object.keys(t).filter(e=>t[e]>1));for(let t of this.connections){let r=`connection:${t.id}`,i=this.catalogForConnection(t),a=t.execution_type===`remote_mcp`,o=t.credential_type===`user_secret`||t.credential_type===`cookie_jar`,s=t.execution_type===`browser_device`,c=a&&!i,l=this.faviconBlocked[r]?void 0:i?.icon_url||void 0;e.push({key:r,name:i?.name||(s?t.profile?.name||t.connector_identifier||String(this.$t(`user.browserDevice.title`)):a&&t.server_url||t.provider),faviconUrl:l,custom:a,byoc:o,browserSession:s,byo:c,description:i?.short_description||i?.description||void 0,serverUrl:a&&t.server_url||void 0,connection:t,catalog:i,accountLabel:this.connectionAccountLabel(t),isDefault:n.has(t.connector_identifier||``)&&!!t.is_default,clusterKey:t.connector_identifier||r,createdAt:Date.parse(t.created_at)||0,accountSeq:t.account_seq??0,groupKey:`connected`})}let r=this.activeConnectedCatalogIds;for(let t of this.catalog){if(!t.is_featured||r.has(t.identifier))continue;let n=`catalog:${t.identifier}`,i=this.faviconBlocked[n]?void 0:t.icon_url||void 0;e.push({key:n,name:t.name||t.identifier,faviconUrl:i,custom:!1,byoc:!1,browserSession:!1,byo:!1,description:t.short_description||t.description||void 0,catalog:t,groupKey:`available`})}return e},orderedItems(){let e=this.items.filter(e=>e.groupKey===`connected`),t=this.items.filter(e=>e.groupKey===`available`),n=new Map;for(let t of e){let e=t.clusterKey||t.key;n.set(e,Math.max(n.get(e)??0,t.createdAt||0))}return e.sort((e,t)=>{let r=e.clusterKey||e.key,i=t.clusterKey||t.key;if(r!==i){let e=(n.get(i)??0)-(n.get(r)??0);return e===0?r<i?-1:1:e}if(!!e.isDefault!=!!t.isDefault)return e.isDefault?-1:1;let a=(t.createdAt||0)-(e.createdAt||0);if(a!==0)return a;let o=(e.accountSeq??0)-(t.accountSeq??0);return o===0?e.key<t.key?-1:+(e.key>t.key):o}),[...e,...t]},filteredItems(){let e=this.searchQuery.trim().toLowerCase();return e?this.orderedItems.filter(t=>t.name.toLowerCase().includes(e)||(t.serverUrl||``).toLowerCase().includes(e)||(t.description||``).toLowerCase().includes(e)):this.orderedItems},filteredGroups(){let e=[],t=this.filteredItems.filter(e=>e.groupKey===`connected`),n=this.filteredItems.filter(e=>e.groupKey===`available`);return t.length&&e.push({key:`connected`,label:String(this.$t(`connection.title.groupConnected`)),collapsed:!!this.collapsedGroups.connected,items:t}),n.length&&e.push({key:`available`,label:String(this.$t(`connection.title.groupRecommended`)),collapsed:!!this.collapsedGroups.available,items:n}),e},selectedItem(){return this.selectedKey&&this.items.find(e=>e.key===this.selectedKey)||null},detailScopes(){let e=this.selectedItem;if(!e||!e.catalog)return[];let t=e.catalog.permissions||[],n=new Map(t.map(e=>[e.id,e])),r=e.connection;return r&&(r.scopes||[]).length>0?(r.scopes||[]).map(e=>{let t=n.get(e);return{id:e,label:t?.label||e,desc:t?.desc||``}}):t.map(e=>({id:e.id,label:e.label||e.id,desc:e.desc||``}))},selectedMcpTools(){let e=this.selectedItem?.connection;return!e||e.execution_type!==`remote_mcp`?null:this.mcpToolsByConnection[e.id]||null},selectedMcpToolsLoading(){let e=this.selectedItem?.connection;return!e||e.execution_type!==`remote_mcp`?!1:this.mcpToolsState[e.id]===!0},selectedMcpToolsError(){let e=this.selectedItem?.connection;if(!e||e.execution_type!==`remote_mcp`)return null;let t=this.mcpToolsState[e.id];return typeof t==`string`?t:null},permissionRowCount(){return this.selectedItem?.custom&&this.selectedItem.connection?this.selectedMcpTools?.length??0:this.detailScopes.length},showsAccountIdentity(){let e=this.selectedItem?.connection;return!e||this.selectedItem?.browserSession?!1:this.selectedItem?.byoc?!!(e.profile?.name||e.profile?.login||e.profile?.email):!0},scopeDialogPermissions(){return this.scopeDialogMethod?.permissions||this.scopeDialogCatalog?.permissions||[]},suggestions(){let e=this.selectedItem;return e&&e.catalog?.suggestions||[]},overviewText(){let e=(this.selectedItem?.catalog?.description||``).trim();return e?e===(this.selectedItem?.description||``).trim()?``:e:``},isMcpConnector(){return X(this.selectedItem?.catalog)?.execution.type===`remote_mcp`},suggestionsLocked(){let e=this.selectedItem?.connection;return!e||this.normalizedStatus(e.status)!==`active`}},watch:{orderedItems:{handler(e){if(e.length===0){this.selectedKey=null;return}(!this.selectedKey||!e.some(e=>e.key===this.selectedKey))&&(this.selectedKey=e[0].key)},immediate:!1}},async mounted(){await Promise.all([this.fetchConnections(),this.fetchCatalog()]),this.firstLoadComplete=!0,!this.selectedKey&&this.orderedItems.length&&(this.selectedKey=this.orderedItems[0].key);let e=this.selectedKey?this.items.find(e=>e.key===this.selectedKey):null;e?.connection?.execution_type===`remote_mcp`&&this.normalizedStatus(e.connection.status)===`active`&&this.loadMcpTools(e.connection.id);let t=this.$route.query.connect?.toString();if(t){let e=this.orderedItems.find(e=>e.catalog?.identifier===t);if(e){this.selectedKey=e.key;let t=e.connection&&this.normalizedStatus(e.connection.status)===`active`;e.catalog&&!t&&this.onConnect(e.catalog)}}},methods:{onSelect(e){this.selectedKey=e.key;let t=e.connection;t&&t.execution_type===`remote_mcp`&&this.normalizedStatus(t.status)===`active`&&(this.mcpToolsState[t.id]??this.loadMcpTools(t.id))},async loadMcpTools(e){this.mcpToolsState={...this.mcpToolsState,[e]:!0};try{let{data:t}=await Q.tools(e);this.mcpToolsByConnection={...this.mcpToolsByConnection,[e]:t.items||[]},this.mcpToolsState={...this.mcpToolsState,[e]:null}}catch(t){let n=t,r=n.response?.data?.detail||n.message||`Failed to load tools`;this.mcpToolsState={...this.mcpToolsState,[e]:r}}},toggleGroup(e){this.collapsedGroups={...this.collapsedGroups,[e]:!this.collapsedGroups[e]}},onFaviconError(e){this.faviconBlocked={...this.faviconBlocked,[e.key]:!0}},oauthMetadata(e){return(e.metadata||{}).oauth||{}},connectionProviderName(e){let t=this.catalogForConnection(e);return t?.name?t.name:e.execution_type===`remote_mcp`&&e.server_url||e.provider},connectionAccountLabel(e){return e.label||e.profile?.name||e.profile?.login||e.profile?.email||``},connectionAccountName(e){return e.profile?.name||e.profile?.login||e.profile?.email||`—`},connectionAvatar(e){return e.profile?.avatar||e.profile?.avatar_url||e.profile?.picture||``},connectionAccountInitial(e){let t=this.connectionAccountName(e),n=t&&t!==`—`?t.trim().charAt(0):``;return n?n.toUpperCase():`?`},connectionAccountSubtext(e){let t=e.profile?.email;return t&&t!==e.profile?.name?t:e.profile?.login||``},customAuthSummary(e){let t=this.oauthMetadata(e),n=t.token_endpoint_auth_method||`none`;return[t.client_registration_type||`dynamic`,n,(t.authorization_server_metadata||{}).issuer||t.authorization_server_url].filter(Boolean).join(` / `)},byocCredentialSummary(e){return((e.connection?.method_snapshot||X(e.catalog,e.connection?.method_id))?.credential.credential_schema||[]).map(e=>e.label).filter(Boolean).join(` · `)},normalizedStatus(e){return e.toString().toLowerCase()},statusLabel(e){return String(this.$t(`connection.status.${this.normalizedStatus(e)}`))},statusTagType(e){switch(this.normalizedStatus(e)){case`active`:return`success`;case`expired`:return`warning`;case`revoked`:return`danger`;default:return`info`}},browserDeviceStatusLabel(e){let t=e.browser_device?.status;return t?String(this.$t(`user.browserDevice.status.${t}`)):this.statusLabel(e.status)},browserDeviceStatusTagType(e){let t=e.browser_device;if(t&&!t.compatible)return t.incompatibility_reason===`device_offline`?`warning`:`danger`;let n=t?.status;if(!n)return this.statusTagType(e.status);switch(n.toLowerCase()){case`active`:return`success`;case`pending`:return`warning`;case`suspended`:case`quarantined`:case`revoked`:return`danger`;default:return`info`}},browserDeviceCompatibilityLabel(e){let t=e.browser_device;return t?t.compatible?String(this.$t(`connection.message.browserCompatible`)):String(this.$t(`connection.message.browserIncompatibility.${t.incompatibility_reason}`)):this.statusLabel(e.status)},async fetchConnections(){let e=++this.connectionsRequestId;this.loading=!0;try{let{data:t}=await Q.list();return e===this.connectionsRequestId?(this.connections=(t||[]).filter(e=>e.execution_type!==`browser_device`||this.normalizedStatus(e.status)===`active`),!0):!1}catch(e){return console.error(`Failed to load connections`,e),!1}finally{e===this.connectionsRequestId&&(this.loading=!1)}},async fetchCatalog(){this.loadingCatalog=!0;try{let{data:e}=await Q.listCatalog({sort:`popular`,limit:200});this.catalog=e?.items||[]}catch(e){console.error(`Failed to load connector catalog`,e)}finally{this.loadingCatalog=!1}},onSuggestionClick(e){let t=e.prompt;if(!t)return;let n=e.model_group||`claude`;this.$router.push({path:`/${n}/conversations`,query:{query:t,source:`connector_suggestion`,suggestion_id:e.id,...this.selectedItem?.catalog?.identifier?{connector:this.selectedItem.catalog.identifier}:{}}})},async onConnect(e,t=!1){if(!e.installable)return;if(this.pendingCreateNew=t,Z(e).length>1){this.pickerCatalog=e,this.pickerVisible=!0;return}let n=X(e);n&&await this.connectWithMethod(e,n)},clearCreateNewIntent(){this.pendingCreateNew=!1},onMethodSelected(e){this.pickerVisible=!1,this.connectWithMethod(e.item,e.method)},async connectWithMethod(e,t){if(t.execution.type===`browser_device`){this.browserRebindConnectionId=null,this.browserDialogCatalog=e,this.browserDialogMethod=t,this.browserDevicePickerVisible=!0;return}if(t.credential.type===`user_secret`||t.credential.type===`cookie_jar`){this.byocDialogCatalog=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}let n=t.permissions||[];if(n.length>1){this.scopeDialogCatalog=e,this.scopeDialogMethod=t,this.selectedScopes=n.map(e=>e.id),this.scopeDialogVisible=!0;return}try{await q.confirm(this.$t(`connection.message.connectConfirm`,{provider:e.name||e.identifier}),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),roundButton:!0})}catch{return}await this.startAuthorize(e,t,void 0)},async onConfirmScopes(){let e=this.scopeDialogCatalog,t=this.scopeDialogMethod;if(!e||!t)return;let n=[...this.selectedScopes];this.scopeDialogVisible=!1,this.scopeDialogCatalog=null,this.scopeDialogMethod=null,this.selectedScopes=[],await this.startAuthorize(e,t,n)},async startAuthorize(e,t,n){try{let{data:r}=await Q.installFromCatalog(e.id,{scopes:n&&n.length?n:void 0,return_url:J(),method_id:t.id,...this.pendingCreateNew?{create_new:!0}:{}});if(r&&r.type===`form`){this.byocDialogCatalog=e,this.byocDialogMethod=t,this.byocDialogVisible=!0;return}r&&r.authorization_url?await this.runAuthorizePopup(r.authorization_url):r&&r.type===`active`&&await this.fetchConnections()}catch(e){this.pendingCreateNew=!1,E.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}},async runAuthorizePopup(e){try{await me(e)}catch(e){this.pendingCreateNew=!1,E.error(e?.message===`desktop-authorize-unsupported`?this.$t(`connection.message.desktopUpdateRequired`):e?.message||this.$t(`connection.message.installFailed`));return}this.pendingCreateNew=!1,await this.fetchConnections()},openCustomDialog(){this.customDialogVisible=!0},onAddCommand(e){e===`browse`?this.browseDialogVisible=!0:e===`custom`&&this.openCustomDialog()},async onCatalogInstalled(){this.pendingCreateNew=!1,await Promise.all([this.fetchConnections(),this.fetchCatalog()])},openBrowserPairing(){this.browserDevicePickerVisible=!1,this.pairingDialogVisible=!0},clearBrowserDialog(){this.browserDevicePickerVisible=!1,this.browserRebindConnectionId=null,this.browserDialogCatalog=null,this.browserDialogMethod=null,this.pendingCreateNew=!1},onBrowserPickerVisibility(e){e||this.$nextTick(()=>{!this.pairingDialogVisible&&!this.browserInstalling&&this.clearBrowserDialog()})},openBrowserRebind(e){let t=this.catalogForConnection(e),n=e.method_snapshot;!t||!n||(this.browserRebindConnectionId=e.id,this.browserDialogCatalog=t,this.browserDialogMethod=n,this.browserDevicePickerVisible=!0)},onBrowserPaired(e){this.pairedBrowserDevice=e,this.pairingDialogVisible=!1},async onBrowserPairingClosed(){if(this.browserDialogCatalog&&this.browserDialogMethod){let e=this.pairedBrowserDevice;this.pairedBrowserDevice=null,e?await this.$refs.browserDevicePicker?.refreshAfterPair(e):this.browserDevicePickerVisible=!0;return}this.pairedBrowserDevice=null,this.clearBrowserDialog()},async stopBrowserSessions(e){this.refreshingId=e.id;try{let{data:t}=await Q.stopBrowserSessions(e.id);E.success(this.$t(`connection.message.browserSessionsStopped`,{count:t.stopped_session_count})),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.browserSessionStopFailed`))}finally{this.refreshingId=null}},async onBrowserDeviceSelected(e){let t=this.browserDialogCatalog,n=this.browserDialogMethod;if(!(!t||!n)){this.browserInstalling=!0;try{if(this.browserRebindConnectionId){let{data:t}=await Q.rebindBrowserDevice(this.browserRebindConnectionId,e);this.connections=this.connections.map(e=>e.id===t.id?t:e),this.browserDevicePickerVisible=!1,this.browserRebindConnectionId=null,this.browserDialogCatalog=null,this.browserDialogMethod=null,E.success(this.$t(`connection.message.browserRebindSuccess`));return}let{data:r}=await Q.installFromCatalog(t.id,{return_url:J(),method_id:n.id,browser_device_id:e});if(r.type!==`active`)throw Error(this.$t(`connection.message.installFailed`));this.browserDevicePickerVisible=!1,this.browserDialogCatalog=null,this.browserDialogMethod=null,E.success(this.$t(`connection.message.installed`,{name:t.name})),await this.onCatalogInstalled()}catch(e){let t=e?.response?.data?.detail||e?.message||this.$t(`connection.message.installFailed`);this.$refs.browserDevicePicker?.showInstallError(String(t))}finally{this.browserInstalling=!1}}},async onConnectCustom(){if(this.customServerUrl){this.customAuthorizing=!0;try{let{data:e}=await Q.authorizeCustom({name:this.customName||void 0,server_url:this.customServerUrl,client_id:this.customClientId||void 0,client_secret:this.customClientSecret||void 0,provider:`mcp`,return_url:J()});e?.authorization_url&&(this.customDialogVisible=!1,await this.runAuthorizePopup(e.authorization_url))}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}finally{this.customAuthorizing=!1}}},async onReconnect(e){if(!e.installable)return;this.pendingCreateNew=!1;let t=this.selectedItem?.connection?.method_id,n=X(e,t);if(n&&t&&n.id===t){await this.connectWithMethod(e,n);return}await this.onConnect(e)},onDetailAction(e){let t=this.selectedItem,n=t?.connection;if(!(!t||!n))switch(e){case`refresh`:this.onRefresh(n);break;case`rebind`:this.openBrowserRebind(n);break;case`stopSessions`:this.stopBrowserSessions(n);break;case`reconnect`:t.catalog&&this.onReconnect(t.catalog);break;case`addAccount`:t.catalog&&this.onAddAccount(t.catalog);break;case`setDefault`:this.onSetDefault(n);break;case`rename`:this.onRename(n);break;case`disconnect`:this.onDisconnect(n);break}},async onBrowseAddAccount(e){this.browseDialogVisible=!1,await this.onAddAccount(e.item)},async onBrowseManage(e){this.browseDialogVisible=!1;let t=e.item.identifier;if(!t)return;let n=++this.manageRequestId,r=this.findConnectionRow(t),i=!0;if(!r){if(i=await this.fetchConnections(),n!==this.manageRequestId)return;r=this.findConnectionRow(t)}if(!r){i&&E.warning(this.$t(`connection.message.manageUnavailable`));return}this.searchQuery=``,this.collapsedGroups={...this.collapsedGroups,[r.groupKey]:!1},this.onSelect(r)},findConnectionRow(e){let t=this.orderedItems.filter(t=>t.connection?.connector_identifier===e);if(!t.length)return null;let n=t.filter(e=>this.normalizedStatus(e.connection.status)===`active`),r=n.length?n:t;return r.find(e=>e.connection?.is_default)||r[0]},async onAddAccount(e){await this.onConnect(e,!0)},async onSetDefault(e){try{await Q.setDefault(e.id),E.success(this.$t(`connection.message.defaultUpdated`)),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.defaultUpdateFailed`))}},async onRename(e){let t;try{let{value:n}=await q.prompt(this.$t(`connection.message.renamePrompt`),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),inputValue:this.connectionAccountLabel(e),inputValidator:e=>(e||``).length<=64,inputErrorMessage:this.$t(`connection.message.renameTooLong`),roundButton:!0});t=n||``}catch{return}try{await Q.rename(e.id,t),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.renameFailed`))}},async onRefresh(e){this.refreshingId=e.id;try{await Q.refresh(e.id),E.success(this.$t(`connection.message.refreshed`)),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||this.$t(`connection.message.refreshFailed`))}finally{this.refreshingId=null}},async onDisconnect(e){try{await q.confirm(this.$t(`connection.message.disconnectConfirm`,{provider:this.connectionProviderName(e)}),``,{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`,roundButton:!0})}catch{return}try{await Q.disconnect(e.id);let t=`connection:${e.id}`;this.connections=this.connections.filter(t=>t.id!==e.id),this.selectedKey===t&&(this.selectedKey=this.orderedItems[0]?.key||null),E.success(this.$t(`connection.message.disconnected`,{provider:this.connectionProviderName(e)})),await this.fetchConnections()}catch(e){E.error(e?.response?.data?.detail||e?.message||`Failed to disconnect`)}}}}),Rt={class:`connectors-page`},zt={class:`connectors-shell`},Bt={class:`connectors-list`},Vt={class:`list-toolbar`},Ht=[`aria-label`,`title`],Ut={class:`list-scroll`},Wt={class:`list-group`},Gt={class:`group-header skeleton-header`},Kt={class:`group-items`},qt={class:`group-header`},Jt=[`aria-label`,`title`,`onClick`],Yt=[`onClick`],Xt={class:`group-items`},Zt=[`onClick`],Qt={class:`list-item-icon`},$t=[`src`,`alt`,`onError`],en={class:`list-item-name`},tn=[`title`],nn={key:1,class:`list-item-badge list-item-badge-default`},rn={key:2,class:`list-item-badge`},an=[`title`],on={key:2,class:`list-empty`},sn={class:`list-footer`},cn={class:`connectors-detail`},ln={key:0,class:`detail-skeleton`},un={class:`detail-skeleton-header`},dn={class:`detail-skeleton-section`},fn={key:1,class:`detail-empty`},pn={class:`detail-empty-title`},mn={class:`detail-empty-hint`},hn={class:`detail-header`},gn={class:`detail-title-row`},_n={class:`detail-icon`},vn=[`src`,`alt`],yn={class:`detail-title`},bn={class:`detail-actions`},xn=[`aria-label`,`title`],Sn={key:0,class:`detail-server-url`},Cn={key:1,class:`detail-description`},wn={key:0,class:`detail-section`},Tn={class:`section-heading`},En={class:`section-title`},Dn={class:`overview-text`},On={key:1,class:`detail-section`},kn={class:`account-row`},An={class:`account-info`},jn={class:`account-name`},Mn={key:0,class:`account-sub`},Nn={key:2,class:`detail-section browser-session`},Pn={class:`browser-session-heading`},Fn={class:`browser-session-icon`},In={class:`browser-session-copy`},Ln={class:`meta-grid browser-session-meta`},Rn={key:0},zn={key:1,class:`muted`},Bn={class:`browser-digest-row`},Vn={key:0,class:`browser-capabilities`},Hn={class:`browser-capabilities-label`},Un={class:`browser-capability-list`},Wn={key:3,class:`detail-section`},Gn={class:`meta-grid`},Kn={key:0},qn={key:4,class:`detail-section`},Jn={class:`meta-grid`},Yn={key:0},Xn={key:1},Zn={key:5,class:`detail-section`},Qn={class:`section-heading`},$n={class:`section-title`},er={class:`section-count`},tr={class:`section-hint`},nr={class:`suggestion-list`},rr=[`role`,`tabindex`,`aria-disabled`,`onClick`,`onKeyup`],ir={class:`suggestion-text`},ar={key:6,class:`detail-section`},or={class:`section-heading`},sr={class:`section-title`},cr={key:0,class:`section-count`},lr={key:0,class:`permission-empty`},ur={key:1,class:`permission-empty error`},dr={key:2,class:`permission-list`},fr={class:`permission-name`},pr={class:`permission-tool-name`},mr={key:0,class:`permission-tool-desc`},hr={key:3,class:`permission-empty`},gr={key:1,class:`permission-empty`},_r={key:0,class:`permission-list`},vr={class:`permission-name`},yr={class:`permission-scope-label`},br={key:0,class:`permission-tool-desc`},xr={key:1,class:`permission-empty`},Sr={key:7,class:`detail-section meta-section`},Cr={class:`meta-grid`},wr={key:0},Tr={key:1,class:`muted`},Er={key:0},Dr={key:1,class:`muted`},Or={class:`custom-dialog-intro`},kr={class:`custom-dialog-form`},Ar={key:0,class:`advanced-fields`},jr={class:`custom-trust-copy`},Mr={class:`text-sm text-gray-500 mb-4`},Nr={class:`scope-dialog-label`},Pr={key:0,class:`scope-dialog-desc`};function Fr(_,v,y,b,x,S){let C=u(`console-page-header`),w=u(`search-icon`),T=u(`el-input`),E=u(`add-icon`),D=u(`el-dropdown-item`),O=u(`el-dropdown-menu`),k=u(`el-dropdown`),A=u(`el-skeleton-item`),j=u(`el-skeleton`),M=u(`expand-right-icon`),N=u(`expand-down-icon`),P=u(`desktop-icon`),F=u(`connection-icon`),I=u(`el-tag`),L=u(`el-button`),R=u(`more-icon`),z=u(`el-avatar`),te=u(`suggestion-icon`),ne=u(`lock-icon`),re=u(`external-link-icon`),ie=u(`el-tooltip`),ae=u(`browse-connectors`),oe=u(`byoc-credentials-dialog`),se=u(`connector-method-picker`),ce=u(`browser-pairing-dialog`),le=u(`browser-device-picker`),B=u(`collapse-up-icon`),V=u(`el-dialog`),ue=u(`el-checkbox`),H=u(`el-checkbox-group`),de=m(`loading`);return g(),s(`div`,Rt,[a(C,{title:_.$t(`connection.title.connections`),subtitle:_.$t(`connection.message.pageDescription`)},null,8,[`title`,`subtitle`]),e(`div`,zt,[e(`aside`,Bt,[e(`div`,Vt,[a(T,{modelValue:_.searchQuery,"onUpdate:modelValue":v[0]||=e=>_.searchQuery=e,class:`search-input`,size:`default`,clearable:``,placeholder:_.$t(`connection.placeholder.search`)},{prefix:p(()=>[a(w,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`]),a(k,{trigger:`click`,placement:`bottom-end`,onCommand:_.onAddCommand},{dropdown:p(()=>[a(O,null,{default:p(()=>[a(D,{command:`browse`},{default:p(()=>[a(w,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.title.browse`)),1)]),_:1}),a(D,{command:`custom`},{default:p(()=>[a(E,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.addCustomConnector`)),1)]),_:1})]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`add-button`,"aria-label":_.$t(`connection.title.addCustomConnector`),title:_.$t(`connection.title.addCustomConnector`)},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Ht)]),_:1},8,[`onCommand`])]),d((g(),s(`div`,Ut,[_.firstLoadComplete?_.filteredGroups.length?(g(!0),s(l,{key:1},h(_.filteredGroups,t=>(g(),s(`div`,{key:t.key,class:`list-group`},[e(`div`,qt,[e(`button`,{type:`button`,class:`group-chevron-button`,"aria-label":_.$t(t.collapsed?`common.button.expand`:`common.button.collapse`),title:_.$t(t.collapsed?`common.button.expand`:`common.button.collapse`),onClick:e=>_.toggleGroup(t.key)},[t.collapsed?(g(),f(M,{key:0,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`})):(g(),f(N,{key:1,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`}))],8,Jt),e(`span`,{class:`group-title`,onClick:e=>_.toggleGroup(t.key)},i(t.label),9,Yt)]),d(e(`ul`,Xt,[(g(!0),s(l,null,h(t.items,r=>(g(),s(`li`,{key:r.key,class:n({"list-item":!0,active:_.selectedKey===r.key}),onClick:e=>_.onSelect(r)},[e(`span`,Qt,[r.faviconUrl?(g(),s(`img`,{key:0,src:r.faviconUrl,alt:r.name,onError:e=>_.onFaviconError(r)},null,40,$t)):r.browserSession?(g(),f(P,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(F,{key:2,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`span`,en,i(r.name),1),r.accountLabel?(g(),s(`span`,{key:0,class:`list-item-account`,title:r.accountLabel},i(r.accountLabel),9,tn)):o(``,!0),r.isDefault?(g(),s(`span`,nn,i(_.$t(`connection.label.defaultAccount`)),1)):o(``,!0),r.byo?(g(),s(`span`,rn,i(_.$t(`connection.label.custom`)),1)):t.key===`available`?(g(),s(`span`,{key:3,class:`list-item-badge list-item-badge-hint`,title:_.$t(`connection.message.notConnectedYet`)},i(_.$t(`connection.label.notConnected`)),9,an)):o(``,!0)],10,Zt))),128))],512),[[ee,!t.collapsed]])]))),128)):(g(),s(`div`,on,i(_.searchQuery?_.$t(`connection.message.noMatch`):_.$t(`connection.message.noConnections`)),1)):(g(),f(j,{key:0,animated:``},{template:p(()=>[e(`div`,Wt,[e(`div`,Gt,[a(A,{variant:`text`,style:{width:`100px`,height:`11px`}})]),e(`ul`,Kt,[(g(),s(l,null,h(5,t=>e(`li`,{key:`skeleton-${t}`,class:`list-item skeleton-item`},[a(A,{variant:`image`,style:{width:`20px`,height:`20px`,"border-radius":`4px`}}),a(A,{variant:`text`,style:{flex:`1 1 auto`,height:`14px`}})])),64))])])]),_:1}))])),[[de,_.firstLoadComplete&&(_.loading||_.loadingCatalog)]]),e(`div`,sn,[e(`button`,{type:`button`,class:`browse-all-button`,onClick:v[1]||=e=>_.browseDialogVisible=!0},[a(w,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.browseAll`)),1)])])]),e(`section`,cn,[_.firstLoadComplete?_.selectedItem?o(``,!0):(g(),s(`div`,fn,[a(F,{class:`detail-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,pn,i(_.$t(`connection.message.selectConnector`)),1),e(`p`,mn,i(_.$t(`connection.message.noConnectionsHint`)),1)])):(g(),s(`div`,ln,[a(j,{animated:``},{template:p(()=>[e(`div`,un,[a(A,{variant:`circle`,style:{width:`32px`,height:`32px`}}),a(A,{variant:`h3`,style:{width:`220px`,height:`22px`,"margin-left":`12px`}})]),a(A,{variant:`text`,style:{width:`60%`,height:`12px`,"margin-top":`12px`}}),e(`div`,dn,[a(A,{variant:`text`,style:{width:`140px`,height:`14px`}}),a(A,{variant:`p`,style:{width:`33%`,"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{"margin-top":`16px`}}),a(A,{variant:`p`,style:{width:`61%`,"margin-top":`16px`}})])]),_:1})])),_.firstLoadComplete&&_.selectedItem?(g(),s(l,{key:2},[e(`header`,hn,[e(`div`,gn,[e(`span`,_n,[_.selectedItem.faviconUrl?(g(),s(`img`,{key:0,src:_.selectedItem.faviconUrl,alt:_.selectedItem.name,onError:v[2]||=e=>_.onFaviconError(_.selectedItem)},null,40,vn)):_.selectedItem.browserSession?(g(),f(P,{key:1,size:20,"aria-hidden":`true`,focusable:`false`})):(g(),f(F,{key:2,size:20,"aria-hidden":`true`,focusable:`false`}))]),e(`h3`,yn,i(_.selectedItem.name),1),_.selectedItem.byo?(g(),f(I,{key:0,size:`small`,type:`info`,class:`detail-custom-tag`},{default:p(()=>[r(i(_.$t(`connection.label.custom`)),1)]),_:1})):o(``,!0),e(`div`,bn,[!_.selectedItem.connection&&_.selectedItem.catalog?(g(),f(L,{key:0,type:`primary`,size:`small`,disabled:!_.selectedItem.catalog?.installable,onClick:v[3]||=e=>_.selectedItem.catalog&&_.onConnect(_.selectedItem.catalog)},{default:p(()=>[r(i(_.$t(`connection.button.connect`)),1)]),_:1},8,[`disabled`])):o(``,!0),_.selectedItem.connection&&_.detailActions.length?(g(),f(k,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:_.onDetailAction},{dropdown:p(()=>[a(O,{class:`connection-actions-menu`},{default:p(()=>[(g(!0),s(l,null,h(_.detailActions,e=>(g(),f(D,{key:e.command,command:e.command,disabled:e.disabled,divided:e.divided,class:n({"actions-item-danger":e.danger})},{default:p(()=>[r(i(e.label),1)]),_:2},1032,[`command`,`disabled`,`divided`,`class`]))),128))]),_:1})]),default:p(()=>[e(`button`,{type:`button`,class:`actions-button`,"aria-label":_.$t(`connection.title.actions`),title:_.$t(`connection.title.actions`)},[a(R,{size:16,"aria-hidden":`true`,focusable:`false`})],8,xn)]),_:1},8,[`onCommand`])):o(``,!0)])]),_.selectedItem.serverUrl?(g(),s(`p`,Sn,i(_.selectedItem.serverUrl),1)):_.selectedItem.description?(g(),s(`p`,Cn,i(_.selectedItem.description),1)):o(``,!0)]),_.overviewText?(g(),s(`div`,wn,[e(`div`,Tn,[e(`span`,En,i(_.$t(`connection.title.overview`)),1)]),e(`p`,Dn,i(_.overviewText),1)])):o(``,!0),_.selectedItem.connection&&!_.selectedItem.custom&&_.showsAccountIdentity?(g(),s(`div`,On,[e(`div`,kn,[_.connectionAvatar(_.selectedItem.connection)?(g(),f(z,{key:0,src:_.connectionAvatar(_.selectedItem.connection),size:40},null,8,[`src`])):(g(),f(z,{key:1,size:40,class:`account-avatar-fallback`},{default:p(()=>[r(i(_.connectionAccountInitial(_.selectedItem.connection)),1)]),_:1})),e(`div`,An,[e(`span`,jn,i(_.connectionAccountName(_.selectedItem.connection)),1),_.connectionAccountSubtext(_.selectedItem.connection)?(g(),s(`span`,Mn,i(_.connectionAccountSubtext(_.selectedItem.connection)),1)):o(``,!0)]),a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])):o(``,!0),_.selectedItem.connection&&_.selectedItem.browserSession?(g(),s(`div`,Nn,[e(`div`,Pn,[e(`span`,Fn,[a(P,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,In,[e(`strong`,null,i(_.selectedItem.connection.browser_device?.name||_.$t(`user.browserDevice.title`)),1),e(`span`,null,i(_.$t(`user.browserDevice.localApprovalOnly`)),1)]),a(I,{type:_.browserDeviceStatusTagType(_.selectedItem.connection),size:`small`},{default:p(()=>[r(i(_.browserDeviceCompatibilityLabel(_.selectedItem.connection)),1)]),_:1},8,[`type`])]),e(`dl`,Ln,[e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.platform`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.platform||`—`),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.extension_version||`—`),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`user.browserDevice.lastSeen`)),1),e(`dd`,null,[_.selectedItem.connection.browser_device?.last_seen_at?(g(),s(`span`,Rn,i(_.$dayjs.format(_.selectedItem.connection.browser_device.last_seen_at)),1)):(g(),s(`span`,zn,i(_.$t(`user.browserDevice.neverSeen`)),1))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.createdAt`)),1),e(`dd`,null,i(_.$dayjs.format(_.selectedItem.connection.browser_device?.created_at||_.selectedItem.connection.created_at)),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.connectionRevision`)),1),e(`dd`,null,i(_.selectedItem.connection.revision),1)]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.activeSessions`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.active_session_count??0),1)]),e(`div`,Bn,[e(`dt`,null,i(_.$t(`connection.field.wireContractDigest`)),1),e(`dd`,null,i(_.selectedItem.connection.browser_device?.wire_contract_digest||`—`),1)])]),_.selectedItem.connection.browser_device?.capabilities?.length?(g(),s(`div`,Vn,[e(`span`,Hn,i(_.$t(`user.browserDevice.capabilities`)),1),e(`div`,Un,[(g(!0),s(l,null,h(_.selectedItem.connection.browser_device.capabilities,e=>(g(),f(I,{key:e,size:`small`,effect:`plain`},{default:p(()=>[r(i(e.replaceAll(`_`,` `)),1)]),_:2},1024))),128))])])):o(``,!0)])):o(``,!0),_.selectedItem.connection&&_.selectedItem.custom?(g(),s(`div`,Wn,[e(`dl`,Gn,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])]),_.customAuthSummary(_.selectedItem.connection)?(g(),s(`div`,Kn,[e(`dt`,null,i(_.$t(`connection.label.authMethod`)),1),e(`dd`,null,i(_.customAuthSummary(_.selectedItem.connection)),1)])):o(``,!0)])])):o(``,!0),_.selectedItem.connection&&_.selectedItem.byoc?(g(),s(`div`,qn,[e(`dl`,Jn,[_.showsAccountIdentity?o(``,!0):(g(),s(`div`,Yn,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(I,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])),_.byocCredentialSummary(_.selectedItem)?(g(),s(`div`,Xn,[e(`dt`,null,i(_.$t(`connection.label.credentials`)),1),e(`dd`,null,i(_.byocCredentialSummary(_.selectedItem)),1)])):o(``,!0)])])):o(``,!0),_.suggestions.length?(g(),s(`div`,Zn,[e(`div`,Qn,[e(`span`,$n,i(_.$t(`connection.title.tryIt`)),1),e(`span`,er,i(_.suggestions.length),1)]),e(`p`,tr,i(_.suggestionsLocked?_.$t(`connection.message.tryItConnectFirst`):_.$t(`connection.message.tryItHint`)),1),e(`ul`,nr,[(g(!0),s(l,null,h(_.suggestions,r=>(g(),f(ie,{key:r.id,content:_.$t(`connection.message.tryItConnectFirst`),disabled:!_.suggestionsLocked,placement:`top`},{default:p(()=>[e(`li`,{class:n([`suggestion-row`,{locked:_.suggestionsLocked}]),role:_.suggestionsLocked?void 0:`button`,tabindex:_.suggestionsLocked?void 0:0,"aria-disabled":_.suggestionsLocked?`true`:void 0,onClick:e=>!_.suggestionsLocked&&_.onSuggestionClick(r),onKeyup:[c(e=>!_.suggestionsLocked&&_.onSuggestionClick(r),[`enter`]),c(t(e=>!_.suggestionsLocked&&_.onSuggestionClick(r),[`prevent`]),[`space`])]},[a(te,{class:`suggestion-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,ir,i(r.prompt),1),_.suggestionsLocked?(g(),f(ne,{key:0,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(re,{key:1,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`}))],42,rr)]),_:2},1032,[`content`,`disabled`]))),128))])])):o(``,!0),_.selectedItem.browserSession?o(``,!0):(g(),s(`div`,ar,[e(`div`,or,[e(`span`,sr,i(_.$t(`connection.title.toolPermissions`)),1),_.permissionRowCount?(g(),s(`span`,cr,i(_.permissionRowCount),1)):o(``,!0)]),_.selectedItem.custom&&_.selectedItem.connection?(g(),s(l,{key:0},[_.selectedMcpToolsLoading?(g(),s(`p`,lr,i(_.$t(`connection.message.toolsLoading`)),1)):_.selectedMcpToolsError?(g(),s(`p`,ur,i(_.selectedMcpToolsError),1)):_.selectedMcpTools&&_.selectedMcpTools.length?(g(),s(`ul`,dr,[(g(!0),s(l,null,h(_.selectedMcpTools,t=>(g(),s(`li`,{key:t.name,class:`permission-row`},[e(`span`,fr,[e(`span`,pr,i(t.name),1),t.description?(g(),s(`span`,mr,i(t.description),1)):o(``,!0)])]))),128))])):(g(),s(`p`,hr,i(_.$t(`connection.label.noTools`)),1))],64)):_.isMcpConnector&&!_.selectedItem.connection?(g(),s(`p`,gr,i(_.$t(`connection.label.toolsConnectFirst`)),1)):(g(),s(l,{key:2},[_.detailScopes.length?(g(),s(`ul`,_r,[(g(!0),s(l,null,h(_.detailScopes,t=>(g(),s(`li`,{key:t.id,class:`permission-row`},[e(`span`,vr,[e(`span`,yr,i(t.label),1),t.desc?(g(),s(`span`,br,i(t.desc),1)):o(``,!0)])]))),128))])):(g(),s(`p`,xr,i(_.$t(`connection.label.noScopes`)),1))],64))])),_.selectedItem.connection&&!_.selectedItem.browserSession?(g(),s(`div`,Sr,[e(`dl`,Cr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.expiresAt`)),1),e(`dd`,null,[_.selectedItem.connection.expires_at?(g(),s(`span`,wr,i(_.$dayjs.format(_.selectedItem.connection.expires_at)),1)):(g(),s(`span`,Tr,`—`))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.lastRefreshedAt`)),1),e(`dd`,null,[_.selectedItem.connection.last_refreshed_at?(g(),s(`span`,Er,i(_.$dayjs.format(_.selectedItem.connection.last_refreshed_at)),1)):(g(),s(`span`,Dr,i(_.$t(`connection.label.never`)),1))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.createdAt`)),1),e(`dd`,null,i(_.$dayjs.format(_.selectedItem.connection.created_at)),1)])])])):o(``,!0)],64)):o(``,!0)])]),a(ae,{modelValue:_.browseDialogVisible,"onUpdate:modelValue":v[4]||=e=>_.browseDialogVisible=e,onInstalled:_.onCatalogInstalled,onAddAccount:_.onBrowseAddAccount,onManage:_.onBrowseManage},null,8,[`modelValue`,`onInstalled`,`onAddAccount`,`onManage`]),a(oe,{modelValue:_.byocDialogVisible,"onUpdate:modelValue":[v[5]||=e=>_.byocDialogVisible=e,v[6]||=e=>!e&&_.clearCreateNewIntent()],item:_.byocDialogCatalog,method:_.byocDialogMethod,"create-new":_.pendingCreateNew,onInstalled:_.onCatalogInstalled},null,8,[`modelValue`,`item`,`method`,`create-new`,`onInstalled`]),a(se,{modelValue:_.pickerVisible,"onUpdate:modelValue":[v[7]||=e=>_.pickerVisible=e,v[8]||=e=>!e&&_.clearCreateNewIntent()],item:_.pickerCatalog,onSelect:_.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(ce,{modelValue:_.pairingDialogVisible,"onUpdate:modelValue":v[9]||=e=>_.pairingDialogVisible=e,onPaired:_.onBrowserPaired,onClosed:_.onBrowserPairingClosed},null,8,[`modelValue`,`onPaired`,`onClosed`]),a(le,{ref:`browserDevicePicker`,modelValue:_.browserDevicePickerVisible,"onUpdate:modelValue":[v[10]||=e=>_.browserDevicePickerVisible=e,_.onBrowserPickerVisibility],method:_.browserDialogMethod,installing:_.browserInstalling,onPair:_.openBrowserPairing,onSelect:_.onBrowserDeviceSelected},null,8,[`modelValue`,`method`,`installing`,`onPair`,`onSelect`,`onUpdate:modelValue`]),a(V,{modelValue:_.customDialogVisible,"onUpdate:modelValue":v[17]||=e=>_.customDialogVisible=e,title:_.$t(`connection.title.addCustomConnector`),width:`560px`,"close-on-click-modal":!1},{footer:p(()=>[a(L,{onClick:v[16]||=e=>_.customDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(L,{type:`primary`,loading:_.customAuthorizing,disabled:!_.customServerUrl,onClick:_.onConnectCustom},{default:p(()=>[r(i(_.$t(`connection.button.addCustom`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:p(()=>[e(`p`,Or,i(_.$t(`connection.message.customConnectorHint`)),1),e(`div`,kr,[a(T,{modelValue:_.customName,"onUpdate:modelValue":v[11]||=e=>_.customName=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.name`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(T,{modelValue:_.customServerUrl,"onUpdate:modelValue":v[12]||=e=>_.customServerUrl=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.serverUrl`),clearable:``,onKeyup:c(_.onConnectCustom,[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeyup`]),e(`button`,{type:`button`,class:`advanced-toggle`,onClick:v[13]||=e=>_.customAdvancedVisible=!_.customAdvancedVisible},[_.customAdvancedVisible?(g(),f(B,{key:0,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(N,{key:1,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,i(_.$t(`connection.label.advancedSettings`)),1)]),_.customAdvancedVisible?(g(),s(`div`,Ar,[a(T,{modelValue:_.customClientId,"onUpdate:modelValue":v[14]||=e=>_.customClientId=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.clientId`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(T,{modelValue:_.customClientSecret,"onUpdate:modelValue":v[15]||=e=>_.customClientSecret=e,placeholder:_.$t(`connection.placeholder.clientSecret`),clearable:``,"show-password":``},null,8,[`modelValue`,`placeholder`])])):o(``,!0),e(`p`,jr,i(_.$t(`connection.message.customConnectorTrust`)),1)])]),_:1},8,[`modelValue`,`title`]),a(V,{modelValue:_.scopeDialogVisible,"onUpdate:modelValue":v[20]||=e=>_.scopeDialogVisible=e,title:_.scopeDialogCatalog?_.$t(`connection.message.selectScopes`,{provider:_.scopeDialogCatalog.name}):``,width:`480px`,"close-on-click-modal":!1,onClosed:v[21]||=e=>!_.scopeDialogCatalog&&_.clearCreateNewIntent()},{footer:p(()=>[a(L,{onClick:v[19]||=e=>_.scopeDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(L,{type:`primary`,onClick:_.onConfirmScopes},{default:p(()=>[r(i(_.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])]),default:p(()=>[e(`p`,Mr,i(_.$t(`connection.message.selectScopesHint`)),1),a(H,{modelValue:_.selectedScopes,"onUpdate:modelValue":v[18]||=e=>_.selectedScopes=e},{default:p(()=>[(g(!0),s(l,null,h(_.scopeDialogPermissions,t=>(g(),s(`div`,{key:t.id,class:`scope-dialog-row`},[a(ue,{value:t.id,label:t.id},{default:p(()=>[e(`span`,Nr,i(t.label||t.id),1)]),_:2},1032,[`value`,`label`]),t.desc?(g(),s(`p`,Pr,i(t.desc),1)):o(``,!0)]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`])])}var Ir=U(Lt,[[`render`,Fr],[`__scopeId`,`data-v-7e68c7cb`]]);export{Ir as default};
|