@acedatacloud/nexior 3.345.2 → 3.346.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-DHOL8BlK.js → ApiCodeButton-B9yZleCi.js} +1 -1
- package/dist/assets/{Artifacts-DgzFQ1A8.js → Artifacts-GSK-7fQS.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-LE9Tci3-.js → AskUserQuestionCard-Bv8ZziLy.js} +1 -1
- package/dist/assets/{AudioPreview-pOVgaoro.js → AudioPreview-DVe8ir7f.js} +1 -1
- package/dist/assets/{Auth-D_tm9-ld.js → Auth-DNs5cbm3.js} +1 -1
- package/dist/assets/{Bare-vl9R8Op8.js → Bare-BLgeO9Xr.js} +1 -1
- package/dist/assets/{BotPlaceholder-Dg0bEdYP.js → BotPlaceholder-D7bwBdKu.js} +1 -1
- package/dist/assets/{BottomFooter-i4wEumVX.js → BottomFooter-CYXxGR0a.js} +1 -1
- package/dist/assets/{Callback-1lKD65PW.js → Callback--_5a3TJ6.js} +1 -1
- package/dist/assets/{CodeSnippet-B5Ofzd0C.js → CodeSnippet-Dzte-zWV.js} +1 -1
- package/dist/assets/{Console-y2lapM8u.js → Console-BFcRP_jR.js} +1 -1
- package/dist/assets/{Consumption-Mf5szBoK.js → Consumption-CU3wkCsI.js} +1 -1
- package/dist/assets/{Conversation-3OGqmooH.js → Conversation-BmOpE5zw.js} +1 -1
- package/dist/assets/{Conversation-Dx4qL5OF.js → Conversation-Sne7Kwaf.js} +1 -1
- package/dist/assets/{CopyToClipboard-cJko0Bu0.js → CopyToClipboard-Dz3wHUG2.js} +1 -1
- package/dist/assets/{Detail-BsvHeY5Z.js → Detail-BJrknGHb.js} +2 -2
- package/dist/assets/{Extra-JG1LPo5V.js → Extra-CkiEimt7.js} +1 -1
- package/dist/assets/{FilePreview-yWPUm4zo.js → FilePreview-VYuY6wv_.js} +1 -1
- package/dist/assets/{Hailuo-BSFJKqcH.js → Hailuo-CMIXv7QN.js} +1 -1
- package/dist/assets/{History-CoYqIzgw.js → History-CxMGmNCL.js} +1 -1
- package/dist/assets/{ImagePreview-GXuxqKvN.js → ImagePreview-Cbfagh9f.js} +1 -1
- package/dist/assets/{ImageWrapper-C4HJ9CNP.js → ImageWrapper-DfkcIpLJ.js} +1 -1
- package/dist/assets/{Index-BMvCP-aL2.js → Index-B6cPNtyI2.js} +1 -1
- package/dist/assets/{Index-BP90tpaH.js → Index-B7MJV_9v.js} +1 -1
- package/dist/assets/{Index-C2FGUSQW.js → Index-BCR59Hfs.js} +1 -1
- package/dist/assets/{Index-DdWwq6Rz2.js → Index-BEhMpQuh2.js} +1 -1
- package/dist/assets/{Index-FXLYChrD.js → Index-BMAQoRV0.js} +1 -1
- package/dist/assets/{Index-DWdmwKIo.js → Index-BNZBY6SX.js} +1 -1
- package/dist/assets/{Index-Bjj85e0G.js → Index-BVHVTjTa.js} +1 -1
- package/dist/assets/{Index-DvwT7mQN.js → Index-Bd-jDb0h.js} +1 -1
- package/dist/assets/{Index-D2ro1tLJ.js → Index-BdaPTfFY.js} +1 -1
- package/dist/assets/{Index-RZWVOtfc.js → Index-BgkeHorc.js} +1 -1
- package/dist/assets/{Index-DlLi3qzp.js → Index-BvScBMV5.js} +1 -1
- package/dist/assets/{Index-DhQGqtnj.js → Index-Bva0MLNM.js} +1 -1
- package/dist/assets/{Index-rl6N_PqL.js → Index-CSc-_Evz.js} +1 -1
- package/dist/assets/{Index-idTqY4z4.js → Index-CZ_IPDW9.js} +1 -1
- package/dist/assets/{Index-f9j2ATLK.js → Index-CrNjByqt.js} +1 -1
- package/dist/assets/{Index-VwO0qqQC.js → Index-D5AW0jwE.js} +1 -1
- package/dist/assets/{Index-CMGIfA6Q.js → Index-D7mt7TaA.js} +1 -1
- package/dist/assets/{Index-B6KRJLQl.js → Index-DR__MyDg.js} +1 -1
- package/dist/assets/{Index-C4lPOxuH.js → Index-DRe9DAnC.js} +1 -1
- package/dist/assets/{Index-DFwhRTVm.js → Index-DZUDHwae.js} +1 -1
- package/dist/assets/{Index-B1-Eo6jL2.js → Index-Dj7G-cpX2.js} +1 -1
- package/dist/assets/{Index-bm52nfhK.js → Index-DkY8WMxG.js} +1 -1
- package/dist/assets/{Index-D1L52Pl12.js → Index-DlUH_zQS2.js} +1 -1
- package/dist/assets/{Index-DSapT2zA.js → Index-DmBD32DO.js} +1 -1
- package/dist/assets/{Index-Bq4zL80E.js → Index-Dw5QUQi-.js} +1 -1
- package/dist/assets/{Index-Ba8Xzwia.js → Index-Dx_y1eCj.js} +1 -1
- package/dist/assets/{Index-DSa8hU0H.js → Index-JuCYP1u-.js} +1 -1
- package/dist/assets/{Index-Dk67TFPN.js → Index-a26EcVXw.js} +1 -1
- package/dist/assets/{Index-DKVhrh6u.js → Index-dUbuo0r9.js} +1 -1
- package/dist/assets/{Index-B38lMeLC.js → Index-gw9OnDEd.js} +1 -1
- package/dist/assets/{Index-NBETo8VH.js → Index-iilJt3Eb.js} +1 -1
- package/dist/assets/{Index-_DiPYu1M.js → Index-nALl-bTb.js} +1 -1
- package/dist/assets/{Invitees-Bt3nVBaL.js → Invitees-DGlDHM4T.js} +1 -1
- package/dist/assets/{List-RaXCKQ-4.js → List-BLFySUOI.js} +1 -1
- package/dist/assets/{List-3zesJAYv.js → List-DMGL69kU.js} +1 -1
- package/dist/assets/{List-BQxahxj4.js → List-dDYOUMKp.js} +1 -1
- package/dist/assets/{LocalTools-BdPP0fpe.js → LocalTools-DxH47KG8.js} +1 -1
- package/dist/assets/{LocalTools-BkbHAlJ6.js → LocalTools-bG2gTwy3.js} +1 -1
- package/dist/assets/{Logo-p6uAXQbn.js → Logo-DUyNQ8WP.js} +1 -1
- package/dist/assets/{Main-xLq4-IMX.js → Main-BOXunCBl.js} +1 -1
- package/dist/assets/{Message-CFPqy0rH.js → Message-DfBJi6ix.js} +1 -1
- package/dist/assets/{Model-CC81o3ET.js → Model-WhDFLY7K.js} +1 -1
- package/dist/assets/{Navigator-kvvui1MH.js → Navigator-2v5v-RRM.js} +3 -3
- package/dist/assets/{NotFound-DfSQvgDR.js → NotFound-Q_4CwPKf.js} +1 -1
- package/dist/assets/{Pay-W_DtCYE4.js → Pay-BxGT9Anl.js} +1 -1
- package/dist/assets/{Player-y3-MSjne.js → Player-DivhBCpV.js} +1 -1
- package/dist/assets/{Poivelle-D_lVolfU.js → Poivelle-DKA_h4Oz.js} +1 -1
- package/dist/assets/{PromptTextarea-CbYpzwoW.js → PromptTextarea-D0vVRAGL.js} +1 -1
- package/dist/assets/{RealtimeCall-CLYWF79B.js → RealtimeCall-Dlqj6FgZ.js} +1 -1
- package/dist/assets/{ScheduledTasks-DUTsQLSo.js → ScheduledTasks-DQoVgyti.js} +1 -1
- package/dist/assets/{Status-DoFF8dp-.js → Status-gWLbqdk_.js} +1 -1
- package/dist/assets/{Subscribe-HKMutd_b.js → Subscribe-Ced9gQ93.js} +1 -1
- package/dist/assets/{TabSwitcher-CXBNk2Jn.js → TabSwitcher-DOscZkOl.js} +1 -1
- package/dist/assets/{Tts-BQK3ut6q.js → Tts-CiYeV31V.js} +1 -1
- package/dist/assets/{VideoPlayer-C82ZHbQY.js → VideoPlayer-gcryEYXY.js} +1 -1
- package/dist/assets/{alert-DIz30D6M.js → alert-GdRL1VbZ.js} +1 -1
- package/dist/assets/arrow-down-CvQdL4VC.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-b4MLmmRH.js → arrow-down-wide-narrow-DFASy5mW.js} +1 -1
- package/dist/assets/arrow-left-DaYiEdJ8.js +1 -0
- package/dist/assets/arrow-right-DNrgKFcU.js +1 -0
- package/dist/assets/arrow-up-Ba9DR7nw.js +1 -0
- package/dist/assets/{avatar-BHkcjzyB.js → avatar-D8TkKHtI.js} +1 -1
- package/dist/assets/{basic-BJjT1FNL.js → basic-CyClLjQ1.js} +1 -1
- package/dist/assets/{book-open-D0TnJx6C.js → book-open-DvKfdkP6.js} +1 -1
- package/dist/assets/{box-Dgyp6ebt.js → box-DH_lxvKU.js} +1 -1
- package/dist/assets/{boxes-LgUw2FF3.js → boxes-D_UY5bsU.js} +1 -1
- package/dist/assets/{brain-CCaOAqTw.js → brain-CWo1Rdd7.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-BbZEuoXV.js → chart-no-axes-combined-yReMW_DU.js} +1 -1
- package/dist/assets/{chat-B3d7GFj7.js → chat-Bub3oWvm.js} +1 -1
- package/dist/assets/check-BUSwN8DB.js +1 -0
- package/dist/assets/chevron-down-mgaf2RAP.js +1 -0
- package/dist/assets/chevron-right-DG58QlAu.js +1 -0
- package/dist/assets/circle-check-CNDAROS9.js +1 -0
- package/dist/assets/{circle-question-mark-BGVDalo9.js → circle-question-mark-CGEAilOM.js} +1 -1
- package/dist/assets/{clipboard-list-DxvF7mQl.js → clipboard-list-npZZhsB5.js} +1 -1
- package/dist/assets/clock-B4E5w6Xh.js +1 -0
- package/dist/assets/code-CLa-rx_0.js +1 -0
- package/dist/assets/{codingBridge-DFKjbZGZ.js → codingBridge-B3OPAYSy.js} +1 -1
- package/dist/assets/{codingBridgeNotify-gtzUu2fS.js → codingBridgeNotify-BoPK6Typ.js} +2 -2
- package/dist/assets/{coins-DKNBE6Qj.js → coins-D5GW3F05.js} +1 -1
- package/dist/assets/{collapse-CuE8S-53.js → collapse-Dyicd0uR.js} +1 -1
- package/dist/assets/{copy-Bsiwmxh7.js → copy-BLE4b0Rk.js} +1 -1
- package/dist/assets/{createTaskActions-uwFZEcvD.js → createTaskActions-DPRGrAMy.js} +1 -1
- package/dist/assets/{digitalhuman-BFGGfRue.js → digitalhuman-uoBv-6gN.js} +1 -1
- package/dist/assets/{dollar-sign-D43Am6dU.js → dollar-sign-BTZQ5IBP.js} +1 -1
- package/dist/assets/{download-Diro41oj.js → download-ugZVQtzs.js} +1 -1
- package/dist/assets/{drawer-XEtUP6vu.js → drawer-C2mRXLMv.js} +1 -1
- package/dist/assets/{dropdown-D2boiGeh.js → dropdown-B1VgJTvs.js} +1 -1
- package/dist/assets/{dropdown-BGP_92tw.js → dropdown-NRgGW7sg.js} +1 -1
- package/dist/assets/{ellipsis-RIvFs_kS.js → ellipsis-CuAhqH1Z.js} +1 -1
- package/dist/assets/{esm-AVJZUAMk.js → esm-DLxQUH5S.js} +2 -2
- package/dist/assets/{esm-BPB7EszB.js → esm-DN0v1vbm.js} +1 -1
- package/dist/assets/{esm-Sa03EwHm.js → esm-DXEdtzL-.js} +3 -3
- package/dist/assets/{esm-CzSJd0bO.js → esm-Dem-s0iC.js} +2 -2
- package/dist/assets/esm-DykaFjpI.js +1 -0
- package/dist/assets/{esm-C0ECYZT4.js → esm-WlScv4Nk.js} +1 -1
- package/dist/assets/{esm-DOilI_Jl.js → esm-iA1s6dRV.js} +1 -1
- package/dist/assets/{external-link-BEulx63C.js → external-link-17KdauUd.js} +1 -1
- package/dist/assets/{eye-C_GxV-LX.js → eye-Dw0E2ru9.js} +1 -1
- package/dist/assets/{file-BFoveDCu.js → file-19ngIOrc.js} +1 -1
- package/dist/assets/{file-output-CAI4wawN.js → file-output-CmSbiyeB.js} +1 -1
- package/dist/assets/{file-text-B4gmeFQD.js → file-text-C5lBLJ4n.js} +1 -1
- package/dist/assets/{fish-By4s5ZD1.js → fish-B7RzrhxM.js} +1 -1
- package/dist/assets/{flux-BqaXgzaV.js → flux-Bpo_eaCd.js} +1 -1
- package/dist/assets/{folder-D6Y9CGx5.js → folder-BlpgM8di.js} +1 -1
- package/dist/assets/gauge-CdItSutb.js +1 -0
- package/dist/assets/{globe-B5W6QqYP.js → globe-DsZn3UBo.js} +1 -1
- package/dist/assets/{grokvideo-DraKSc5w.js → grokvideo-ePFRtEqM.js} +1 -1
- package/dist/assets/{hailuo-O0msFer0.js → hailuo-Dc5bboGN.js} +1 -1
- package/dist/assets/{headphones-DHkPi0Wq.js → headphones-BKuO5iMl.js} +1 -1
- package/dist/assets/{history-Dq4itWAv.js → history-AC6LAE7j.js} +1 -1
- package/dist/assets/{house-B6SA515f.js → house-j5EL0BfR.js} +1 -1
- package/dist/assets/{image-CC8Kca6n.js → image-C1C7yKaP.js} +1 -1
- package/dist/assets/{index-DcleBYyK.js → index-CtyvR0M_.js} +3 -3
- package/dist/assets/{index.browser.esm-Bzbei8zV.js → index.browser.esm-Dvj2Ez40.js} +1 -1
- package/dist/assets/{index.es-Diq8xB6S.js → index.es-Bofdfgin.js} +1 -1
- package/dist/assets/{info-bb_yxBOR.js → info-ByV1A-i4.js} +1 -1
- package/dist/assets/{input-number-Cjp5snP0.js → input-number-Dre5SuH8.js} +1 -1
- package/dist/assets/{key-round-DDnX_4Tw.js → key-round-B9u1IGrE.js} +1 -1
- package/dist/assets/{kling-DGAZbyQB.js → kling-CMjxQRqp.js} +1 -1
- package/dist/assets/{languages-CJPHTFUh.js → languages-rfNvjp0r.js} +1 -1
- package/dist/assets/{laptop-18KcKJI3.js → laptop-CnzDXA6k.js} +1 -1
- package/dist/assets/{lightbulb-CN6YRT_p.js → lightbulb-Bd8epvoG.js} +1 -1
- package/dist/assets/{link-wz5KRjuH.js → link-1ZjONMCm.js} +1 -1
- package/dist/assets/loader-circle-BGTPivSI.js +1 -0
- package/dist/assets/{lock-c3_vVe0u.js → lock-D6KC7clx.js} +1 -1
- package/dist/assets/{luma-iHPRXcLv.js → luma-BFw99AK8.js} +1 -1
- package/dist/assets/{maestro-D6PHxptB.js → maestro-CxDwEdc4.js} +1 -1
- package/dist/assets/{mail-B-M0aOEg.js → mail-BjA0R25K.js} +1 -1
- package/dist/assets/{message-circle-B6PARcJP.js → message-circle-o0UhuIPc.js} +1 -1
- package/dist/assets/{mic-Bi_kunmn.js → mic-bNecVz84.js} +1 -1
- package/dist/assets/{midjourney-DhQS9Jcg.js → midjourney-DH8xE64l.js} +1 -1
- package/dist/assets/{mobileLocalExec-CrgKT5KC.js → mobileLocalExec-Dna2uoTE.js} +2 -2
- package/dist/assets/{monitor-CeZg2qQ0.js → monitor-3fuvGmUH.js} +1 -1
- package/dist/assets/{mouse-pointer-2-CQ_pRrwx.js → mouse-pointer-2-ak0oigSi.js} +1 -1
- package/dist/assets/music-2-D0E9Rpfd.js +1 -0
- package/dist/assets/{nanobanana-DiHybVUH.js → nanobanana-DZsd3ll5.js} +1 -1
- package/dist/assets/{omni-CDkPnvNB.js → omni-RF51sS0M.js} +1 -1
- package/dist/assets/{openaiimage-COs5wUBA.js → openaiimage-QX6-Y1kb.js} +1 -1
- package/dist/assets/{pagination-vvyBkYod.js → pagination-BUHac12x.js} +1 -1
- package/dist/assets/{pagination-CJmKfqL7.js → pagination-Ne103nv1.js} +1 -1
- package/dist/assets/{pagination-B9jP2VVc.js → pagination-swlDJy-J.js} +1 -1
- package/dist/assets/{palette-CsfoZXpm.js → palette-BRrLQg6d.js} +1 -1
- package/dist/assets/{paperclip-DtSetnHf.js → paperclip-DOpzm5_U.js} +1 -1
- package/dist/assets/{pause-B1THNPN_.js → pause-C1LwSI76.js} +1 -1
- package/dist/assets/{pencil-CtDd3TP6.js → pencil-Bjaid1A2.js} +1 -1
- package/dist/assets/{pika-MNeL5yQh.js → pika-CwkuLi-_.js} +1 -1
- package/dist/assets/{pixverse-De89GPoh.js → pixverse-CcUeGgiO.js} +1 -1
- package/dist/assets/play-DQjLmeOK.js +1 -0
- package/dist/assets/{plug-8_Gy2lUF.js → plug-sJY3UFaY.js} +1 -1
- package/dist/assets/plus-DaW5ynEv.js +1 -0
- package/dist/assets/{poivelle-B5Z3MfoG.js → poivelle-CdeQn0AH.js} +1 -1
- package/dist/assets/{popover-Cjxj4N_m.js → popover-9cqukBn1.js} +1 -1
- package/dist/assets/{producer-j30OrRCX.js → producer-D74yD7Su.js} +1 -1
- package/dist/assets/{qrart-YCXkFsD4.js → qrart-Dqgh3uCj.js} +1 -1
- package/dist/assets/{realtime-CM0LHNIa.js → realtime-BgxRmcez.js} +1 -1
- package/dist/assets/{refresh-cw-hQ4OI570.js → refresh-cw-DZeHR9Bw.js} +1 -1
- package/dist/assets/rotate-ccw-DnsgObMq.js +1 -0
- package/dist/assets/rotate-cw-Dalea9d_.js +1 -0
- package/dist/assets/{row-CVAeCw-v.js → row-7dD8b5GB.js} +1 -1
- package/dist/assets/search-CBbs0yYc.js +1 -0
- package/dist/assets/{seedance-DGe0TIpc.js → seedance-CEv6QV_d.js} +1 -1
- package/dist/assets/{seedream-B3PSZnUw.js → seedream-BZhDYtPJ.js} +1 -1
- package/dist/assets/{select-DhHdHPnx.js → select-nQ8npFdF.js} +1 -1
- package/dist/assets/{serp-C-cPPwcp.js → serp-aBSHCVnz.js} +1 -1
- package/dist/assets/{shield-BV5U472e.js → shield-CV7x9taH.js} +1 -1
- package/dist/assets/{shuffle-56irRdJU.js → shuffle-CSyD1W-J.js} +1 -1
- package/dist/assets/{slider-CN_kmRfZ.js → slider-D_kWBv7S.js} +1 -1
- package/dist/assets/{sliders-horizontal-hdrnAQe0.js → sliders-horizontal-jGD9tIry.js} +1 -1
- package/dist/assets/{solana-wallets-5ocebAAI.js → solana-wallets-DSXLTUpi.js} +2 -2
- package/dist/assets/{solana-wallets-vue-CLTBJXM3.js → solana-wallets-vue-BokYktFf.js} +1 -1
- package/dist/assets/{sora-BpZGD54y.js → sora-DRjfzxuJ.js} +1 -1
- package/dist/assets/{sparkles-Tv4ndJgM.js → sparkles-BGbOxrsM.js} +1 -1
- package/dist/assets/square-p6BM73a0.js +1 -0
- package/dist/assets/{store-BYBbmJsr.js → store-CgXpJCaI.js} +1 -1
- package/dist/assets/{suno-BEOFEzy9.js → suno-BsuSSv1Q.js} +1 -1
- package/dist/assets/{switch-oO8ZdAv6.js → switch-BldTuOKQ.js} +1 -1
- package/dist/assets/{table-CJvtkIVs.js → table-DcisjwrN.js} +1 -1
- package/dist/assets/{tabs-CmlG24pu.js → tabs-BGYcqYLL.js} +1 -1
- package/dist/assets/{tag-nbMFYWUm.js → tag-D03rU8_w.js} +1 -1
- package/dist/assets/terminal-qF2zh1X1.js +1 -0
- package/dist/assets/{time-picker-gX7xIWSJ.js → time-picker-pkj9cVcX.js} +1 -1
- package/dist/assets/{tooltip-ByEWRh1X.js → tooltip-CfIDYfOU.js} +1 -1
- package/dist/assets/{trash-2-0AUbadS5.js → trash-2-C5yTj7Q6.js} +1 -1
- package/dist/assets/{triangle-alert-CQ_6PGs9.js → triangle-alert-CFEWpIE7.js} +1 -1
- package/dist/assets/{upload-NFHVXM2D.js → upload-BejrLMLd.js} +1 -1
- package/dist/assets/{upload-DwSdorrx.js → upload-CDAovN-E.js} +1 -1
- package/dist/assets/user-BgSQgwkn.js +1 -0
- package/dist/assets/{veo-CaloF5Sp.js → veo-CWFCfbHq.js} +1 -1
- package/dist/assets/{video-ChSS0RDL.js → video-RNpvgOmi.js} +1 -1
- package/dist/assets/{volume-2-D_OXgzL-.js → volume-2-ZMyZQCfC.js} +1 -1
- package/dist/assets/{wallet-CXnPu-8g.js → wallet-CXHbZZGP.js} +1 -1
- package/dist/assets/{wan-CeZafnN9.js → wan-C6rrfOiZ.js} +1 -1
- package/dist/assets/{wand-sparkles-DFdcMBMi.js → wand-sparkles-D3E4KMBi.js} +1 -1
- package/dist/assets/{web-edeTecST.js → web-6SBbO4RI.js} +1 -1
- package/dist/assets/{web-DvD1tqLc.js → web-BDjIl-PG.js} +1 -1
- package/dist/assets/{web-DzW8j4Cz.js → web-BkvOV9Ne.js} +1 -1
- package/dist/assets/{web-Dr5GjmKX.js → web-CMV0HOOW.js} +1 -1
- package/dist/assets/{web-CEW_-jGv.js → web-C_HZn5yS.js} +1 -1
- package/dist/assets/{webextrator-Do9mvdqM.js → webextrator-C3Yi6vz6.js} +1 -1
- package/dist/assets/{zap-GyvHY-SX.js → zap-DUhjDknC.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/arrow-down-BN2nXle2.js +0 -1
- package/dist/assets/arrow-left-CZ2CtVB6.js +0 -1
- package/dist/assets/arrow-right-ChZuy8DI.js +0 -1
- package/dist/assets/arrow-up-fdawmbW3.js +0 -1
- package/dist/assets/check-CcpRSbXV.js +0 -1
- package/dist/assets/chevron-down-B1lz3KF6.js +0 -1
- package/dist/assets/chevron-right-C9QI4cw6.js +0 -1
- package/dist/assets/circle-check-Bnh0-JYn.js +0 -1
- package/dist/assets/clock-DIqDtDxd.js +0 -1
- package/dist/assets/code-Sj24Bqux.js +0 -1
- package/dist/assets/esm-XFYWSwPD.js +0 -1
- package/dist/assets/gauge-n2bIC9-g.js +0 -1
- package/dist/assets/loader-circle-4Ko047-G.js +0 -1
- package/dist/assets/music-2-D-kwxH7_.js +0 -1
- package/dist/assets/play-sIA9lpOe.js +0 -1
- package/dist/assets/plus-CH4RCaxw.js +0 -1
- package/dist/assets/rotate-ccw-B0hZ4kwR.js +0 -1
- package/dist/assets/rotate-cw-Cc1_isqr.js +0 -1
- package/dist/assets/search-Dy1j4GBD.js +0 -1
- package/dist/assets/square-CI8oiCus.js +0 -1
- package/dist/assets/terminal-BLUwUpBK.js +0 -1
- package/dist/assets/user-Dhhk7Eg8.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,S as c,T as l,at as u,b as ee,ht as d,j as f,mt as p,ot as m,rt as h,tt as g,x as te,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-DhHdHPnx.js";import{n as b,t as x}from"./tabs-CmlG24pu.js";import{n as S,t as C}from"./form-BNJ9LdPs.js";import{t as w}from"./tooltip-ByEWRh1X.js";import{t as T}from"./alert-DIz30D6M.js";import{t as E}from"./avatar-CGdf6QsT.js";import{n as D,t as O}from"./checkbox-CeoqKfX8.js";import{r as k,t as ne}from"./radio-DgDgyT2l.js";import{t as A}from"./divider-BNWJAaA2.js";import{n as j,r as M,t as N}from"./dropdown-BGP_92tw.js";import{t as P}from"./empty-B1wenOj5.js";import{n as re,t as F}from"./skeleton-B3LIGUiE.js";import{t as I}from"./chevron-down-B1lz3KF6.js";import{t as ie}from"./chevron-right-C9QI4cw6.js";import{t as ae}from"./circle-check-Bnh0-JYn.js";import{t as oe}from"./copy-Bsiwmxh7.js";import{t as se}from"./ellipsis-RIvFs_kS.js";import{t as ce}from"./external-link-BEulx63C.js";import{t as le}from"./lightbulb-CN6YRT_p.js";import{t as ue}from"./loader-circle-4Ko047-G.js";import{t as de}from"./lock-c3_vVe0u.js";import{t as L}from"./monitor-CeZg2qQ0.js";import{t as fe}from"./plug-8_Gy2lUF.js";import{t as R}from"./plus-CH4RCaxw.js";import{t as pe}from"./search-Dy1j4GBD.js";import{t as me}from"./shield-BV5U472e.js";import{t as he}from"./triangle-alert-CQ_6PGs9.js";import{Ai as z,Ci as ge,E as B,Ji as _e,Li as ve,Ti as V,gr as H,ui as U,wi as ye,zi as W}from"./index-DcleBYyK.js";var be=ge(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),G=()=>({baseURL:`${U()}/api/v1`});function K(e,t){let n=q(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 q(e){return e?.connection_methods||[]}var J=new class{key=`connections`;async list(){return H.get(`/${this.key}/`,G())}async authorize(e){return H.post(`/${this.key}/authorize/`,e,G())}async authorizeCustom(e){return H.post(`/${this.key}/authorize-custom/`,e,G())}async exchangeCustom(e,t){return H.post(`/${this.key}/${e}/exchange-custom/`,t,G())}async refresh(e){return H.post(`/${this.key}/${e}/refresh/`,void 0,G())}async setDefault(e){return await H.post(`/connections/${e}/set-default/`,void 0,G())}async rename(e,t){return await H.patch(`/connections/${e}/`,{label:t},G())}async disconnect(e){return H.delete(`/${this.key}/${e}/`,G())}async rebindBrowserDevice(e,t){return H.put(`/${this.key}/${e}/browser-device/`,{browser_device_id:t},G())}async stopBrowserSessions(e){return H.post(`/${this.key}/${e}/browser-sessions/stop/`,void 0,G())}async tools(e){return H.get(`/${this.key}/${e}/tools/`,G())}async listCatalog(e={}){return H.get(`/connectors/`,{...G(),params:e})}async getCatalogItem(e){return H.get(`/connectors/${e}/`,G())}async catalogCategories(){return H.get(`/connectors/categories/`,G())}async installFromCatalog(e,t={}){return H.post(`/connectors/${e}/install/`,t,G())}async submitCatalogCredentials(e,t){return H.post(`/connectors/${e}/credentials/`,t,G())}},xe=1e4,Se=`https://platform.acedata.cloud/documents/acedataext`;function Y(e){return e==null?``:typeof e==`string`?e:Array.isArray(e)?e.map(Y).filter(Boolean).join(`; `):typeof e==`object`?Object.values(e).map(Y).filter(Boolean).join(`; `):String(e)}var Ce=_({name:`ByocCredentialsDialog`,components:{ElDialog:z,ElForm:C,ElFormItem:S,ElInput:_e,ElSelect:v,ElOption:y,ElButton:W,SecurityIcon:me,WarningIcon:he},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:K(this.item)||null},schema(){return this.activeMethod?.credential.credential_schema||[]},isExtension(){return this.activeMethod?.credential.source===`extension`},ACE_EXTENSION_DOC(){return Se},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||V.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`)))},xe);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){V.error(this.$t(`connection.byoc.extensionNoCookies`));return}let{data:t}=await J.submitCatalogCredentials(this.item.id,{payload:{cookies:e},method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});V.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`)V.error(this.$t(`connection.byoc.extensionMissing`));else{let t=Y(e?.response?.data?.detail);V.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 J.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}:{}});V.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=Y(e?.response?.data?.detail);V.error(t||this.$t(`connection.message.installFailed`))}finally{this.submitting=!1}}}}}),we={key:0,class:`byoc-missing`},Te={class:`byoc-missing-body`},Ee={class:`byoc-missing-title`},De={class:`byoc-missing-text`},Oe=[`href`],ke={class:`byoc-intro`},Ae=[`href`],je={class:`byoc-steps`},Me={class:`byoc-disclaimer`},Ne={key:0,class:`byoc-intro`},Pe={key:2,class:`byoc-help`},Fe={class:`byoc-disclaimer`};function Ie(n,c,ee,d,m,te){let _=u(`warning-icon`),v=u(`el-button`),y=u(`security-icon`),b=u(`el-option`),x=u(`el-select`),S=u(`el-input`),C=u(`el-form-item`),w=u(`el-form`),T=u(`el-dialog`);return g(),f(T,{modelValue:n.visible,"onUpdate:modelValue":c[1]||=e=>n.visible=e,title:n.dialogTitle,width:`520px`,"append-to-body":``,"destroy-on-close":``,onClose:n.onClose},{footer:p(()=>[a(v,{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(v,{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(v,{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(v,{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`,ke,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,Ae),e(`ol`,je,[e(`li`,null,[r(i(n.$t(`connection.byoc.extensionStepLogin`))+` `,1),n.loginUrl?(g(),f(v,{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`,Me,[a(y,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64)):(g(),s(`div`,we,[a(_,{class:`byoc-missing-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`div`,Te,[e(`p`,Ee,i(n.$t(`connection.byoc.extensionMissingTitle`)),1),e(`p`,De,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,Oe)])]))],64)):(g(),s(l,{key:1},[n.schema.length>0?(g(),s(`p`,Ne,i(n.$t(`connection.byoc.intro`)),1)):o(``,!0),a(w,{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(C,{key:e.key,label:e.label,prop:e.key},{default:p(()=>[e.type===`select`?(g(),f(x,{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(b,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(g(),f(S,{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`,Pe,i(e.help),1)):o(``,!0)]),_:2},1032,[`label`,`prop`]))),128))]),_:1},8,[`model`,`rules`]),e(`p`,Fe,[a(y,{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 Le=B(Ce,[[`render`,Ie],[`__scopeId`,`data-v-bdcdd067`]]),Re=_({name:`ConnectorMethodPicker`,components:{ElDialog:z,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 q(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=K(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}}}),ze={class:`picker-intro`},Be={class:`picker-tab-label`},Ve={key:0,class:`picker-recommended`},He={key:0,class:`picker-pane-desc`};function Ue(t,n,c,ee,d,m){let te=u(`el-tab-pane`),_=u(`el-tabs`),v=u(`el-button`),y=u(`el-dialog`);return g(),f(y,{modelValue:t.visible,"onUpdate:modelValue":n[1]||=e=>t.visible=e,title:t.dialogTitle,width:`480px`,"append-to-body":``,"destroy-on-close":``,onClose:t.onClose},{footer:p(()=>[a(v,{onClick:t.onClose},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),a(v,{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`,ze,i(t.$t(`connection.method.heading`)),1),a(_,{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(te,{key:n.id,name:n.id},{label:p(()=>[e(`span`,Be,[r(i(t.methodLabel(n))+` `,1),n.recommended?(g(),s(`span`,Ve,i(t.$t(`connection.method.recommended`)),1)):o(``,!0)])]),default:p(()=>[t.methodDesc(n)?(g(),s(`p`,He,i(t.methodDesc(n)),1)):o(``,!0)]),_:2},1032,[`name`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`,`onClose`])}var We=B(Re,[[`render`,Ue],[`__scopeId`,`data-v-b10ce932`]]),X=()=>({baseURL:`${U()}/api/v1`}),Z=new class{key=`browser-devices`;async list(){return H.get(`/${this.key}/`,X())}async rename(e,t){return H.patch(`/${this.key}/${e}/`,{name:t},X())}async delete(e){return H.delete(`/${this.key}/${e}/`,X())}async createPairingChallenge(){return H.post(`/${this.key}/pairing-challenges/`,{},X())}async listPendingClaims(){return H.get(`/${this.key}/pairing-claims/`,X())}async confirmClaim(e,t,n){return H.post(`/${this.key}/pairing-claims/${e}/confirm/`,{key_fingerprint:t,...n?{name:n}:{}},X())}async rejectClaim(e,t){return H.post(`/${this.key}/pairing-claims/${e}/reject/`,{key_fingerprint:t},X())}},Q=null,Ge=_({name:`BrowserPairingDialog`,components:{CopyIcon:oe,ElAlert:T,ElButton:W,ElDialog:z,ElDivider:A,ElInput:_e,ElSkeleton:F,LoadingIcon:ue},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`paired`,`rejected`,`closed`],data(){return{visible:this.modelValue,loading:!1,polling:!1,challenge:Q?.expires_at_ms&&Q.expires_at_ms>Date.now()?Q:null,claim:null,deviceName:``,errorMessage:``,nowMs:Date.now(),pollTimer:null,clockTimer:null,decision:null,requestGeneration:0}},computed:{secondsRemaining(){let e=this.claim?.expires_at_ms??this.challenge?.expires_at_ms;return e?Math.max(0,Math.ceil((e-this.nowMs)/1e3)):0},decisionExpired(){return this.secondsRemaining===0}},watch:{modelValue(e){this.visible=e,e&&this.startPairing()},visible(e){this.$emit(`update:modelValue`,e),e?this.startClock():this.stopTimers()}},mounted(){this.visible&&this.startPairing()},beforeUnmount(){this.stopTimers()},methods:{async startPairing(){if(this.loading)return;this.stopPolling();let e=++this.requestGeneration;this.loading=!0,this.errorMessage=``,this.decision=null;try{if(this.startClock(),!this.challenge||this.challenge.expires_at_ms<=Date.now()){let{data:t}=await Z.createPairingChallenge();if(!this.visible||e!==this.requestGeneration)return;this.challenge=t,Q=t,this.claim=null,this.deviceName=``}this.nowMs=Date.now(),await this.pollClaims(),!this.claim&&this.challenge&&!this.errorMessage&&(this.pollTimer=window.setInterval(()=>this.pollClaims(),1500))}catch(t){this.visible&&e===this.requestGeneration&&(this.errorMessage=this.errorDetail(t,`user.browserDevice.pairUnavailable`))}finally{e===this.requestGeneration&&(this.loading=!1)}},async pollClaims(){if(!this.challenge||this.polling||this.claim)return;let e=this.requestGeneration,t=this.challenge.challenge_id;if(this.nowMs=Date.now(),this.challenge.expires_at_ms<=this.nowMs){this.errorMessage=String(this.$t(`user.browserDevice.codeExpired`)),this.stopPolling();return}this.polling=!0;try{let{data:n}=await Z.listPendingClaims();if(!this.visible||e!==this.requestGeneration||this.challenge?.challenge_id!==t)return;let r=n.find(e=>e.challenge_id===t);r&&(this.claim=r,this.stopPolling())}catch(t){this.visible&&e===this.requestGeneration&&(this.errorMessage=this.errorDetail(t,`user.browserDevice.pollFailed`),this.stopPolling())}finally{e===this.requestGeneration&&(this.polling=!1)}},async copyCode(){if(this.challenge)try{await navigator.clipboard.writeText(this.challenge.code),V.success(this.$t(`common.message.copied`))}catch{V.error(this.$t(`common.message.updateFailed`))}},async confirm(){let e=this.claim;if(!e||this.decision||this.decisionExpired)return;let t=this.requestGeneration,n=e.claim_id;this.decision=`confirm`;try{let{data:r}=await Z.confirmClaim(e.claim_id,e.key_fingerprint,this.deviceName||void 0);if(!this.visible||t!==this.requestGeneration||this.claim?.claim_id!==n)return;V.success(this.$t(`user.browserDevice.pairSuccess`)),this.$emit(`paired`,r.device),this.challenge=null,Q=null,this.claim=null,this.visible=!1}catch(e){this.visible&&t===this.requestGeneration&&this.claim?.claim_id===n&&(this.errorMessage=this.errorDetail(e,`user.browserDevice.decisionFailed`))}finally{t===this.requestGeneration&&this.claim?.claim_id===n&&(this.decision=null)}},async reject(){let e=this.claim;if(!e||this.decision||this.decisionExpired)return;let t=this.requestGeneration,n=e.claim_id;this.decision=`reject`;try{if(await Z.rejectClaim(e.claim_id,e.key_fingerprint),!this.visible||t!==this.requestGeneration||this.claim?.claim_id!==n)return;V.success(this.$t(`user.browserDevice.rejectSuccess`)),this.$emit(`rejected`,e),this.challenge=null,Q=null,this.claim=null,this.visible=!1}catch(e){this.visible&&t===this.requestGeneration&&this.claim?.claim_id===n&&(this.errorMessage=this.errorDetail(e,`user.browserDevice.decisionFailed`))}finally{t===this.requestGeneration&&this.claim?.claim_id===n&&(this.decision=null)}},errorDetail(e,t){return e?.response?.data?.detail||String(this.$t(t))},stopPolling(){this.pollTimer!==null&&(window.clearInterval(this.pollTimer),this.pollTimer=null)},startClock(){this.nowMs=Date.now(),this.clockTimer===null&&(this.clockTimer=window.setInterval(()=>{this.nowMs=Date.now(),this.secondsRemaining===0&&this.stopPolling()},1e3))},stopTimers(){this.stopPolling(),this.clockTimer!==null&&(window.clearInterval(this.clockTimer),this.clockTimer=null)},onClosed(){this.requestGeneration+=1,this.stopTimers(),this.loading=!1,this.polling=!1,this.errorMessage=``,this.decision=null,this.$emit(`closed`)}}}),Ke={key:0,class:`pairing-loading`},qe={class:`pairing-intro`},Je={class:`pairing-code-row`},Ye={class:`pairing-code`},Xe={class:`pairing-expiry`},Ze={class:`claim-title`},Qe={class:`claim-hint`},$e={class:`claim-details`},et={key:1,class:`waiting-claim`};function tt(t,n,c,ee,d,m){let h=u(`el-alert`),te=u(`el-skeleton`),_=u(`copy-icon`),v=u(`el-button`),y=u(`el-divider`),b=u(`el-input`),x=u(`loading-icon`),S=u(`el-dialog`);return g(),f(S,{modelValue:t.visible,"onUpdate:modelValue":n[2]||=e=>t.visible=e,title:t.$t(`user.browserDevice.pairTitle`),width:`620px`,"append-to-body":``,"destroy-on-close":``,"close-on-click-modal":!1,onClosed:t.onClosed},{footer:p(()=>[t.claim?o(``,!0):(g(),f(v,{key:0,onClick:n[1]||=e=>t.visible=!1},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1})),t.errorMessage&&!t.claim?(g(),f(v,{key:1,type:`primary`,loading:t.loading,onClick:t.startPairing},{default:p(()=>[r(i(t.$t(`user.browserDevice.tryAgain`)),1)]),_:1},8,[`loading`,`onClick`])):o(``,!0),t.claim?(g(),s(l,{key:2},[a(v,{type:`danger`,plain:``,loading:t.decision===`reject`,disabled:t.decision!==null||t.decisionExpired,onClick:t.reject},{default:p(()=>[r(i(t.$t(`user.browserDevice.rejectClaim`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),a(v,{type:`primary`,loading:t.decision===`confirm`,disabled:t.decision!==null||t.decisionExpired,onClick:t.confirm},{default:p(()=>[r(i(t.$t(`user.browserDevice.confirmClaim`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])],64)):o(``,!0)]),default:p(()=>[a(h,{title:t.$t(`user.browserDevice.localApprovalOnly`),type:`info`,closable:!1,"show-icon":``,class:`pairing-alert`},null,8,[`title`]),t.loading?(g(),s(`div`,Ke,[a(te,{rows:4,animated:``})])):t.challenge?(g(),s(l,{key:1},[e(`p`,qe,i(t.$t(`user.browserDevice.pairInstructions`)),1),e(`div`,Je,[e(`code`,Ye,i(t.challenge.code),1),a(v,{size:`small`,onClick:t.copyCode},{default:p(()=>[a(_,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`common.button.copy`)),1)]),_:1},8,[`onClick`])]),e(`p`,Xe,i(t.$t(`user.browserDevice.codeExpiresIn`,{seconds:t.secondsRemaining})),1),t.claim?(g(),s(l,{key:0},[a(y),e(`h3`,Ze,i(t.$t(`user.browserDevice.verifyClaimTitle`)),1),e(`p`,Qe,i(t.$t(`user.browserDevice.verifyClaimHint`)),1),e(`dl`,$e,[e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.keyFingerprint`)),1),e(`dd`,null,[e(`code`,null,i(t.claim.key_fingerprint),1)])]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.platform`)),1),e(`dd`,null,i(t.claim.platform),1)]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,i(t.claim.extension_version),1)]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.origin`)),1),e(`dd`,null,[e(`code`,null,i(t.claim.origin),1)])])]),a(b,{modelValue:t.deviceName,"onUpdate:modelValue":n[0]||=e=>t.deviceName=e,modelModifiers:{trim:!0},placeholder:t.$t(`user.browserDevice.namePlaceholder`),maxlength:`128`,"show-word-limit":``},null,8,[`modelValue`,`placeholder`])],64)):(g(),s(`div`,et,[a(x,{class:`waiting-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(t.$t(`user.browserDevice.waitingForAgent`)),1)]))],64)):o(``,!0),t.errorMessage?(g(),f(h,{key:2,title:t.errorMessage,type:`error`,closable:!1,"show-icon":``},null,8,[`title`])):o(``,!0)]),_:1},8,[`modelValue`,`title`,`onClosed`])}var nt=B(Ge,[[`render`,tt],[`__scopeId`,`data-v-3136df0d`]]);function rt(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 it=_({name:`BrowserDevicePicker`,components:{ElAlert:T,ElButton:W,ElDialog:z,ElEmpty:P,ElRadio:ne,ElRadioGroup:k},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 rt(e,this.requiredCapabilities).missingCapabilities},compatible(e){return rt(e,this.requiredCapabilities).compatible},incompatibilityText(e){let t=rt(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 Z.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)}}}),at={key:1,class:`browser-policy`},ot={class:`device-list`},st={class:`device-name`},ct={class:`device-meta`},lt={class:`device-meta`},ut={class:`device-digest`},dt={key:0,class:`device-missing`};function ft(t,n,c,ee,te,_){let v=u(`el-alert`),y=u(`el-radio`),b=u(`el-radio-group`),x=u(`el-empty`),S=u(`el-button`),C=u(`el-dialog`),w=m(`loading`);return g(),f(C,{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(S,{onClick:n[1]||=e=>t.$emit(`pair`)},{default:p(()=>[r(i(t.$t(`user.browserDevice.pairButton`)),1)]),_:1}),a(S,{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(v,{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`,at,i(t.$t(`connection.message.browserAllowedSites`))+`: `+i(t.origins.join(`, `)),1)):o(``,!0),a(v,{title:t.$t(`connection.message.browserHighPrivilegeDisclosure`),type:`warning`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`]),d((g(),s(`div`,ot,[t.devices.length?(g(),f(b,{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(y,{key:n.id,value:n.id,label:n.id,disabled:!t.compatible(n),border:``,class:`device-option`},{default:p(()=>[e(`span`,st,i(n.name),1),e(`span`,ct,i(n.platform)+` · v`+i(n.extension_version||`?`),1),e(`span`,lt,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`,ut,i(n.wire_contract_digest),1),t.compatible(n)?o(``,!0):(g(),s(`span`,dt,i(t.incompatibilityText(n)),1))]),_:2},1032,[`value`,`label`,`disabled`]))),128))]),_:1},8,[`modelValue`])):t.loading?o(``,!0):(g(),f(x,{key:1,description:t.$t(`user.browserDevice.empty`)},null,8,[`description`]))])),[[w,t.loading]])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var pt=B(it,[[`render`,ft],[`__scopeId`,`data-v-7eaca81f`]]);function $(){let e=new URL(`/connections/popup-return`,U());return e.searchParams.set(`opener_origin`,window.location.origin),e.toString()}var mt=`popup=yes,width=600,height=760,noopener=no,noreferrer=no`;function ht(e){let t=window.open(e,`acedata-connect`,mt);if(!t)return null;let n=new URL(U()).origin;return new Promise(e=>{let r=!1,i=t=>{r||(r=!0,window.removeEventListener(`message`,a),window.clearInterval(o),e(t))},a=e=>{if(e.origin!==n||e.source!==t)return;let r=e.data;if(!(!r||r.name!==`connection-result`)){i(r.data??{status:`success`});try{t.close()}catch{}}};window.addEventListener(`message`,a);let o=window.setInterval(()=>{t.closed&&i(null)},500)})}function gt(e){return String(e??``).normalize(`NFKC`).trim().toLowerCase()}function _t(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 q(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(gt).filter(Boolean).join(` `)}var vt=_({name:`BrowseConnectors`,components:{ElDialog:z,ElSelect:v,ElOption:y,ElTooltip:w,ElDropdown:N,ElDropdownMenu:M,ElDropdownItem:j,AddIcon:R,ConnectionIcon:fe,ExpandDownIcon:I,LoadingIcon:ue,SearchIcon:pe,SuccessIcon:ae,ByocCredentialsDialog:Le,ConnectorMethodPicker:We,BrowserPairingDialog:nt,BrowserDevicePicker:pt},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=gt(this.query),t=this.items;return e&&(t=t.filter(t=>_t(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 J.listCatalog(e);this.items=t.items||[]}catch(e){V.error(e?.response?.data?.detail||e?.message||`Failed to load directory`)}finally{this.loading=!1}},async fetchFacets(){try{let{data:e}=await J.catalogCategories();this.facets=e.facets||[]}catch{this.facets=[]}},async onInstall(e){if(!e.installable)return;if(q(e).length>1){this.pickerItem=e,this.pickerVisible=!0;return}let t=K(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 J.installFromCatalog(e.id,{return_url:$(),method_id:t.id});if(n.type===`redirect`){let e=ht(n.authorization_url);if(!e){window.location.href=n.authorization_url;return}await e,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),V.success(this.$t(`connection.message.installed`,{name:e.name})),this.$emit(`installed`,{item:e,connection_id:n.connection_id})}catch(e){V.error(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 J.installFromCatalog(t.id,{return_url:$(),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),V.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}}}}}),yt={class:`browse-intro`},bt={class:`browse-toolbar`},xt={class:`search-wrapper`},St=[`placeholder`],Ct={class:`browse-shell`},wt={class:`browse-sidebar`},Tt={class:`sidebar-section`},Et=[`onClick`],Dt={class:`sidebar-label`},Ot={key:0,class:`sidebar-count`},kt={class:`sidebar-section`},At={class:`sidebar-heading`},jt=[`onClick`],Mt={class:`sidebar-label`},Nt={key:0,class:`sidebar-count`},Pt={class:`browse-grid-wrapper`},Ft={key:0,class:`browse-empty`},It={key:1,class:`browse-grid`},Lt={class:`card-head`},Rt={class:`card-icon`},zt=[`src`,`alt`],Bt={class:`card-title-block`},Vt={class:`card-title-row`},Ht={class:`card-title`},Ut={class:`card-meta`},Wt=[`title`],Gt={key:1,class:`card-pill card-pill-new`},Kt={key:2,class:`card-pill card-pill-trending`},qt={key:3,class:`card-publisher`},Jt={class:`card-action-slot`},Yt=[`disabled`,`onClick`],Xt={class:`ml-1`},Zt=[`aria-label`,`title`],Qt={class:`ml-1 card-action-count`},$t={key:0,class:`card-description`};function en(t,c,te,_,v,y){let b=u(`search-icon`),x=u(`el-option`),S=u(`el-select`),C=u(`connection-icon`),w=u(`loading-icon`),T=u(`add-icon`),E=u(`el-tooltip`),D=u(`success-icon`),O=u(`expand-down-icon`),k=u(`el-dropdown-item`),ne=u(`el-dropdown-menu`),A=u(`el-dropdown`),j=u(`connector-method-picker`),M=u(`browser-pairing-dialog`),N=u(`browser-device-picker`),P=u(`byoc-credentials-dialog`),re=u(`el-dialog`),F=m(`loading`);return g(),f(re,{modelValue:t.visible,"onUpdate:modelValue":c[6]||=e=>t.visible=e,title:t.$t(`connection.title.browse`),width:`900px`,top:`5vh`,"close-on-click-modal":!1,onOpen:t.onOpen},{default:p(()=>[e(`p`,yt,i(t.$t(`connection.message.browseHint`)),1),e(`div`,bt,[e(`div`,xt,[a(b,{class:`search-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),d(e(`input`,{"onUpdate:modelValue":c[0]||=e=>t.query=e,type:`text`,class:`search-input`,placeholder:t.$t(`connection.placeholder.search`)},null,8,St),[[ee,t.query]])]),a(S,{modelValue:t.sort,"onUpdate:modelValue":c[1]||=e=>t.sort=e,size:`default`,class:`sort-select`,onChange:t.fetchItems},{default:p(()=>[a(x,{label:t.$t(`connection.label.featured`),value:`popular`},null,8,[`label`]),a(x,{label:t.$t(`connection.label.new`),value:`new`},null,8,[`label`]),a(x,{label:`A-Z`,value:`name`})]),_:1},8,[`modelValue`,`onChange`])]),d((g(),s(`div`,Ct,[e(`aside`,wt,[e(`div`,Tt,[(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`,Dt,i(r.label),1),r.count>0?(g(),s(`span`,Ot,i(r.count),1)):o(``,!0)],10,Et))),128))]),c[7]||=e(`div`,{class:`sidebar-divider`},null,-1),e(`div`,kt,[e(`div`,At,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`,Nt,i(r.count),1)):o(``,!0)],10,jt))),128))])]),e(`section`,Pt,[!t.loading&&t.filteredItems.length===0?(g(),s(`div`,Ft,i(t.$t(`connection.message.browseEmpty`)),1)):(g(),s(`div`,It,[(g(!0),s(l,null,h(t.filteredItems,c=>(g(),s(`article`,{key:c.id,class:`card`},[e(`div`,Lt,[e(`span`,Rt,[c.icon_url?(g(),s(`img`,{key:0,src:c.icon_url,alt:c.name},null,8,zt)):(g(),f(C,{key:1,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`div`,Bt,[e(`div`,Vt,[e(`h4`,Ht,i(c.name),1)]),e(`div`,Ut,[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,Wt)):c.is_new?(g(),s(`span`,Gt,i(t.$t(`connection.label.new`)),1)):c.is_trending?(g(),s(`span`,Kt,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`,qt,i(c.publisher),1)):o(``,!0)])]),c.installed?(g(),f(A,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:e=>t.onInstalledCommand(e,c)},{dropdown:p(()=>[a(ne,{class:`connection-actions-menu`},{default:p(()=>[a(k,{command:`addAccount`,disabled:!c.installable},{default:p(()=>[r(i(t.$t(`connection.button.addAccount`)),1)]),_:1},8,[`disabled`]),a(k,{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(D,{size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Qt,i(t.accountCount(c)),1),a(O,{class:`ml-1 card-action-caret`,size:12,"aria-hidden":`true`,focusable:`false`})],8,Zt)]),_:2},1032,[`onCommand`])):(g(),f(E,{key:0,disabled:c.installable,content:t.$t(`skill.menu.soon`),placement:`top`},{default:p(()=>[e(`span`,Jt,[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(w,{key:0,class:`icon-spin`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(T,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,Xt,i(t.$t(`connection.button.install`)),1)],8,Yt)])]),_:2},1032,[`disabled`,`content`]))]),c.short_description||c.description?(g(),s(`p`,$t,i(c.short_description||c.description),1)):o(``,!0)]))),128))]))])])),[[F,t.loading]]),a(j,{modelValue:t.pickerVisible,"onUpdate:modelValue":c[2]||=e=>t.pickerVisible=e,item:t.pickerItem,onSelect:t.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(M,{modelValue:t.pairingDialogVisible,"onUpdate:modelValue":c[3]||=e=>t.pairingDialogVisible=e,onPaired:t.onBrowserPaired},null,8,[`modelValue`,`onPaired`]),a(N,{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(P,{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 tn=_({name:`UserConnections`,components:{ElButton:W,ElTag:ve,ElAvatar:E,ElDialog:z,ElInput:_e,ElCheckbox:O,ElCheckboxGroup:D,ElDropdown:N,ElDropdownMenu:M,ElDropdownItem:j,AddIcon:R,CollapseUpIcon:be,ConnectionIcon:fe,DesktopIcon:L,ExpandDownIcon:I,ExpandRightIcon:ie,ExternalLinkIcon:ce,LockIcon:de,MoreIcon:se,SearchIcon:pe,SuggestionIcon:le,BrowseConnectors:B(vt,[[`render`,en],[`__scopeId`,`data-v-bf7cc87a`]]),ByocCredentialsDialog:Le,ConnectorMethodPicker:We,BrowserPairingDialog:nt,BrowserDevicePicker:pt,ElSkeleton:F,ElSkeletonItem:re,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 K(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 J.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||K(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 J.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 J.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,q(e).length>1){this.pickerCatalog=e,this.pickerVisible=!0;return}let n=K(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 ye.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 J.installFromCatalog(e.id,{scopes:n&&n.length?n:void 0,return_url:$(),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,V.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}},async runAuthorizePopup(e){let t=ht(e);if(!t){window.location.href=e;return}await t,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 J.stopBrowserSessions(e.id);V.success(this.$t(`connection.message.browserSessionsStopped`,{count:t.stopped_session_count})),await this.fetchConnections()}catch(e){V.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 J.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,V.success(this.$t(`connection.message.browserRebindSuccess`));return}let{data:r}=await J.installFromCatalog(t.id,{return_url:$(),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,V.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 J.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:window.location.href});e?.authorization_url&&(window.location.href=e.authorization_url)}catch(e){V.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=K(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&&V.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 J.setDefault(e.id),V.success(this.$t(`connection.message.defaultUpdated`)),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.defaultUpdateFailed`))}},async onRename(e){let t;try{let{value:n}=await ye.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 J.rename(e.id,t),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.renameFailed`))}},async onRefresh(e){this.refreshingId=e.id;try{await J.refresh(e.id),V.success(this.$t(`connection.message.refreshed`)),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.refreshFailed`))}finally{this.refreshingId=null}},async onDisconnect(e){try{await ye.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 J.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),V.success(this.$t(`connection.message.disconnected`,{provider:this.connectionProviderName(e)})),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||e?.message||`Failed to disconnect`)}}}}),nn={class:`page-shell`},rn={class:`page-heading`},an={class:`page-title`},on={class:`page-subtitle`},sn={class:`connectors-shell`},cn={class:`connectors-list`},ln={class:`list-toolbar`},un={class:`search-wrapper`},dn=[`placeholder`],fn=[`aria-label`,`title`],pn={class:`list-scroll`},mn={class:`list-group`},hn={class:`group-header skeleton-header`},gn={class:`group-items`},_n={class:`group-header`},vn=[`aria-label`,`title`,`onClick`],yn=[`onClick`],bn={class:`group-items`},xn=[`onClick`],Sn={class:`list-item-icon`},Cn=[`src`,`alt`,`onError`],wn={class:`list-item-name`},Tn=[`title`],En={key:1,class:`list-item-badge list-item-badge-default`},Dn={key:2,class:`list-item-badge`},On=[`title`],kn={key:2,class:`list-empty`},An={class:`list-footer`},jn={class:`connectors-detail`},Mn={key:0,class:`detail-skeleton`},Nn={class:`detail-skeleton-header`},Pn={class:`detail-skeleton-section`},Fn={key:1,class:`detail-empty`},In={class:`detail-empty-title`},Ln={class:`detail-empty-hint`},Rn={class:`detail-header`},zn={class:`detail-title-row`},Bn={class:`detail-icon`},Vn=[`src`,`alt`],Hn={class:`detail-title`},Un={class:`detail-actions`},Wn=[`aria-label`,`title`],Gn={key:0,class:`detail-server-url`},Kn={key:1,class:`detail-description`},qn={key:0,class:`detail-section`},Jn={class:`section-heading`},Yn={class:`section-title`},Xn={class:`overview-text`},Zn={key:1,class:`detail-section`},Qn={class:`account-row`},$n={class:`account-info`},er={class:`account-name`},tr={key:0,class:`account-sub`},nr={key:2,class:`detail-section browser-session`},rr={class:`browser-session-heading`},ir={class:`browser-session-icon`},ar={class:`browser-session-copy`},or={class:`meta-grid browser-session-meta`},sr={key:0},cr={key:1,class:`muted`},lr={class:`browser-digest-row`},ur={key:0,class:`browser-capabilities`},dr={class:`browser-capabilities-label`},fr={class:`browser-capability-list`},pr={key:3,class:`detail-section`},mr={class:`meta-grid`},hr={key:0},gr={key:4,class:`detail-section`},_r={class:`meta-grid`},vr={key:0},yr={key:1},br={key:5,class:`detail-section`},xr={class:`section-heading`},Sr={class:`section-title`},Cr={class:`section-count`},wr={class:`section-hint`},Tr={class:`suggestion-list`},Er=[`role`,`tabindex`,`aria-disabled`,`onClick`,`onKeyup`],Dr={class:`suggestion-text`},Or={key:6,class:`detail-section`},kr={class:`section-heading`},Ar={class:`section-title`},jr={key:0,class:`section-count`},Mr={key:0,class:`permission-empty`},Nr={key:1,class:`permission-empty error`},Pr={key:2,class:`permission-list`},Fr={class:`permission-name`},Ir={class:`permission-tool-name`},Lr={key:0,class:`permission-tool-desc`},Rr={key:3,class:`permission-empty`},zr={key:1,class:`permission-empty`},Br={key:0,class:`permission-list`},Vr={class:`permission-name`},Hr={class:`permission-scope-label`},Ur={key:0,class:`permission-tool-desc`},Wr={key:1,class:`permission-empty`},Gr={key:7,class:`detail-section meta-section`},Kr={class:`meta-grid`},qr={key:0},Jr={key:1,class:`muted`},Yr={key:0},Xr={key:1,class:`muted`},Zr={class:`custom-dialog-intro`},Qr={class:`custom-dialog-form`},$r={key:0,class:`advanced-fields`},ei={class:`custom-trust-copy`},ti={class:`text-sm text-gray-500 mb-4`},ni={class:`scope-dialog-label`},ri={key:0,class:`scope-dialog-desc`};function ii(_,v,y,b,x,S){let C=u(`search-icon`),w=u(`add-icon`),T=u(`el-dropdown-item`),E=u(`el-dropdown-menu`),D=u(`el-dropdown`),O=u(`el-skeleton-item`),k=u(`el-skeleton`),ne=u(`expand-right-icon`),A=u(`expand-down-icon`),j=u(`desktop-icon`),M=u(`connection-icon`),N=u(`el-tag`),P=u(`el-button`),re=u(`more-icon`),F=u(`el-avatar`),I=u(`suggestion-icon`),ie=u(`lock-icon`),ae=u(`external-link-icon`),oe=u(`el-tooltip`),se=u(`browse-connectors`),ce=u(`byoc-credentials-dialog`),le=u(`connector-method-picker`),ue=u(`browser-pairing-dialog`),de=u(`browser-device-picker`),L=u(`el-input`),fe=u(`collapse-up-icon`),R=u(`el-dialog`),pe=u(`el-checkbox`),me=u(`el-checkbox-group`),he=m(`loading`);return g(),s(`div`,nn,[e(`div`,rn,[e(`h2`,an,i(_.$t(`connection.title.connections`)),1),e(`p`,on,i(_.$t(`connection.message.pageDescription`)),1)]),e(`div`,sn,[e(`aside`,cn,[e(`div`,ln,[e(`div`,un,[a(C,{class:`search-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),d(e(`input`,{"onUpdate:modelValue":v[0]||=e=>_.searchQuery=e,type:`text`,class:`search-input`,placeholder:_.$t(`connection.placeholder.search`)},null,8,dn),[[ee,_.searchQuery]])]),a(D,{trigger:`click`,placement:`bottom-end`,onCommand:_.onAddCommand},{dropdown:p(()=>[a(E,null,{default:p(()=>[a(T,{command:`browse`},{default:p(()=>[a(C,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.title.browse`)),1)]),_:1}),a(T,{command:`custom`},{default:p(()=>[a(w,{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(w,{size:16,"aria-hidden":`true`,focusable:`false`})],8,fn)]),_:1},8,[`onCommand`])]),d((g(),s(`div`,pn,[_.firstLoadComplete?_.filteredGroups.length?(g(!0),s(l,{key:1},h(_.filteredGroups,t=>(g(),s(`div`,{key:t.key,class:`list-group`},[e(`div`,_n,[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(ne,{key:0,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`})):(g(),f(A,{key:1,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`}))],8,vn),e(`span`,{class:`group-title`,onClick:e=>_.toggleGroup(t.key)},i(t.label),9,yn)]),d(e(`ul`,bn,[(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`,Sn,[r.faviconUrl?(g(),s(`img`,{key:0,src:r.faviconUrl,alt:r.name,onError:e=>_.onFaviconError(r)},null,40,Cn)):r.browserSession?(g(),f(j,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(M,{key:2,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`span`,wn,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`,En,i(_.$t(`connection.label.defaultAccount`)),1)):o(``,!0),r.byo?(g(),s(`span`,Dn,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,On)):o(``,!0)],10,xn))),128))],512),[[te,!t.collapsed]])]))),128)):(g(),s(`div`,kn,i(_.searchQuery?_.$t(`connection.message.noMatch`):_.$t(`connection.message.noConnections`)),1)):(g(),f(k,{key:0,animated:``},{template:p(()=>[e(`div`,mn,[e(`div`,hn,[a(O,{variant:`text`,style:{width:`100px`,height:`11px`}})]),e(`ul`,gn,[(g(),s(l,null,h(5,t=>e(`li`,{key:`skeleton-${t}`,class:`list-item skeleton-item`},[a(O,{variant:`image`,style:{width:`20px`,height:`20px`,"border-radius":`4px`}}),a(O,{variant:`text`,style:{flex:`1 1 auto`,height:`14px`}})])),64))])])]),_:1}))])),[[he,_.firstLoadComplete&&(_.loading||_.loadingCatalog)]]),e(`div`,An,[e(`button`,{type:`button`,class:`browse-all-button`,onClick:v[1]||=e=>_.browseDialogVisible=!0},[a(C,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.browseAll`)),1)])])]),e(`section`,jn,[_.firstLoadComplete?_.selectedItem?o(``,!0):(g(),s(`div`,Fn,[a(M,{class:`detail-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,In,i(_.$t(`connection.message.selectConnector`)),1),e(`p`,Ln,i(_.$t(`connection.message.noConnectionsHint`)),1)])):(g(),s(`div`,Mn,[a(k,{animated:``},{template:p(()=>[e(`div`,Nn,[a(O,{variant:`circle`,style:{width:`32px`,height:`32px`}}),a(O,{variant:`h3`,style:{width:`220px`,height:`22px`,"margin-left":`12px`}})]),a(O,{variant:`text`,style:{width:`60%`,height:`12px`,"margin-top":`12px`}}),e(`div`,Pn,[a(O,{variant:`text`,style:{width:`140px`,height:`14px`}}),a(O,{variant:`p`,style:{width:`33%`,"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{width:`61%`,"margin-top":`16px`}})])]),_:1})])),_.firstLoadComplete&&_.selectedItem?(g(),s(l,{key:2},[e(`header`,Rn,[e(`div`,zn,[e(`span`,Bn,[_.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(j,{key:1,size:20,"aria-hidden":`true`,focusable:`false`})):(g(),f(M,{key:2,size:20,"aria-hidden":`true`,focusable:`false`}))]),e(`h3`,Hn,i(_.selectedItem.name),1),_.selectedItem.byo?(g(),f(N,{key:0,size:`small`,type:`info`,class:`detail-custom-tag`},{default:p(()=>[r(i(_.$t(`connection.label.custom`)),1)]),_:1})):o(``,!0),e(`div`,Un,[!_.selectedItem.connection&&_.selectedItem.catalog?(g(),f(P,{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(D,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:_.onDetailAction},{dropdown:p(()=>[a(E,{class:`connection-actions-menu`},{default:p(()=>[(g(!0),s(l,null,h(_.detailActions,e=>(g(),f(T,{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(re,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Wn)]),_:1},8,[`onCommand`])):o(``,!0)])]),_.selectedItem.serverUrl?(g(),s(`p`,Gn,i(_.selectedItem.serverUrl),1)):_.selectedItem.description?(g(),s(`p`,Kn,i(_.selectedItem.description),1)):o(``,!0)]),_.overviewText?(g(),s(`div`,qn,[e(`div`,Jn,[e(`span`,Yn,i(_.$t(`connection.title.overview`)),1)]),e(`p`,Xn,i(_.overviewText),1)])):o(``,!0),_.selectedItem.connection&&!_.selectedItem.custom&&_.showsAccountIdentity?(g(),s(`div`,Zn,[e(`div`,Qn,[_.connectionAvatar(_.selectedItem.connection)?(g(),f(F,{key:0,src:_.connectionAvatar(_.selectedItem.connection),size:40},null,8,[`src`])):(g(),f(F,{key:1,size:40,class:`account-avatar-fallback`},{default:p(()=>[r(i(_.connectionAccountInitial(_.selectedItem.connection)),1)]),_:1})),e(`div`,$n,[e(`span`,er,i(_.connectionAccountName(_.selectedItem.connection)),1),_.connectionAccountSubtext(_.selectedItem.connection)?(g(),s(`span`,tr,i(_.connectionAccountSubtext(_.selectedItem.connection)),1)):o(``,!0)]),a(N,{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`,nr,[e(`div`,rr,[e(`span`,ir,[a(j,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,ar,[e(`strong`,null,i(_.selectedItem.connection.browser_device?.name||_.$t(`user.browserDevice.title`)),1),e(`span`,null,i(_.$t(`user.browserDevice.localApprovalOnly`)),1)]),a(N,{type:_.browserDeviceStatusTagType(_.selectedItem.connection),size:`small`},{default:p(()=>[r(i(_.browserDeviceCompatibilityLabel(_.selectedItem.connection)),1)]),_:1},8,[`type`])]),e(`dl`,or,[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`,sr,i(_.$dayjs.format(_.selectedItem.connection.browser_device.last_seen_at)),1)):(g(),s(`span`,cr,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`,lr,[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`,ur,[e(`span`,dr,i(_.$t(`user.browserDevice.capabilities`)),1),e(`div`,fr,[(g(!0),s(l,null,h(_.selectedItem.connection.browser_device.capabilities,e=>(g(),f(N,{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`,pr,[e(`dl`,mr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(N,{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`,hr,[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`,gr,[e(`dl`,_r,[_.showsAccountIdentity?o(``,!0):(g(),s(`div`,vr,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(N,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])),_.byocCredentialSummary(_.selectedItem)?(g(),s(`div`,yr,[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`,br,[e(`div`,xr,[e(`span`,Sr,i(_.$t(`connection.title.tryIt`)),1),e(`span`,Cr,i(_.suggestions.length),1)]),e(`p`,wr,i(_.suggestionsLocked?_.$t(`connection.message.tryItConnectFirst`):_.$t(`connection.message.tryItHint`)),1),e(`ul`,Tr,[(g(!0),s(l,null,h(_.suggestions,r=>(g(),f(oe,{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(I,{class:`suggestion-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Dr,i(r.prompt),1),_.suggestionsLocked?(g(),f(ie,{key:0,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(ae,{key:1,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`}))],42,Er)]),_:2},1032,[`content`,`disabled`]))),128))])])):o(``,!0),_.selectedItem.browserSession?o(``,!0):(g(),s(`div`,Or,[e(`div`,kr,[e(`span`,Ar,i(_.$t(`connection.title.toolPermissions`)),1),_.permissionRowCount?(g(),s(`span`,jr,i(_.permissionRowCount),1)):o(``,!0)]),_.selectedItem.custom&&_.selectedItem.connection?(g(),s(l,{key:0},[_.selectedMcpToolsLoading?(g(),s(`p`,Mr,i(_.$t(`connection.message.toolsLoading`)),1)):_.selectedMcpToolsError?(g(),s(`p`,Nr,i(_.selectedMcpToolsError),1)):_.selectedMcpTools&&_.selectedMcpTools.length?(g(),s(`ul`,Pr,[(g(!0),s(l,null,h(_.selectedMcpTools,t=>(g(),s(`li`,{key:t.name,class:`permission-row`},[e(`span`,Fr,[e(`span`,Ir,i(t.name),1),t.description?(g(),s(`span`,Lr,i(t.description),1)):o(``,!0)])]))),128))])):(g(),s(`p`,Rr,i(_.$t(`connection.label.noTools`)),1))],64)):_.isMcpConnector&&!_.selectedItem.connection?(g(),s(`p`,zr,i(_.$t(`connection.label.toolsConnectFirst`)),1)):(g(),s(l,{key:2},[_.detailScopes.length?(g(),s(`ul`,Br,[(g(!0),s(l,null,h(_.detailScopes,t=>(g(),s(`li`,{key:t.id,class:`permission-row`},[e(`span`,Vr,[e(`span`,Hr,i(t.label),1),t.desc?(g(),s(`span`,Ur,i(t.desc),1)):o(``,!0)])]))),128))])):(g(),s(`p`,Wr,i(_.$t(`connection.label.noScopes`)),1))],64))])),_.selectedItem.connection&&!_.selectedItem.browserSession?(g(),s(`div`,Gr,[e(`dl`,Kr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.expiresAt`)),1),e(`dd`,null,[_.selectedItem.connection.expires_at?(g(),s(`span`,qr,i(_.$dayjs.format(_.selectedItem.connection.expires_at)),1)):(g(),s(`span`,Jr,`—`))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.lastRefreshedAt`)),1),e(`dd`,null,[_.selectedItem.connection.last_refreshed_at?(g(),s(`span`,Yr,i(_.$dayjs.format(_.selectedItem.connection.last_refreshed_at)),1)):(g(),s(`span`,Xr,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(se,{modelValue:_.browseDialogVisible,"onUpdate:modelValue":v[4]||=e=>_.browseDialogVisible=e,onInstalled:_.onCatalogInstalled,onAddAccount:_.onBrowseAddAccount,onManage:_.onBrowseManage},null,8,[`modelValue`,`onInstalled`,`onAddAccount`,`onManage`]),a(ce,{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(le,{modelValue:_.pickerVisible,"onUpdate:modelValue":[v[7]||=e=>_.pickerVisible=e,v[8]||=e=>!e&&_.clearCreateNewIntent()],item:_.pickerCatalog,onSelect:_.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(ue,{modelValue:_.pairingDialogVisible,"onUpdate:modelValue":v[9]||=e=>_.pairingDialogVisible=e,onPaired:_.onBrowserPaired,onClosed:_.onBrowserPairingClosed},null,8,[`modelValue`,`onPaired`,`onClosed`]),a(de,{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(R,{modelValue:_.customDialogVisible,"onUpdate:modelValue":v[17]||=e=>_.customDialogVisible=e,title:_.$t(`connection.title.addCustomConnector`),width:`560px`,"close-on-click-modal":!1},{footer:p(()=>[a(P,{onClick:v[16]||=e=>_.customDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(P,{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`,Zr,i(_.$t(`connection.message.customConnectorHint`)),1),e(`div`,Qr,[a(L,{modelValue:_.customName,"onUpdate:modelValue":v[11]||=e=>_.customName=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.name`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(L,{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(fe,{key:0,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(A,{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`,$r,[a(L,{modelValue:_.customClientId,"onUpdate:modelValue":v[14]||=e=>_.customClientId=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.clientId`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(L,{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`,ei,i(_.$t(`connection.message.customConnectorTrust`)),1)])]),_:1},8,[`modelValue`,`title`]),a(R,{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(P,{onClick:v[19]||=e=>_.scopeDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(P,{type:`primary`,onClick:_.onConfirmScopes},{default:p(()=>[r(i(_.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])]),default:p(()=>[e(`p`,ti,i(_.$t(`connection.message.selectScopesHint`)),1),a(me,{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(pe,{value:t.id,label:t.id},{default:p(()=>[e(`span`,ni,i(t.label||t.id),1)]),_:2},1032,[`value`,`label`]),t.desc?(g(),s(`p`,ri,i(t.desc),1)):o(``,!0)]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`])])}var ai=B(tn,[[`render`,ii],[`__scopeId`,`data-v-32e0083d`]]);export{ai 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,b as ee,ht as d,j as f,mt as p,ot as m,rt as h,tt as g,x as te,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-nQ8npFdF.js";import{n as b,t as x}from"./tabs-BGYcqYLL.js";import{n as S,t as C}from"./form-BNJ9LdPs.js";import{t as w}from"./tooltip-CfIDYfOU.js";import{t as T}from"./alert-GdRL1VbZ.js";import{t as E}from"./avatar-CGdf6QsT.js";import{n as D,t as O}from"./checkbox-CeoqKfX8.js";import{r as k,t as ne}from"./radio-DgDgyT2l.js";import{t as A}from"./divider-BNWJAaA2.js";import{n as j,r as M,t as N}from"./dropdown-NRgGW7sg.js";import{t as P}from"./empty-B1wenOj5.js";import{n as re,t as F}from"./skeleton-B3LIGUiE.js";import{t as I}from"./chevron-down-mgaf2RAP.js";import{t as ie}from"./chevron-right-DG58QlAu.js";import{t as ae}from"./circle-check-CNDAROS9.js";import{t as oe}from"./copy-BLE4b0Rk.js";import{t as se}from"./ellipsis-CuAhqH1Z.js";import{t as ce}from"./external-link-17KdauUd.js";import{t as le}from"./lightbulb-Bd8epvoG.js";import{t as ue}from"./loader-circle-BGTPivSI.js";import{t as de}from"./lock-D6KC7clx.js";import{t as L}from"./monitor-3fuvGmUH.js";import{t as fe}from"./plug-sJY3UFaY.js";import{t as R}from"./plus-DaW5ynEv.js";import{t as pe}from"./search-CBbs0yYc.js";import{t as me}from"./shield-CV7x9taH.js";import{t as he}from"./triangle-alert-CFEWpIE7.js";import{Ai as z,Ci as ge,E as B,Ji as _e,Li as ve,Ti as V,gr as H,ui as U,wi as ye,zi as W}from"./index-CtyvR0M_.js";var be=ge(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),G=()=>({baseURL:`${U()}/api/v1`});function K(e,t){let n=q(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 q(e){return e?.connection_methods||[]}var J=new class{key=`connections`;async list(){return H.get(`/${this.key}/`,G())}async authorize(e){return H.post(`/${this.key}/authorize/`,e,G())}async authorizeCustom(e){return H.post(`/${this.key}/authorize-custom/`,e,G())}async exchangeCustom(e,t){return H.post(`/${this.key}/${e}/exchange-custom/`,t,G())}async refresh(e){return H.post(`/${this.key}/${e}/refresh/`,void 0,G())}async setDefault(e){return await H.post(`/connections/${e}/set-default/`,void 0,G())}async rename(e,t){return await H.patch(`/connections/${e}/`,{label:t},G())}async disconnect(e){return H.delete(`/${this.key}/${e}/`,G())}async rebindBrowserDevice(e,t){return H.put(`/${this.key}/${e}/browser-device/`,{browser_device_id:t},G())}async stopBrowserSessions(e){return H.post(`/${this.key}/${e}/browser-sessions/stop/`,void 0,G())}async tools(e){return H.get(`/${this.key}/${e}/tools/`,G())}async listCatalog(e={}){return H.get(`/connectors/`,{...G(),params:e})}async getCatalogItem(e){return H.get(`/connectors/${e}/`,G())}async catalogCategories(){return H.get(`/connectors/categories/`,G())}async installFromCatalog(e,t={}){return H.post(`/connectors/${e}/install/`,t,G())}async submitCatalogCredentials(e,t){return H.post(`/connectors/${e}/credentials/`,t,G())}},xe=1e4,Se=`https://platform.acedata.cloud/documents/acedataext`;function Y(e){return e==null?``:typeof e==`string`?e:Array.isArray(e)?e.map(Y).filter(Boolean).join(`; `):typeof e==`object`?Object.values(e).map(Y).filter(Boolean).join(`; `):String(e)}var Ce=_({name:`ByocCredentialsDialog`,components:{ElDialog:z,ElForm:C,ElFormItem:S,ElInput:_e,ElSelect:v,ElOption:y,ElButton:W,SecurityIcon:me,WarningIcon:he},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:K(this.item)||null},schema(){return this.activeMethod?.credential.credential_schema||[]},isExtension(){return this.activeMethod?.credential.source===`extension`},ACE_EXTENSION_DOC(){return Se},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||V.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`)))},xe);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){V.error(this.$t(`connection.byoc.extensionNoCookies`));return}let{data:t}=await J.submitCatalogCredentials(this.item.id,{payload:{cookies:e},method_id:this.activeMethod?.id,...this.createNew?{create_new:!0}:{}});V.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`)V.error(this.$t(`connection.byoc.extensionMissing`));else{let t=Y(e?.response?.data?.detail);V.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 J.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}:{}});V.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=Y(e?.response?.data?.detail);V.error(t||this.$t(`connection.message.installFailed`))}finally{this.submitting=!1}}}}}),we={key:0,class:`byoc-missing`},Te={class:`byoc-missing-body`},Ee={class:`byoc-missing-title`},De={class:`byoc-missing-text`},Oe=[`href`],ke={class:`byoc-intro`},Ae=[`href`],je={class:`byoc-steps`},Me={class:`byoc-disclaimer`},Ne={key:0,class:`byoc-intro`},Pe={key:2,class:`byoc-help`},Fe={class:`byoc-disclaimer`};function Ie(n,c,ee,d,m,te){let _=u(`warning-icon`),v=u(`el-button`),y=u(`security-icon`),b=u(`el-option`),x=u(`el-select`),S=u(`el-input`),C=u(`el-form-item`),w=u(`el-form`),T=u(`el-dialog`);return g(),f(T,{modelValue:n.visible,"onUpdate:modelValue":c[1]||=e=>n.visible=e,title:n.dialogTitle,width:`520px`,"append-to-body":``,"destroy-on-close":``,onClose:n.onClose},{footer:p(()=>[a(v,{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(v,{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(v,{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(v,{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`,ke,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,Ae),e(`ol`,je,[e(`li`,null,[r(i(n.$t(`connection.byoc.extensionStepLogin`))+` `,1),n.loginUrl?(g(),f(v,{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`,Me,[a(y,{class:`byoc-shield`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`connection.byoc.disclaimer`)),1)])],64)):(g(),s(`div`,we,[a(_,{class:`byoc-missing-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`div`,Te,[e(`p`,Ee,i(n.$t(`connection.byoc.extensionMissingTitle`)),1),e(`p`,De,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,Oe)])]))],64)):(g(),s(l,{key:1},[n.schema.length>0?(g(),s(`p`,Ne,i(n.$t(`connection.byoc.intro`)),1)):o(``,!0),a(w,{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(C,{key:e.key,label:e.label,prop:e.key},{default:p(()=>[e.type===`select`?(g(),f(x,{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(b,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(g(),f(S,{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`,Pe,i(e.help),1)):o(``,!0)]),_:2},1032,[`label`,`prop`]))),128))]),_:1},8,[`model`,`rules`]),e(`p`,Fe,[a(y,{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 Le=B(Ce,[[`render`,Ie],[`__scopeId`,`data-v-bdcdd067`]]),Re=_({name:`ConnectorMethodPicker`,components:{ElDialog:z,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 q(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=K(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}}}),ze={class:`picker-intro`},Be={class:`picker-tab-label`},Ve={key:0,class:`picker-recommended`},He={key:0,class:`picker-pane-desc`};function Ue(t,n,c,ee,d,m){let te=u(`el-tab-pane`),_=u(`el-tabs`),v=u(`el-button`),y=u(`el-dialog`);return g(),f(y,{modelValue:t.visible,"onUpdate:modelValue":n[1]||=e=>t.visible=e,title:t.dialogTitle,width:`480px`,"append-to-body":``,"destroy-on-close":``,onClose:t.onClose},{footer:p(()=>[a(v,{onClick:t.onClose},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),a(v,{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`,ze,i(t.$t(`connection.method.heading`)),1),a(_,{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(te,{key:n.id,name:n.id},{label:p(()=>[e(`span`,Be,[r(i(t.methodLabel(n))+` `,1),n.recommended?(g(),s(`span`,Ve,i(t.$t(`connection.method.recommended`)),1)):o(``,!0)])]),default:p(()=>[t.methodDesc(n)?(g(),s(`p`,He,i(t.methodDesc(n)),1)):o(``,!0)]),_:2},1032,[`name`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`,`onClose`])}var We=B(Re,[[`render`,Ue],[`__scopeId`,`data-v-b10ce932`]]),X=()=>({baseURL:`${U()}/api/v1`}),Z=new class{key=`browser-devices`;async list(){return H.get(`/${this.key}/`,X())}async rename(e,t){return H.patch(`/${this.key}/${e}/`,{name:t},X())}async delete(e){return H.delete(`/${this.key}/${e}/`,X())}async createPairingChallenge(){return H.post(`/${this.key}/pairing-challenges/`,{},X())}async listPendingClaims(){return H.get(`/${this.key}/pairing-claims/`,X())}async confirmClaim(e,t,n){return H.post(`/${this.key}/pairing-claims/${e}/confirm/`,{key_fingerprint:t,...n?{name:n}:{}},X())}async rejectClaim(e,t){return H.post(`/${this.key}/pairing-claims/${e}/reject/`,{key_fingerprint:t},X())}},Q=null,Ge=_({name:`BrowserPairingDialog`,components:{CopyIcon:oe,ElAlert:T,ElButton:W,ElDialog:z,ElDivider:A,ElInput:_e,ElSkeleton:F,LoadingIcon:ue},props:{modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`paired`,`rejected`,`closed`],data(){return{visible:this.modelValue,loading:!1,polling:!1,challenge:Q?.expires_at_ms&&Q.expires_at_ms>Date.now()?Q:null,claim:null,deviceName:``,errorMessage:``,nowMs:Date.now(),pollTimer:null,clockTimer:null,decision:null,requestGeneration:0}},computed:{secondsRemaining(){let e=this.claim?.expires_at_ms??this.challenge?.expires_at_ms;return e?Math.max(0,Math.ceil((e-this.nowMs)/1e3)):0},decisionExpired(){return this.secondsRemaining===0}},watch:{modelValue(e){this.visible=e,e&&this.startPairing()},visible(e){this.$emit(`update:modelValue`,e),e?this.startClock():this.stopTimers()}},mounted(){this.visible&&this.startPairing()},beforeUnmount(){this.stopTimers()},methods:{async startPairing(){if(this.loading)return;this.stopPolling();let e=++this.requestGeneration;this.loading=!0,this.errorMessage=``,this.decision=null;try{if(this.startClock(),!this.challenge||this.challenge.expires_at_ms<=Date.now()){let{data:t}=await Z.createPairingChallenge();if(!this.visible||e!==this.requestGeneration)return;this.challenge=t,Q=t,this.claim=null,this.deviceName=``}this.nowMs=Date.now(),await this.pollClaims(),!this.claim&&this.challenge&&!this.errorMessage&&(this.pollTimer=window.setInterval(()=>this.pollClaims(),1500))}catch(t){this.visible&&e===this.requestGeneration&&(this.errorMessage=this.errorDetail(t,`user.browserDevice.pairUnavailable`))}finally{e===this.requestGeneration&&(this.loading=!1)}},async pollClaims(){if(!this.challenge||this.polling||this.claim)return;let e=this.requestGeneration,t=this.challenge.challenge_id;if(this.nowMs=Date.now(),this.challenge.expires_at_ms<=this.nowMs){this.errorMessage=String(this.$t(`user.browserDevice.codeExpired`)),this.stopPolling();return}this.polling=!0;try{let{data:n}=await Z.listPendingClaims();if(!this.visible||e!==this.requestGeneration||this.challenge?.challenge_id!==t)return;let r=n.find(e=>e.challenge_id===t);r&&(this.claim=r,this.stopPolling())}catch(t){this.visible&&e===this.requestGeneration&&(this.errorMessage=this.errorDetail(t,`user.browserDevice.pollFailed`),this.stopPolling())}finally{e===this.requestGeneration&&(this.polling=!1)}},async copyCode(){if(this.challenge)try{await navigator.clipboard.writeText(this.challenge.code),V.success(this.$t(`common.message.copied`))}catch{V.error(this.$t(`common.message.updateFailed`))}},async confirm(){let e=this.claim;if(!e||this.decision||this.decisionExpired)return;let t=this.requestGeneration,n=e.claim_id;this.decision=`confirm`;try{let{data:r}=await Z.confirmClaim(e.claim_id,e.key_fingerprint,this.deviceName||void 0);if(!this.visible||t!==this.requestGeneration||this.claim?.claim_id!==n)return;V.success(this.$t(`user.browserDevice.pairSuccess`)),this.$emit(`paired`,r.device),this.challenge=null,Q=null,this.claim=null,this.visible=!1}catch(e){this.visible&&t===this.requestGeneration&&this.claim?.claim_id===n&&(this.errorMessage=this.errorDetail(e,`user.browserDevice.decisionFailed`))}finally{t===this.requestGeneration&&this.claim?.claim_id===n&&(this.decision=null)}},async reject(){let e=this.claim;if(!e||this.decision||this.decisionExpired)return;let t=this.requestGeneration,n=e.claim_id;this.decision=`reject`;try{if(await Z.rejectClaim(e.claim_id,e.key_fingerprint),!this.visible||t!==this.requestGeneration||this.claim?.claim_id!==n)return;V.success(this.$t(`user.browserDevice.rejectSuccess`)),this.$emit(`rejected`,e),this.challenge=null,Q=null,this.claim=null,this.visible=!1}catch(e){this.visible&&t===this.requestGeneration&&this.claim?.claim_id===n&&(this.errorMessage=this.errorDetail(e,`user.browserDevice.decisionFailed`))}finally{t===this.requestGeneration&&this.claim?.claim_id===n&&(this.decision=null)}},errorDetail(e,t){return e?.response?.data?.detail||String(this.$t(t))},stopPolling(){this.pollTimer!==null&&(window.clearInterval(this.pollTimer),this.pollTimer=null)},startClock(){this.nowMs=Date.now(),this.clockTimer===null&&(this.clockTimer=window.setInterval(()=>{this.nowMs=Date.now(),this.secondsRemaining===0&&this.stopPolling()},1e3))},stopTimers(){this.stopPolling(),this.clockTimer!==null&&(window.clearInterval(this.clockTimer),this.clockTimer=null)},onClosed(){this.requestGeneration+=1,this.stopTimers(),this.loading=!1,this.polling=!1,this.errorMessage=``,this.decision=null,this.$emit(`closed`)}}}),Ke={key:0,class:`pairing-loading`},qe={class:`pairing-intro`},Je={class:`pairing-code-row`},Ye={class:`pairing-code`},Xe={class:`pairing-expiry`},Ze={class:`claim-title`},Qe={class:`claim-hint`},$e={class:`claim-details`},et={key:1,class:`waiting-claim`};function tt(t,n,c,ee,d,m){let h=u(`el-alert`),te=u(`el-skeleton`),_=u(`copy-icon`),v=u(`el-button`),y=u(`el-divider`),b=u(`el-input`),x=u(`loading-icon`),S=u(`el-dialog`);return g(),f(S,{modelValue:t.visible,"onUpdate:modelValue":n[2]||=e=>t.visible=e,title:t.$t(`user.browserDevice.pairTitle`),width:`620px`,"append-to-body":``,"destroy-on-close":``,"close-on-click-modal":!1,onClosed:t.onClosed},{footer:p(()=>[t.claim?o(``,!0):(g(),f(v,{key:0,onClick:n[1]||=e=>t.visible=!1},{default:p(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1})),t.errorMessage&&!t.claim?(g(),f(v,{key:1,type:`primary`,loading:t.loading,onClick:t.startPairing},{default:p(()=>[r(i(t.$t(`user.browserDevice.tryAgain`)),1)]),_:1},8,[`loading`,`onClick`])):o(``,!0),t.claim?(g(),s(l,{key:2},[a(v,{type:`danger`,plain:``,loading:t.decision===`reject`,disabled:t.decision!==null||t.decisionExpired,onClick:t.reject},{default:p(()=>[r(i(t.$t(`user.browserDevice.rejectClaim`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),a(v,{type:`primary`,loading:t.decision===`confirm`,disabled:t.decision!==null||t.decisionExpired,onClick:t.confirm},{default:p(()=>[r(i(t.$t(`user.browserDevice.confirmClaim`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])],64)):o(``,!0)]),default:p(()=>[a(h,{title:t.$t(`user.browserDevice.localApprovalOnly`),type:`info`,closable:!1,"show-icon":``,class:`pairing-alert`},null,8,[`title`]),t.loading?(g(),s(`div`,Ke,[a(te,{rows:4,animated:``})])):t.challenge?(g(),s(l,{key:1},[e(`p`,qe,i(t.$t(`user.browserDevice.pairInstructions`)),1),e(`div`,Je,[e(`code`,Ye,i(t.challenge.code),1),a(v,{size:`small`,onClick:t.copyCode},{default:p(()=>[a(_,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`common.button.copy`)),1)]),_:1},8,[`onClick`])]),e(`p`,Xe,i(t.$t(`user.browserDevice.codeExpiresIn`,{seconds:t.secondsRemaining})),1),t.claim?(g(),s(l,{key:0},[a(y),e(`h3`,Ze,i(t.$t(`user.browserDevice.verifyClaimTitle`)),1),e(`p`,Qe,i(t.$t(`user.browserDevice.verifyClaimHint`)),1),e(`dl`,$e,[e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.keyFingerprint`)),1),e(`dd`,null,[e(`code`,null,i(t.claim.key_fingerprint),1)])]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.platform`)),1),e(`dd`,null,i(t.claim.platform),1)]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,i(t.claim.extension_version),1)]),e(`div`,null,[e(`dt`,null,i(t.$t(`user.browserDevice.origin`)),1),e(`dd`,null,[e(`code`,null,i(t.claim.origin),1)])])]),a(b,{modelValue:t.deviceName,"onUpdate:modelValue":n[0]||=e=>t.deviceName=e,modelModifiers:{trim:!0},placeholder:t.$t(`user.browserDevice.namePlaceholder`),maxlength:`128`,"show-word-limit":``},null,8,[`modelValue`,`placeholder`])],64)):(g(),s(`div`,et,[a(x,{class:`waiting-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(t.$t(`user.browserDevice.waitingForAgent`)),1)]))],64)):o(``,!0),t.errorMessage?(g(),f(h,{key:2,title:t.errorMessage,type:`error`,closable:!1,"show-icon":``},null,8,[`title`])):o(``,!0)]),_:1},8,[`modelValue`,`title`,`onClosed`])}var nt=B(Ge,[[`render`,tt],[`__scopeId`,`data-v-3136df0d`]]);function rt(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 it=_({name:`BrowserDevicePicker`,components:{ElAlert:T,ElButton:W,ElDialog:z,ElEmpty:P,ElRadio:ne,ElRadioGroup:k},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 rt(e,this.requiredCapabilities).missingCapabilities},compatible(e){return rt(e,this.requiredCapabilities).compatible},incompatibilityText(e){let t=rt(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 Z.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)}}}),at={key:1,class:`browser-policy`},ot={class:`device-list`},st={class:`device-name`},ct={class:`device-meta`},lt={class:`device-meta`},ut={class:`device-digest`},dt={key:0,class:`device-missing`};function ft(t,n,c,ee,te,_){let v=u(`el-alert`),y=u(`el-radio`),b=u(`el-radio-group`),x=u(`el-empty`),S=u(`el-button`),C=u(`el-dialog`),w=m(`loading`);return g(),f(C,{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(S,{onClick:n[1]||=e=>t.$emit(`pair`)},{default:p(()=>[r(i(t.$t(`user.browserDevice.pairButton`)),1)]),_:1}),a(S,{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(v,{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`,at,i(t.$t(`connection.message.browserAllowedSites`))+`: `+i(t.origins.join(`, `)),1)):o(``,!0),a(v,{title:t.$t(`connection.message.browserHighPrivilegeDisclosure`),type:`warning`,closable:!1,"show-icon":``,class:`mb-4`},null,8,[`title`]),d((g(),s(`div`,ot,[t.devices.length?(g(),f(b,{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(y,{key:n.id,value:n.id,label:n.id,disabled:!t.compatible(n),border:``,class:`device-option`},{default:p(()=>[e(`span`,st,i(n.name),1),e(`span`,ct,i(n.platform)+` · v`+i(n.extension_version||`?`),1),e(`span`,lt,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`,ut,i(n.wire_contract_digest),1),t.compatible(n)?o(``,!0):(g(),s(`span`,dt,i(t.incompatibilityText(n)),1))]),_:2},1032,[`value`,`label`,`disabled`]))),128))]),_:1},8,[`modelValue`])):t.loading?o(``,!0):(g(),f(x,{key:1,description:t.$t(`user.browserDevice.empty`)},null,8,[`description`]))])),[[w,t.loading]])]),_:1},8,[`modelValue`,`title`,`onOpen`])}var pt=B(it,[[`render`,ft],[`__scopeId`,`data-v-7eaca81f`]]);function $(){let e=new URL(`/connections/popup-return`,U());return e.searchParams.set(`opener_origin`,window.location.origin),e.toString()}var mt=`popup=yes,width=600,height=760,noopener=no,noreferrer=no`;function ht(e){let t=window.open(e,`acedata-connect`,mt);if(!t)return null;let n=new URL(U()).origin;return new Promise(e=>{let r=!1,i=t=>{r||(r=!0,window.removeEventListener(`message`,a),window.clearInterval(o),e(t))},a=e=>{if(e.origin!==n||e.source!==t)return;let r=e.data;if(!(!r||r.name!==`connection-result`)){i(r.data??{status:`success`});try{t.close()}catch{}}};window.addEventListener(`message`,a);let o=window.setInterval(()=>{t.closed&&i(null)},500)})}function gt(e){return String(e??``).normalize(`NFKC`).trim().toLowerCase()}function _t(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 q(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(gt).filter(Boolean).join(` `)}var vt=_({name:`BrowseConnectors`,components:{ElDialog:z,ElSelect:v,ElOption:y,ElTooltip:w,ElDropdown:N,ElDropdownMenu:M,ElDropdownItem:j,AddIcon:R,ConnectionIcon:fe,ExpandDownIcon:I,LoadingIcon:ue,SearchIcon:pe,SuccessIcon:ae,ByocCredentialsDialog:Le,ConnectorMethodPicker:We,BrowserPairingDialog:nt,BrowserDevicePicker:pt},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=gt(this.query),t=this.items;return e&&(t=t.filter(t=>_t(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 J.listCatalog(e);this.items=t.items||[]}catch(e){V.error(e?.response?.data?.detail||e?.message||`Failed to load directory`)}finally{this.loading=!1}},async fetchFacets(){try{let{data:e}=await J.catalogCategories();this.facets=e.facets||[]}catch{this.facets=[]}},async onInstall(e){if(!e.installable)return;if(q(e).length>1){this.pickerItem=e,this.pickerVisible=!0;return}let t=K(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 J.installFromCatalog(e.id,{return_url:$(),method_id:t.id});if(n.type===`redirect`){let e=ht(n.authorization_url);if(!e){window.location.href=n.authorization_url;return}await e,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),V.success(this.$t(`connection.message.installed`,{name:e.name})),this.$emit(`installed`,{item:e,connection_id:n.connection_id})}catch(e){V.error(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 J.installFromCatalog(t.id,{return_url:$(),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),V.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}}}}}),yt={class:`browse-intro`},bt={class:`browse-toolbar`},xt={class:`search-wrapper`},St=[`placeholder`],Ct={class:`browse-shell`},wt={class:`browse-sidebar`},Tt={class:`sidebar-section`},Et=[`onClick`],Dt={class:`sidebar-label`},Ot={key:0,class:`sidebar-count`},kt={class:`sidebar-section`},At={class:`sidebar-heading`},jt=[`onClick`],Mt={class:`sidebar-label`},Nt={key:0,class:`sidebar-count`},Pt={class:`browse-grid-wrapper`},Ft={key:0,class:`browse-empty`},It={key:1,class:`browse-grid`},Lt={class:`card-head`},Rt={class:`card-icon`},zt=[`src`,`alt`],Bt={class:`card-title-block`},Vt={class:`card-title-row`},Ht={class:`card-title`},Ut={class:`card-meta`},Wt=[`title`],Gt={key:1,class:`card-pill card-pill-new`},Kt={key:2,class:`card-pill card-pill-trending`},qt={key:3,class:`card-publisher`},Jt={class:`card-action-slot`},Yt=[`disabled`,`onClick`],Xt={class:`ml-1`},Zt=[`aria-label`,`title`],Qt={class:`ml-1 card-action-count`},$t={key:0,class:`card-description`};function en(t,c,te,_,v,y){let b=u(`search-icon`),x=u(`el-option`),S=u(`el-select`),C=u(`connection-icon`),w=u(`loading-icon`),T=u(`add-icon`),E=u(`el-tooltip`),D=u(`success-icon`),O=u(`expand-down-icon`),k=u(`el-dropdown-item`),ne=u(`el-dropdown-menu`),A=u(`el-dropdown`),j=u(`connector-method-picker`),M=u(`browser-pairing-dialog`),N=u(`browser-device-picker`),P=u(`byoc-credentials-dialog`),re=u(`el-dialog`),F=m(`loading`);return g(),f(re,{modelValue:t.visible,"onUpdate:modelValue":c[6]||=e=>t.visible=e,title:t.$t(`connection.title.browse`),width:`900px`,top:`5vh`,"close-on-click-modal":!1,onOpen:t.onOpen},{default:p(()=>[e(`p`,yt,i(t.$t(`connection.message.browseHint`)),1),e(`div`,bt,[e(`div`,xt,[a(b,{class:`search-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),d(e(`input`,{"onUpdate:modelValue":c[0]||=e=>t.query=e,type:`text`,class:`search-input`,placeholder:t.$t(`connection.placeholder.search`)},null,8,St),[[ee,t.query]])]),a(S,{modelValue:t.sort,"onUpdate:modelValue":c[1]||=e=>t.sort=e,size:`default`,class:`sort-select`,onChange:t.fetchItems},{default:p(()=>[a(x,{label:t.$t(`connection.label.featured`),value:`popular`},null,8,[`label`]),a(x,{label:t.$t(`connection.label.new`),value:`new`},null,8,[`label`]),a(x,{label:`A-Z`,value:`name`})]),_:1},8,[`modelValue`,`onChange`])]),d((g(),s(`div`,Ct,[e(`aside`,wt,[e(`div`,Tt,[(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`,Dt,i(r.label),1),r.count>0?(g(),s(`span`,Ot,i(r.count),1)):o(``,!0)],10,Et))),128))]),c[7]||=e(`div`,{class:`sidebar-divider`},null,-1),e(`div`,kt,[e(`div`,At,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`,Nt,i(r.count),1)):o(``,!0)],10,jt))),128))])]),e(`section`,Pt,[!t.loading&&t.filteredItems.length===0?(g(),s(`div`,Ft,i(t.$t(`connection.message.browseEmpty`)),1)):(g(),s(`div`,It,[(g(!0),s(l,null,h(t.filteredItems,c=>(g(),s(`article`,{key:c.id,class:`card`},[e(`div`,Lt,[e(`span`,Rt,[c.icon_url?(g(),s(`img`,{key:0,src:c.icon_url,alt:c.name},null,8,zt)):(g(),f(C,{key:1,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`div`,Bt,[e(`div`,Vt,[e(`h4`,Ht,i(c.name),1)]),e(`div`,Ut,[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,Wt)):c.is_new?(g(),s(`span`,Gt,i(t.$t(`connection.label.new`)),1)):c.is_trending?(g(),s(`span`,Kt,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`,qt,i(c.publisher),1)):o(``,!0)])]),c.installed?(g(),f(A,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:e=>t.onInstalledCommand(e,c)},{dropdown:p(()=>[a(ne,{class:`connection-actions-menu`},{default:p(()=>[a(k,{command:`addAccount`,disabled:!c.installable},{default:p(()=>[r(i(t.$t(`connection.button.addAccount`)),1)]),_:1},8,[`disabled`]),a(k,{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(D,{size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Qt,i(t.accountCount(c)),1),a(O,{class:`ml-1 card-action-caret`,size:12,"aria-hidden":`true`,focusable:`false`})],8,Zt)]),_:2},1032,[`onCommand`])):(g(),f(E,{key:0,disabled:c.installable,content:t.$t(`skill.menu.soon`),placement:`top`},{default:p(()=>[e(`span`,Jt,[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(w,{key:0,class:`icon-spin`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(T,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})),e(`span`,Xt,i(t.$t(`connection.button.install`)),1)],8,Yt)])]),_:2},1032,[`disabled`,`content`]))]),c.short_description||c.description?(g(),s(`p`,$t,i(c.short_description||c.description),1)):o(``,!0)]))),128))]))])])),[[F,t.loading]]),a(j,{modelValue:t.pickerVisible,"onUpdate:modelValue":c[2]||=e=>t.pickerVisible=e,item:t.pickerItem,onSelect:t.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(M,{modelValue:t.pairingDialogVisible,"onUpdate:modelValue":c[3]||=e=>t.pairingDialogVisible=e,onPaired:t.onBrowserPaired},null,8,[`modelValue`,`onPaired`]),a(N,{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(P,{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 tn=_({name:`UserConnections`,components:{ElButton:W,ElTag:ve,ElAvatar:E,ElDialog:z,ElInput:_e,ElCheckbox:O,ElCheckboxGroup:D,ElDropdown:N,ElDropdownMenu:M,ElDropdownItem:j,AddIcon:R,CollapseUpIcon:be,ConnectionIcon:fe,DesktopIcon:L,ExpandDownIcon:I,ExpandRightIcon:ie,ExternalLinkIcon:ce,LockIcon:de,MoreIcon:se,SearchIcon:pe,SuggestionIcon:le,BrowseConnectors:B(vt,[[`render`,en],[`__scopeId`,`data-v-bf7cc87a`]]),ByocCredentialsDialog:Le,ConnectorMethodPicker:We,BrowserPairingDialog:nt,BrowserDevicePicker:pt,ElSkeleton:F,ElSkeletonItem:re,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 K(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 J.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||K(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 J.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 J.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,q(e).length>1){this.pickerCatalog=e,this.pickerVisible=!0;return}let n=K(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 ye.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 J.installFromCatalog(e.id,{scopes:n&&n.length?n:void 0,return_url:$(),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,V.error(e?.response?.data?.detail||e?.message||`Failed to start authorization`)}},async runAuthorizePopup(e){let t=ht(e);if(!t){window.location.href=e;return}await t,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 J.stopBrowserSessions(e.id);V.success(this.$t(`connection.message.browserSessionsStopped`,{count:t.stopped_session_count})),await this.fetchConnections()}catch(e){V.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 J.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,V.success(this.$t(`connection.message.browserRebindSuccess`));return}let{data:r}=await J.installFromCatalog(t.id,{return_url:$(),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,V.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 J.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:window.location.href});e?.authorization_url&&(window.location.href=e.authorization_url)}catch(e){V.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=K(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&&V.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 J.setDefault(e.id),V.success(this.$t(`connection.message.defaultUpdated`)),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.defaultUpdateFailed`))}},async onRename(e){let t;try{let{value:n}=await ye.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 J.rename(e.id,t),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.renameFailed`))}},async onRefresh(e){this.refreshingId=e.id;try{await J.refresh(e.id),V.success(this.$t(`connection.message.refreshed`)),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||this.$t(`connection.message.refreshFailed`))}finally{this.refreshingId=null}},async onDisconnect(e){try{await ye.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 J.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),V.success(this.$t(`connection.message.disconnected`,{provider:this.connectionProviderName(e)})),await this.fetchConnections()}catch(e){V.error(e?.response?.data?.detail||e?.message||`Failed to disconnect`)}}}}),nn={class:`page-shell`},rn={class:`page-heading`},an={class:`page-title`},on={class:`page-subtitle`},sn={class:`connectors-shell`},cn={class:`connectors-list`},ln={class:`list-toolbar`},un={class:`search-wrapper`},dn=[`placeholder`],fn=[`aria-label`,`title`],pn={class:`list-scroll`},mn={class:`list-group`},hn={class:`group-header skeleton-header`},gn={class:`group-items`},_n={class:`group-header`},vn=[`aria-label`,`title`,`onClick`],yn=[`onClick`],bn={class:`group-items`},xn=[`onClick`],Sn={class:`list-item-icon`},Cn=[`src`,`alt`,`onError`],wn={class:`list-item-name`},Tn=[`title`],En={key:1,class:`list-item-badge list-item-badge-default`},Dn={key:2,class:`list-item-badge`},On=[`title`],kn={key:2,class:`list-empty`},An={class:`list-footer`},jn={class:`connectors-detail`},Mn={key:0,class:`detail-skeleton`},Nn={class:`detail-skeleton-header`},Pn={class:`detail-skeleton-section`},Fn={key:1,class:`detail-empty`},In={class:`detail-empty-title`},Ln={class:`detail-empty-hint`},Rn={class:`detail-header`},zn={class:`detail-title-row`},Bn={class:`detail-icon`},Vn=[`src`,`alt`],Hn={class:`detail-title`},Un={class:`detail-actions`},Wn=[`aria-label`,`title`],Gn={key:0,class:`detail-server-url`},Kn={key:1,class:`detail-description`},qn={key:0,class:`detail-section`},Jn={class:`section-heading`},Yn={class:`section-title`},Xn={class:`overview-text`},Zn={key:1,class:`detail-section`},Qn={class:`account-row`},$n={class:`account-info`},er={class:`account-name`},tr={key:0,class:`account-sub`},nr={key:2,class:`detail-section browser-session`},rr={class:`browser-session-heading`},ir={class:`browser-session-icon`},ar={class:`browser-session-copy`},or={class:`meta-grid browser-session-meta`},sr={key:0},cr={key:1,class:`muted`},lr={class:`browser-digest-row`},ur={key:0,class:`browser-capabilities`},dr={class:`browser-capabilities-label`},fr={class:`browser-capability-list`},pr={key:3,class:`detail-section`},mr={class:`meta-grid`},hr={key:0},gr={key:4,class:`detail-section`},_r={class:`meta-grid`},vr={key:0},yr={key:1},br={key:5,class:`detail-section`},xr={class:`section-heading`},Sr={class:`section-title`},Cr={class:`section-count`},wr={class:`section-hint`},Tr={class:`suggestion-list`},Er=[`role`,`tabindex`,`aria-disabled`,`onClick`,`onKeyup`],Dr={class:`suggestion-text`},Or={key:6,class:`detail-section`},kr={class:`section-heading`},Ar={class:`section-title`},jr={key:0,class:`section-count`},Mr={key:0,class:`permission-empty`},Nr={key:1,class:`permission-empty error`},Pr={key:2,class:`permission-list`},Fr={class:`permission-name`},Ir={class:`permission-tool-name`},Lr={key:0,class:`permission-tool-desc`},Rr={key:3,class:`permission-empty`},zr={key:1,class:`permission-empty`},Br={key:0,class:`permission-list`},Vr={class:`permission-name`},Hr={class:`permission-scope-label`},Ur={key:0,class:`permission-tool-desc`},Wr={key:1,class:`permission-empty`},Gr={key:7,class:`detail-section meta-section`},Kr={class:`meta-grid`},qr={key:0},Jr={key:1,class:`muted`},Yr={key:0},Xr={key:1,class:`muted`},Zr={class:`custom-dialog-intro`},Qr={class:`custom-dialog-form`},$r={key:0,class:`advanced-fields`},ei={class:`custom-trust-copy`},ti={class:`text-sm text-gray-500 mb-4`},ni={class:`scope-dialog-label`},ri={key:0,class:`scope-dialog-desc`};function ii(_,v,y,b,x,S){let C=u(`search-icon`),w=u(`add-icon`),T=u(`el-dropdown-item`),E=u(`el-dropdown-menu`),D=u(`el-dropdown`),O=u(`el-skeleton-item`),k=u(`el-skeleton`),ne=u(`expand-right-icon`),A=u(`expand-down-icon`),j=u(`desktop-icon`),M=u(`connection-icon`),N=u(`el-tag`),P=u(`el-button`),re=u(`more-icon`),F=u(`el-avatar`),I=u(`suggestion-icon`),ie=u(`lock-icon`),ae=u(`external-link-icon`),oe=u(`el-tooltip`),se=u(`browse-connectors`),ce=u(`byoc-credentials-dialog`),le=u(`connector-method-picker`),ue=u(`browser-pairing-dialog`),de=u(`browser-device-picker`),L=u(`el-input`),fe=u(`collapse-up-icon`),R=u(`el-dialog`),pe=u(`el-checkbox`),me=u(`el-checkbox-group`),he=m(`loading`);return g(),s(`div`,nn,[e(`div`,rn,[e(`h2`,an,i(_.$t(`connection.title.connections`)),1),e(`p`,on,i(_.$t(`connection.message.pageDescription`)),1)]),e(`div`,sn,[e(`aside`,cn,[e(`div`,ln,[e(`div`,un,[a(C,{class:`search-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),d(e(`input`,{"onUpdate:modelValue":v[0]||=e=>_.searchQuery=e,type:`text`,class:`search-input`,placeholder:_.$t(`connection.placeholder.search`)},null,8,dn),[[ee,_.searchQuery]])]),a(D,{trigger:`click`,placement:`bottom-end`,onCommand:_.onAddCommand},{dropdown:p(()=>[a(E,null,{default:p(()=>[a(T,{command:`browse`},{default:p(()=>[a(C,{class:`mr-2`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.title.browse`)),1)]),_:1}),a(T,{command:`custom`},{default:p(()=>[a(w,{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(w,{size:16,"aria-hidden":`true`,focusable:`false`})],8,fn)]),_:1},8,[`onCommand`])]),d((g(),s(`div`,pn,[_.firstLoadComplete?_.filteredGroups.length?(g(!0),s(l,{key:1},h(_.filteredGroups,t=>(g(),s(`div`,{key:t.key,class:`list-group`},[e(`div`,_n,[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(ne,{key:0,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`})):(g(),f(A,{key:1,class:`group-chevron`,size:14,"aria-hidden":`true`,focusable:`false`}))],8,vn),e(`span`,{class:`group-title`,onClick:e=>_.toggleGroup(t.key)},i(t.label),9,yn)]),d(e(`ul`,bn,[(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`,Sn,[r.faviconUrl?(g(),s(`img`,{key:0,src:r.faviconUrl,alt:r.name,onError:e=>_.onFaviconError(r)},null,40,Cn)):r.browserSession?(g(),f(j,{key:1,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(M,{key:2,size:16,"aria-hidden":`true`,focusable:`false`}))]),e(`span`,wn,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`,En,i(_.$t(`connection.label.defaultAccount`)),1)):o(``,!0),r.byo?(g(),s(`span`,Dn,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,On)):o(``,!0)],10,xn))),128))],512),[[te,!t.collapsed]])]))),128)):(g(),s(`div`,kn,i(_.searchQuery?_.$t(`connection.message.noMatch`):_.$t(`connection.message.noConnections`)),1)):(g(),f(k,{key:0,animated:``},{template:p(()=>[e(`div`,mn,[e(`div`,hn,[a(O,{variant:`text`,style:{width:`100px`,height:`11px`}})]),e(`ul`,gn,[(g(),s(l,null,h(5,t=>e(`li`,{key:`skeleton-${t}`,class:`list-item skeleton-item`},[a(O,{variant:`image`,style:{width:`20px`,height:`20px`,"border-radius":`4px`}}),a(O,{variant:`text`,style:{flex:`1 1 auto`,height:`14px`}})])),64))])])]),_:1}))])),[[he,_.firstLoadComplete&&(_.loading||_.loadingCatalog)]]),e(`div`,An,[e(`button`,{type:`button`,class:`browse-all-button`,onClick:v[1]||=e=>_.browseDialogVisible=!0},[a(C,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(_.$t(`connection.button.browseAll`)),1)])])]),e(`section`,jn,[_.firstLoadComplete?_.selectedItem?o(``,!0):(g(),s(`div`,Fn,[a(M,{class:`detail-empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,In,i(_.$t(`connection.message.selectConnector`)),1),e(`p`,Ln,i(_.$t(`connection.message.noConnectionsHint`)),1)])):(g(),s(`div`,Mn,[a(k,{animated:``},{template:p(()=>[e(`div`,Nn,[a(O,{variant:`circle`,style:{width:`32px`,height:`32px`}}),a(O,{variant:`h3`,style:{width:`220px`,height:`22px`,"margin-left":`12px`}})]),a(O,{variant:`text`,style:{width:`60%`,height:`12px`,"margin-top":`12px`}}),e(`div`,Pn,[a(O,{variant:`text`,style:{width:`140px`,height:`14px`}}),a(O,{variant:`p`,style:{width:`33%`,"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{"margin-top":`16px`}}),a(O,{variant:`p`,style:{width:`61%`,"margin-top":`16px`}})])]),_:1})])),_.firstLoadComplete&&_.selectedItem?(g(),s(l,{key:2},[e(`header`,Rn,[e(`div`,zn,[e(`span`,Bn,[_.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(j,{key:1,size:20,"aria-hidden":`true`,focusable:`false`})):(g(),f(M,{key:2,size:20,"aria-hidden":`true`,focusable:`false`}))]),e(`h3`,Hn,i(_.selectedItem.name),1),_.selectedItem.byo?(g(),f(N,{key:0,size:`small`,type:`info`,class:`detail-custom-tag`},{default:p(()=>[r(i(_.$t(`connection.label.custom`)),1)]),_:1})):o(``,!0),e(`div`,Un,[!_.selectedItem.connection&&_.selectedItem.catalog?(g(),f(P,{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(D,{key:1,trigger:`click`,placement:`bottom-end`,"popper-class":`connection-actions-popper`,onCommand:_.onDetailAction},{dropdown:p(()=>[a(E,{class:`connection-actions-menu`},{default:p(()=>[(g(!0),s(l,null,h(_.detailActions,e=>(g(),f(T,{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(re,{size:16,"aria-hidden":`true`,focusable:`false`})],8,Wn)]),_:1},8,[`onCommand`])):o(``,!0)])]),_.selectedItem.serverUrl?(g(),s(`p`,Gn,i(_.selectedItem.serverUrl),1)):_.selectedItem.description?(g(),s(`p`,Kn,i(_.selectedItem.description),1)):o(``,!0)]),_.overviewText?(g(),s(`div`,qn,[e(`div`,Jn,[e(`span`,Yn,i(_.$t(`connection.title.overview`)),1)]),e(`p`,Xn,i(_.overviewText),1)])):o(``,!0),_.selectedItem.connection&&!_.selectedItem.custom&&_.showsAccountIdentity?(g(),s(`div`,Zn,[e(`div`,Qn,[_.connectionAvatar(_.selectedItem.connection)?(g(),f(F,{key:0,src:_.connectionAvatar(_.selectedItem.connection),size:40},null,8,[`src`])):(g(),f(F,{key:1,size:40,class:`account-avatar-fallback`},{default:p(()=>[r(i(_.connectionAccountInitial(_.selectedItem.connection)),1)]),_:1})),e(`div`,$n,[e(`span`,er,i(_.connectionAccountName(_.selectedItem.connection)),1),_.connectionAccountSubtext(_.selectedItem.connection)?(g(),s(`span`,tr,i(_.connectionAccountSubtext(_.selectedItem.connection)),1)):o(``,!0)]),a(N,{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`,nr,[e(`div`,rr,[e(`span`,ir,[a(j,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,ar,[e(`strong`,null,i(_.selectedItem.connection.browser_device?.name||_.$t(`user.browserDevice.title`)),1),e(`span`,null,i(_.$t(`user.browserDevice.localApprovalOnly`)),1)]),a(N,{type:_.browserDeviceStatusTagType(_.selectedItem.connection),size:`small`},{default:p(()=>[r(i(_.browserDeviceCompatibilityLabel(_.selectedItem.connection)),1)]),_:1},8,[`type`])]),e(`dl`,or,[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`,sr,i(_.$dayjs.format(_.selectedItem.connection.browser_device.last_seen_at)),1)):(g(),s(`span`,cr,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`,lr,[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`,ur,[e(`span`,dr,i(_.$t(`user.browserDevice.capabilities`)),1),e(`div`,fr,[(g(!0),s(l,null,h(_.selectedItem.connection.browser_device.capabilities,e=>(g(),f(N,{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`,pr,[e(`dl`,mr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(N,{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`,hr,[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`,gr,[e(`dl`,_r,[_.showsAccountIdentity?o(``,!0):(g(),s(`div`,vr,[e(`dt`,null,i(_.$t(`connection.field.status`)),1),e(`dd`,null,[a(N,{type:_.statusTagType(_.selectedItem.connection.status),size:`small`},{default:p(()=>[r(i(_.statusLabel(_.selectedItem.connection.status)),1)]),_:1},8,[`type`])])])),_.byocCredentialSummary(_.selectedItem)?(g(),s(`div`,yr,[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`,br,[e(`div`,xr,[e(`span`,Sr,i(_.$t(`connection.title.tryIt`)),1),e(`span`,Cr,i(_.suggestions.length),1)]),e(`p`,wr,i(_.suggestionsLocked?_.$t(`connection.message.tryItConnectFirst`):_.$t(`connection.message.tryItHint`)),1),e(`ul`,Tr,[(g(!0),s(l,null,h(_.suggestions,r=>(g(),f(oe,{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(I,{class:`suggestion-icon`,size:16,"aria-hidden":`true`,focusable:`false`}),e(`span`,Dr,i(r.prompt),1),_.suggestionsLocked?(g(),f(ie,{key:0,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(ae,{key:1,class:`suggestion-cta`,size:16,"aria-hidden":`true`,focusable:`false`}))],42,Er)]),_:2},1032,[`content`,`disabled`]))),128))])])):o(``,!0),_.selectedItem.browserSession?o(``,!0):(g(),s(`div`,Or,[e(`div`,kr,[e(`span`,Ar,i(_.$t(`connection.title.toolPermissions`)),1),_.permissionRowCount?(g(),s(`span`,jr,i(_.permissionRowCount),1)):o(``,!0)]),_.selectedItem.custom&&_.selectedItem.connection?(g(),s(l,{key:0},[_.selectedMcpToolsLoading?(g(),s(`p`,Mr,i(_.$t(`connection.message.toolsLoading`)),1)):_.selectedMcpToolsError?(g(),s(`p`,Nr,i(_.selectedMcpToolsError),1)):_.selectedMcpTools&&_.selectedMcpTools.length?(g(),s(`ul`,Pr,[(g(!0),s(l,null,h(_.selectedMcpTools,t=>(g(),s(`li`,{key:t.name,class:`permission-row`},[e(`span`,Fr,[e(`span`,Ir,i(t.name),1),t.description?(g(),s(`span`,Lr,i(t.description),1)):o(``,!0)])]))),128))])):(g(),s(`p`,Rr,i(_.$t(`connection.label.noTools`)),1))],64)):_.isMcpConnector&&!_.selectedItem.connection?(g(),s(`p`,zr,i(_.$t(`connection.label.toolsConnectFirst`)),1)):(g(),s(l,{key:2},[_.detailScopes.length?(g(),s(`ul`,Br,[(g(!0),s(l,null,h(_.detailScopes,t=>(g(),s(`li`,{key:t.id,class:`permission-row`},[e(`span`,Vr,[e(`span`,Hr,i(t.label),1),t.desc?(g(),s(`span`,Ur,i(t.desc),1)):o(``,!0)])]))),128))])):(g(),s(`p`,Wr,i(_.$t(`connection.label.noScopes`)),1))],64))])),_.selectedItem.connection&&!_.selectedItem.browserSession?(g(),s(`div`,Gr,[e(`dl`,Kr,[e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.expiresAt`)),1),e(`dd`,null,[_.selectedItem.connection.expires_at?(g(),s(`span`,qr,i(_.$dayjs.format(_.selectedItem.connection.expires_at)),1)):(g(),s(`span`,Jr,`—`))])]),e(`div`,null,[e(`dt`,null,i(_.$t(`connection.field.lastRefreshedAt`)),1),e(`dd`,null,[_.selectedItem.connection.last_refreshed_at?(g(),s(`span`,Yr,i(_.$dayjs.format(_.selectedItem.connection.last_refreshed_at)),1)):(g(),s(`span`,Xr,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(se,{modelValue:_.browseDialogVisible,"onUpdate:modelValue":v[4]||=e=>_.browseDialogVisible=e,onInstalled:_.onCatalogInstalled,onAddAccount:_.onBrowseAddAccount,onManage:_.onBrowseManage},null,8,[`modelValue`,`onInstalled`,`onAddAccount`,`onManage`]),a(ce,{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(le,{modelValue:_.pickerVisible,"onUpdate:modelValue":[v[7]||=e=>_.pickerVisible=e,v[8]||=e=>!e&&_.clearCreateNewIntent()],item:_.pickerCatalog,onSelect:_.onMethodSelected},null,8,[`modelValue`,`item`,`onSelect`]),a(ue,{modelValue:_.pairingDialogVisible,"onUpdate:modelValue":v[9]||=e=>_.pairingDialogVisible=e,onPaired:_.onBrowserPaired,onClosed:_.onBrowserPairingClosed},null,8,[`modelValue`,`onPaired`,`onClosed`]),a(de,{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(R,{modelValue:_.customDialogVisible,"onUpdate:modelValue":v[17]||=e=>_.customDialogVisible=e,title:_.$t(`connection.title.addCustomConnector`),width:`560px`,"close-on-click-modal":!1},{footer:p(()=>[a(P,{onClick:v[16]||=e=>_.customDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(P,{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`,Zr,i(_.$t(`connection.message.customConnectorHint`)),1),e(`div`,Qr,[a(L,{modelValue:_.customName,"onUpdate:modelValue":v[11]||=e=>_.customName=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.name`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(L,{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(fe,{key:0,class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`})):(g(),f(A,{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`,$r,[a(L,{modelValue:_.customClientId,"onUpdate:modelValue":v[14]||=e=>_.customClientId=e,modelModifiers:{trim:!0},placeholder:_.$t(`connection.placeholder.clientId`),clearable:``},null,8,[`modelValue`,`placeholder`]),a(L,{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`,ei,i(_.$t(`connection.message.customConnectorTrust`)),1)])]),_:1},8,[`modelValue`,`title`]),a(R,{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(P,{onClick:v[19]||=e=>_.scopeDialogVisible=!1},{default:p(()=>[r(i(_.$t(`common.button.cancel`)),1)]),_:1}),a(P,{type:`primary`,onClick:_.onConfirmScopes},{default:p(()=>[r(i(_.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])]),default:p(()=>[e(`p`,ti,i(_.$t(`connection.message.selectScopesHint`)),1),a(me,{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(pe,{value:t.id,label:t.id},{default:p(()=>[e(`span`,ni,i(t.label||t.id),1)]),_:2},1032,[`value`,`label`]),t.desc?(g(),s(`p`,ri,i(t.desc),1)):o(``,!0)]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`])])}var ai=B(tn,[[`render`,ii],[`__scopeId`,`data-v-32e0083d`]]);export{ai as default};
|