@acedatacloud/nexior 3.362.0 → 3.362.2
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-DS2Ao54g.js → ApiCodeButton-BAkOBxie.js} +1 -1
- package/dist/assets/{ApiCodeDialog-DwzHFYT0.js → ApiCodeDialog-bM2jYt0k.js} +1 -1
- package/dist/assets/{Artifacts-CMPcwqzq.js → Artifacts-CkTmSnAa.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-BuHKFaaU.js → AskUserQuestionCard-CCaEhOiC.js} +1 -1
- package/dist/assets/{AudioPreview-DYsYS9-X.js → AudioPreview-LQ8lEoP-.js} +1 -1
- package/dist/assets/{Auth-DLaTz14-.js → Auth-_gOgHSU0.js} +1 -1
- package/dist/assets/{Bare-Dog93A8A.js → Bare-CNmtrwAx.js} +1 -1
- package/dist/assets/{BotPlaceholder-B9J3potY.js → BotPlaceholder-CBS4lAjm.js} +1 -1
- package/dist/assets/{BottomFooter-DMH1xV4k.js → BottomFooter-Bk_ZWz98.js} +1 -1
- package/dist/assets/{BrowseConnectors-DEbdsLQa.js → BrowseConnectors-DndkuWdA.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-BM5xagGs.js → BrowserPairingDialog-CPIZhuOj.js} +1 -1
- package/dist/assets/{Callback-D1JpyPgl.js → Callback-Bh4XDEf8.js} +1 -1
- package/dist/assets/{CodeSnippet-0XBuWbAo.js → CodeSnippet-CK5oFt1I.js} +1 -1
- package/dist/assets/{Console-CrAyBgSp.js → Console-DhPXYBDT.js} +1 -1
- package/dist/assets/{Consumption-DT871xlT.js → Consumption-CQoAp-2Q.js} +1 -1
- package/dist/assets/{Conversation-CwqFcJJM.js → Conversation-DrM-uZU6.js} +1 -1
- package/dist/assets/{Conversation-ZnbnnBn6.js → Conversation-r8FTBMps.js} +1 -1
- package/dist/assets/{CopyToClipboard-BllQPGdv.js → CopyToClipboard-Bt4pNx5a.js} +1 -1
- package/dist/assets/{Detail-Cq2hmaUD.js → Detail-CSr9u2KG.js} +1 -1
- package/dist/assets/{Extra-DVzRrk9_.js → Extra-mJj6WzGA.js} +1 -1
- package/dist/assets/{FilePreview-Cp3nq75_.js → FilePreview-YdzEP0Sz.js} +1 -1
- package/dist/assets/{Hailuo-Cvdqs0f9.js → Hailuo-vHQDSZct.js} +1 -1
- package/dist/assets/{History-Bp55Ac2-.js → History-DFR9ymyJ.js} +1 -1
- package/dist/assets/{ImagePreview-Bhm_fdxQ.js → ImagePreview-BtYz7VS_.js} +1 -1
- package/dist/assets/{ImageWrapper-C-50b2__.js → ImageWrapper-CyPuHE9N.js} +1 -1
- package/dist/assets/{Index-CFMlitR6.js → Index-3kZfb74S.js} +1 -1
- package/dist/assets/{Index-B6Sl2jwY.js → Index-88JgM0mD.js} +1 -1
- package/dist/assets/{Index-BS2gdNe1.js → Index-9_g65T_M.js} +1 -1
- package/dist/assets/{Index-CSTD-_H5.js → Index-B1qLgswn.js} +1 -1
- package/dist/assets/{Index-CDXYTvXf.js → Index-B2kQl_Nl.js} +1 -1
- package/dist/assets/{Index-QdGgnGvK.js → Index-B2tLj-vo.js} +1 -1
- package/dist/assets/{Index-eHfL7e1j.js → Index-BBuN1uFz.js} +1 -1
- package/dist/assets/{Index-xIeLL2hx.css → Index-BJThkL2I.css} +1 -1
- package/dist/assets/{Index-DTOhcXnh.js → Index-BNlrj2wD.js} +1 -1
- package/dist/assets/{Index-C41f5__l.js → Index-BNxzh_mB.js} +1 -1
- package/dist/assets/{Index-BDMy6K2J.js → Index-BSQTk3rZ.js} +1 -1
- package/dist/assets/{Index-Cey_Ip_R.js → Index-B_uHHqnQ.js} +1 -1
- package/dist/assets/{Index-C6bSVJZC.js → Index-Bbf-APQ0.js} +1 -1
- package/dist/assets/{Index-BcG22o7d.js → Index-Bkn1S261.js} +1 -1
- package/dist/assets/{Index-MQ29rw4N.js → Index-BoqiiuYt.js} +1 -1
- package/dist/assets/{Index-DLqbQOo8.js → Index-CExuBc9s.js} +1 -1
- package/dist/assets/{Index-DKJvNvAm.js → Index-CK1x76Mr.js} +1 -1
- package/dist/assets/{Index-CBoUASsH.js → Index-CLo709z7.js} +1 -1
- package/dist/assets/{Index-BuWIyao2.js → Index-CXszXqLV.js} +1 -1
- package/dist/assets/{Index-dsCXona22.js → Index-CjsRfqWv2.js} +1 -1
- package/dist/assets/{Index-DUU5J8pH.js → Index-CvTkZUQP.js} +1 -1
- package/dist/assets/{Index-B2R6CxpE.js → Index-D1G9rIK2.js} +1 -1
- package/dist/assets/{Index-C3ZS-VrP.js → Index-D4AvUtiV.js} +1 -1
- package/dist/assets/{Index-DL4CNICy.js → Index-DMpNerdn.js} +1 -1
- package/dist/assets/{Index-BuIBBQYo.js → Index-DOFJea9M.js} +1 -1
- package/dist/assets/{Index-sGN_ZPv6.js → Index-DQmVpjTa.js} +1 -1
- package/dist/assets/{Index-D6X0KKXE.js → Index-DSOompWN.js} +1 -1
- package/dist/assets/{Index-DWgYMuNl.js → Index-DbLuorqR.js} +1 -1
- package/dist/assets/{Index-x2Ww5hHB.js → Index-Dl2CguWw.js} +1 -1
- package/dist/assets/{Index-TzFBcvA1.js → Index-JDa64RPr.js} +1 -1
- package/dist/assets/{Index-XxYOwo94.js → Index-Ogxhmlx4.js} +1 -1
- package/dist/assets/{Index-BchtdjyR.js → Index-Ui9BQQkK.js} +1 -1
- package/dist/assets/{Index-Bd3ELHRU.js → Index-XMu_83Jn.js} +1 -1
- package/dist/assets/{Index-BT8hdBTH.js → Index-YQBqTqZX.js} +1 -1
- package/dist/assets/Index-hVwk1uL4.js +2 -0
- package/dist/assets/{Index-DQZOc-z4.js → Index-mgP9Xz4i.js} +1 -1
- package/dist/assets/{Invitees-De0LZUT_.js → Invitees-DKvjecGv.js} +1 -1
- package/dist/assets/{List-DHhHFA_s.js → List-CFZ-KClZ.js} +1 -1
- package/dist/assets/{List-BZTfgs1Q.js → List-DO-95ZUQ.js} +1 -1
- package/dist/assets/{List-ZLZnbjPc.js → List-Do1_hkFr.js} +1 -1
- package/dist/assets/{LocalTools-CleiuQvI.js → LocalTools-B2UBvw3T.js} +1 -1
- package/dist/assets/{LocalTools-C7xPDZqG.js → LocalTools-Y7QXXXv1.js} +1 -1
- package/dist/assets/{Logo-CNPu_phh.js → Logo-CkZtONM-.js} +1 -1
- package/dist/assets/{Main-BQj7C7i2.js → Main-B6vmpMi_.js} +1 -1
- package/dist/assets/{Message-D8DC3Knl.js → Message-bYB4o6ns.js} +1 -1
- package/dist/assets/{Model-CLYOOaGI.js → Model-2qlcrdM5.js} +1 -1
- package/dist/assets/{Navigator-FK1udvuJ.js → Navigator-UlEQflv0.js} +3 -3
- package/dist/assets/{NotFound-ErfeN-V3.js → NotFound-q1Yogbs6.js} +1 -1
- package/dist/assets/{PageHeader--HyntvO8.js → PageHeader-DFCQCtrg.js} +1 -1
- package/dist/assets/{Pay-Bw6Wn_Mf.js → Pay-D55gLkzf.js} +1 -1
- package/dist/assets/{Player-BkRIKQsw.js → Player-BZsDcGuL.js} +1 -1
- package/dist/assets/{Poivelle-jvq64g0g.js → Poivelle-D57_tC8_.js} +1 -1
- package/dist/assets/{RealtimeCall-B3fu-Kd8.js → RealtimeCall-DyuHg2Bi.js} +1 -1
- package/dist/assets/{ReportButton-kdxIkkPa.js → ReportButton-DzpX6LE5.js} +1 -1
- package/dist/assets/{ReportDialog-BoxOamaC.js → ReportDialog-CCnN0lJe.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-C5pnkQaV.js → ScenarioPaymentMode-CqRu92vx.js} +1 -1
- package/dist/assets/{ScheduledTasks-ZuB3rwgg.js → ScheduledTasks-QN5AxC-v.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-C53lV2pG.js → SolanaWalletPickerDialog-DOSCBh2r.js} +1 -1
- package/dist/assets/{Status-yVX3ZxHB.js → Status-COhaglgv.js} +1 -1
- package/dist/assets/{Subscribe-B2474KBY.js → Subscribe-DAz47Cap.js} +1 -1
- package/dist/assets/{TabSwitcher-DzHdKt9n.js → TabSwitcher-BGVRfEet.js} +1 -1
- package/dist/assets/{Tts-CiQKye2M.js → Tts-DMDt8Xcl.js} +1 -1
- package/dist/assets/{UpdateMenuItem-DEKVCYWj.js → UpdateMenuItem-D2dQe6OD.js} +1 -1
- package/dist/assets/{VideoPlayer-O2873A0q.js → VideoPlayer-Coh2RFTi.js} +1 -1
- package/dist/assets/{VideoPreview-vwMJEAH5.js → VideoPreview-C5oYTkjm.js} +1 -1
- package/dist/assets/arrow-down-CqF-cU9W.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-DV_jDQwG.js → arrow-down-wide-narrow-B-Hw44Fp.js} +1 -1
- package/dist/assets/arrow-left-CoDtXesZ.js +1 -0
- package/dist/assets/arrow-right-Bkg9RgYl.js +1 -0
- package/dist/assets/arrow-up-BzNg9m4O.js +1 -0
- package/dist/assets/{authorizeFlow-CSEHxU5k.js → authorizeFlow-BcYpJg7c.js} +1 -1
- package/dist/assets/{basic-C1CRGoRM.js → basic-DiyvIczP.js} +1 -1
- package/dist/assets/{book-open-aMMNqezM.js → book-open-DwN99mbQ.js} +1 -1
- package/dist/assets/{box-DOPiuA2Y.js → box-BVjGLFxS.js} +1 -1
- package/dist/assets/{boxes-CJC2GfcK.js → boxes-c9GATTtV.js} +1 -1
- package/dist/assets/{brain-B6YrlY0J.js → brain-BB-39nEa.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-Q-oVi8mc.js → chart-no-axes-combined-DO-Wi2EC.js} +1 -1
- package/dist/assets/{chat-DMHJjANe.js → chat-Npxrt_kQ.js} +1 -1
- package/dist/assets/check-6cv1CZ0l.js +1 -0
- package/dist/assets/chevron-down-Ben_YIW6.js +1 -0
- package/dist/assets/chevron-right-C3lMw0qC.js +1 -0
- package/dist/assets/circle-check-CDbPCRg6.js +1 -0
- package/dist/assets/{circle-question-mark-DOtVb48l.js → circle-question-mark-CSxm0VWD.js} +1 -1
- package/dist/assets/{clipboard-list-B9xWFhcC.js → clipboard-list-BxHeRww6.js} +1 -1
- package/dist/assets/clock-CEYSZpiZ.js +1 -0
- package/dist/assets/code-DnM_OC9R.js +1 -0
- package/dist/assets/codingBridge-2jZjSYGT.js +1 -0
- package/dist/assets/codingBridge-B0S_pFNE.js +1 -0
- package/dist/assets/codingBridge-BDEdzBFe.js +1 -0
- package/dist/assets/codingBridge-BHI0iozm.js +1 -0
- package/dist/assets/codingBridge-BOWR_lJQ.js +1 -0
- package/dist/assets/codingBridge-BbfAxNQS.js +1 -0
- package/dist/assets/codingBridge-C-7r6SDr.js +1 -0
- package/dist/assets/codingBridge-C0TmJx0P.js +1 -0
- package/dist/assets/codingBridge-C4w0uRt_.js +1 -0
- package/dist/assets/codingBridge-CWYAzcU4.js +1 -0
- package/dist/assets/codingBridge-CYD6uZWc.js +1 -0
- package/dist/assets/codingBridge-CmImNHXz.js +1 -0
- package/dist/assets/codingBridge-CmbX76zB.js +1 -0
- package/dist/assets/codingBridge-DJxa2Ctr.js +1 -0
- package/dist/assets/codingBridge-DNaWsf8h.js +1 -0
- package/dist/assets/{codingBridge-BFVZJ5MB.js → codingBridge-Dl514gEP.js} +1 -1
- package/dist/assets/codingBridge-co3msHz2.js +1 -0
- package/dist/assets/codingBridge-pO1u-DNE.js +1 -0
- package/dist/assets/codingBridge-vJH_tqU-.js +1 -0
- package/dist/assets/{codingBridgeNotify-C3UvYyZR.js → codingBridgeNotify-CDQKwxBX.js} +2 -2
- package/dist/assets/{coins-CnFSairO.js → coins-sq7NECLS.js} +1 -1
- package/dist/assets/{collapse-BBPAUwkb.js → collapse-Cr16lHVf.js} +1 -1
- package/dist/assets/{common-CuPxTZGi.js → common-1BuWg_Ck.js} +1 -1
- package/dist/assets/{common-BUOKedMn.js → common-9nCXGYVx.js} +1 -1
- package/dist/assets/{common-w17leeAE.js → common-B-c9sxdB.js} +1 -1
- package/dist/assets/{common-BYclcXpM.js → common-B5oDmIry.js} +1 -1
- package/dist/assets/{common-WoHC2Z1D.js → common-BFJA3ieK.js} +1 -1
- package/dist/assets/{common-DNVpMRaC.js → common-BKCz97Y2.js} +1 -1
- package/dist/assets/{common-B4JQhkdy.js → common-BUVCx2e_.js} +1 -1
- package/dist/assets/{common-C31VUHxp.js → common-Bg0zh9_g.js} +1 -1
- package/dist/assets/{common-DzOBf50F.js → common-BlzM4u-K.js} +1 -1
- package/dist/assets/{common-D09NRuQP.js → common-BsYNmdlc.js} +1 -1
- package/dist/assets/{common-BYro2bF9.js → common-CFSDnaPx.js} +1 -1
- package/dist/assets/{common-i2XU2w9Y.js → common-CIkh1cBe.js} +1 -1
- package/dist/assets/{common-lPA87Lk8.js → common-Cj6O6oFE.js} +1 -1
- package/dist/assets/{common-4w5mCTO4.js → common-DIkr6DUT.js} +1 -1
- package/dist/assets/{common-BL8iFS5Q.js → common-DIrEHT0L.js} +1 -1
- package/dist/assets/{common-Clhk4bF9.js → common-DrrHfeAt.js} +1 -1
- package/dist/assets/{common-BZ-u417v.js → common-Mi7Vx9F5.js} +1 -1
- package/dist/assets/{common-BtW4DFeI.js → common-t5cLjCgd.js} +1 -1
- package/dist/assets/{constants-DQiaG9QL.js → constants-DlrPFkyM.js} +1 -1
- package/dist/assets/{copy-D80bbL4I.js → copy-C5QvMUhF.js} +1 -1
- package/dist/assets/{createTaskActions-Byj7dDzc.js → createTaskActions-Buml4YZY.js} +1 -1
- package/dist/assets/{digitalhuman-b3QRH9IP.js → digitalhuman-BtCdcmzi.js} +1 -1
- package/dist/assets/{dollar-sign-DtmHiFYP.js → dollar-sign-ZSrTaxmA.js} +1 -1
- package/dist/assets/{download-B2DNdjjU.js → download-PdN43Ii9.js} +1 -1
- package/dist/assets/{drawer-BEFc3IO1.js → drawer-C9ziMa5D.js} +1 -1
- package/dist/assets/{dropdown-BaRTacsr.js → dropdown-BWJ6QGiC.js} +1 -1
- package/dist/assets/{dropdown-CyNWLxHe.js → dropdown-CirLmBbl.js} +1 -1
- package/dist/assets/{ellipsis-DNSwvGoT.js → ellipsis-DCgVjflW.js} +1 -1
- package/dist/assets/esm-D_6POuvI.js +1 -0
- package/dist/assets/{esm-DGogS-Kg.js → esm-Hgtd-cm8.js} +2 -2
- package/dist/assets/{esm-9vIEDDie.js → esm-oy9-x-4m.js} +2 -2
- package/dist/assets/{external-link-CcrrlE2G.js → external-link-Ik947zOn.js} +1 -1
- package/dist/assets/{eye-BoHyFhNG.js → eye-VFrDoEk4.js} +1 -1
- package/dist/assets/{file-CYklVd0M.js → file-BJi6f11L.js} +1 -1
- package/dist/assets/{file-output-CW29fMX5.js → file-output-CUNyohca.js} +1 -1
- package/dist/assets/{file-text-BQYfEBw5.js → file-text-CVGRb3Sl.js} +1 -1
- package/dist/assets/{fish-CBAqcbap.js → fish-IghNxwsq.js} +1 -1
- package/dist/assets/{flux-DkfbyZKG.js → flux-B9-kDmTH.js} +1 -1
- package/dist/assets/{focus-trap-B2_8AKNj.js → focus-trap-DOoImtBk.js} +1 -1
- package/dist/assets/{folder-DqsEg2BZ.js → folder-BNDnFq4V.js} +1 -1
- package/dist/assets/gauge-aYfGw3VQ.js +1 -0
- package/dist/assets/{globe-86p3Kmjh.js → globe-jnFJnwZn.js} +1 -1
- package/dist/assets/{grokvideo-LBh0Qa48.js → grokvideo-B5anjmYK.js} +1 -1
- package/dist/assets/{hailuo-m0ib0aCd.js → hailuo-Cv8EX1ss.js} +1 -1
- package/dist/assets/{headphones-CWuZYiKK.js → headphones-B212Wbvy.js} +1 -1
- package/dist/assets/{history-KglegjqD.js → history-C_-QR2T6.js} +1 -1
- package/dist/assets/{house-B72YCDEB.js → house-D_GT9GCN.js} +1 -1
- package/dist/assets/{i18n-krBZIXd-.js → i18n-CQJsUptL.js} +1 -1
- package/dist/assets/{image-DXwJhoIg.js → image-Bh2YK2ql.js} +1 -1
- package/dist/assets/{imageRequests-BIJt9lt9.js → imageRequests-BKbsl9tT.js} +1 -1
- package/dist/assets/{index-DhsoJc0z.js → index-BOCSBfUe.js} +10 -10
- package/dist/assets/{index-S1OTlWvU.css → index-Dfp2KQ3h.css} +1 -1
- package/dist/assets/{index.es-BtzlknRv.js → index.es-DcSmGa6z.js} +1 -1
- package/dist/assets/{info-CK99OcWH.js → info-DlDYYYyz.js} +1 -1
- package/dist/assets/{input-number-B2Undkcy.js → input-number-D2KUI1kN.js} +1 -1
- package/dist/assets/{key-round-DpGlu3oT.js → key-round-C7Ox29cM.js} +1 -1
- package/dist/assets/{kling-K__XduXp.js → kling-DI9XZTw6.js} +1 -1
- package/dist/assets/{languages-BNuOBbhf.js → languages-CeIhdhQe.js} +1 -1
- package/dist/assets/{laptop-BIzBC5uc.js → laptop-DWSIh2KY.js} +1 -1
- package/dist/assets/{lightbulb-CbLt2u6n.js → lightbulb-6SCo6aGb.js} +1 -1
- package/dist/assets/{link-DQgmNJQw.js → link-Cag6_8_J.js} +1 -1
- package/dist/assets/loader-circle-CD3osO-L.js +1 -0
- package/dist/assets/{lock-ImlWL0Jb.js → lock-BfsTRjoQ.js} +1 -1
- package/dist/assets/{luma-CyoPJpeW.js → luma-My7-Qacg.js} +1 -1
- package/dist/assets/{maestro-ZQm9Fzsr.js → maestro-DtFqFbfA.js} +1 -1
- package/dist/assets/{maestroLanguages-DPk-wYNq.js → maestroLanguages-Dj908WCy.js} +1 -1
- package/dist/assets/{mail-BFE87hxa.js → mail-DTKcIUlX.js} +1 -1
- package/dist/assets/{message-circle-C03E67HV.js → message-circle-CIzM-ib3.js} +1 -1
- package/dist/assets/{mic-RZA92lvo.js → mic-lqwIrsvy.js} +1 -1
- package/dist/assets/{midjourney-Bjq3Ni2Z.js → midjourney-B6ZymwTx.js} +1 -1
- package/dist/assets/{minimax-uPDbVnGb.js → minimax-BOtBLzBq.js} +1 -1
- package/dist/assets/{mobileLocalExec-Ch5N6Z-2.js → mobileLocalExec-BPI41lV6.js} +2 -2
- package/dist/assets/{models-D_Ijt5J2.js → models-CwklOk8Z.js} +1 -1
- package/dist/assets/{monitor-9BUDOxP8.js → monitor-ipgmClj0.js} +1 -1
- package/dist/assets/{mouse-pointer-2-BXChDVqu.js → mouse-pointer-2-BrOji6Vv.js} +1 -1
- package/dist/assets/music-2-CuQ41Wjt.js +1 -0
- package/dist/assets/{nanobanana-CSS1PyBP.js → nanobanana-x8-A4AiB.js} +1 -1
- package/dist/assets/{omni-B9F1tN2h.js → omni-CuQKUq0R.js} +1 -1
- package/dist/assets/{openaiimage-aYjFCneq.js → openaiimage-DWNeaPEk.js} +1 -1
- package/dist/assets/{pagination-wmGHiMT8.js → pagination-A4M5O80l.js} +1 -1
- package/dist/assets/{pagination-l4G2kgO9.js → pagination-B8FPaRIA.js} +1 -1
- package/dist/assets/{pagination-BBCo7tyn.js → pagination-CacbU_h5.js} +1 -1
- package/dist/assets/{palette-CcXHh4s1.js → palette-BH9uLfke.js} +1 -1
- package/dist/assets/{paperclip-BaCbMzgp.js → paperclip-DU2unXPs.js} +1 -1
- package/dist/assets/{pause-y7E75GMp.js → pause-DKVsTcCD.js} +1 -1
- package/dist/assets/{pencil-DM77Dtmz.js → pencil-DDlb_Eqp.js} +1 -1
- package/dist/assets/{pika-CtnSQzxl.js → pika-Twbh_o5m.js} +1 -1
- package/dist/assets/{pixverse-BWGwXp82.js → pixverse-CZeByPsP.js} +1 -1
- package/dist/assets/play-DFLhwX31.js +1 -0
- package/dist/assets/{plug-ChvIdUer.js → plug-pRt1uLP-.js} +1 -1
- package/dist/assets/plus-2XEDA9oZ.js +1 -0
- package/dist/assets/{poivelle-ax82Gew6.js → poivelle-CwbJUDMA.js} +1 -1
- package/dist/assets/{popover-BpONuj2c.js → popover-CujDeM9r.js} +1 -1
- package/dist/assets/{producer-BIN9TstO.js → producer-Cp-dqK1U.js} +1 -1
- package/dist/assets/{qrart-CCbJvGM4.js → qrart-BMaggLhc.js} +1 -1
- package/dist/assets/{realtime-C2MWT-aW.js → realtime-Cof4IZ5A.js} +1 -1
- package/dist/assets/{refresh-cw-DQTLL0Fu.js → refresh-cw-zGJ1ywed.js} +1 -1
- package/dist/assets/rotate-ccw-C6ZbozHT.js +1 -0
- package/dist/assets/rotate-cw-DZMWXKfh.js +1 -0
- package/dist/assets/{row-CQm5hGL0.js → row-Da6HRJnU.js} +1 -1
- package/dist/assets/search-CYoqYABP.js +1 -0
- package/dist/assets/{seedance-Bn5OcN3S.js → seedance-qDCXPkNU.js} +1 -1
- package/dist/assets/{seedream-5A-UgmfZ.js → seedream-D8s98koo.js} +1 -1
- package/dist/assets/{select-B2nBHYVL.js → select-Bs3ZkE9R.js} +1 -1
- package/dist/assets/{serp-DCqDl0lE.js → serp-CFeB3pNt.js} +1 -1
- package/dist/assets/{shield-Ve6wUrzX.js → shield-8Az-w1Iq.js} +1 -1
- package/dist/assets/{shuffle-CiNePLEt.js → shuffle-BVyO1vuc.js} +1 -1
- package/dist/assets/{slider-wRZgZS6X.js → slider-CrHYkY12.js} +1 -1
- package/dist/assets/{solana-wallets-DmkEq_yy.js → solana-wallets-BMvn-gtj.js} +2 -2
- package/dist/assets/{sora-Bvq6LBVO.js → sora-B6njcLzj.js} +1 -1
- package/dist/assets/{sparkles-DbwlBAbX.js → sparkles-DVlEhR_I.js} +1 -1
- package/dist/assets/square-zuxAeD3b.js +1 -0
- package/dist/assets/{store-CFQxGXHA.js → store-DdwflqCY.js} +1 -1
- package/dist/assets/{suno-Dwo1T9pn.js → suno-DKzj3RPQ.js} +1 -1
- package/dist/assets/{switch-Ced3buNb.js → switch-DRwxl6Da.js} +1 -1
- package/dist/assets/{table-Jsdyt2jK.js → table-CUPLKsew.js} +1 -1
- package/dist/assets/{tabs-C-kdAFYX.js → tabs-0et25VV-.js} +1 -1
- package/dist/assets/{tag-DsIGkfrh.js → tag-CDE6lSVO.js} +1 -1
- package/dist/assets/terminal-D7o7TjCB.js +1 -0
- package/dist/assets/{time-picker-6tCfROey.js → time-picker-m83G80k1.js} +1 -1
- package/dist/assets/{tooltip-CSvADT1R.js → tooltip-DtiQm14e.js} +1 -1
- package/dist/assets/{trash-2-Dp9KxzvW.js → trash-2-84jnyEiH.js} +1 -1
- package/dist/assets/{triangle-alert-Ck-fexMl.js → triangle-alert-DijP-r53.js} +1 -1
- package/dist/assets/{upload-CA58oZUA.js → upload-B-GObY7P.js} +1 -1
- package/dist/assets/{upload-Be9WFYRM.js → upload-uY7VeHmd.js} +1 -1
- package/dist/assets/user-DmAQfp79.js +1 -0
- package/dist/assets/{veo-BeTujbPq.js → veo-DplvtxRw.js} +1 -1
- package/dist/assets/{video-CBZh3wRV.js → video-BIEggF64.js} +1 -1
- package/dist/assets/{volume-2-BXZziCoO.js → volume-2-CzcGTWGH.js} +1 -1
- package/dist/assets/{wallet-ChFkOUBs.js → wallet-HjhzyIUc.js} +1 -1
- package/dist/assets/{wan-Dwf0To-A.js → wan-CXPoan9e.js} +1 -1
- package/dist/assets/{wand-sparkles-BE8CtE8H.js → wand-sparkles-dlhWJtt5.js} +1 -1
- package/dist/assets/{web-Dh1Q7CHh.js → web-BimdZWc-.js} +1 -1
- package/dist/assets/{web-CWKtgwUo.js → web-Cos5bHDu.js} +1 -1
- package/dist/assets/{web-DmHmjdgd.js → web-CpLFSuwG.js} +1 -1
- package/dist/assets/{web-DS7q3xbO.js → web-D3WhI-pp.js} +1 -1
- package/dist/assets/{web-Duf8qX65.js → web-DnTVcAMQ.js} +1 -1
- package/dist/assets/{webextrator-oVHj3km7.js → webextrator-BPt59Czo.js} +1 -1
- package/dist/assets/{zap-QiFIBGaJ.js → zap-CVI9h9l6.js} +1 -1
- package/dist/index.html +6 -6
- package/package.json +1 -1
- package/dist/assets/Index-B3wP2M2t.js +0 -1
- package/dist/assets/arrow-down-D0CODfQ8.js +0 -1
- package/dist/assets/arrow-left-CqE2PziJ.js +0 -1
- package/dist/assets/arrow-right-a64_Brjq.js +0 -1
- package/dist/assets/arrow-up-CU5hnyEt.js +0 -1
- package/dist/assets/check-j4xr44O1.js +0 -1
- package/dist/assets/chevron-down-BdZ0L2fG.js +0 -1
- package/dist/assets/chevron-right-CDyIpXAQ.js +0 -1
- package/dist/assets/circle-check-DaeE306y.js +0 -1
- package/dist/assets/clock-Co3T-_ZJ.js +0 -1
- package/dist/assets/code-CqCvWD5A.js +0 -1
- package/dist/assets/codingBridge-3C9vjgC1.js +0 -1
- package/dist/assets/codingBridge-9pHUdQjg.js +0 -1
- package/dist/assets/codingBridge-BMfn2JG7.js +0 -1
- package/dist/assets/codingBridge-BW-rhWIc.js +0 -1
- package/dist/assets/codingBridge-BY-gokeA.js +0 -1
- package/dist/assets/codingBridge-CGY-sU3w.js +0 -1
- package/dist/assets/codingBridge-Crh6mRO1.js +0 -1
- package/dist/assets/codingBridge-D7F_ji3T.js +0 -1
- package/dist/assets/codingBridge-DGjbu3uQ.js +0 -1
- package/dist/assets/codingBridge-DMiY2VvN.js +0 -1
- package/dist/assets/codingBridge-DZNLbOjo.js +0 -1
- package/dist/assets/codingBridge-DgC2kZpa.js +0 -1
- package/dist/assets/codingBridge-Lx_Ad7Bi.js +0 -1
- package/dist/assets/codingBridge-RPB_6mZR.js +0 -1
- package/dist/assets/codingBridge-TPMRNn8h.js +0 -1
- package/dist/assets/codingBridge-VV5cmxye.js +0 -1
- package/dist/assets/codingBridge-YP6TW3Qq.js +0 -1
- package/dist/assets/codingBridge-ibBC9ffL.js +0 -1
- package/dist/assets/esm-aniHCobr.js +0 -1
- package/dist/assets/gauge-nnmG2QDw.js +0 -1
- package/dist/assets/loader-circle-2yAQOSFe.js +0 -1
- package/dist/assets/music-2-MI0VXkw_.js +0 -1
- package/dist/assets/play-B3yU42DB.js +0 -1
- package/dist/assets/plus-BhipPsH1.js +0 -1
- package/dist/assets/rotate-ccw-CreMIvrc.js +0 -1
- package/dist/assets/rotate-cw-Cd6Inbyq.js +0 -1
- package/dist/assets/search-V3YVXcFc.js +0 -1
- package/dist/assets/square-CY7NB4Lk.js +0 -1
- package/dist/assets/terminal-BCq07L89.js +0 -1
- package/dist/assets/user-wtZBliSS.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{L as e,at as t,j as n,mt as r,tt as i,z as a}from"./vendor-chart-Dw-P17PN.js";import{n as o,t as s}from"./tabs-
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{L as e,at as t,j as n,mt as r,tt as i,z as a}from"./vendor-chart-Dw-P17PN.js";import{n as o,t as s}from"./tabs-0et25VV-.js";import{O as c,ct as l,lt as u}from"./index-BOCSBfUe.js";var d=a({name:`FishTabSwitcher`,components:{ElTabs:o,ElTabPane:s},data(){return{ROUTE_FISH_TTS_INDEX:u,ROUTE_FISH_MODEL_INDEX:l}},computed:{active(){return(this.$route?.name||``)===`fish-model-index`?l:u}},methods:{onUpdate(e){let t=String(e);t!==this.active&&this.$router.push({name:t})}}});function f(a,o,s,c,l,u){let d=t(`el-tab-pane`),f=t(`el-tabs`);return i(),n(f,{"model-value":a.active,class:`fish-tabs scenario-tabs scenario-tabs--divided`,"onUpdate:modelValue":a.onUpdate},{default:r(()=>[e(d,{label:a.$t(`fish.tab.tts`),name:a.ROUTE_FISH_TTS_INDEX},null,8,[`label`,`name`]),e(d,{label:a.$t(`fish.tab.model`),name:a.ROUTE_FISH_MODEL_INDEX},null,8,[`label`,`name`])]),_:1},8,[`model-value`,`onUpdate:modelValue`])}var p=c(d,[[`render`,f],[`__scopeId`,`data-v-f942a514`]]);export{p as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{n as h,r as g,t as _}from"./select-B2nBHYVL.js";import{t as v}from"./tooltip-CSvADT1R.js";import{t as y}from"./alert-BprQRUmf.js";import{h as b,v as x}from"./models-D_Ijt5J2.js";import{t as S}from"./slider-wRZgZS6X.js";import{t as C}from"./clock-Co3T-_ZJ.js";import{i as w,n as T,r as E,s as D,t as O}from"./pagination-l4G2kgO9.js";import{t as k}from"./info-CK99OcWH.js";import{t as A}from"./mic-RZA92lvo.js";import{t as ee}from"./trash-2-Dp9KxzvW.js";import{t as te}from"./triangle-alert-Ck-fexMl.js";import{t as j}from"./wand-sparkles-BE8CtE8H.js";import{gt as M,pt as ne}from"./constants-DQiaG9QL.js";import{Ma as N,O as P,Oi as re,Pn as F,Qt as I,_a as L,en as R,in as z,pn as B,va as V}from"./index-DhsoJc0z.js";import{t as H}from"./CopyToClipboard-BllQPGdv.js";import{t as U}from"./ReportButton-kdxIkkPa.js";import{t as W}from"./Consumption-DT871xlT.js";import{t as G}from"./ApiCodeButton-DS2Ao54g.js";import{t as K}from"./BotPlaceholder-B9J3potY.js";import{t as q}from"./Hailuo-Cvdqs0f9.js";import{t as J}from"./TabSwitcher-DzHdKt9n.js";var Y=L(`cpu`,[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]),X=m({name:`FishTextInput`,components:{PromptTextarea:w},computed:{text:{get(){return this.$store.state.fish?.config?.text},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,text:e})}}}});function ie(e,t,n,r,i,a){let o=l(`prompt-textarea`);return p(),u(o,{modelValue:e.text,"onUpdate:modelValue":t[0]||=t=>e.text=t,title:e.$t(`fish.name.text`),info:e.$t(`fish.description.text`),placeholder:e.$t(`fish.placeholder.text`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ae=P(X,[[`render`,ie]]),oe=m({name:`FishModelSelector`,components:{ElSelect:g,ElOption:_},computed:{options(){return[{value:M,label:this.$t(`fish.button.modelS2Pro`)},{value:`s1`,label:this.$t(`fish.button.modelS1`)}]},value:{get(){return this.$store.state.fish?.config?.model},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,model:e})}}},mounted(){this.value||=ne}}),se={class:`field`},ce={class:`title font-bold`};function le(t,n,r,o,m,h){let g=l(`el-option`),_=l(`el-select`);return p(),s(`div`,se,[e(`h2`,ce,i(t.$t(`fish.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`fish.placeholder.select`)},{default:d(()=>[(p(!0),s(c,null,f(t.options,e=>(p(),u(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ue=P(oe,[[`render`,le],[`__scopeId`,`data-v-9702e6d3`]]),de=m({name:`FishVoiceOption`,props:{option:{type:Object,required:!0},playing:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:[`preview`]}),fe={class:`voice-option`},pe=[`aria-label`],me={key:0,class:`spin`,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},he={key:1,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},ge={key:2,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},_e={key:1,class:`preview placeholder`,"aria-hidden":`true`},ve={class:`meta`},ye={class:`label`},be={key:0,class:`description`};function xe(r,a,c,l,u,d){return p(),s(`div`,fe,[r.option.audio?(p(),s(`button`,{key:0,type:`button`,class:n([`preview`,{playing:r.playing,loading:r.loading}]),"aria-label":r.playing?`stop preview`:`play preview`,onMousedown:a[0]||=t(()=>{},[`prevent`]),onClick:a[1]||=t(e=>r.$emit(`preview`,r.option),[`stop`,`prevent`])},[r.loading?(p(),s(`svg`,me,[...a[2]||=[e(`circle`,{cx:`12`,cy:`12`,r:`9`,fill:`none`,stroke:`currentColor`,"stroke-width":`3`,"stroke-linecap":`round`,"stroke-dasharray":`42 60`},null,-1)]])):r.playing?(p(),s(`svg`,he,[...a[3]||=[e(`rect`,{x:`6`,y:`5`,width:`4`,height:`14`,rx:`1`,fill:`currentColor`},null,-1),e(`rect`,{x:`14`,y:`5`,width:`4`,height:`14`,rx:`1`,fill:`currentColor`},null,-1)]])):(p(),s(`svg`,ge,[...a[4]||=[e(`path`,{d:`M8 5v14l11-7z`,fill:`currentColor`},null,-1)]]))],42,pe)):(p(),s(`span`,_e,[...a[5]||=[e(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`},[e(`path`,{d:`M12 14a3 3 0 0 0 3-3V6a3 3 0 0 0-6 0v5a3 3 0 0 0 3 3zm5-3a5 5 0 0 1-10 0H5a7 7 0 0 0 6 6.92V21h2v-3.08A7 7 0 0 0 19 11z`,fill:`currentColor`})],-1)]])),e(`div`,ve,[e(`span`,ye,i(r.option.label),1),r.option.description?(p(),s(`span`,be,i(r.option.description),1)):o(``,!0)])])}var Se=P(de,[[`render`,xe],[`__scopeId`,`data-v-c16a6a46`]]),Ce=e=>(e.id||e._id||e.reference_id||``).toString(),Z=e=>{let t=Ce(e);return{value:t,label:e.title||t,description:e.description,audio:e.samples?.[0]?.audio}},we=m({name:`FishVoicePicker`,components:{ElSelect:g,ElOption:_,ElOptionGroup:h,VoiceOption:Se},data(){return{popularVoices:[],searchVoices:[],popularLoading:!1,searchLoading:!1,preloaded:!1,query:``,playingId:null,loadingId:null,labelCache:{},previewAudio:null,searchTimer:null,searchSeq:0}},computed:{remoteLoading(){return this.popularLoading||this.searchLoading},myVoices(){return this.$store.state.fish?.voices??[]},myOptions(){return this.myVoices.map(Z).filter(e=>!!e.value)},publicPool(){return this.query&&(this.searchVoices.length||this.searchLoading)?{voices:this.searchVoices,isSearch:!0}:{voices:this.popularVoices,isSearch:!1}},publicOptions(){let e=new Set(this.myOptions.map(e=>e.value));return this.publicPool.voices.map(Z).filter(t=>!!t.value&&!e.has(t.value))},filteredMyOptions(){return this.applyQuery(this.myOptions)},filteredPublicOptions(){return this.publicPool.isSearch?this.publicOptions:this.applyQuery(this.publicOptions)},fallbackOption(){let e=this.value;return!e||this.myOptions.some(t=>t.value===e)||this.publicOptions.some(t=>t.value===e)?null:{value:e,label:this.labelCache[e]||e}},noDataText(){return this.remoteLoading?this.$t(`fish.message.searching`):this.credential?.token?this.$t(`fish.message.searchVoiceHint`):this.$t(`fish.message.noVoices`)},credential(){return this.$store.state.fish?.credential},value:{get(){return this.$store.state.fish?.config?.reference_id},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,reference_id:e||void 0})}}},watch:{myOptions:{immediate:!0,handler(e){this.cacheLabels(e)}},publicOptions(e){this.cacheLabels(e)},credential:{immediate:!0,handler(e){if(!e?.token)return;let t=this.$store.state.fish?.voices;(t===void 0||t.length===0)&&this.$store.dispatch(`fish/getVoices`),this.preloaded||this.fetchPopular()}}},beforeUnmount(){this.stopPreview(),this.searchTimer&&clearTimeout(this.searchTimer)},methods:{cacheLabels(e){for(let t of e)this.labelCache[t.value]=t.label},applyQuery(e){let t=this.query.toLowerCase();return t?e.filter(e=>e.label.toLowerCase().includes(t)||(e.description||``).toLowerCase().includes(t)):e},onVisibleChange(e){e&&!this.preloaded&&!this.popularLoading&&this.fetchPopular()},onFilter(e){if(this.query=(e||``).trim(),this.searchTimer&&clearTimeout(this.searchTimer),!this.query){this.searchSeq++,this.searchVoices=[],this.searchLoading=!1;return}this.searchTimer=setTimeout(()=>this.fetchSearch(this.query),350)},async fetchPopular(){let e=this.credential?.token;if(!(!e||this.popularLoading)){this.popularLoading=!0;try{let{data:t}=await F.listModels({self:!1,page_size:30,page_number:1},{token:e});this.popularVoices=t?.items??[],this.preloaded=!0}catch(e){console.error(`fish.loadPopularVoices failed`,e)}finally{this.popularLoading=!1}}},async fetchSearch(e){let t=this.credential?.token;if(!t)return;let n=++this.searchSeq;this.searchLoading=!0;try{let{data:r}=await F.listModels({self:!1,page_size:30,page_number:1,title:e},{token:t});if(n!==this.searchSeq)return;this.searchVoices=r?.items??[]}catch(e){n===this.searchSeq&&(this.searchVoices=[]),console.error(`fish.searchPublicVoices failed`,e)}finally{n===this.searchSeq&&(this.searchLoading=!1)}},togglePreview(e){if(!e.audio)return;if(this.playingId===e.value||this.loadingId===e.value){this.stopPreview();return}this.stopPreview();let t=new Audio(e.audio),n=()=>{this.previewAudio===t&&(this.loadingId=null,this.playingId=e.value)},r=()=>{this.previewAudio===t&&this.stopPreview()};t.addEventListener(`playing`,n),t.addEventListener(`ended`,r),t.addEventListener(`error`,r),this.previewAudio=t,this.loadingId=e.value,this.playingId=null,t.play().catch(()=>{this.previewAudio===t&&this.stopPreview()})},stopPreview(){this.previewAudio&&=(this.previewAudio.pause(),this.previewAudio.src=``,null),this.playingId=null,this.loadingId=null}}}),Te={class:`field`},Ee={class:`title font-bold`};function De(t,n,r,m,h,g){let _=l(`el-option`),v=l(`voice-option`),y=l(`el-option-group`),b=l(`el-select`);return p(),s(`div`,Te,[e(`h2`,Ee,i(t.$t(`fish.name.voice`)),1),a(b,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,"popper-class":`fish-voice-popper`,placeholder:t.$t(`fish.placeholder.voice`),clearable:``,filterable:``,"filter-method":t.onFilter,loading:t.remoteLoading,"loading-text":t.$t(`fish.message.searching`),"no-data-text":t.noDataText,onVisibleChange:t.onVisibleChange},{default:d(()=>[t.fallbackOption?(p(),u(_,{key:t.fallbackOption.value,label:t.fallbackOption.label,value:t.fallbackOption.value},null,8,[`label`,`value`])):o(``,!0),t.filteredMyOptions.length?(p(),u(y,{key:1,label:t.$t(`fish.title.myVoices`)},{default:d(()=>[(p(!0),s(c,null,f(t.filteredMyOptions,e=>(p(),u(_,{key:e.value,label:e.label,value:e.value},{default:d(()=>[a(v,{option:e,playing:t.playingId===e.value,loading:t.loadingId===e.value,onPreview:t.togglePreview},null,8,[`option`,`playing`,`loading`,`onPreview`])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0),t.filteredPublicOptions.length?(p(),u(y,{key:2,label:t.$t(`fish.group.publicVoices`)},{default:d(()=>[(p(!0),s(c,null,f(t.filteredPublicOptions,e=>(p(),u(_,{key:e.value,label:e.label,value:e.value},{default:d(()=>[a(v,{option:e,playing:t.playingId===e.value,loading:t.loadingId===e.value,onPreview:t.togglePreview},null,8,[`option`,`playing`,`loading`,`onPreview`])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0)]),_:1},8,[`modelValue`,`placeholder`,`filter-method`,`loading`,`loading-text`,`no-data-text`,`onVisibleChange`])])}var Oe=m({name:`FishConfigPanel`,components:{MagicIcon:j,ElButton:N,ElSlider:S,TextInput:ae,ModelSelector:ue,VoicePicker:P(we,[[`render`,De],[`__scopeId`,`data-v-6183b210`]]),Consumption:W},emits:[`generate`],computed:{config(){return this.$store.state.fish?.config},consumption(){let e=this.config?.text?.trim()??``;return z({...this.config,model:this.config?.model??`s2-pro`,byte_count:new TextEncoder().encode(e).byteLength},this.service?.cost)},service(){return this.$store.state.fish?.service},canGenerate(){let e=this.config?.text;return typeof e==`string`&&e.trim().length>0},speed:{get(){return this.config?.prosody?.speed??1},set(e){this.$store.commit(`fish/setConfig`,{...this.config,prosody:{...this.config?.prosody??{},speed:e}})}}},methods:{onGenerate(){this.$emit(`generate`)}}}),ke={class:`flex flex-col h-full`},Ae={class:`flex-1 overflow-y-auto p-5`},je={class:`field mb-4`},Me={class:`title font-bold`},Ne={class:`flex flex-col items-center justify-center px-5 pb-5`};function Pe(t,n,o,c,u,f){let m=l(`text-input`),h=l(`model-selector`),g=l(`voice-picker`),_=l(`el-slider`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return p(),s(`div`,ke,[e(`div`,Ae,[a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),e(`div`,je,[e(`h2`,Me,i(t.$t(`fish.name.speed`)),1),a(_,{modelValue:t.speed,"onUpdate:modelValue":n[0]||=e=>t.speed=e,min:.5,max:2,step:.1,class:`value`,"show-input":``},null,8,[`modelValue`])])]),e(`div`,Ne,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:d(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var Fe=P(Oe,[[`render`,Pe],[`__scopeId`,`data-v-dc4ea983`]]);function Ie(e){if(!e)return;let t=e.error;if(t){let e=typeof t==`string`?t:t.message;if(e)return e.trim()}let n=e.message;if(!(typeof n!=`string`||!n.trim()))return Q(n.trim())}function Q(e){if(e.startsWith(`[`))try{let t=JSON.parse(e);if(Array.isArray(t)&&t.length){let e=t.map(e=>{let t=typeof e?.msg==`string`?e.msg:void 0;if(!t)return;let n=Array.isArray(e?.loc)?e.loc.filter(e=>e!==`parameters`):[],r=n.length?n[n.length-1]:void 0;return r?`${r}: ${t}`:t}).filter(e=>!!e),n=Array.from(new Set(e));if(n.length)return n.join(`; `)}}catch{}if(e.startsWith(`{`))try{let t=JSON.parse(e);if(t&&typeof t.message==`string`&&t.message.trim())return Q(t.message.trim())}catch{}return e}var Le=m({name:`FishTaskPreview`,components:{DeleteIcon:ee,ElTooltip:v,ChannelIcon:D,CpuIcon:Y,InfoIcon:k,MagicIcon:j,MicrophoneIcon:A,TimeIcon:C,WarningIcon:te,CopyToClipboard:H,ElAlert:y,ElButton:N,ApiCodeButton:G,ReportButton:U},props:{modelValue:{type:Object,required:!0}},computed:{prompt(){return this.modelValue?.request?.text},audioUrl(){return this.modelValue?.response?.audio_url},isFailure(){let e=this.modelValue?.response;if(!e||e.audio_url)return!1;if(e.success===!1||e.error)return!0;let t=Number(e.status);return!Number.isNaN(t)&&t>=400||!!e.message},failureReason(){return Ie(this.modelValue?.response)}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await V.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`fish/deleteTask`,{id:e}),x.success(this.$t(`common.message.deleteTaskSuccess`))}catch{x.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){window.open(e,`_blank`)}}}),Re={class:`preview`},ze={class:`left`},Be={class:`main`},Ve={class:`bot`},He={class:`datetime`},Ue=[`aria-label`],We={class:`info`},Ge={key:0,class:`prompt mt-2`},Ke={key:0},qe={key:0,class:`content`},Je=[`src`],Ye={class:`operations mt-2`},Xe={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ze={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qe={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$e={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},et={key:1,class:`content`},tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},it={key:2,class:`content`},at={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function ot(n,c,u,f,m,h){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`el-button`),b=l(`api-code-button`),x=l(`report-button`),S=l(`cpu-icon`),C=l(`microphone-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`channel-icon`);return p(),s(`div`,Re,[e(`div`,ze,[a(g,{capability:`fish`,part:`avatar`,class:`avatar`})]),e(`div`,Be,[e(`div`,Ve,[a(g,{capability:`fish`,part:`name`}),e(`span`,He,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(p(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Ue)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,We,[n.prompt?(p(),s(`p`,Ge,[r(i(n.prompt)+` `,1),n.modelValue?.response?o(``,!0):(p(),s(`span`,Ke,` - (`+i(n.$t(`fish.status.pending`))+`) `,1))])):o(``,!0)]),n.audioUrl?(p(),s(`div`,qe,[e(`audio`,{src:n.audioUrl,controls:``,preload:`metadata`,class:`w-full mb-3`},null,8,Je),e(`div`,Ye,[a(y,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.audioUrl),[`stop`])},{default:d(()=>[r(i(n.$t(`fish.button.download`)),1)]),_:1}),a(b,{path:`/fish/tts`,body:n.modelValue?.request},null,8,[`body`]),a(x,{service:`fish`,"target-id":n.modelValue?.id,snapshot:{text:n.modelValue?.request?.text}},null,8,[`target-id`,`snapshot`])]),a(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.request?.model?(p(),s(`p`,Xe,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.reference_id?(p(),s(`p`,Ze,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.referenceId`))+`: `+i(n.modelValue?.request?.reference_id)+` `,1),a(w,{content:n.modelValue?.request?.reference_id},null,8,[`content`])])):o(``,!0),e(`p`,Qe,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,$e,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):n.isFailure?(p(),s(`div`,et,[a(D,{closable:!1,class:`failure`},{title:d(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.failure`)),1)]),default:d(()=>[e(`p`,tt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.failureReason?(p(),s(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.failureReason`))+`: `+i(n.failureReason)+` `,1),a(w,{content:n.failureReason},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(p(),s(`p`,nt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(p(),s(`p`,rt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):(p(),s(`div`,it,[a(D,{closable:!1,class:`info`},{default:d(()=>[e(`p`,at,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})]))])])}var st=m({name:`FishRecentPanel`,components:{TaskPreview:P(Le,[[`render`,ot],[`__scopeId`,`data-v-79dbfe9e`]]),BotPlaceholder:K,NoTasks:E,ScrollList:T},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.fish?.tasks,items:this.$store.state.fish?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ct={key:0},lt={key:2,class:`w-full h-full flex items-center justify-center`};function ut(e,t,n,r,i,m){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return p(),s(c,null,[e.tasks?.items===void 0?(p(),s(`div`,ct,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(p(),u(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:d(()=>[(p(!0),s(c,null,f(e.tasks?.items,e=>(p(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(p(),s(`div`,lt,[a(v)])):o(``,!0)],64)}var dt=m({name:`FishTtsIndex`,components:{ConfigPanel:Fe,Layout:q,RecentPanel:P(st,[[`render`,ut]]),TabSwitcher:J},mixins:[R],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.fish?.status?.getApplications===b.Request},tasksLoading(){return this.$store.state.fish?.status?.getTasks===b.Request||this.fetchingTasks},credential(){return this.$store.state.fish?.credential},config(){return this.$store.state.fish?.config},application(){return this.$store.state.fish?.application},tasks(){return this.$store.state.fish?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService(),await this.$store.dispatch(`fish/getVoices`)},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await O({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`fish/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`fish/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!I(this.uploadTracker,e=>this.$t(e),e=>x.warning(e)))return;let e=this.config??{},t=e.text?.trim();if(!t){x.warning(this.$t(`fish.message.textRequired`));return}if(!B())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}let r=e.model||`s2-pro`,i={text:t,async:!0};e.reference_id&&(i.reference_id=e.reference_id),e.format&&(i.format=e.format),e.prosody&&Object.keys(e.prosody).length>0&&(i.prosody=e.prosody),x.info(this.$t(`fish.message.startingTask`)),re(`fish`,F.generateTts(i,{token:n,model:r})).then(()=>{x.success(this.$t(`fish.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?x.error(this.$t(`fish.message.usedUp`)):x.error(this.$t(`fish.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}}),ft={class:`flex flex-col h-full`},pt={class:`flex-1 min-h-0`};function mt(t,n,r,i,o,s){let c=l(`tab-switcher`),f=l(`config-panel`),m=l(`recent-panel`),h=l(`layout`);return p(),u(h,null,{config:d(()=>[e(`div`,ft,[a(c),e(`div`,pt,[a(f,{onGenerate:t.onGenerate},null,8,[`onGenerate`])])])]),result:d(()=>[a(m,{ref:`recentPanel`,loading:t.loadingMore,onReachTop:t.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var ht=P(dt,[[`render`,mt]]);export{ht as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{n as h,r as g,t as _}from"./select-Bs3ZkE9R.js";import{t as v}from"./tooltip-DtiQm14e.js";import{t as y}from"./alert-BprQRUmf.js";import{h as b,v as x}from"./models-CwklOk8Z.js";import{t as S}from"./slider-CrHYkY12.js";import{t as C}from"./clock-CEYSZpiZ.js";import{i as w,n as T,r as E,s as D,t as O}from"./pagination-B8FPaRIA.js";import{t as k}from"./info-DlDYYYyz.js";import{t as A}from"./mic-lqwIrsvy.js";import{t as ee}from"./trash-2-84jnyEiH.js";import{t as te}from"./triangle-alert-DijP-r53.js";import{t as j}from"./wand-sparkles-dlhWJtt5.js";import{gt as M,pt as ne}from"./constants-DlrPFkyM.js";import{Ma as N,O as P,Oi as re,Pn as F,Qt as I,_a as L,en as R,in as z,pn as B,va as V}from"./index-BOCSBfUe.js";import{t as H}from"./CopyToClipboard-Bt4pNx5a.js";import{t as U}from"./ReportButton-DzpX6LE5.js";import{t as W}from"./Consumption-CQoAp-2Q.js";import{t as G}from"./ApiCodeButton-BAkOBxie.js";import{t as K}from"./BotPlaceholder-CBS4lAjm.js";import{t as q}from"./Hailuo-vHQDSZct.js";import{t as J}from"./TabSwitcher-BGVRfEet.js";var Y=L(`cpu`,[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]),X=m({name:`FishTextInput`,components:{PromptTextarea:w},computed:{text:{get(){return this.$store.state.fish?.config?.text},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,text:e})}}}});function ie(e,t,n,r,i,a){let o=l(`prompt-textarea`);return p(),u(o,{modelValue:e.text,"onUpdate:modelValue":t[0]||=t=>e.text=t,title:e.$t(`fish.name.text`),info:e.$t(`fish.description.text`),placeholder:e.$t(`fish.placeholder.text`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ae=P(X,[[`render`,ie]]),oe=m({name:`FishModelSelector`,components:{ElSelect:g,ElOption:_},computed:{options(){return[{value:M,label:this.$t(`fish.button.modelS2Pro`)},{value:`s1`,label:this.$t(`fish.button.modelS1`)}]},value:{get(){return this.$store.state.fish?.config?.model},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,model:e})}}},mounted(){this.value||=ne}}),se={class:`field`},ce={class:`title font-bold`};function le(t,n,r,o,m,h){let g=l(`el-option`),_=l(`el-select`);return p(),s(`div`,se,[e(`h2`,ce,i(t.$t(`fish.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`fish.placeholder.select`)},{default:d(()=>[(p(!0),s(c,null,f(t.options,e=>(p(),u(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ue=P(oe,[[`render`,le],[`__scopeId`,`data-v-9702e6d3`]]),de=m({name:`FishVoiceOption`,props:{option:{type:Object,required:!0},playing:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:[`preview`]}),fe={class:`voice-option`},pe=[`aria-label`],me={key:0,class:`spin`,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},he={key:1,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},ge={key:2,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},_e={key:1,class:`preview placeholder`,"aria-hidden":`true`},ve={class:`meta`},ye={class:`label`},be={key:0,class:`description`};function xe(r,a,c,l,u,d){return p(),s(`div`,fe,[r.option.audio?(p(),s(`button`,{key:0,type:`button`,class:n([`preview`,{playing:r.playing,loading:r.loading}]),"aria-label":r.playing?`stop preview`:`play preview`,onMousedown:a[0]||=t(()=>{},[`prevent`]),onClick:a[1]||=t(e=>r.$emit(`preview`,r.option),[`stop`,`prevent`])},[r.loading?(p(),s(`svg`,me,[...a[2]||=[e(`circle`,{cx:`12`,cy:`12`,r:`9`,fill:`none`,stroke:`currentColor`,"stroke-width":`3`,"stroke-linecap":`round`,"stroke-dasharray":`42 60`},null,-1)]])):r.playing?(p(),s(`svg`,he,[...a[3]||=[e(`rect`,{x:`6`,y:`5`,width:`4`,height:`14`,rx:`1`,fill:`currentColor`},null,-1),e(`rect`,{x:`14`,y:`5`,width:`4`,height:`14`,rx:`1`,fill:`currentColor`},null,-1)]])):(p(),s(`svg`,ge,[...a[4]||=[e(`path`,{d:`M8 5v14l11-7z`,fill:`currentColor`},null,-1)]]))],42,pe)):(p(),s(`span`,_e,[...a[5]||=[e(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`},[e(`path`,{d:`M12 14a3 3 0 0 0 3-3V6a3 3 0 0 0-6 0v5a3 3 0 0 0 3 3zm5-3a5 5 0 0 1-10 0H5a7 7 0 0 0 6 6.92V21h2v-3.08A7 7 0 0 0 19 11z`,fill:`currentColor`})],-1)]])),e(`div`,ve,[e(`span`,ye,i(r.option.label),1),r.option.description?(p(),s(`span`,be,i(r.option.description),1)):o(``,!0)])])}var Se=P(de,[[`render`,xe],[`__scopeId`,`data-v-c16a6a46`]]),Ce=e=>(e.id||e._id||e.reference_id||``).toString(),Z=e=>{let t=Ce(e);return{value:t,label:e.title||t,description:e.description,audio:e.samples?.[0]?.audio}},we=m({name:`FishVoicePicker`,components:{ElSelect:g,ElOption:_,ElOptionGroup:h,VoiceOption:Se},data(){return{popularVoices:[],searchVoices:[],popularLoading:!1,searchLoading:!1,preloaded:!1,query:``,playingId:null,loadingId:null,labelCache:{},previewAudio:null,searchTimer:null,searchSeq:0}},computed:{remoteLoading(){return this.popularLoading||this.searchLoading},myVoices(){return this.$store.state.fish?.voices??[]},myOptions(){return this.myVoices.map(Z).filter(e=>!!e.value)},publicPool(){return this.query&&(this.searchVoices.length||this.searchLoading)?{voices:this.searchVoices,isSearch:!0}:{voices:this.popularVoices,isSearch:!1}},publicOptions(){let e=new Set(this.myOptions.map(e=>e.value));return this.publicPool.voices.map(Z).filter(t=>!!t.value&&!e.has(t.value))},filteredMyOptions(){return this.applyQuery(this.myOptions)},filteredPublicOptions(){return this.publicPool.isSearch?this.publicOptions:this.applyQuery(this.publicOptions)},fallbackOption(){let e=this.value;return!e||this.myOptions.some(t=>t.value===e)||this.publicOptions.some(t=>t.value===e)?null:{value:e,label:this.labelCache[e]||e}},noDataText(){return this.remoteLoading?this.$t(`fish.message.searching`):this.credential?.token?this.$t(`fish.message.searchVoiceHint`):this.$t(`fish.message.noVoices`)},credential(){return this.$store.state.fish?.credential},value:{get(){return this.$store.state.fish?.config?.reference_id},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,reference_id:e||void 0})}}},watch:{myOptions:{immediate:!0,handler(e){this.cacheLabels(e)}},publicOptions(e){this.cacheLabels(e)},credential:{immediate:!0,handler(e){if(!e?.token)return;let t=this.$store.state.fish?.voices;(t===void 0||t.length===0)&&this.$store.dispatch(`fish/getVoices`),this.preloaded||this.fetchPopular()}}},beforeUnmount(){this.stopPreview(),this.searchTimer&&clearTimeout(this.searchTimer)},methods:{cacheLabels(e){for(let t of e)this.labelCache[t.value]=t.label},applyQuery(e){let t=this.query.toLowerCase();return t?e.filter(e=>e.label.toLowerCase().includes(t)||(e.description||``).toLowerCase().includes(t)):e},onVisibleChange(e){e&&!this.preloaded&&!this.popularLoading&&this.fetchPopular()},onFilter(e){if(this.query=(e||``).trim(),this.searchTimer&&clearTimeout(this.searchTimer),!this.query){this.searchSeq++,this.searchVoices=[],this.searchLoading=!1;return}this.searchTimer=setTimeout(()=>this.fetchSearch(this.query),350)},async fetchPopular(){let e=this.credential?.token;if(!(!e||this.popularLoading)){this.popularLoading=!0;try{let{data:t}=await F.listModels({self:!1,page_size:30,page_number:1},{token:e});this.popularVoices=t?.items??[],this.preloaded=!0}catch(e){console.error(`fish.loadPopularVoices failed`,e)}finally{this.popularLoading=!1}}},async fetchSearch(e){let t=this.credential?.token;if(!t)return;let n=++this.searchSeq;this.searchLoading=!0;try{let{data:r}=await F.listModels({self:!1,page_size:30,page_number:1,title:e},{token:t});if(n!==this.searchSeq)return;this.searchVoices=r?.items??[]}catch(e){n===this.searchSeq&&(this.searchVoices=[]),console.error(`fish.searchPublicVoices failed`,e)}finally{n===this.searchSeq&&(this.searchLoading=!1)}},togglePreview(e){if(!e.audio)return;if(this.playingId===e.value||this.loadingId===e.value){this.stopPreview();return}this.stopPreview();let t=new Audio(e.audio),n=()=>{this.previewAudio===t&&(this.loadingId=null,this.playingId=e.value)},r=()=>{this.previewAudio===t&&this.stopPreview()};t.addEventListener(`playing`,n),t.addEventListener(`ended`,r),t.addEventListener(`error`,r),this.previewAudio=t,this.loadingId=e.value,this.playingId=null,t.play().catch(()=>{this.previewAudio===t&&this.stopPreview()})},stopPreview(){this.previewAudio&&=(this.previewAudio.pause(),this.previewAudio.src=``,null),this.playingId=null,this.loadingId=null}}}),Te={class:`field`},Ee={class:`title font-bold`};function De(t,n,r,m,h,g){let _=l(`el-option`),v=l(`voice-option`),y=l(`el-option-group`),b=l(`el-select`);return p(),s(`div`,Te,[e(`h2`,Ee,i(t.$t(`fish.name.voice`)),1),a(b,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,"popper-class":`fish-voice-popper`,placeholder:t.$t(`fish.placeholder.voice`),clearable:``,filterable:``,"filter-method":t.onFilter,loading:t.remoteLoading,"loading-text":t.$t(`fish.message.searching`),"no-data-text":t.noDataText,onVisibleChange:t.onVisibleChange},{default:d(()=>[t.fallbackOption?(p(),u(_,{key:t.fallbackOption.value,label:t.fallbackOption.label,value:t.fallbackOption.value},null,8,[`label`,`value`])):o(``,!0),t.filteredMyOptions.length?(p(),u(y,{key:1,label:t.$t(`fish.title.myVoices`)},{default:d(()=>[(p(!0),s(c,null,f(t.filteredMyOptions,e=>(p(),u(_,{key:e.value,label:e.label,value:e.value},{default:d(()=>[a(v,{option:e,playing:t.playingId===e.value,loading:t.loadingId===e.value,onPreview:t.togglePreview},null,8,[`option`,`playing`,`loading`,`onPreview`])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0),t.filteredPublicOptions.length?(p(),u(y,{key:2,label:t.$t(`fish.group.publicVoices`)},{default:d(()=>[(p(!0),s(c,null,f(t.filteredPublicOptions,e=>(p(),u(_,{key:e.value,label:e.label,value:e.value},{default:d(()=>[a(v,{option:e,playing:t.playingId===e.value,loading:t.loadingId===e.value,onPreview:t.togglePreview},null,8,[`option`,`playing`,`loading`,`onPreview`])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0)]),_:1},8,[`modelValue`,`placeholder`,`filter-method`,`loading`,`loading-text`,`no-data-text`,`onVisibleChange`])])}var Oe=m({name:`FishConfigPanel`,components:{MagicIcon:j,ElButton:N,ElSlider:S,TextInput:ae,ModelSelector:ue,VoicePicker:P(we,[[`render`,De],[`__scopeId`,`data-v-6183b210`]]),Consumption:W},emits:[`generate`],computed:{config(){return this.$store.state.fish?.config},consumption(){let e=this.config?.text?.trim()??``;return z({...this.config,model:this.config?.model??`s2-pro`,byte_count:new TextEncoder().encode(e).byteLength},this.service?.cost)},service(){return this.$store.state.fish?.service},canGenerate(){let e=this.config?.text;return typeof e==`string`&&e.trim().length>0},speed:{get(){return this.config?.prosody?.speed??1},set(e){this.$store.commit(`fish/setConfig`,{...this.config,prosody:{...this.config?.prosody??{},speed:e}})}}},methods:{onGenerate(){this.$emit(`generate`)}}}),ke={class:`flex flex-col h-full`},Ae={class:`flex-1 overflow-y-auto p-5`},je={class:`field mb-4`},Me={class:`title font-bold`},Ne={class:`flex flex-col items-center justify-center px-5 pb-5`};function Pe(t,n,o,c,u,f){let m=l(`text-input`),h=l(`model-selector`),g=l(`voice-picker`),_=l(`el-slider`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return p(),s(`div`,ke,[e(`div`,Ae,[a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),e(`div`,je,[e(`h2`,Me,i(t.$t(`fish.name.speed`)),1),a(_,{modelValue:t.speed,"onUpdate:modelValue":n[0]||=e=>t.speed=e,min:.5,max:2,step:.1,class:`value`,"show-input":``},null,8,[`modelValue`])])]),e(`div`,Ne,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:d(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var Fe=P(Oe,[[`render`,Pe],[`__scopeId`,`data-v-dc4ea983`]]);function Ie(e){if(!e)return;let t=e.error;if(t){let e=typeof t==`string`?t:t.message;if(e)return e.trim()}let n=e.message;if(!(typeof n!=`string`||!n.trim()))return Q(n.trim())}function Q(e){if(e.startsWith(`[`))try{let t=JSON.parse(e);if(Array.isArray(t)&&t.length){let e=t.map(e=>{let t=typeof e?.msg==`string`?e.msg:void 0;if(!t)return;let n=Array.isArray(e?.loc)?e.loc.filter(e=>e!==`parameters`):[],r=n.length?n[n.length-1]:void 0;return r?`${r}: ${t}`:t}).filter(e=>!!e),n=Array.from(new Set(e));if(n.length)return n.join(`; `)}}catch{}if(e.startsWith(`{`))try{let t=JSON.parse(e);if(t&&typeof t.message==`string`&&t.message.trim())return Q(t.message.trim())}catch{}return e}var Le=m({name:`FishTaskPreview`,components:{DeleteIcon:ee,ElTooltip:v,ChannelIcon:D,CpuIcon:Y,InfoIcon:k,MagicIcon:j,MicrophoneIcon:A,TimeIcon:C,WarningIcon:te,CopyToClipboard:H,ElAlert:y,ElButton:N,ApiCodeButton:G,ReportButton:U},props:{modelValue:{type:Object,required:!0}},computed:{prompt(){return this.modelValue?.request?.text},audioUrl(){return this.modelValue?.response?.audio_url},isFailure(){let e=this.modelValue?.response;if(!e||e.audio_url)return!1;if(e.success===!1||e.error)return!0;let t=Number(e.status);return!Number.isNaN(t)&&t>=400||!!e.message},failureReason(){return Ie(this.modelValue?.response)}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await V.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`fish/deleteTask`,{id:e}),x.success(this.$t(`common.message.deleteTaskSuccess`))}catch{x.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){window.open(e,`_blank`)}}}),Re={class:`preview`},ze={class:`left`},Be={class:`main`},Ve={class:`bot`},He={class:`datetime`},Ue=[`aria-label`],We={class:`info`},Ge={key:0,class:`prompt mt-2`},Ke={key:0},qe={key:0,class:`content`},Je=[`src`],Ye={class:`operations mt-2`},Xe={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ze={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qe={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$e={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},et={key:1,class:`content`},tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},it={key:2,class:`content`},at={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function ot(n,c,u,f,m,h){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`el-button`),b=l(`api-code-button`),x=l(`report-button`),S=l(`cpu-icon`),C=l(`microphone-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`channel-icon`);return p(),s(`div`,Re,[e(`div`,ze,[a(g,{capability:`fish`,part:`avatar`,class:`avatar`})]),e(`div`,Be,[e(`div`,Ve,[a(g,{capability:`fish`,part:`name`}),e(`span`,He,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(p(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Ue)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,We,[n.prompt?(p(),s(`p`,Ge,[r(i(n.prompt)+` `,1),n.modelValue?.response?o(``,!0):(p(),s(`span`,Ke,` - (`+i(n.$t(`fish.status.pending`))+`) `,1))])):o(``,!0)]),n.audioUrl?(p(),s(`div`,qe,[e(`audio`,{src:n.audioUrl,controls:``,preload:`metadata`,class:`w-full mb-3`},null,8,Je),e(`div`,Ye,[a(y,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.audioUrl),[`stop`])},{default:d(()=>[r(i(n.$t(`fish.button.download`)),1)]),_:1}),a(b,{path:`/fish/tts`,body:n.modelValue?.request},null,8,[`body`]),a(x,{service:`fish`,"target-id":n.modelValue?.id,snapshot:{text:n.modelValue?.request?.text}},null,8,[`target-id`,`snapshot`])]),a(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.request?.model?(p(),s(`p`,Xe,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.reference_id?(p(),s(`p`,Ze,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.referenceId`))+`: `+i(n.modelValue?.request?.reference_id)+` `,1),a(w,{content:n.modelValue?.request?.reference_id},null,8,[`content`])])):o(``,!0),e(`p`,Qe,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,$e,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):n.isFailure?(p(),s(`div`,et,[a(D,{closable:!1,class:`failure`},{title:d(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.failure`)),1)]),default:d(()=>[e(`p`,tt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.failureReason?(p(),s(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.failureReason`))+`: `+i(n.failureReason)+` `,1),a(w,{content:n.failureReason},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(p(),s(`p`,nt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(p(),s(`p`,rt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):(p(),s(`div`,it,[a(D,{closable:!1,class:`info`},{default:d(()=>[e(`p`,at,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})]))])])}var st=m({name:`FishRecentPanel`,components:{TaskPreview:P(Le,[[`render`,ot],[`__scopeId`,`data-v-79dbfe9e`]]),BotPlaceholder:K,NoTasks:E,ScrollList:T},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.fish?.tasks,items:this.$store.state.fish?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ct={key:0},lt={key:2,class:`w-full h-full flex items-center justify-center`};function ut(e,t,n,r,i,m){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return p(),s(c,null,[e.tasks?.items===void 0?(p(),s(`div`,ct,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(p(),u(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:d(()=>[(p(!0),s(c,null,f(e.tasks?.items,e=>(p(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(p(),s(`div`,lt,[a(v)])):o(``,!0)],64)}var dt=m({name:`FishTtsIndex`,components:{ConfigPanel:Fe,Layout:q,RecentPanel:P(st,[[`render`,ut]]),TabSwitcher:J},mixins:[R],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.fish?.status?.getApplications===b.Request},tasksLoading(){return this.$store.state.fish?.status?.getTasks===b.Request||this.fetchingTasks},credential(){return this.$store.state.fish?.credential},config(){return this.$store.state.fish?.config},application(){return this.$store.state.fish?.application},tasks(){return this.$store.state.fish?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService(),await this.$store.dispatch(`fish/getVoices`)},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await O({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`fish/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`fish/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!I(this.uploadTracker,e=>this.$t(e),e=>x.warning(e)))return;let e=this.config??{},t=e.text?.trim();if(!t){x.warning(this.$t(`fish.message.textRequired`));return}if(!B())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}let r=e.model||`s2-pro`,i={text:t,async:!0};e.reference_id&&(i.reference_id=e.reference_id),e.format&&(i.format=e.format),e.prosody&&Object.keys(e.prosody).length>0&&(i.prosody=e.prosody),x.info(this.$t(`fish.message.startingTask`)),re(`fish`,F.generateTts(i,{token:n,model:r})).then(()=>{x.success(this.$t(`fish.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?x.error(this.$t(`fish.message.usedUp`)):x.error(this.$t(`fish.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}}),ft={class:`flex flex-col h-full`},pt={class:`flex-1 min-h-0`};function mt(t,n,r,i,o,s){let c=l(`tab-switcher`),f=l(`config-panel`),m=l(`recent-panel`),h=l(`layout`);return p(),u(h,null,{config:d(()=>[e(`div`,ft,[a(c),e(`div`,pt,[a(f,{onGenerate:t.onGenerate},null,8,[`onGenerate`])])])]),result:d(()=>[a(m,{ref:`recentPanel`,loading:t.loadingMore,onReachTop:t.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var ht=P(dt,[[`render`,mt]]);export{ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,B as t,G as n,Gt as r,H as i,I as a,Jt as o,K as s,L as c,M as l,Mt as u,N as d,Ot as f,Q as ee,Rt as p,St as m,T as h,U as g,Vt as _,Wt as v,Y as y,at as b,ft as x,ht as S,it as C,j as w,k as T,mt as E,nt as D,p as O,pt as k,tt as A,wt as j,x as te,z as M}from"./vendor-chart-Dw-P17PN.js";import{$ as N,B as P,Et as F,F as ne,I,Ot as L,Tt as R,a as z,bt as B,c as re,dt as V,et as H,it as U,o as ie,rt as ae,w as oe,z as se}from"./icon-CDmWyIgD.js";import{a as W,c as G,i as K,t as q}from"./install-Cn-SLM3u.js";import{t as ce}from"./tooltip-CSvADT1R.js";import{n as J}from"./vnode-DOQF_9Lu.js";import{b as Y,v as X,x as le}from"./models-D_Ijt5J2.js";import{r as Z}from"./aria-8oQuUBWy.js";import{t as ue}from"./click-outside-CzJDhMNh.js";import{t as de}from"./collapse-transition-BUGXhx7B.js";import{n as fe}from"./dropdown-BaRTacsr.js";import{t as pe}from"./refresh-cw-DQTLL0Fu.js";import{O as me,Pa as he,k as ge,va as _e}from"./index-DhsoJc0z.js";var ve=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll(`li`),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){let e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener(`keydown`,t=>{let n=!1;switch(t.code){case Y.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case Y.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case Y.tab:Z(e,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},ye=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute(`tabindex`,`0`);let t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new ve(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case Y.down:Z(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case Y.up:Z(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case Y.tab:Z(e.currentTarget,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},be=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){let t=this.domNode.childNodes;Array.from(t).forEach(t=>{t.nodeType===1&&new ye(t,e)})}},xe=W(M({...M({name:`ElMenuCollapseTransition`}),setup(e){let t=G(`menu`),r={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){I(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){P(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},se(e,t.m(`collapse`))?(P(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),I(e,t.m(`collapse`))):(I(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),P(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){I(e,`horizontal-collapse-transition`),e.style.width=`${e.dataset.scrollWidth}px`}};return(e,t)=>(A(),w(O,n({mode:`out-in`},u(r)),{default:E(()=>[C(e.$slots,`default`)]),_:3},16))}}),[[`__file`,`menu-collapse-transition.vue`]]);function Se(e,t){let n=T(()=>{let n=e.parent,r=[t.value];for(;n.type.name!==`ElMenu`;)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:T(()=>{let t=e.parent;for(;t&&![`ElMenu`,`ElSubMenu`].includes(t.type.name);)t=t.parent;return t}),indexPath:n}}function Ce(e){return T(()=>{let t=e.backgroundColor;return t?new he(t).shade(20).toString():``})}var we=(e,t)=>{let n=G(`menu`);return T(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":Ce(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},Te=`rootMenu`,Q=`subMenu:`,Ee=N({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:z},expandOpenIcon:{type:z},collapseCloseIcon:{type:z},collapseOpenIcon:{type:z}}),De=`ElSubMenu`,Oe=M({name:De,props:Ee,setup(e,{slots:n,expose:r}){let a=t(),{indexPath:o,parentMenu:s}=Se(a,T(()=>e.index)),c=G(`menu`),l=G(`sub-menu`),u=g(Te);u||U(De,`can not inject root menu`);let d=g(`${Q}${s.value.uid}`);d||U(De,`can not inject sub menu`);let f=j({}),p=j({}),_,b=j(!1),C=j(),w=j(),E=T(()=>L.value===`horizontal`&&k.value?`bottom-start`:`right-start`),O=T(()=>L.value===`horizontal`&&k.value||L.value===`vertical`&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?P.value?e.expandOpenIcon:e.expandCloseIcon:ie:e.collapseCloseIcon&&e.collapseOpenIcon?P.value?e.collapseOpenIcon:e.collapseCloseIcon:re),k=T(()=>d.level===0),A=T(()=>{let t=e.teleported;return F(t)?k.value:t}),M=T(()=>u.props.collapse?`${c.namespace.value}-zoom-in-left`:`${c.namespace.value}-zoom-in-top`),N=T(()=>L.value===`horizontal`&&k.value?[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]:[`right-start`,`right`,`right-end`,`left-start`,`bottom-start`,`bottom-end`,`top-start`,`top-end`]),P=T(()=>u.openedMenus.includes(e.index)),I=T(()=>[...Object.values(f.value),...Object.values(p.value)].some(({active:e})=>e)),L=T(()=>u.props.mode),R=T(()=>u.props.persistent),z=m({index:e.index,indexPath:o,active:I}),V=we(u.props,d.level+1),H=T(()=>e.popperOffset??u.props.popperOffset),ae=T(()=>e.popperClass??u.props.popperClass),oe=T(()=>e.showTimeout??u.props.showTimeout),se=T(()=>e.hideTimeout??u.props.hideTimeout),W=()=>(w.value?.popperRef?.popperInstanceRef)?.destroy(),K=e=>{e||W()},q=()=>{u.props.menuTrigger===`hover`&&u.props.mode===`horizontal`||u.props.collapse&&u.props.mode===`vertical`||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:o.value,active:I.value})},J=(t,n=oe.value)=>{var r;if(t.type!==`focus`){if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`||e.disabled){d.mouseInChild.value=!0;return}d.mouseInChild.value=!0,_?.(),{stop:_}=B(()=>{u.openMenu(e.index,o.value)},n),A.value&&((r=s.value.vnode.el)==null||r.dispatchEvent(new MouseEvent(`mouseenter`)))}},Y=(t=!1)=>{var n;if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`){d.mouseInChild.value=!1;return}_?.(),d.mouseInChild.value=!1,{stop:_}=B(()=>!b.value&&u.closeMenu(e.index,o.value),se.value),A.value&&t&&((n=d.handleMouseleave)==null||n.call(d,!0))};return x(()=>u.props.collapse,e=>K(!!e)),D(`${Q}${a.uid}`,{addSubMenu:e=>{p.value[e.index]=e},removeSubMenu:e=>{delete p.value[e.index]},handleMouseleave:Y,mouseInChild:b,level:d.level+1}),r({opened:P}),ee(()=>{u.addSubMenu(z),d.addSubMenu(z)}),y(()=>{d.removeSubMenu(z),u.removeSubMenu(z)}),()=>{let t=[n.title?.call(n),i(ne,{class:l.e(`icon-arrow`),style:{transform:P.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?`none`:`rotateZ(180deg)`:`none`}},{default:()=>v(O.value)?i(a.appContext.components[O.value]):i(O.value)})],r=u.isMenuPopup?i(ce,{ref:w,visible:P.value,effect:`light`,pure:!0,offset:H.value,showArrow:!1,persistent:R.value,popperClass:ae.value,placement:E.value,teleported:A.value,fallbackPlacements:N.value,transition:M.value,gpuAcceleration:!1},{content:()=>i(`div`,{class:[c.m(L.value),c.m(`popup-container`),ae.value],onMouseenter:e=>J(e,100),onMouseleave:()=>Y(!0),onFocus:e=>J(e,100)},[i(`ul`,{class:[c.b(),c.m(`popup`),c.m(`popup-${E.value}`)],style:V.value},[n.default?.call(n)])]),default:()=>i(`div`,{class:l.e(`title`),onClick:q},t)}):i(h,{},[i(`div`,{class:l.e(`title`),ref:C,onClick:q},t),i(de,{},{default:()=>S(i(`ul`,{role:`menu`,class:[c.b(),c.m(`inline`)],style:V.value},[n.default?.call(n)]),[[te,P.value]])})]);return i(`li`,{class:[l.b(),l.is(`active`,I.value),l.is(`opened`,P.value),l.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:P.value,onMouseenter:J,onMouseleave:()=>Y(),onFocus:J},[r])}}}),ke=N({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:H(Array),default:()=>le([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:[`hover`,`click`],default:`hover`},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:z,default:()=>oe},popperEffect:{type:H(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Ae=e=>p(e)&&e.every(e=>v(e)),je=M({name:`ElMenu`,props:ke,emits:{close:(e,t)=>v(e)&&Ae(t),open:(e,t)=>v(e)&&Ae(t),select:(e,t,n,r)=>v(e)&&Ae(t)&&_(n)&&(F(r)||r instanceof Promise)},setup(e,{emit:n,slots:r,expose:a}){let o=t(),c=o.appContext.config.globalProperties.$router,l=j(),u=G(`menu`),d=G(`sub-menu`),f=j(-1),p=j(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),h=j(e.defaultActive),g=j({}),_=j({}),v=T(()=>e.mode===`horizontal`||e.mode===`vertical`&&e.collapse),y=()=>{let t=h.value&&g.value[h.value];!t||e.mode===`horizontal`||e.collapse||t.indexPath.forEach(e=>{let t=_.value[e];t&&b(e,t.indexPath)})},b=(t,r)=>{p.value.includes(t)||(e.uniqueOpened&&(p.value=p.value.filter(e=>r.includes(e))),p.value.push(t),n(`open`,t,r))},C=e=>{let t=p.value.indexOf(e);t!==-1&&p.value.splice(t,1)},w=(e,t)=>{C(e),n(`close`,e,t)},E=({index:e,indexPath:t})=>{p.value.includes(e)?w(e,t):b(e,t)},O=t=>{(e.mode===`horizontal`||e.collapse)&&(p.value=[]);let{index:r,indexPath:i}=t;if(!(L(r)||L(i)))if(e.router&&c){let e=t.route||r,a=c.push(e).then(e=>(e||(h.value=r),e));n(`select`,r,i,{index:r,indexPath:i,route:e},a)}else h.value=r,n(`select`,r,i,{index:r,indexPath:i})},A=t=>{let n=g.value;h.value=(n[t]||h.value&&n[h.value]||n[e.defaultActive])?.index??t},te=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},M=()=>{if(!l.value)return-1;let e=Array.from(l.value?.childNodes??[]).filter(e=>e.nodeName!==`#text`||e.nodeValue),t=getComputedStyle(l.value),n=Number.parseInt(t.paddingLeft,10),r=Number.parseInt(t.paddingRight,10),i=l.value.clientWidth-n-r,a=0,o=0;return e.forEach((e,t)=>{e.nodeName!==`#comment`&&(a+=te(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},N=e=>_.value[e].indexPath,P=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},F=!0,I=()=>{if(f.value===M())return;let e=()=>{f.value=-1,s(()=>{f.value=M()})};F?e():P(e)(),F=!1};x(()=>e.defaultActive,e=>{g.value[e]||(h.value=``),A(e)}),x(()=>e.collapse,e=>{e&&(p.value=[])}),x(g.value,y);let R;k(()=>{e.mode===`horizontal`&&e.ellipsis?R=V(l,I).stop:R?.()});let z=j(!1);{let t=e=>{_.value[e.index]=e},n=e=>{delete _.value[e.index]};D(Te,m({props:e,openedMenus:p,items:g,subMenus:_,activeIndex:h,isMenuPopup:v,addMenuItem:e=>{g.value[e.index]=e},removeMenuItem:e=>{delete g.value[e.index]},addSubMenu:t,removeSubMenu:n,openMenu:b,closeMenu:w,handleMenuItemClick:O,handleSubMenuClick:E})),D(`${Q}${o.uid}`,{addSubMenu:t,removeSubMenu:n,mouseInChild:z,level:0})}ee(()=>{e.mode===`horizontal`&&new be(o.vnode.el,u.namespace.value)}),a({open:e=>{let{indexPath:t}=_.value[e];t.forEach(e=>b(e,t))},close:C,updateActiveIndex:A,handleResize:I});let B=we(e,0);return()=>{let t=r.default?.call(r)??[],a=[];if(e.mode===`horizontal`&&l.value){let n=J(t),r=f.value===-1?n:n.slice(0,f.value),o=f.value===-1?[]:n.slice(f.value);o?.length&&e.ellipsis&&(t=r,a.push(i(Oe,{index:`sub-menu-more`,class:d.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>i(ne,{class:d.e(`icon-more`)},{default:()=>i(e.ellipsisIcon)}),default:()=>o})))}let o=e.closeOnClickOutside?[[ue,()=>{p.value.length&&(z.value||(p.value.forEach(e=>n(`close`,e,N(e))),p.value=[]))}]]:[],s=S(i(`ul`,{key:String(e.collapse),role:`menubar`,ref:l,style:B.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m(`collapse`)]:e.collapse}},[...t,...a]),o);return e.collapseTransition&&e.mode===`vertical`?i(xe,()=>s):s}}}),Me=N({index:{type:H([String,null]),default:null},route:{type:H([String,Object])},disabled:Boolean}),Ne={click:e=>v(e.index)&&p(e.indexPath)},$=`ElMenuItem`,Pe=W(M({...M({name:$}),props:Me,emits:Ne,setup(n,{expose:i,emit:a}){let o=n;R(o.index)&&ae($,`Missing required prop: "index"`);let s=t(),c=g(Te),l=G(`menu`),p=G(`menu-item`);c||U($,`can not inject root menu`);let{parentMenu:_,indexPath:v}=Se(s,f(o,`index`)),b=g(`${Q}${_.value.uid}`);b||U($,`can not inject sub menu`);let x=T(()=>o.index===c.activeIndex),S=m({index:o.index,indexPath:v,active:x}),D=()=>{o.disabled||(c.handleMenuItemClick({index:o.index,indexPath:v.value,route:o.route}),a(`click`,S))};return ee(()=>{b.addSubMenu(S),c.addMenuItem(S)}),y(()=>{b.removeSubMenu(S),c.removeMenuItem(S)}),i({parentMenu:_,rootMenu:c,active:x,nsMenu:l,nsMenuItem:p,handleClick:D}),(t,n)=>(A(),d(`li`,{class:r([u(p).b(),u(p).is(`active`,u(x)),u(p).is(`disabled`,t.disabled)]),role:`menuitem`,tabindex:`-1`,onClick:D},[u(_).type.name===`ElMenu`&&u(c).props.collapse&&t.$slots.title?(A(),w(u(ce),{key:0,effect:u(c).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:u(c).props.persistent},{content:E(()=>[C(t.$slots,`title`)]),default:E(()=>[e(`div`,{class:r(u(l).be(`tooltip`,`trigger`))},[C(t.$slots,`default`)],2)]),_:3},8,[`effect`,`persistent`])):(A(),d(h,{key:1},[C(t.$slots,`default`),C(t.$slots,`title`)],64))],2))}}),[[`__file`,`menu-item.vue`]]),Fe={title:String},Ie=W(M({...M({name:`ElMenuItemGroup`}),props:Fe,setup(t){let n=G(`menu-item-group`);return(t,i)=>(A(),d(`li`,{class:r(u(n).b())},[e(`div`,{class:r(u(n).e(`title`))},[t.$slots.title?C(t.$slots,`title`,{key:1}):(A(),d(h,{key:0},[a(o(t.title),1)],64))],2),e(`ul`,null,[C(t.$slots,`default`)])],2))}}),[[`__file`,`menu-item-group.vue`]]),Le=q(je,{MenuItem:Pe,MenuItemGroup:Ie,SubMenu:Oe}),Re=K(Pe);K(Ie);var ze=K(Oe),Be=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAMAAAAKE/YAAAAAMFBMVEX///+3t7f4+Pi8vLzAwMDExMTS0tLIyMjk5OTz8/PY2NjOzs7u7u7d3d3p6enh4eFVKkJDAAAIfUlEQVR4nNVd15akOAylyRRQ9f9/O02BZJtgBQszfR/2zPahsJCvguVUFJYop35ux66pq6r6+fn9T910bTv3U2najBXK9zw2PxE07fz+n0Qf+raOyetL3g9PS7vgzRUYULfvZyXuR5nAgLF/SuK3UuJN7gf0PbyErDiieuU1zKmLyFJ3Y9u+vmh//V9dXT/b5VN3f+HbFq82nGivHH6999Vv8rC7P+NFzfBlF56xvl/sEy1Xbc8mZ9m3R7bcrO0jl+vXJH7J0YY78UvYKNuDjpWNTQd9tzd5ks9ePUm92u877WMlp4dhR+Y2OYkYdh3XmKclc9iATVwoXyFLZouXIobuBpEXlK+QcYbK7gOF2NpMaN2Vmfdr71LGirAbW5N3lr4F1rckC0GQbQw6cqrM1XACvzOr5EjT+2q+L24Vk6/sRGL7no6t5un9eQE+7JG4r+wk3+e9iGfXwzyeZHLjzDGFt0fEBB564ymOeRwzCg8dHaZ9kx8NZGZ8+UyOv0bSW3o9q5Tac5+0luajjGfqpsT2krIuTeaKZGQf4UUIKpx6xFbo2nGD9HSlpJZAGfSQILVjV02Z4CQsJhD2UdbcJ/dwyRfpNvozwaLo4q/0nMhLIrMThJSZZ4EhiJd6Ugti43SvzCTlPKnZmUNZMV+u4cYKwp85XlfcTBi/s6Z+MZ2LxADhGZzUDU9m5zjIr0woQhLxasAHWS7E9TgZU/Z1EBEIjbzxQYYxOudOxu73qTBcUGEaIzqD1hi96W6JTgzRoDSI/UhmITP7yUPFSYqaagD1R4wJkP8VnT8nTwVQqnauN06QjvtCvYt2IL3Zm/Uk9jjDz0RmMLggwx3SOuIUSniGpJv3bAJo1SAFr9mKH8aI+LqkI0RFtoIh9/L76Cc8GLCDoxxSjyAHgxxFYSEzJ18Ggly4YHQHnCQ2LRoCGINXQirim0JYUJpDatf/p24PP4mVwSblSg6MEhDGuzNVg6J5o8nEvAPAGZiAfk5MDRXNqxcmx/AVHPMprx8G1TEHwOzqTByseTgoDRxYDT6akSh9YSMzr6aLidOeTGCj3EqDkdC8GU9Q9c6voYlyJzxy0sOxOnRs8C3sQpSR92DOO4EDCXkAzoA935bPTy8AIgTBCIIyvyZsExF/uM2Byfk9A7VafuksfdyygFmJcc35NZ7tT5xUYMNwJYcI/FouGP7xOyT1YBOh+aVcsCHHBWCHZHLTxOfxF6ZA8HP82P7ASv4BJj5PMNMO/g3+H9ghqrtnGm4hIJLAd7byVxg5asGCA+AH2N2meYHvKPxZmQRIGtyMaOMweC/ZXJJJdJE0CF27Bm0oK8kWLKSWHxeILB8s7xN8gmxFi0VIFAkNqd5KiI3S7JBqJ7Ssycb70vAL2LAofMiE9hkBrQvX4OTXNLS4eGpwA8KlaxaGKHOy4OWWcSVoXSZz9ohYYLaxpB8bv4V2aFGeFiYOvqTb74V2mHkQ8IXjBKhMuKrMJIoLOQlmVGIiIlyPmXdguwJ6d8J/CZ1H0m4iB1Gr4D569HjCZalPaNoxeWtd5jKf4TRkpy30syh3KbLXPVZsWdIIQUK6dO8Jl+dkbUB6GfRranwIWx3hUzeVi5fRmggtDA6b/dWO3ELkLiF4QldqoXOPxhe8QOjt57LUpXhguGUhtEUFUtq9EBzUQluQWrphIV1oA1JLm0R6VFqh0z21eH30XmjFdofbF14dgC5PG1zS0w9pjuYFF2UYL9KHiXJGYhhXJkwLEk1RvrEMZVWmpgvSVC1XtEtNlYOAL1JYrdESOg3lcGtFQsVGs+Nu++msHdiu0BNEQQ5vYKssIWxQx3JNc1AqnbTFmg3qSoKmYz0mb//S7QDU1k5Vdu+VSnUFyA3aBES1ca9zkqb4PPVQUUVG74OVRfUNSqencXh+UR1sUnfqgy6+qLrVn75QThRt0I26VG0FU4dbRNfE1ULpqVVBIZBTN/kJ0PBDxY6QEbpp5v27JFCxI5xm1k3oIxT+Q+Wowgl93dIJhHzqVrW5erd0QrdIxUE8wFXxcL9IBXSlSRcLuSnq3NR+OZBq4ZWD1FXr8sn9wivVEjcPwtVuKtd6XOKmWUzoQeY/dCczHBcTKpZtnr2QB104gN70ukm+QNaHzBJV7DhbIAt/040ERMMXnbUDAwOtgvZVsUo0KaCi9Omib/SCqleKhE7KSsNIIt7IkFXoi40MSBrNO28X+ooHOKxWqPpuoVHRh7FDo3+pyHsorOZyG5R0w5kPUZmJffYFIrLhTLi1DzFJT0X+aWaZ3JGtfcJNlCvesTOuIpAcLBrdRIms5g4s+jFlM0PFPYY6ul1VtDG4PJzwqQHnGGpKKlA1fVKN0VqxX31Tx1DjOTBXaRFvs3vaWdkniPIEF3hdGgEmxpev0VpeHNf8ZuiROMBhet0hMch9qkogR2wXbeSojHI22jd5ifp1cLbY9dHB8NWhJCbOgkYzBxpFzxH3wu74F++ro8ckWsM7a5l7/IuzVnAxJX1MojGQ3shHslKCPPimY+b+jYfmU0qONPIOj5rzK9lDi33OyQttVpEaglXXMFoabQVmqny3QxaBW4opM3o4CtwDJazWGZtAUMi12ONkAtGMrNGS/1QI5yb+CxciLmc8EwoDKEokefK6CBKPRf47Mj/MEIujvv+MzA/6kKQLCR7y18q5Y8AjiWryrR1T9uwp/RqJ3YUdGWBxYUeR2RzN7gThn6ifCrtLaA7X/dwG4xtusvg+24uVihzKtr/Cqrh7OFPdcVlYcXItmyHS7x67ROwyxxTceAHegqsLHVOQ4WLH00sdE5DhUsev2IbaznR95gKrCnDGi0oXDOmTRrmvhP3i712+u+LvXXO84u9dKL2Cf3V33X7+i6u7N/y5S9IdvOvoF0G/19GP9tfR/wPQ21eEI8clLwAAAABJRU5ErkJggg==`,Ve=M({name:`UpdateMenuItem`,components:{ElDropdownItem:fe,RefreshIcon:pe},data(){return{state:null,offState:null,promptedVersion:null,manualCheck:!1}},computed:{bridge(){return ge()?.updater},busy(){return[`checking`,`available`,`downloading`].includes(this.state?.phase??``)},label(){return this.state?.phase===`checking`?this.$t(`common.update.checking`):this.state?.phase===`available`?this.$t(`common.update.available`,{version:this.state.availableVersion}):this.state?.phase===`downloading`?this.$t(`common.update.downloading`,{percent:this.state.percent??0}):this.state?.phase===`downloaded`?this.$t(`common.update.ready`,{version:this.state.availableVersion}):this.$t(`common.update.check`)}},async mounted(){this.bridge&&(this.offState=this.bridge.onState(this.onState),this.onState(await this.bridge.getState()))},unmounted(){this.offState?.()},methods:{async onCheck(){if(this.bridge){if(this.state?.phase===`downloaded`){await this.promptInstall(this.state);return}this.manualCheck=!0,this.onState(await this.bridge.check())}},onState(e){this.state=e,e.phase===`downloaded`?this.promptInstall(e):this.manualCheck&&e.phase===`up-to-date`?(X.success(this.$t(`common.update.upToDate`,{version:e.currentVersion}).toString()),this.manualCheck=!1):this.manualCheck&&e.phase===`unsupported`?(X.info(this.$t(`common.update.unsupported`).toString()),this.manualCheck=!1):this.manualCheck&&e.phase===`error`&&(X.error(this.errorMessage(e.errorCode)),this.manualCheck=!1)},errorMessage(e){return e===`feed_unavailable`?this.$t(`common.update.feedUnavailable`).toString():e===`network_error`?this.$t(`common.update.networkError`).toString():this.$t(`common.update.failed`).toString()},async promptInstall(e){if(!(!this.bridge||this.promptedVersion===e.availableVersion)){this.promptedVersion=e.availableVersion??e.currentVersion;try{await _e.confirm(this.$t(`common.update.installMessage`,{version:e.availableVersion}).toString(),this.$t(`common.update.installTitle`).toString(),{confirmButtonText:this.$t(`common.update.restartInstall`).toString(),cancelButtonText:this.$t(`common.update.later`).toString(),type:`info`}),await this.bridge.install()}catch{this.promptedVersion=null}}}}});function He(e,t,n,i,s,u){let d=b(`refresh-icon`),f=b(`el-dropdown-item`);return e.bridge?(A(),w(f,{key:0,class:`py-2`,disabled:e.busy,onClick:e.onCheck},{default:E(()=>[c(d,{class:r([`mr-2`,{"animate-spin":e.busy}]),size:`1em`,"aria-hidden":`true`,focusable:`false`},null,8,[`class`]),a(` `+o(e.label),1)]),_:1},8,[`disabled`,`onClick`])):l(``,!0)}var Ue=me(Ve,[[`render`,He]]);export{ze as a,Re as i,Be as n,Le as r,Ue as t};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,B as t,G as n,Gt as r,H as i,I as a,Jt as o,K as s,L as c,M as l,Mt as u,N as d,Ot as f,Q as ee,Rt as p,St as m,T as h,U as g,Vt as _,Wt as v,Y as y,at as b,ft as x,ht as S,it as C,j as w,k as T,mt as E,nt as D,p as O,pt as k,tt as A,wt as j,x as te,z as M}from"./vendor-chart-Dw-P17PN.js";import{$ as N,B as P,Et as F,F as ne,I,Ot as L,Tt as R,a as z,bt as B,c as re,dt as V,et as H,it as U,o as ie,rt as ae,w as oe,z as se}from"./icon-CDmWyIgD.js";import{a as W,c as G,i as K,t as q}from"./install-Cn-SLM3u.js";import{t as ce}from"./tooltip-DtiQm14e.js";import{n as J}from"./vnode-DOQF_9Lu.js";import{b as Y,v as X,x as le}from"./models-CwklOk8Z.js";import{r as Z}from"./aria-8oQuUBWy.js";import{t as ue}from"./click-outside-CzJDhMNh.js";import{t as de}from"./collapse-transition-BUGXhx7B.js";import{n as fe}from"./dropdown-BWJ6QGiC.js";import{t as pe}from"./refresh-cw-zGJ1ywed.js";import{O as me,Pa as he,k as ge,va as _e}from"./index-BOCSBfUe.js";var ve=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll(`li`),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){let e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener(`keydown`,t=>{let n=!1;switch(t.code){case Y.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case Y.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case Y.tab:Z(e,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},ye=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute(`tabindex`,`0`);let t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new ve(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case Y.down:Z(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case Y.up:Z(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case Y.tab:Z(e.currentTarget,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},be=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){let t=this.domNode.childNodes;Array.from(t).forEach(t=>{t.nodeType===1&&new ye(t,e)})}},xe=W(M({...M({name:`ElMenuCollapseTransition`}),setup(e){let t=G(`menu`),r={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){I(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){P(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},se(e,t.m(`collapse`))?(P(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),I(e,t.m(`collapse`))):(I(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),P(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){I(e,`horizontal-collapse-transition`),e.style.width=`${e.dataset.scrollWidth}px`}};return(e,t)=>(A(),w(O,n({mode:`out-in`},u(r)),{default:E(()=>[C(e.$slots,`default`)]),_:3},16))}}),[[`__file`,`menu-collapse-transition.vue`]]);function Se(e,t){let n=T(()=>{let n=e.parent,r=[t.value];for(;n.type.name!==`ElMenu`;)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:T(()=>{let t=e.parent;for(;t&&![`ElMenu`,`ElSubMenu`].includes(t.type.name);)t=t.parent;return t}),indexPath:n}}function Ce(e){return T(()=>{let t=e.backgroundColor;return t?new he(t).shade(20).toString():``})}var we=(e,t)=>{let n=G(`menu`);return T(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":Ce(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},Te=`rootMenu`,Q=`subMenu:`,Ee=N({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:z},expandOpenIcon:{type:z},collapseCloseIcon:{type:z},collapseOpenIcon:{type:z}}),De=`ElSubMenu`,Oe=M({name:De,props:Ee,setup(e,{slots:n,expose:r}){let a=t(),{indexPath:o,parentMenu:s}=Se(a,T(()=>e.index)),c=G(`menu`),l=G(`sub-menu`),u=g(Te);u||U(De,`can not inject root menu`);let d=g(`${Q}${s.value.uid}`);d||U(De,`can not inject sub menu`);let f=j({}),p=j({}),_,b=j(!1),C=j(),w=j(),E=T(()=>L.value===`horizontal`&&k.value?`bottom-start`:`right-start`),O=T(()=>L.value===`horizontal`&&k.value||L.value===`vertical`&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?P.value?e.expandOpenIcon:e.expandCloseIcon:ie:e.collapseCloseIcon&&e.collapseOpenIcon?P.value?e.collapseOpenIcon:e.collapseCloseIcon:re),k=T(()=>d.level===0),A=T(()=>{let t=e.teleported;return F(t)?k.value:t}),M=T(()=>u.props.collapse?`${c.namespace.value}-zoom-in-left`:`${c.namespace.value}-zoom-in-top`),N=T(()=>L.value===`horizontal`&&k.value?[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]:[`right-start`,`right`,`right-end`,`left-start`,`bottom-start`,`bottom-end`,`top-start`,`top-end`]),P=T(()=>u.openedMenus.includes(e.index)),I=T(()=>[...Object.values(f.value),...Object.values(p.value)].some(({active:e})=>e)),L=T(()=>u.props.mode),R=T(()=>u.props.persistent),z=m({index:e.index,indexPath:o,active:I}),V=we(u.props,d.level+1),H=T(()=>e.popperOffset??u.props.popperOffset),ae=T(()=>e.popperClass??u.props.popperClass),oe=T(()=>e.showTimeout??u.props.showTimeout),se=T(()=>e.hideTimeout??u.props.hideTimeout),W=()=>(w.value?.popperRef?.popperInstanceRef)?.destroy(),K=e=>{e||W()},q=()=>{u.props.menuTrigger===`hover`&&u.props.mode===`horizontal`||u.props.collapse&&u.props.mode===`vertical`||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:o.value,active:I.value})},J=(t,n=oe.value)=>{var r;if(t.type!==`focus`){if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`||e.disabled){d.mouseInChild.value=!0;return}d.mouseInChild.value=!0,_?.(),{stop:_}=B(()=>{u.openMenu(e.index,o.value)},n),A.value&&((r=s.value.vnode.el)==null||r.dispatchEvent(new MouseEvent(`mouseenter`)))}},Y=(t=!1)=>{var n;if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`){d.mouseInChild.value=!1;return}_?.(),d.mouseInChild.value=!1,{stop:_}=B(()=>!b.value&&u.closeMenu(e.index,o.value),se.value),A.value&&t&&((n=d.handleMouseleave)==null||n.call(d,!0))};return x(()=>u.props.collapse,e=>K(!!e)),D(`${Q}${a.uid}`,{addSubMenu:e=>{p.value[e.index]=e},removeSubMenu:e=>{delete p.value[e.index]},handleMouseleave:Y,mouseInChild:b,level:d.level+1}),r({opened:P}),ee(()=>{u.addSubMenu(z),d.addSubMenu(z)}),y(()=>{d.removeSubMenu(z),u.removeSubMenu(z)}),()=>{let t=[n.title?.call(n),i(ne,{class:l.e(`icon-arrow`),style:{transform:P.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?`none`:`rotateZ(180deg)`:`none`}},{default:()=>v(O.value)?i(a.appContext.components[O.value]):i(O.value)})],r=u.isMenuPopup?i(ce,{ref:w,visible:P.value,effect:`light`,pure:!0,offset:H.value,showArrow:!1,persistent:R.value,popperClass:ae.value,placement:E.value,teleported:A.value,fallbackPlacements:N.value,transition:M.value,gpuAcceleration:!1},{content:()=>i(`div`,{class:[c.m(L.value),c.m(`popup-container`),ae.value],onMouseenter:e=>J(e,100),onMouseleave:()=>Y(!0),onFocus:e=>J(e,100)},[i(`ul`,{class:[c.b(),c.m(`popup`),c.m(`popup-${E.value}`)],style:V.value},[n.default?.call(n)])]),default:()=>i(`div`,{class:l.e(`title`),onClick:q},t)}):i(h,{},[i(`div`,{class:l.e(`title`),ref:C,onClick:q},t),i(de,{},{default:()=>S(i(`ul`,{role:`menu`,class:[c.b(),c.m(`inline`)],style:V.value},[n.default?.call(n)]),[[te,P.value]])})]);return i(`li`,{class:[l.b(),l.is(`active`,I.value),l.is(`opened`,P.value),l.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:P.value,onMouseenter:J,onMouseleave:()=>Y(),onFocus:J},[r])}}}),ke=N({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:H(Array),default:()=>le([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:[`hover`,`click`],default:`hover`},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:z,default:()=>oe},popperEffect:{type:H(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Ae=e=>p(e)&&e.every(e=>v(e)),je=M({name:`ElMenu`,props:ke,emits:{close:(e,t)=>v(e)&&Ae(t),open:(e,t)=>v(e)&&Ae(t),select:(e,t,n,r)=>v(e)&&Ae(t)&&_(n)&&(F(r)||r instanceof Promise)},setup(e,{emit:n,slots:r,expose:a}){let o=t(),c=o.appContext.config.globalProperties.$router,l=j(),u=G(`menu`),d=G(`sub-menu`),f=j(-1),p=j(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),h=j(e.defaultActive),g=j({}),_=j({}),v=T(()=>e.mode===`horizontal`||e.mode===`vertical`&&e.collapse),y=()=>{let t=h.value&&g.value[h.value];!t||e.mode===`horizontal`||e.collapse||t.indexPath.forEach(e=>{let t=_.value[e];t&&b(e,t.indexPath)})},b=(t,r)=>{p.value.includes(t)||(e.uniqueOpened&&(p.value=p.value.filter(e=>r.includes(e))),p.value.push(t),n(`open`,t,r))},C=e=>{let t=p.value.indexOf(e);t!==-1&&p.value.splice(t,1)},w=(e,t)=>{C(e),n(`close`,e,t)},E=({index:e,indexPath:t})=>{p.value.includes(e)?w(e,t):b(e,t)},O=t=>{(e.mode===`horizontal`||e.collapse)&&(p.value=[]);let{index:r,indexPath:i}=t;if(!(L(r)||L(i)))if(e.router&&c){let e=t.route||r,a=c.push(e).then(e=>(e||(h.value=r),e));n(`select`,r,i,{index:r,indexPath:i,route:e},a)}else h.value=r,n(`select`,r,i,{index:r,indexPath:i})},A=t=>{let n=g.value;h.value=(n[t]||h.value&&n[h.value]||n[e.defaultActive])?.index??t},te=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},M=()=>{if(!l.value)return-1;let e=Array.from(l.value?.childNodes??[]).filter(e=>e.nodeName!==`#text`||e.nodeValue),t=getComputedStyle(l.value),n=Number.parseInt(t.paddingLeft,10),r=Number.parseInt(t.paddingRight,10),i=l.value.clientWidth-n-r,a=0,o=0;return e.forEach((e,t)=>{e.nodeName!==`#comment`&&(a+=te(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},N=e=>_.value[e].indexPath,P=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},F=!0,I=()=>{if(f.value===M())return;let e=()=>{f.value=-1,s(()=>{f.value=M()})};F?e():P(e)(),F=!1};x(()=>e.defaultActive,e=>{g.value[e]||(h.value=``),A(e)}),x(()=>e.collapse,e=>{e&&(p.value=[])}),x(g.value,y);let R;k(()=>{e.mode===`horizontal`&&e.ellipsis?R=V(l,I).stop:R?.()});let z=j(!1);{let t=e=>{_.value[e.index]=e},n=e=>{delete _.value[e.index]};D(Te,m({props:e,openedMenus:p,items:g,subMenus:_,activeIndex:h,isMenuPopup:v,addMenuItem:e=>{g.value[e.index]=e},removeMenuItem:e=>{delete g.value[e.index]},addSubMenu:t,removeSubMenu:n,openMenu:b,closeMenu:w,handleMenuItemClick:O,handleSubMenuClick:E})),D(`${Q}${o.uid}`,{addSubMenu:t,removeSubMenu:n,mouseInChild:z,level:0})}ee(()=>{e.mode===`horizontal`&&new be(o.vnode.el,u.namespace.value)}),a({open:e=>{let{indexPath:t}=_.value[e];t.forEach(e=>b(e,t))},close:C,updateActiveIndex:A,handleResize:I});let B=we(e,0);return()=>{let t=r.default?.call(r)??[],a=[];if(e.mode===`horizontal`&&l.value){let n=J(t),r=f.value===-1?n:n.slice(0,f.value),o=f.value===-1?[]:n.slice(f.value);o?.length&&e.ellipsis&&(t=r,a.push(i(Oe,{index:`sub-menu-more`,class:d.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>i(ne,{class:d.e(`icon-more`)},{default:()=>i(e.ellipsisIcon)}),default:()=>o})))}let o=e.closeOnClickOutside?[[ue,()=>{p.value.length&&(z.value||(p.value.forEach(e=>n(`close`,e,N(e))),p.value=[]))}]]:[],s=S(i(`ul`,{key:String(e.collapse),role:`menubar`,ref:l,style:B.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m(`collapse`)]:e.collapse}},[...t,...a]),o);return e.collapseTransition&&e.mode===`vertical`?i(xe,()=>s):s}}}),Me=N({index:{type:H([String,null]),default:null},route:{type:H([String,Object])},disabled:Boolean}),Ne={click:e=>v(e.index)&&p(e.indexPath)},$=`ElMenuItem`,Pe=W(M({...M({name:$}),props:Me,emits:Ne,setup(n,{expose:i,emit:a}){let o=n;R(o.index)&&ae($,`Missing required prop: "index"`);let s=t(),c=g(Te),l=G(`menu`),p=G(`menu-item`);c||U($,`can not inject root menu`);let{parentMenu:_,indexPath:v}=Se(s,f(o,`index`)),b=g(`${Q}${_.value.uid}`);b||U($,`can not inject sub menu`);let x=T(()=>o.index===c.activeIndex),S=m({index:o.index,indexPath:v,active:x}),D=()=>{o.disabled||(c.handleMenuItemClick({index:o.index,indexPath:v.value,route:o.route}),a(`click`,S))};return ee(()=>{b.addSubMenu(S),c.addMenuItem(S)}),y(()=>{b.removeSubMenu(S),c.removeMenuItem(S)}),i({parentMenu:_,rootMenu:c,active:x,nsMenu:l,nsMenuItem:p,handleClick:D}),(t,n)=>(A(),d(`li`,{class:r([u(p).b(),u(p).is(`active`,u(x)),u(p).is(`disabled`,t.disabled)]),role:`menuitem`,tabindex:`-1`,onClick:D},[u(_).type.name===`ElMenu`&&u(c).props.collapse&&t.$slots.title?(A(),w(u(ce),{key:0,effect:u(c).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:u(c).props.persistent},{content:E(()=>[C(t.$slots,`title`)]),default:E(()=>[e(`div`,{class:r(u(l).be(`tooltip`,`trigger`))},[C(t.$slots,`default`)],2)]),_:3},8,[`effect`,`persistent`])):(A(),d(h,{key:1},[C(t.$slots,`default`),C(t.$slots,`title`)],64))],2))}}),[[`__file`,`menu-item.vue`]]),Fe={title:String},Ie=W(M({...M({name:`ElMenuItemGroup`}),props:Fe,setup(t){let n=G(`menu-item-group`);return(t,i)=>(A(),d(`li`,{class:r(u(n).b())},[e(`div`,{class:r(u(n).e(`title`))},[t.$slots.title?C(t.$slots,`title`,{key:1}):(A(),d(h,{key:0},[a(o(t.title),1)],64))],2),e(`ul`,null,[C(t.$slots,`default`)])],2))}}),[[`__file`,`menu-item-group.vue`]]),Le=q(je,{MenuItem:Pe,MenuItemGroup:Ie,SubMenu:Oe}),Re=K(Pe);K(Ie);var ze=K(Oe),Be=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAMAAAAKE/YAAAAAMFBMVEX///+3t7f4+Pi8vLzAwMDExMTS0tLIyMjk5OTz8/PY2NjOzs7u7u7d3d3p6enh4eFVKkJDAAAIfUlEQVR4nNVd15akOAylyRRQ9f9/O02BZJtgBQszfR/2zPahsJCvguVUFJYop35ux66pq6r6+fn9T910bTv3U2najBXK9zw2PxE07fz+n0Qf+raOyetL3g9PS7vgzRUYULfvZyXuR5nAgLF/SuK3UuJN7gf0PbyErDiieuU1zKmLyFJ3Y9u+vmh//V9dXT/b5VN3f+HbFq82nGivHH6999Vv8rC7P+NFzfBlF56xvl/sEy1Xbc8mZ9m3R7bcrO0jl+vXJH7J0YY78UvYKNuDjpWNTQd9tzd5ks9ePUm92u877WMlp4dhR+Y2OYkYdh3XmKclc9iATVwoXyFLZouXIobuBpEXlK+QcYbK7gOF2NpMaN2Vmfdr71LGirAbW5N3lr4F1rckC0GQbQw6cqrM1XACvzOr5EjT+2q+L24Vk6/sRGL7no6t5un9eQE+7JG4r+wk3+e9iGfXwzyeZHLjzDGFt0fEBB564ymOeRwzCg8dHaZ9kx8NZGZ8+UyOv0bSW3o9q5Tac5+0luajjGfqpsT2krIuTeaKZGQf4UUIKpx6xFbo2nGD9HSlpJZAGfSQILVjV02Z4CQsJhD2UdbcJ/dwyRfpNvozwaLo4q/0nMhLIrMThJSZZ4EhiJd6Ugti43SvzCTlPKnZmUNZMV+u4cYKwp85XlfcTBi/s6Z+MZ2LxADhGZzUDU9m5zjIr0woQhLxasAHWS7E9TgZU/Z1EBEIjbzxQYYxOudOxu73qTBcUGEaIzqD1hi96W6JTgzRoDSI/UhmITP7yUPFSYqaagD1R4wJkP8VnT8nTwVQqnauN06QjvtCvYt2IL3Zm/Uk9jjDz0RmMLggwx3SOuIUSniGpJv3bAJo1SAFr9mKH8aI+LqkI0RFtoIh9/L76Cc8GLCDoxxSjyAHgxxFYSEzJ18Ggly4YHQHnCQ2LRoCGINXQirim0JYUJpDatf/p24PP4mVwSblSg6MEhDGuzNVg6J5o8nEvAPAGZiAfk5MDRXNqxcmx/AVHPMprx8G1TEHwOzqTByseTgoDRxYDT6akSh9YSMzr6aLidOeTGCj3EqDkdC8GU9Q9c6voYlyJzxy0sOxOnRs8C3sQpSR92DOO4EDCXkAzoA935bPTy8AIgTBCIIyvyZsExF/uM2Byfk9A7VafuksfdyygFmJcc35NZ7tT5xUYMNwJYcI/FouGP7xOyT1YBOh+aVcsCHHBWCHZHLTxOfxF6ZA8HP82P7ASv4BJj5PMNMO/g3+H9ghqrtnGm4hIJLAd7byVxg5asGCA+AH2N2meYHvKPxZmQRIGtyMaOMweC/ZXJJJdJE0CF27Bm0oK8kWLKSWHxeILB8s7xN8gmxFi0VIFAkNqd5KiI3S7JBqJ7Ssycb70vAL2LAofMiE9hkBrQvX4OTXNLS4eGpwA8KlaxaGKHOy4OWWcSVoXSZz9ohYYLaxpB8bv4V2aFGeFiYOvqTb74V2mHkQ8IXjBKhMuKrMJIoLOQlmVGIiIlyPmXdguwJ6d8J/CZ1H0m4iB1Gr4D569HjCZalPaNoxeWtd5jKf4TRkpy30syh3KbLXPVZsWdIIQUK6dO8Jl+dkbUB6GfRranwIWx3hUzeVi5fRmggtDA6b/dWO3ELkLiF4QldqoXOPxhe8QOjt57LUpXhguGUhtEUFUtq9EBzUQluQWrphIV1oA1JLm0R6VFqh0z21eH30XmjFdofbF14dgC5PG1zS0w9pjuYFF2UYL9KHiXJGYhhXJkwLEk1RvrEMZVWmpgvSVC1XtEtNlYOAL1JYrdESOg3lcGtFQsVGs+Nu++msHdiu0BNEQQ5vYKssIWxQx3JNc1AqnbTFmg3qSoKmYz0mb//S7QDU1k5Vdu+VSnUFyA3aBES1ca9zkqb4PPVQUUVG74OVRfUNSqencXh+UR1sUnfqgy6+qLrVn75QThRt0I26VG0FU4dbRNfE1ULpqVVBIZBTN/kJ0PBDxY6QEbpp5v27JFCxI5xm1k3oIxT+Q+Wowgl93dIJhHzqVrW5erd0QrdIxUE8wFXxcL9IBXSlSRcLuSnq3NR+OZBq4ZWD1FXr8sn9wivVEjcPwtVuKtd6XOKmWUzoQeY/dCczHBcTKpZtnr2QB104gN70ukm+QNaHzBJV7DhbIAt/040ERMMXnbUDAwOtgvZVsUo0KaCi9Omib/SCqleKhE7KSsNIIt7IkFXoi40MSBrNO28X+ooHOKxWqPpuoVHRh7FDo3+pyHsorOZyG5R0w5kPUZmJffYFIrLhTLi1DzFJT0X+aWaZ3JGtfcJNlCvesTOuIpAcLBrdRIms5g4s+jFlM0PFPYY6ul1VtDG4PJzwqQHnGGpKKlA1fVKN0VqxX31Tx1DjOTBXaRFvs3vaWdkniPIEF3hdGgEmxpev0VpeHNf8ZuiROMBhet0hMch9qkogR2wXbeSojHI22jd5ifp1cLbY9dHB8NWhJCbOgkYzBxpFzxH3wu74F++ro8ckWsM7a5l7/IuzVnAxJX1MojGQ3shHslKCPPimY+b+jYfmU0qONPIOj5rzK9lDi33OyQttVpEaglXXMFoabQVmqny3QxaBW4opM3o4CtwDJazWGZtAUMi12ONkAtGMrNGS/1QI5yb+CxciLmc8EwoDKEokefK6CBKPRf47Mj/MEIujvv+MzA/6kKQLCR7y18q5Y8AjiWryrR1T9uwp/RqJ3YUdGWBxYUeR2RzN7gThn6ifCrtLaA7X/dwG4xtusvg+24uVihzKtr/Cqrh7OFPdcVlYcXItmyHS7x67ROwyxxTceAHegqsLHVOQ4WLH00sdE5DhUsev2IbaznR95gKrCnDGi0oXDOmTRrmvhP3i712+u+LvXXO84u9dKL2Cf3V33X7+i6u7N/y5S9IdvOvoF0G/19GP9tfR/wPQ21eEI8clLwAAAABJRU5ErkJggg==`,Ve=M({name:`UpdateMenuItem`,components:{ElDropdownItem:fe,RefreshIcon:pe},data(){return{state:null,offState:null,promptedVersion:null,manualCheck:!1}},computed:{bridge(){return ge()?.updater},busy(){return[`checking`,`available`,`downloading`].includes(this.state?.phase??``)},label(){return this.state?.phase===`checking`?this.$t(`common.update.checking`):this.state?.phase===`available`?this.$t(`common.update.available`,{version:this.state.availableVersion}):this.state?.phase===`downloading`?this.$t(`common.update.downloading`,{percent:this.state.percent??0}):this.state?.phase===`downloaded`?this.$t(`common.update.ready`,{version:this.state.availableVersion}):this.$t(`common.update.check`)}},async mounted(){this.bridge&&(this.offState=this.bridge.onState(this.onState),this.onState(await this.bridge.getState()))},unmounted(){this.offState?.()},methods:{async onCheck(){if(this.bridge){if(this.state?.phase===`downloaded`){await this.promptInstall(this.state);return}this.manualCheck=!0,this.onState(await this.bridge.check())}},onState(e){this.state=e,e.phase===`downloaded`?this.promptInstall(e):this.manualCheck&&e.phase===`up-to-date`?(X.success(this.$t(`common.update.upToDate`,{version:e.currentVersion}).toString()),this.manualCheck=!1):this.manualCheck&&e.phase===`unsupported`?(X.info(this.$t(`common.update.unsupported`).toString()),this.manualCheck=!1):this.manualCheck&&e.phase===`error`&&(X.error(this.errorMessage(e.errorCode)),this.manualCheck=!1)},errorMessage(e){return e===`feed_unavailable`?this.$t(`common.update.feedUnavailable`).toString():e===`network_error`?this.$t(`common.update.networkError`).toString():this.$t(`common.update.failed`).toString()},async promptInstall(e){if(!(!this.bridge||this.promptedVersion===e.availableVersion)){this.promptedVersion=e.availableVersion??e.currentVersion;try{await _e.confirm(this.$t(`common.update.installMessage`,{version:e.availableVersion}).toString(),this.$t(`common.update.installTitle`).toString(),{confirmButtonText:this.$t(`common.update.restartInstall`).toString(),cancelButtonText:this.$t(`common.update.later`).toString(),type:`info`}),await this.bridge.install()}catch{this.promptedVersion=null}}}}});function He(e,t,n,i,s,u){let d=b(`refresh-icon`),f=b(`el-dropdown-item`);return e.bridge?(A(),w(f,{key:0,class:`py-2`,disabled:e.busy,onClick:e.onCheck},{default:E(()=>[c(d,{class:r([`mr-2`,{"animate-spin":e.busy}]),size:`1em`,"aria-hidden":`true`,focusable:`false`},null,8,[`class`]),a(` `+o(e.label),1)]),_:1},8,[`disabled`,`onClick`])):l(``,!0)}var Ue=me(Ve,[[`render`,He]]);export{ze as a,Re as i,Be as n,Le as r,Ue as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,at as o,j as s,mt as c,tt as l,z as u}from"./vendor-chart-Dw-P17PN.js";import{t as d}from"./external-link-
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,at as o,j as s,mt as c,tt as l,z as u}from"./vendor-chart-Dw-P17PN.js";import{t as d}from"./external-link-Ik947zOn.js";import{Ma as f,O as p}from"./index-BOCSBfUe.js";import{t as m}from"./vue-plyr-wiIKa-zl.js";var h=u({name:`VideoPlayer`,components:{ElButton:f,ExternalLinkIcon:d,VuePlyr:m},props:{src:{type:String,required:!0},options:{type:Object,required:!1,default:()=>({})}},data(){return{failed:!1,mergedOptions:{controls:[`play-large`,`play`,`progress`,`current-time`,`mute`,`volume`,`captions`,`settings`,`pip`,`fullscreen`],iconUrl:`https://cdn.acedata.cloud/7jq4t0.svg`,quality:{default:1080,options:[1080],...this.options.quality},...this.options}}},computed:{safeSrc(){return this.src.trim()}},watch:{safeSrc(){this.failed=!1}},methods:{onError(){this.failed=!0},onOpen(){window.open(this.safeSrc,`_blank`,`noopener,noreferrer`)}}}),g={class:`video max-w-[800px] max-h-[450px] rounded-[15px] overflow-hidden`},_=[`src`],v={key:1,class:`video-fallback`};function y(u,d,f,p,m,h){let y=o(`vue-plyr`),b=o(`external-link-icon`),x=o(`el-button`);return l(),a(`div`,g,[!u.failed&&u.safeSrc?(l(),s(y,{key:u.safeSrc,options:u.mergedOptions},{default:c(()=>[e(`video`,{controls:``,playsinline:``,preload:`metadata`,class:`w-full h-full aspect-[16/9]`,onError:d[0]||=(...e)=>u.onError&&u.onError(...e)},[e(`source`,{size:`1080`,src:u.safeSrc,type:`video/mp4`},null,8,_)],32)]),_:1},8,[`options`])):u.safeSrc?(l(),a(`div`,v,[r(x,{type:`primary`,round:``,onClick:u.onOpen},{default:c(()=>[r(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(u.$t(`common.button.download`)),1)]),_:1},8,[`onClick`])])):i(``,!0)])}var b=p(h,[[`render`,y],[`__scopeId`,`data-v-0d13923b`]]);export{b as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,L as n,N as r,at as i,mt as a,tt as o,z as s}from"./vendor-chart-Dw-P17PN.js";import{t as c}from"./play-
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,L as n,N as r,at as i,mt as a,tt as o,z as s}from"./vendor-chart-Dw-P17PN.js";import{t as c}from"./play-DFLhwX31.js";import{Ca as l,O as u}from"./index-BOCSBfUe.js";import{t as d}from"./VideoPlayer-Coh2RFTi.js";var f=s({name:`VideoPreview`,components:{PlayIcon:c,ElDialog:l,VideoPlayer:d},props:{url:{type:String,required:!0},name:{type:String,required:!1,default:`video`}},data(){return{open:!1}}}),p=[`title`],m=[`src`],h={class:`overlay absolute inset-0 flex items-center justify-center bg-[rgba(0,0,0,0.25)]`};function g(s,c,l,u,d,f){let g=i(`play-icon`),_=i(`video-player`),v=i(`el-dialog`);return o(),r(`div`,{class:`video-preview w-[50px] h-[50px] relative rounded-[var(--el-border-radius-base)] overflow-hidden shadow-sm cursor-pointer bg-[var(--el-fill-color-darker)]`,title:s.name,onClick:c[2]||=t(e=>s.open=!0,[`stop`])},[e(`video`,{class:`w-full h-full object-cover`,src:`${s.url}#t=0.1`,muted:``,preload:`metadata`,playsinline:``},null,8,m),e(`div`,h,[n(g,{class:`text-white text-[14px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),n(v,{modelValue:s.open,"onUpdate:modelValue":c[0]||=e=>s.open=e,width:`640`,"align-center":``,"append-to-body":``,"destroy-on-close":``,class:`video-preview-dialog`,onClick:c[1]||=t(()=>{},[`stop`])},{default:a(()=>[n(_,{src:s.url},null,8,[`src`])]),_:1},8,[`modelValue`])],8,p)}var _=u(f,[[`render`,g],[`__scopeId`,`data-v-47ae9a3b`]]);export{_ as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]);export{t};
|
package/dist/assets/{arrow-down-wide-narrow-DV_jDQwG.js → arrow-down-wide-narrow-B-Hw44Fp.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`arrow-down-wide-narrow`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M11 4h10`,key:`1w87gc`}],[`path`,{d:`M11 8h7`,key:`djye34`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e,k as t,la as n,pa as r,ra as i}from"./index-
|
|
1
|
+
import{j as e,k as t,la as n,pa as r,ra as i}from"./index-BOCSBfUe.js";function a(){return new URL(`/connections/popup-return`,i()).toString()}var o=`popup=yes,width=600,height=760,noopener=no,noreferrer=no`;function s(e){let t=window.open(e,`acedata-connect`,o);return t?new Promise(e=>{let n=window.setInterval(()=>{t.closed&&(window.clearInterval(n),e())},500)}):null}async function c(e){return n()?d(e):r()?u(e):l(e)}async function l(e){let t=s(e);if(!t){window.location.href=e;return}await t}async function u(t){let n;try{let r=new Promise(t=>{e.addListener(`browserFinished`,()=>t()).then(e=>{n=e})});await e.open({url:t}),await r}catch(e){console.warn(`in-app browser failed for connector authorize`,e)}finally{await n?.remove()}}async function d(e){let n=t();if(!n?.openAuthorizeConnector)throw Error(`desktop-authorize-unsupported`);let r=new Promise(e=>{window.addEventListener(`focus`,()=>e(),{once:!0})});await n.openAuthorizeConnector(e),await r}export{a as n,c as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e,t}from"./rolldown-runtime--c01j_DQ.js";import{Gt as n}from"./index-
|
|
1
|
+
import{o as e,t}from"./rolldown-runtime--c01j_DQ.js";import{Gt as n}from"./index-BOCSBfUe.js";import{i as r,l as i,n as a,o,t as s}from"./lit-Czpkz5lw.js";import{a as c,i as l,n as u,o as d,r as f,t as p}from"./wui-text-IdpNh4yv.js";import{$ as m,G as h,H as g,J as _,K as v,Q as ee,U as y,W as b,X as x,Y as S,Z as C,a as w,et as te,g as T,i as ne,n as E,p as re,r as D,s as O,u as ie,v as ae}from"./ConstantsUtil-CiJQ7E9o.js";import{n as oe,t as se}from"./ConnectorUtil-BNHqGaBo.js";var ce=i`
|
|
2
2
|
:host {
|
|
3
3
|
position: relative;
|
|
4
4
|
background-color: var(--wui-color-gray-glass-002);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`boxes`,[[`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`,key:`lc1i9w`}],[`path`,{d:`m7 16.5-4.74-2.85`,key:`1o9zyk`}],[`path`,{d:`m7 16.5 5-3`,key:`va8pkn`}],[`path`,{d:`M7 16.5v5.17`,key:`jnp8gn`}],[`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`,key:`8zsnat`}],[`path`,{d:`m17 16.5-5-3`,key:`8arw3v`}],[`path`,{d:`m17 16.5 4.74-2.85`,key:`8rfmw`}],[`path`,{d:`M17 16.5v5.17`,key:`k6z78m`}],[`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`,key:`1xygjf`}],[`path`,{d:`M12 8 7.26 5.15`,key:`1vbdud`}],[`path`,{d:`m12 8 4.74-2.85`,key:`3rx089`}],[`path`,{d:`M12 13.5V8`,key:`1io7kd`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]);export{t};
|
package/dist/assets/{chart-no-axes-combined-Q-oVi8mc.js → chart-no-axes-combined-DO-Wi2EC.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`chart-no-axes-combined`,[[`path`,{d:`M12 16v5`,key:`zza2cw`}],[`path`,{d:`M16 14.639V21`,key:`1s85h0`}],[`path`,{d:`M20 10.656V21`,key:`q45596`}],[`path`,{d:`m22 3-8.646 8.646a.5.5 0 0 1-.708 0L9.354 8.354a.5.5 0 0 0-.707 0L2 15`,key:`1fw8x9`}],[`path`,{d:`M4 18.463V21`,key:`1otddq`}],[`path`,{d:`M8 14.656V21`,key:`1t2idw`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as e}from"./models-
|
|
1
|
+
import{h as e}from"./models-CwklOk8Z.js";import{ra as t}from"./constants-DlrPFkyM.js";import{Ir as n,Lr as r,Si as i,bn as a,na as o,oi as s}from"./index-BOCSBfUe.js";var c={namespaced:!0,state:o,mutations:{setModel:(e,t)=>{e.model=t},setModelGroup:(e,t)=>{e.modelGroup=t},setService:(e,t)=>{e.service=t},setCredential:(e,t)=>{e.credential=t},setConversations:(e,t)=>{e.conversations=t},setApplication:(e,t)=>{e.application=t},setApplications:(e,t)=>{e.applications=t},setMemoryEnabled:(e,t)=>{e.memoryEnabled=t},setWorkingDirectory:(e,t)=>{e.workingDirectory=t||``},setPendingDraft:(e,t)=>{e.pendingDraft=t||``},resetAll:e=>{let t=e.memoryEnabled,n=e.workingDirectory;Object.assign(e,o()),e.memoryEnabled=t,e.workingDirectory=n}},actions:{resetAll:({commit:e})=>{e(`resetAll`)},createCredential:async({commit:e,state:t})=>{let r=t.application;if(console.debug(`prepare to create credential for application for chat`,r),!r){console.error(`Application not found`);return}console.debug(`creating create credential for application for chat`,r);let{data:i}=await n.create({application_id:r?.id,host:window.location.origin});return console.debug(`created credential success`,i),e(`setCredential`,i),console.debug(`end createCredential`),i},setModel:async({commit:e},t)=>{e(`setModel`,t)},setModelGroup:async({commit:e},t)=>{e(`setModelGroup`,t)},getService:async({commit:n,state:i})=>{i.status.getService=e.Request;try{let{data:a}=await r.get(t);return i.status.getService=e.Success,n(`setService`,a),a}catch{i.status.getService=e.Error,n(`setService`,void 0)}},setService:async({commit:e},t)=>{console.debug(`set service for chat`,t),e(`setService`,t)},setCredential:async({commit:e},t)=>{console.debug(`set credential`,t),e(`setCredential`,t)},setApplication:async({commit:e,dispatch:t,rootState:n},r)=>{if(console.debug(`set application`,r),e(`setApplication`,r),console.debug(`application is set`),!r){console.debug(`application is null, return`);return}let i=n?.user?.id,a=r?.role===`grantee`,o=r?.credentials?.find(e=>e?.host===window.location.origin);!o&&a&&(o=r?.credentials?.find(e=>e?.user_id===i)),o?(console.debug(`credential exists, set credential`,o),e(`setCredential`,o)):a?(console.warn(`no credential available for granted application`,r),e(`setCredential`,void 0)):(console.debug(`credential not exists, start to create credential for application`,r),await t(`createCredential`))},setApplications:async({commit:e},t)=>{console.debug(`set applications for chat`,t),e(`setApplications`,t)},getApplications:async({commit:n,state:r,rootState:a})=>{if(console.debug(`start to get applications for chat`),!a?.token?.access)return r.status.getApplications=e.Success,n(`setApplications`,[]),n(`setApplication`,void 0),n(`setCredential`,void 0),[];r.status.getApplications=e.Request;try{let{data:a}=await i.getAll({user_id:`me`,service_id:t,affiliation:[`owner`,`granted`]});return console.debug(`get applications success for chat`,a),r.status.getApplications=e.Success,n(`setApplications`,a.items),console.debug(`set applications for chat`,a.items),a.items}catch(t){console.error(`get applications failed for chat`,t),r.status.getApplications=e.Error}},setConversation:async({commit:e,state:t},n)=>{console.debug(`set conversation`,n);let r=t.conversations||[],i=r?.findIndex(e=>e.id===n.id),o=a(n);i>-1?r[i]={...r[i],...o}:r?.unshift(o),e(`setConversations`,r),console.debug(`set conversation success`,r)},setConversations:async({commit:e},t)=>{console.debug(`set conversations`,t),e(`setConversations`,t)},getConversations:async({commit:t,state:n,rootState:r})=>{n.status.getConversations=e.Request;let i=n.credential?.token,a=n.modelGroup?.name;if(!i||!a)return n.status.getConversations=e.Error,t(`setConversations`,[]),[];try{let{data:o}=await s.getConversations({userId:r.user?.id,modelGroup:a,limit:100},{token:i});return console.debug(`get conversations success`,o?.items?.length,`group=`,a),n.status.getConversations=e.Success,t(`setConversations`,o.items),o.items}catch{return n.status.getConversations=e.Error,t(`setConversations`,[]),[]}},getConversation:async({commit:e,state:t},n)=>{let r=t.credential?.token;if(!(!r||!n))try{let{data:i}=await s.getConversation(n,{token:r}),o=t.conversations||[],c=o.findIndex(e=>e.id===n),l=c>-1?{...o[c],...i}:i;if(c>-1){let t=[...o];t[c]=a(l),e(`setConversations`,t)}return l}catch(e){console.error(`getConversation failed`,n,e);return}}}};export{c as chat,c as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_a as e}from"./index-
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_a as e}from"./index-BOCSBfUe.js";var t=e(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Dispositivos`,description:`Título de la lista de dispositivos de Coding Bridge`},"nodeList.refresh":{message:`Actualizar`,description:`Actualizar la lista de dispositivos`},"nodeList.pair":{message:`Emparejar dispositivo`,description:`Abrir el cuadro de diálogo de emparejamiento`},"nodeList.empty":{message:`No se han emparejado dispositivos.`,description:`Mensaje cuando la lista de dispositivos está vacía`},"nodeList.pairFirst":{message:`Emparejar primer dispositivo`,description:`Botón de emparejamiento en estado vacío`},"nodeList.rename":{message:`Cambiar nombre`,description:`Rename a device`},"nodeList.renamePrompt":{message:`Ponle un nombre a este dispositivo. El nombre se sincroniza con todos tus dispositivos con sesión iniciada.`,description:`Rename device input prompt`},"nodeList.renameEmpty":{message:`El nombre no puede estar vacío.`,description:`Rename device empty-name validation`},"nodeList.renameTooLong":{message:`El nombre debe tener como máximo {max} caracteres.`,description:`Rename device too-long validation`},"nodeList.renameSuccess":{message:`Dispositivo renombrado.`,description:`Rename device success`},"nodeList.renameFailed":{message:`No se pudo cambiar el nombre del dispositivo.`,description:`Rename device failure`},"nodeList.remove":{message:`Eliminar`,description:`Eliminar dispositivo`},"nodeList.removeConfirm":{message:`¿Eliminar el dispositivo “{name}”? Se necesita emparejar de nuevo después de eliminar.`,description:`Confirmación para eliminar el dispositivo`},"nodeList.removeSuccess":{message:`Dispositivo eliminado.`,description:`Mensaje de éxito al eliminar el dispositivo`},"nodeList.removeFailed":{message:`Error al eliminar el dispositivo.`,description:`Mensaje de error al eliminar el dispositivo`},"status.online":{message:`Conectado`,description:`Estado de conexión del dispositivo`},"status.offline":{message:`Desconectado`,description:`Estado de desconexión del dispositivo`},"connection.disconnected":{message:`Desconectado`,description:`La conexión del intermediario ha sido desconectada`},"connection.connecting":{message:`Conectando…`,description:`El intermediario se está conectando`},"connection.connected":{message:`Conectado`,description:`El intermediario está conectado`},"connection.error":{message:`Error de conexión`,description:`Error en la conexión del intermediario`},"pair.title":{message:`Emparejar dispositivo`,description:`Título del cuadro de diálogo de emparejamiento`},"pair.intro":{message:`Ejecuta el proxy de Coding Bridge en tu computadora y luego ingresa el código de emparejamiento aquí para controlarlo desde la web.`,description:`Introducción al cuadro de diálogo de emparejamiento`},"pair.step1":{message:`Instala el proxy (requiere Python 3.10+):`,description:`Paso 1 del emparejamiento`},"pair.step2":{message:`Inicia y sigue las instrucciones:`,description:`Paso 2 del emparejamiento`},"pair.step3":{message:`Ingresa el código de emparejamiento que se muestra abajo.`,description:`Paso 3 del emparejamiento`},"pair.codePlaceholder":{message:`Código de emparejamiento`,description:`Placeholder del campo de entrada del código de emparejamiento`},"pair.claim":{message:`Emparejar dispositivo`,description:`Botón de confirmación de emparejamiento`},"pair.success":{message:`El dispositivo “{name}” ha sido emparejado.`,description:`Mensaje de éxito al emparejar`},"pair.invalidCode":{message:`El código de emparejamiento es inválido o ha expirado.`,description:`Error de código de emparejamiento inválido`},"pair.usedCode":{message:`Este código de emparejamiento ya ha sido utilizado.`,description:`Error de código de emparejamiento ya utilizado`},"pair.failed":{message:`Error al emparejar el dispositivo.`,description:`Error general de emparejamiento`},"permission.title":{message:`Se requiere autorización`,description:`Título del cuadro de autorización`},"permission.subtitle":{message:`Solicitar el uso de una herramienta, continuar tras la aprobación.`,description:`Subtítulo del cuadro de autorización`},"permission.deny":{message:`Denegar`,description:`Denegar la autorización de la herramienta`},"permission.allow":{message:`Permitir`,description:`Permitir la autorización de la herramienta`},"session.noDevice":{message:`Selecciona un dispositivo para comenzar a codificar.`,description:`Sugerencia de marcador de posición cuando no se ha seleccionado un dispositivo`},"session.newSession":{message:`Nueva sesión`,description:`Iniciar una nueva sesión`},"session.deviceOffline":{message:`Este dispositivo está desconectado. Por favor, inicia el proxy Coding Bridge en este dispositivo y continúa.`,description:`Advertencia de dispositivo desconectado`},"session.nodeId":{message:`ID de dispositivo`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID de sesión`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID de seguimiento`,description:`Diagnostic label for the trace id`},"session.startHint":{message:`Envía un mensaje para comenzar la sesión en este dispositivo.`,description:`Sugerencia para iniciar la sesión`},"session.cwdPlaceholder":{message:`Directorio de trabajo (opcional)`,description:`Marcador de posición para el cuadro de entrada del directorio de trabajo`},"session.modelPlaceholder":{message:`Modelo (opcional)`,description:`Marcador de posición para el cuadro de entrada del modelo`},"session.promptPlaceholder":{message:`Enviar un mensaje al proxy…`,description:`Marcador de posición para el cuadro de entrada del aviso`},"session.send":{message:`Enviar`,description:`Botón para enviar el mensaje`},"session.voiceInput":{message:`Entrada de voz`,description:`Comienza a convertir la voz en palabras clave`},"session.voiceStop":{message:`Detener entrada de voz`,description:`Detener la transcripción de voz`},"session.voiceListening":{message:`Escuchando, puedes editar el texto después de detener.`,description:`Mensaje en el cuadro de entrada durante el reconocimiento de voz`},"session.voiceStopping":{message:`Finalizando la transcripción de voz…`,description:`Esperando la salida final del reconocimiento de voz`},"session.voicePermissionDenied":{message:`Permiso de micrófono denegado, por favor permite en la configuración del sistema o del navegador y vuelve a intentarlo.`,description:`El permiso de micrófono ha sido denegado`},"session.voiceMicrophoneUnavailable":{message:`No se encontró o no se puede usar el micrófono.`,description:`Micrófono no disponible`},"session.voiceNoSpeech":{message:`No se detectó voz, por favor intenta de nuevo.`,description:`El reconocimiento de voz no detectó habla`},"session.voiceNetworkError":{message:`El servicio de reconocimiento de voz no está disponible temporalmente, por favor verifica la red y vuelve a intentarlo.`,description:`Error de red en el reconocimiento de voz`},"session.voiceError":{message:`Error en la entrada de voz, por favor intenta de nuevo.`,description:`Error general de reconocimiento de voz`},"session.retry":{message:`Reintentar`,description:`Re-run the last prompt after a failure`},"session.editPrompt":{message:`Editar`,description:`Editar el aviso enviado y reenviarlo como una nueva ronda`},"session.editingBanner":{message:`Editando — Enviar volverá a este punto en la conversación`,description:`Banner mostrado mientras se edita un aviso anterior`},"session.editRestoreCode":{message:`Revertir código también`,description:`Casilla de verificación para revertir también los cambios en el archivo al editar`},"session.editCancel":{message:`Cancelar`,description:`Cancelar la edición de un aviso anterior`},"session.editSubmit":{message:`Actualizar`,description:`Enviar un aviso editado (rebobinar y volver a ejecutar)`},"session.enterHint":{message:`Presiona Enter para enviar, Shift+Enter para nueva línea.`,description:`Sugerencia de teclado para el cuadro de entrada`},"transcript.turnFailed":{message:`Error en la ejecución`,description:`Etiqueta de resultado de turno fallido`},"transcript.turnDone":{message:`Finalizado`,description:`Etiqueta de resultado de turno completado`},"transcript.todoProgress":{message:`Completado {done}/{total}`,description:`Progreso de la lista de tareas`},"transcript.todoOverflow":{message:`…hay {count} elementos no mostrados`,description:`Sugerencia de desbordamiento para la lista de tareas`},"transcript.todoCompleted":{message:`Completado`,description:`Lista de tareas: estado completado (lectura accesible)`},"transcript.todoInProgress":{message:`En progreso`,description:`Lista de tareas: estado en progreso (lectura accesible)`},"transcript.todoPending":{message:`Pendiente`,description:`Lista de tareas: estado pendiente (lectura accesible)`},"history.button":{message:`Historial`,description:`Open the conversation history drawer`},"history.title":{message:`Historial de conversaciones`,description:`History drawer title`},"history.intro":{message:`Sesiones anteriores de Claude Code, Codex y GitHub Copilot en este dispositivo.`,description:`History drawer intro`},"history.refresh":{message:`Actualizar`,description:`Reload the history list`},"history.loading":{message:`Cargando historial…`,description:`History loading message`},"history.empty":{message:`No se encontró historial en este dispositivo.`,description:`Empty history message`},"history.filterAll":{message:`Todo`,description:`Eliminar el filtro de origen y mostrar todas las sesiones.`},"history.filterEmpty":{message:`No hay sesiones bajo el filtro actual.`,description:`Mensaje que indica que no hay resultados después de aplicar el filtro.`},"history.messages":{message:`{count} mensajes`,description:`History item message count`},"history.readonly":{message:`Esta conversación de Codex es de solo lectura y no se puede continuar. Inicia una nueva sesión para seguir programando.`,description:`Read-only replay notice`},"history.running":{message:`En ejecución`,description:`Marks a history conversation that is currently live on the device`},"history.unread":{message:`No leído`,description:`Marcador de sesiones históricas que han terminado pero que el usuario aún no ha visto`},"history.resumeHint":{message:`Enviar un mensaje reanudará esta conversación en el dispositivo.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Historial de Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Historial de Codex (solo lectura)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Modo de permisos`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Predeterminado (preguntar cada vez)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Aceptar cambios automáticamente`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Modo de planificación (solo lectura)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Omitir todos los permisos`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Etiqueta del selector de backend del agente`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(no instalado)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} no está instalado en este dispositivo.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Esfuerzo de razonamiento`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Predeterminado`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Bajo`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medio`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Alto`,description:`Reasoning effort: high`},"session.effortMax":{message:`Máximo`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Elegir directorio de trabajo`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Usar este directorio`,description:`Button: select the current directory`},"directory.up":{message:`Directorio superior`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Actualizar`,description:`Button: reload the current directory`},"directory.pathPlaceholder":{message:`Introduce la ruta (por ejemplo, D:\\) y presiona Enter`,description:`Marcador de posición para la entrada editable de la ruta del directorio`},"directory.go":{message:`Ir`,description:`Botón: navegar a la ruta de directorio escrita`},"directory.loading":{message:`Cargando…`,description:`Directory listing loading hint`},"directory.empty":{message:`Este directorio está vacío.`,description:`Empty directory hint`},"directory.truncated":{message:`Mostrando las primeras 1000 entradas.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Adjuntar imagen`,description:`Attach image button title`},"session.removeImage":{message:`Quitar imagen`,description:`Remove attached image button title`},"session.imageAlt":{message:`Imagen adjunta`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`La imagen es demasiado grande; mantén cada una por debajo de 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Puedes adjuntar hasta {count} imágenes.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Modelo predeterminado`,description:`Modelo predeterminado`},"session.cwdDefault":{message:`Directorio predeterminado`,description:`Directorio predeterminado`},"session.settings":{message:`Configuración de la sesión`,description:`Configuraciones de la sesión`},"session.settingsLocked":{message:`La configuración de esta sesión está bloqueada`,description:`Las configuraciones están bloqueadas para esta sesión`},"session.attachFile":{message:`Agregar archivo`,description:`Adjuntar archivo`},"session.attachmentImageAlt":{message:`Imagen adjunta`,description:`Imagen adjunta`},"session.removeAttachment":{message:`Eliminar archivo adjunto`,description:`Eliminar archivo adjunto`},"session.uploadingAttachment":{message:`Subiendo archivo…`,description:`Subiendo archivos…`},"session.attachmentTooLarge":{message:`El archivo es demasiado grande; mantén cada uno por debajo de 50 MB.`,description:`El archivo es demasiado grande; mantén cada uno por debajo de 50 MB.`},"session.attachmentLimit":{message:`Se pueden adjuntar hasta {count} archivos.`,description:`Puedes adjuntar hasta {count} archivos.`},"session.attachmentUploadError":{message:`Error al subir el archivo adjunto.`,description:`Error al subir el archivo adjunto.`},"notice.slashUnavailable":{message:`/{command} es un comando interactivo y no puede ejecutarse en una sesión remota.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} no está disponible para Codex en una sesión remota.`,description:`Notice shown when a Codex slash command isn't supported remotely`},"notify.enable":{message:`Activar notificaciones`,description:`Tooltip on the notification bell when notifications are off`},"notify.disable":{message:`Desactivar notificaciones`,description:`Tooltip on the notification bell when notifications are on`},"notify.enabled":{message:`Notificaciones activadas. Te avisaremos cuando una sesión necesite aprobación.`,description:`Toast after enabling notifications`},"notify.disabled":{message:`Notificaciones desactivadas.`,description:`Toast after disabling notifications`},"notify.denied":{message:`Las notificaciones están bloqueadas. Permítelas en la configuración del navegador para recibir avisos de aprobación.`,description:`Toast when notification permission is denied`},"notify.unsupported":{message:`Las notificaciones no son compatibles con este dispositivo.`,description:`Toast when notifications are unsupported`},"notify.failed":{message:`No se pudo actualizar la configuración de notificaciones.`,description:`Toast when enabling or disabling notifications errors`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`设备`,description:`Coding Bridge 设备列表标题`},"nodeList.refresh":{message:`刷新`,description:`刷新设备列表`},"nodeList.pair":{message:`配对设备`,description:`打开配对对话框`},"nodeList.empty":{message:`尚未配对任何设备。`,description:`设备列表为空时的提示`},"nodeList.pairFirst":{message:`配对第一台设备`,description:`空状态下的配对按钮`},"nodeList.rename":{message:`重命名`,description:`重命名设备`},"nodeList.renamePrompt":{message:`给这台设备起个名字,所有登录的设备都会看到。`,description:`重命名设备输入提示`},"nodeList.renameEmpty":{message:`名称不能为空。`,description:`重命名设备名称为空的校验提示`},"nodeList.renameTooLong":{message:`名称最长 {max} 个字符。`,description:`重命名设备名称过长的校验提示`},"nodeList.renameSuccess":{message:`设备已重命名。`,description:`重命名设备成功提示`},"nodeList.renameFailed":{message:`重命名设备失败。`,description:`重命名设备失败提示`},"nodeList.remove":{message:`移除`,description:`移除设备`},"nodeList.removeConfirm":{message:`移除设备“{name}”?移除后需要重新配对。`,description:`移除设备确认`},"nodeList.removeSuccess":{message:`设备已移除。`,description:`移除设备成功提示`},"nodeList.removeFailed":{message:`移除设备失败。`,description:`移除设备失败提示`},"status.online":{message:`在线`,description:`设备在线状态`},"status.offline":{message:`离线`,description:`设备离线状态`},"connection.disconnected":{message:`已断开`,description:`中继连接已断开`},"connection.connecting":{message:`连接中…`,description:`中继连接中`},"connection.connected":{message:`已连接`,description:`中继已连接`},"connection.error":{message:`连接出错`,description:`中继连接出错`},"pair.title":{message:`配对设备`,description:`配对对话框标题`},"pair.intro":{message:`在你的电脑上运行 Coding Bridge 代理,然后在此输入配对码即可在网页端控制它。`,description:`配对对话框介绍`},"pair.step1":{message:`安装代理(需要 Python 3.10+):`,description:`配对步骤 1`},"pair.step2":{message:`启动并按提示操作:`,description:`配对步骤 2`},"pair.step3":{message:`输入下方显示的配对码。`,description:`配对步骤 3`},"pair.codePlaceholder":{message:`配对码`,description:`配对码输入框占位符`},"pair.claim":{message:`配对设备`,description:`配对确认按钮`},"pair.success":{message:`设备“{name}”已配对。`,description:`配对成功提示`},"pair.invalidCode":{message:`配对码无效或已过期。`,description:`配对码无效错误`},"pair.usedCode":{message:`该配对码已被使用。`,description:`配对码已使用错误`},"pair.failed":{message:`配对设备失败。`,description:`配对通用错误`},"permission.title":{message:`需要授权`,description:`授权对话框标题`},"permission.subtitle":{message:`代理请求使用一个工具,批准后继续。`,description:`授权对话框副标题`},"permission.deny":{message:`拒绝`,description:`拒绝工具授权`},"permission.allow":{message:`允许`,description:`允许工具授权`},"session.noDevice":{message:`选择一台设备开始编码。`,description:`未选择设备时的占位提示`},"session.newSession":{message:`新会话`,description:`开始新会话`},"session.deviceOffline":{message:`该设备已离线。请在该设备上启动 Coding Bridge 代理后继续。`,description:`设备离线警告`},"session.nodeId":{message:`设备 ID`,description:`节点 id 的诊断标签`},"session.sessionId":{message:`会话 ID`,description:`会话 id 的诊断标签`},"session.traceId":{message:`追踪 ID`,description:`追踪 id 的诊断标签`},"session.startHint":{message:`发送一条消息以在该设备上开始会话。`,description:`空白记录提示`},"session.cwdPlaceholder":{message:`工作目录(可选)`,description:`工作目录输入框占位符`},"session.modelPlaceholder":{message:`模型(可选)`,description:`模型输入框占位符`},"session.promptPlaceholder":{message:`向代理发送消息…`,description:`提示词输入框占位符`},"session.send":{message:`发送`,description:`发送提示词按钮`},"session.voiceInput":{message:`语音输入`,description:`开始把语音转成提示词`},"session.voiceStop":{message:`停止语音输入`,description:`停止语音转写`},"session.voiceListening":{message:`正在听写,停止后可编辑文字。`,description:`语音识别进行中的输入框提示`},"session.voiceStopping":{message:`正在完成语音转写…`,description:`等待语音识别输出最终结果`},"session.voicePermissionDenied":{message:`麦克风权限被拒绝,请在系统或浏览器设置中允许后重试。`,description:`麦克风权限被拒绝`},"session.voiceMicrophoneUnavailable":{message:`未找到或无法使用麦克风。`,description:`麦克风不可用`},"session.voiceNoSpeech":{message:`未检测到语音,请重试。`,description:`语音识别没有检测到讲话`},"session.voiceNetworkError":{message:`语音识别服务暂时不可用,请检查网络后重试。`,description:`语音识别网络错误`},"session.voiceError":{message:`语音输入失败,请重试。`,description:`语音识别通用错误`},"session.retry":{message:`重试`,description:`失败后重新执行上一条提示词`},"session.editPrompt":{message:`编辑`,description:`编辑已发送的提示词并作为新一轮重新发送`},"session.editingBanner":{message:`编辑中 — 发送将把对话回退到此处`,description:`Banner shown while editing a past prompt`},"session.editRestoreCode":{message:`同时回退代码`,description:`Checkbox to also roll back file changes when editing`},"session.editCancel":{message:`取消`,description:`Cancel editing a past prompt`},"session.editSubmit":{message:`更新`,description:`Submit an edited prompt (rewind and re-run)`},"session.enterHint":{message:`回车发送,Shift+回车换行。`,description:`输入框键盘提示`},"transcript.turnFailed":{message:`执行失败`,description:`回合结果失败标签`},"transcript.turnDone":{message:`完成`,description:`回合结果完成标签`},"transcript.todoProgress":{message:`已完成 {done}/{total}`,description:`任务清单进度`},"transcript.todoOverflow":{message:`…另有 {count} 项未显示`,description:`任务清单超长省略提示`},"transcript.todoCompleted":{message:`已完成`,description:`任务清单:已完成状态(无障碍朗读)`},"transcript.todoInProgress":{message:`进行中`,description:`任务清单:进行中状态(无障碍朗读)`},"transcript.todoPending":{message:`待办`,description:`任务清单:待办状态(无障碍朗读)`},"history.button":{message:`历史会话`,description:`打开历史会话抽屉`},"history.title":{message:`历史会话`,description:`历史会话抽屉标题`},"history.intro":{message:`此设备上的 Claude Code、Codex 与 GitHub Copilot 历史会话。`,description:`历史会话抽屉说明`},"history.refresh":{message:`刷新`,description:`重新加载历史列表`},"history.loading":{message:`正在加载历史…`,description:`历史加载提示`},"history.empty":{message:`此设备上没有找到历史会话。`,description:`历史为空提示`},"history.filterAll":{message:`全部`,description:`清除来源筛选,显示全部会话`},"history.filterEmpty":{message:`当前筛选下没有会话。`,description:`筛选后结果为空的提示`},"history.messages":{message:`{count} 条消息`,description:`历史条目消息数`},"history.readonly":{message:`此 Codex 会话为只读,无法继续。开始新会话以继续编码。`,description:`只读回放提示`},"history.running":{message:`运行中`,description:`历史会话当前正在设备上运行的标记`},"history.unread":{message:`未读`,description:`历史会话已运行完但用户尚未查看的标记`},"history.resumeHint":{message:`发送消息将在设备上续接此会话。`,description:`续接输入框提示`},"history.claudeLabel":{message:`Claude 历史`,description:`回放的 Claude 会话标签`},"history.codexLabel":{message:`Codex 历史(只读)`,description:`回放的 Codex 会话标签`},"session.permissionModeLabel":{message:`权限模式`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`默认(每次询问)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`自动接受修改`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`规划模式(只读)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`绕过所有权限`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`后端`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(未安装)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} 未安装在该设备上。`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`推理强度`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`默认`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`低`,description:`Reasoning effort: low`},"session.effortMedium":{message:`中`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`高`,description:`Reasoning effort: high`},"session.effortMax":{message:`最高`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`选择工作目录`,description:`Working-directory picker dialog title`},"directory.choose":{message:`使用此目录`,description:`Button: select the current directory`},"directory.up":{message:`上级目录`,description:`Button: go to the parent directory`},"directory.refresh":{message:`刷新`,description:`Button: reload the current directory`},"directory.pathPlaceholder":{message:`输入路径(如 D:\\)后回车`,description:`Placeholder for the editable directory path input`},"directory.go":{message:`跳转`,description:`Button: navigate to the typed directory path`},"directory.loading":{message:`正在加载…`,description:`Directory listing loading hint`},"directory.empty":{message:`此目录为空。`,description:`Empty directory hint`},"directory.truncated":{message:`仅显示前 1000 项。`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`添加图片`,description:`Attach image button title`},"session.removeImage":{message:`移除图片`,description:`Remove attached image button title`},"session.imageAlt":{message:`附加的图片`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`图片过大,单张请控制在 12 MB 以内。`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`最多可附加 {count} 张图片。`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`默认模型`,description:`Default model`},"session.cwdDefault":{message:`默认目录`,description:`Default directory`},"session.settings":{message:`会话设置`,description:`Session settings`},"session.settingsLocked":{message:`本会话设置已锁定`,description:`Settings are locked for this session`},"session.attachFile":{message:`添加文件`,description:`Attach file`},"session.attachmentImageAlt":{message:`已附加图片`,description:`Attached image`},"session.removeAttachment":{message:`移除附件`,description:`Remove attachment`},"session.uploadingAttachment":{message:`附件上传中…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`文件过大,请保持每个文件不超过 50 MB。`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`最多可附加 {count} 个文件。`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`附件上传失败。`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} 是交互式命令,无法在远程会话中运行。`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} 在远程会话中暂不支持 Codex。`,description:`Notice shown when a Codex slash command isn't supported remotely`},"notify.enable":{message:`开启通知`,description:`Tooltip on the notification bell when notifications are off`},"notify.disable":{message:`关闭通知`,description:`Tooltip on the notification bell when notifications are on`},"notify.enabled":{message:`通知已开启,会话需要授权时会提醒你。`,description:`Toast after enabling notifications`},"notify.disabled":{message:`通知已关闭。`,description:`Toast after disabling notifications`},"notify.denied":{message:`通知已被阻止,请在浏览器设置中允许通知以接收授权提醒。`,description:`Toast when notification permission is denied`},"notify.unsupported":{message:`当前设备不支持通知。`,description:`Toast when notifications are unsupported`},"notify.failed":{message:`无法更新通知设置。`,description:`Toast when enabling or disabling notifications errors`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Dispositivi`,description:`Titolo dell'elenco dei dispositivi di Coding Bridge`},"nodeList.refresh":{message:`Aggiorna`,description:`Aggiorna l'elenco dei dispositivi`},"nodeList.pair":{message:`Accoppia dispositivo`,description:`Apre la finestra di dialogo per l'accoppiamento`},"nodeList.empty":{message:`Nessun dispositivo accoppiato.`,description:`Messaggio quando l'elenco dei dispositivi è vuoto`},"nodeList.pairFirst":{message:`Accoppia il primo dispositivo`,description:`Pulsante di accoppiamento in stato vuoto`},"nodeList.rename":{message:`Rinomina`,description:`Rename a device`},"nodeList.renamePrompt":{message:`Assegna un nome a questo dispositivo. Il nome viene sincronizzato su tutti i dispositivi in cui hai effettuato l’accesso.`,description:`Rename device input prompt`},"nodeList.renameEmpty":{message:`Il nome non può essere vuoto.`,description:`Rename device empty-name validation`},"nodeList.renameTooLong":{message:`Il nome deve contenere al massimo {max} caratteri.`,description:`Rename device too-long validation`},"nodeList.renameSuccess":{message:`Dispositivo rinominato.`,description:`Rename device success`},"nodeList.renameFailed":{message:`Impossibile rinominare il dispositivo.`,description:`Rename device failure`},"nodeList.remove":{message:`Rimuovi`,description:`Rimuove un dispositivo`},"nodeList.removeConfirm":{message:`Rimuovere il dispositivo “{name}”? Dopo la rimozione sarà necessario accoppiarlo di nuovo.`,description:`Conferma la rimozione del dispositivo`},"nodeList.removeSuccess":{message:`Dispositivo rimosso.`,description:`Messaggio di successo per la rimozione del dispositivo`},"nodeList.removeFailed":{message:`Rimozione del dispositivo fallita.`,description:`Messaggio di errore per la rimozione del dispositivo`},"status.online":{message:`Online`,description:`Stato del dispositivo online`},"status.offline":{message:`Offline`,description:`Stato del dispositivo offline`},"connection.disconnected":{message:`Disconnesso`,description:`La connessione del relay è stata interrotta`},"connection.connecting":{message:`Connessione in corso…`,description:`Il relay sta tentando di connettersi`},"connection.connected":{message:`Connesso`,description:`Il relay è connesso`},"connection.error":{message:`Errore di connessione`,description:`Si è verificato un errore nella connessione del relay`},"pair.title":{message:`Accoppia dispositivo`,description:`Titolo della finestra di dialogo di accoppiamento`},"pair.intro":{message:`Esegui il proxy Coding Bridge sul tuo computer e inserisci qui il codice di accoppiamento per controllarlo dal browser.`,description:`Introduzione alla finestra di dialogo di accoppiamento`},"pair.step1":{message:`Installa il proxy (richiede Python 3.10+):`,description:`Passo 1 per l'accoppiamento`},"pair.step2":{message:`Avvia e segui le istruzioni:`,description:`Passo 2 per l'accoppiamento`},"pair.step3":{message:`Inserisci il codice di accoppiamento mostrato qui sotto.`,description:`Passo 3 per l'accoppiamento`},"pair.codePlaceholder":{message:`Codice di accoppiamento`,description:`Segnaposto per il campo di input del codice di accoppiamento`},"pair.claim":{message:`Accoppia dispositivo`,description:`Pulsante di conferma per l'accoppiamento`},"pair.success":{message:`Dispositivo “{name}” accoppiato.`,description:`Messaggio di successo per l'accoppiamento`},"pair.invalidCode":{message:`Il codice di accoppiamento è invalido o è scaduto.`,description:`Errore di codice di accoppiamento invalido`},"pair.usedCode":{message:`Questo codice di accoppiamento è già stato utilizzato.`,description:`Errore di codice di accoppiamento già utilizzato`},"pair.failed":{message:`Accoppiamento del dispositivo fallito.`,description:`Errore generico di accoppiamento`},"permission.title":{message:`Autorizzazione necessaria`,description:`Titolo della finestra di autorizzazione`},"permission.subtitle":{message:`Richiesta di autorizzazione per utilizzare uno strumento, continua dopo l'approvazione.`,description:`Sottotitolo della finestra di autorizzazione`},"permission.deny":{message:`Rifiuta`,description:`Rifiuta l'autorizzazione dello strumento`},"permission.allow":{message:`Consenti`,description:`Consenti l'autorizzazione dello strumento`},"session.noDevice":{message:`Seleziona un dispositivo per iniziare a codificare.`,description:`Suggerimento segnaposto quando non è stato selezionato alcun dispositivo`},"session.newSession":{message:`Nuova sessione`,description:`Inizia una nuova sessione`},"session.deviceOffline":{message:`Questo dispositivo è offline. Per favore, avvia il proxy Coding Bridge su questo dispositivo per continuare.`,description:`Avviso di dispositivo offline`},"session.nodeId":{message:`ID dispositivo`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID sessione`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID traccia`,description:`Diagnostic label for the trace id`},"session.startHint":{message:`Invia un messaggio per iniziare la sessione su questo dispositivo.`,description:`Suggerimento per un record vuoto`},"session.cwdPlaceholder":{message:`Directory di lavoro (opzionale)`,description:`Segnaposto per il campo di input della directory di lavoro`},"session.modelPlaceholder":{message:`Modello (opzionale)`,description:`Segnaposto per il campo di input del modello`},"session.promptPlaceholder":{message:`Invia un messaggio al proxy…`,description:`Segnaposto per il campo di input del prompt`},"session.send":{message:`Invia`,description:`Pulsante per inviare il messaggio`},"session.voiceInput":{message:`Input vocale`,description:`Inizia a convertire la voce in suggerimenti`},"session.voiceStop":{message:`Ferma input vocale`,description:`Ferma la trascrizione vocale`},"session.voiceListening":{message:`In ascolto, puoi modificare il testo dopo aver fermato.`,description:`Messaggio di input durante il riconoscimento vocale in corso`},"session.voiceStopping":{message:`Completando la trascrizione vocale…`,description:`In attesa del risultato finale del riconoscimento vocale`},"session.voicePermissionDenied":{message:`Permesso del microfono negato, consenti nelle impostazioni di sistema o del browser e riprova.`,description:`Permesso del microfono negato`},"session.voiceMicrophoneUnavailable":{message:`Microfono non trovato o non disponibile.`,description:`Microfono non disponibile`},"session.voiceNoSpeech":{message:`Nessuna voce rilevata, riprova.`,description:`Il riconoscimento vocale non ha rilevato alcuna parola`},"session.voiceNetworkError":{message:`Servizio di riconoscimento vocale temporaneamente non disponibile, controlla la rete e riprova.`,description:`Errore di rete nel riconoscimento vocale`},"session.voiceError":{message:`Errore nell'input vocale, riprova.`,description:`Errore generico nel riconoscimento vocale`},"session.retry":{message:`Riprova`,description:`Re-run the last prompt after a failure`},"session.editPrompt":{message:`Modifica`,description:`Modifica il prompt inviato e invialo nuovamente come un nuovo`},"session.editingBanner":{message:`In modifica — l'invio riporterà la conversazione a questo punto`,description:`Banner mostrato durante la modifica di un prompt precedente`},"session.editRestoreCode":{message:`Ripristina anche il codice`,description:`Checkbox per ripristinare anche le modifiche ai file durante la modifica`},"session.editCancel":{message:`Annulla`,description:`Annulla la modifica di un prompt precedente`},"session.editSubmit":{message:`Aggiorna`,description:`Invia un prompt modificato (riavvolgi e riesegui)`},"session.enterHint":{message:`Invio per inviare, Shift+Invio per andare a capo.`,description:`Suggerimento per la tastiera nel campo di input`},"transcript.turnFailed":{message:`Esecuzione fallita`,description:`Etichetta di fallimento del risultato del turno`},"transcript.turnDone":{message:`Completato`,description:`Etichetta di completamento del risultato del turno`},"transcript.todoProgress":{message:`Completato {done}/{total}`,description:`Progresso dell'elenco delle attività`},"transcript.todoOverflow":{message:`…ci sono altre {count} voci non visualizzate`,description:`Suggerimento per un elenco di attività troppo lungo`},"transcript.todoCompleted":{message:`Completato`,description:`Elenco delle attività: stato completato (lettura accessibile)`},"transcript.todoInProgress":{message:`In corso`,description:`Elenco delle attività: stato in corso (lettura accessibile)`},"transcript.todoPending":{message:`Da fare`,description:`Elenco delle attività: stato da fare (lettura accessibile)`},"history.button":{message:`Cronologia`,description:`Open the conversation history drawer`},"history.title":{message:`Cronologia delle conversazioni`,description:`History drawer title`},"history.intro":{message:`Sessioni Claude Code, Codex e GitHub Copilot precedenti su questo dispositivo.`,description:`History drawer intro`},"history.refresh":{message:`Aggiorna`,description:`Reload the history list`},"history.loading":{message:`Caricamento della cronologia…`,description:`History loading message`},"history.empty":{message:`Nessuna cronologia trovata su questo dispositivo.`,description:`Empty history message`},"history.filterAll":{message:`Tutti`,description:`Rimuove il filtro di origine e mostra tutte le conversazioni.`},"history.filterEmpty":{message:`Non ci sono conversazioni con il filtro attuale.`,description:`Messaggio che indica che i risultati sono vuoti dopo l'applicazione del filtro.`},"history.messages":{message:`{count} messaggi`,description:`History item message count`},"history.readonly":{message:`Questa conversazione Codex è di sola lettura e non può essere continuata. Avvia una nuova sessione per continuare a programmare.`,description:`Read-only replay notice`},"history.running":{message:`In esecuzione`,description:`Marks a history conversation that is currently live on the device`},"history.unread":{message:`Non letto`,description:`Indicatore di sessioni storiche completate ma non ancora visualizzate dall'utente`},"history.resumeHint":{message:`L’invio di un messaggio riprenderà questa conversazione sul dispositivo.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Cronologia Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Cronologia Codex (sola lettura)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Modalità autorizzazioni`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Predefinito (chiedi ogni volta)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Accetta automaticamente le modifiche`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Modalità pianificazione (sola lettura)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Ignora tutte le autorizzazioni`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Etichetta per il selettore del backend dell'agente`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(non installato)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} non è installato su questo dispositivo.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Sforzo di ragionamento`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Predefinito`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Basso`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medio`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Alto`,description:`Reasoning effort: high`},"session.effortMax":{message:`Massimo`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Scegli la directory di lavoro`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Usa questa directory`,description:`Button: select the current directory`},"directory.up":{message:`Directory superiore`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Aggiorna`,description:`Button: reload the current directory`},"directory.pathPlaceholder":{message:`Inserisci il percorso (es. D:\\) e premi invio`,description:`Segnaposto per l'input del percorso della directory modificabile`},"directory.go":{message:`Vai`,description:`Pulsante: naviga al percorso della directory digitato`},"directory.loading":{message:`Caricamento…`,description:`Directory listing loading hint`},"directory.empty":{message:`Questa directory è vuota.`,description:`Empty directory hint`},"directory.truncated":{message:`Mostrate le prime 1000 voci.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Allega immagine`,description:`Attach image button title`},"session.removeImage":{message:`Rimuovi immagine`,description:`Remove attached image button title`},"session.imageAlt":{message:`Immagine allegata`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`L'immagine è troppo grande; mantieni ciascuna sotto i 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Puoi allegare fino a {count} immagini.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Modello predefinito`,description:`Modello predefinito`},"session.cwdDefault":{message:`Directory predefinita`,description:`Directory predefinita`},"session.settings":{message:`Impostazioni della sessione`,description:`Impostazioni della sessione`},"session.settingsLocked":{message:`Le impostazioni di questa sessione sono bloccate`,description:`Le impostazioni sono bloccate per questa sessione`},"session.attachFile":{message:`Aggiungi file`,description:`Allega un file`},"session.attachmentImageAlt":{message:`Immagine allegata`,description:`Immagine allegata`},"session.removeAttachment":{message:`Rimuovi allegato`,description:`Rimuovi l'allegato`},"session.uploadingAttachment":{message:`Caricamento allegato in corso…`,description:`Caricamento degli allegati…`},"session.attachmentTooLarge":{message:`File troppo grande, mantieni ogni file sotto i 50 MB.`,description:`Il file è troppo grande; mantieni ciascuno sotto i 50 MB.`},"session.attachmentLimit":{message:`Puoi allegare al massimo {count} file.`,description:`Puoi allegare fino a {count} file.`},"session.attachmentUploadError":{message:`Errore nel caricamento dell'allegato.`,description:`Impossibile caricare l'allegato.`},"notice.slashUnavailable":{message:`/{command} è un comando interattivo e non può essere eseguito in una sessione remota.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} non è disponibile per Codex in una sessione remota.`,description:`Notice shown when a Codex slash command isn't supported remotely`},"notify.enable":{message:`Attiva le notifiche`,description:`Tooltip on the notification bell when notifications are off`},"notify.disable":{message:`Disattiva le notifiche`,description:`Tooltip on the notification bell when notifications are on`},"notify.enabled":{message:`Notifiche attivate. Ti avviseremo quando una sessione richiede un'approvazione.`,description:`Toast after enabling notifications`},"notify.disabled":{message:`Notifiche disattivate.`,description:`Toast after disabling notifications`},"notify.denied":{message:`Le notifiche sono bloccate. Consentile nelle impostazioni del browser per ricevere gli avvisi di approvazione.`,description:`Toast when notification permission is denied`},"notify.unsupported":{message:`Le notifiche non sono supportate su questo dispositivo.`,description:`Toast when notifications are unsupported`},"notify.failed":{message:`Impossibile aggiornare le impostazioni delle notifiche.`,description:`Toast when enabling or disabling notifications errors`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Enheter`,description:`Titel för enhetslistan i Coding Bridge`},"nodeList.refresh":{message:`Uppdatera`,description:`Uppdatera enhetslistan`},"nodeList.pair":{message:`Koppla enhet`,description:`Öppna dialogrutan för koppling`},"nodeList.empty":{message:`Inga enheter har kopplats.`,description:`Meddelande när enhetslistan är tom`},"nodeList.pairFirst":{message:`Koppla första enheten`,description:`Kopplingsknapp i tomt tillstånd`},"nodeList.rename":{message:`Byt namn`,description:`Rename a device`},"nodeList.renamePrompt":{message:`Ge den här enheten ett namn. Namnet synkroniseras till alla dina inloggade enheter.`,description:`Rename device input prompt`},"nodeList.renameEmpty":{message:`Namnet får inte vara tomt.`,description:`Rename device empty-name validation`},"nodeList.renameTooLong":{message:`Namnet får vara högst {max} tecken.`,description:`Rename device too-long validation`},"nodeList.renameSuccess":{message:`Enheten har bytt namn.`,description:`Rename device success`},"nodeList.renameFailed":{message:`Det gick inte att byta namn på enheten.`,description:`Rename device failure`},"nodeList.remove":{message:`Ta bort`,description:`Ta bort enhet`},"nodeList.removeConfirm":{message:`Vill du ta bort enheten “{name}”? Du måste koppla om efter borttagning.`,description:`Bekräftelse för att ta bort enhet`},"nodeList.removeSuccess":{message:`Enheten har tagits bort.`,description:`Meddelande vid lyckad borttagning av enhet`},"nodeList.removeFailed":{message:`Det gick inte att ta bort enheten.`,description:`Meddelande vid misslyckad borttagning av enhet`},"status.online":{message:`Online`,description:`Enhetens online-status`},"status.offline":{message:`Offline`,description:`Enhetens offline-status`},"connection.disconnected":{message:`Frånkopplad`,description:`Reläanslutningen har kopplats bort`},"connection.connecting":{message:`Ansluter…`,description:`Reläet håller på att ansluta`},"connection.connected":{message:`Ansluten`,description:`Reläet är anslutet`},"connection.error":{message:`Anslutningsfel`,description:`Fel vid anslutning av reläet`},"pair.title":{message:`Koppla enhet`,description:`Titel för dialogrutan för koppling`},"pair.intro":{message:`Kör Coding Bridge-agenten på din dator och ange kopplingskoden här för att styra den via webben.`,description:`Introduktion till dialogrutan för koppling`},"pair.step1":{message:`Installera agenten (kräver Python 3.10+):`,description:`Kopplingssteg 1`},"pair.step2":{message:`Starta och följ instruktionerna:`,description:`Kopplingssteg 2`},"pair.step3":{message:`Ange kopplingskoden som visas nedan.`,description:`Kopplingssteg 3`},"pair.codePlaceholder":{message:`Kopplingskod`,description:`Platshållare för inmatningsfält för kopplingskod`},"pair.claim":{message:`Koppla enhet`,description:`Bekräftelseknapp för koppling`},"pair.success":{message:`Enheten “{name}” har kopplats.`,description:`Meddelande vid lyckad koppling`},"pair.invalidCode":{message:`Kopplingskoden är ogiltig eller har gått ut.`,description:`Fel vid ogiltig kopplingskod`},"pair.usedCode":{message:`Denna kopplingskod har redan använts.`,description:`Fel vid användning av redan använd kopplingskod`},"pair.failed":{message:`Det gick inte att koppla enhet.`,description:`Allmänt fel vid koppling`},"permission.title":{message:`Behörighet krävs`,description:`Rubrik för behörighetsdialogrutan`},"permission.subtitle":{message:`Proxyförfrågan använder ett verktyg, fortsätt efter godkännande.`,description:`Underrubrik för behörighetsdialogrutan`},"permission.deny":{message:`Neka`,description:`Neka verktyget behörighet`},"permission.allow":{message:`Tillåt`,description:`Tillåt verktyget att få behörighet`},"session.noDevice":{message:`Välj en enhet för att börja koda.`,description:`Platshållartips när ingen enhet har valts`},"session.newSession":{message:`Ny session`,description:`Börja en ny session`},"session.deviceOffline":{message:`Enheten är offline. Vänligen starta Coding Bridge-agenten på enheten innan du fortsätter.`,description:`Varning för offline-enhet`},"session.nodeId":{message:`Enhets-ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Sessions-ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Spårnings-ID`,description:`Diagnostic label for the trace id`},"session.startHint":{message:`Skicka ett meddelande för att starta sessionen på denna enhet.`,description:`Tomt meddelande för att ge en hint`},"session.cwdPlaceholder":{message:`Arbetskatalog (valfritt)`,description:`Platshållare för inmatningsfält för arbetskatalog`},"session.modelPlaceholder":{message:`Modell (valfritt)`,description:`Platshållare för inmatningsfält för modell`},"session.promptPlaceholder":{message:`Skicka meddelande till agenten…`,description:`Platshållare för inmatningsfält för prompt`},"session.send":{message:`Skicka`,description:`Knapp för att skicka meddelande`},"session.voiceInput":{message:`Röstinmatning`,description:`Börja omvandla röst till text`},"session.voiceStop":{message:`Stoppa röstinmatning`,description:`Stoppa rösttranskribering`},"session.voiceListening":{message:`Lyssnar, stoppa för att redigera text.`,description:`Indikator för att röstigenkänning pågår`},"session.voiceStopping":{message:`Avslutar rösttranskribering…`,description:`Väntar på att röstigenkänning ska ge slutresultatet`},"session.voicePermissionDenied":{message:`Mikrofonbehörighet nekad, vänligen tillåt det i system- eller webbläsarinställningarna och försök igen.`,description:`Mikrofonbehörighet nekad`},"session.voiceMicrophoneUnavailable":{message:`Mikrofonen hittades inte eller kan inte användas.`,description:`Mikrofonen är inte tillgänglig`},"session.voiceNoSpeech":{message:`Ingen röst upptäcktes, försök igen.`,description:`Röstigenkänning upptäckte inte något tal`},"session.voiceNetworkError":{message:`Röstigenkänningstjänsten är tillfälligt otillgänglig, kontrollera nätverket och försök igen.`,description:`Nätverksfel för röstigenkänning`},"session.voiceError":{message:`Röstinmatning misslyckades, försök igen.`,description:`Allmänt fel för röstigenkänning`},"session.retry":{message:`Försök igen`,description:`Re-run the last prompt after a failure`},"session.editPrompt":{message:`Redigera`,description:`Redigera en skickad prompt och skicka den som en ny omgång`},"session.editingBanner":{message:`Redigerar — att skicka kommer att spola tillbaka konversationen hit`,description:`Banner som visas medan en tidigare prompt redigeras`},"session.editRestoreCode":{message:`Återställ kod samtidigt`,description:`Checkbox för att också återställa filändringar vid redigering`},"session.editCancel":{message:`Avbryt`,description:`Avbryt redigering av en tidigare prompt`},"session.editSubmit":{message:`Uppdatera`,description:`Skicka en redigerad prompt (spola tillbaka och kör igen)`},"session.enterHint":{message:`Tryck på Enter för att skicka, Shift+Enter för att gå till nästa rad.`,description:`Tangentbordsledtråd för inmatningsfält`},"transcript.turnFailed":{message:`Misslyckades`,description:`Märkning för misslyckat resultat av omgång`},"transcript.turnDone":{message:`Avslutad`,description:`Märkning för avslutat resultat av omgång`},"transcript.todoProgress":{message:`Avslutad {done}/{total}`,description:`Framsteg för att göra-lista`},"transcript.todoOverflow":{message:`…ytterligare {count} objekt visas inte`,description:`Hint för att göra-lista som är för lång`},"transcript.todoCompleted":{message:`Avslutad`,description:`Att göra-lista: Avslutad status (tillgänglighetsuppläsning)`},"transcript.todoInProgress":{message:`Pågående`,description:`Att göra-lista: Pågående status (tillgänglighetsuppläsning)`},"transcript.todoPending":{message:`Att göra`,description:`Att göra-lista: Att göra status (tillgänglighetsuppläsning)`},"history.button":{message:`Historik`,description:`Open the conversation history drawer`},"history.title":{message:`Konversationshistorik`,description:`History drawer title`},"history.intro":{message:`Tidigare Claude Code-, Codex- och GitHub Copilot-sessioner på den här enheten.`,description:`History drawer intro`},"history.refresh":{message:`Uppdatera`,description:`Reload the history list`},"history.loading":{message:`Laddar historik…`,description:`History loading message`},"history.empty":{message:`Ingen historik hittades på den här enheten.`,description:`Empty history message`},"history.filterAll":{message:`Alla`,description:`Rensa källfilter, visa alla sessioner`},"history.filterEmpty":{message:`Det finns inga sessioner under den aktuella filtreringen.`,description:`En meddelande som visar att resultaten är tomma efter filtrering.`},"history.messages":{message:`{count} meddelanden`,description:`History item message count`},"history.readonly":{message:`Den här Codex-konversationen är skrivskyddad och kan inte fortsättas. Starta en ny session för att fortsätta koda.`,description:`Read-only replay notice`},"history.running":{message:`Körs`,description:`Marks a history conversation that is currently live on the device`},"history.unread":{message:`Oläst`,description:`Markering för historiska sessioner som har körts men som användaren ännu inte har sett`},"history.resumeHint":{message:`Att skicka ett meddelande återupptar konversationen på enheten.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude-historik`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex-historik (skrivskyddad)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Behörighetsläge`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Standard (fråga varje gång)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Acceptera ändringar automatiskt`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Planeringsläge (skrivskyddat)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Kringgå alla behörigheter`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Etikett för agentbackend-väljare`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(inte installerat)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} är inte installerat på den här enheten.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Resonemangsnivå`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Standard`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Låg`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medel`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Hög`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maximalt`,description:`Resonansinsats: maximalt (endast Claude)`},"directory.title":{message:`Välj arbetskatalog`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Använd den här katalogen`,description:`Button: select the current directory`},"directory.up":{message:`Överordnad katalog`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Uppdatera`,description:`Button: reload the current directory`},"directory.pathPlaceholder":{message:`Skriv in sökväg (t.ex. D:\\) och tryck på Enter`,description:`Platshållare för den redigerbara katalogvägsinmatningen`},"directory.go":{message:`Gå`,description:`Knapp: navigera till den angivna katalogvägen`},"directory.loading":{message:`Läser in…`,description:`Directory listing loading hint`},"directory.empty":{message:`Den här katalogen är tom.`,description:`Empty directory hint`},"directory.truncated":{message:`Visar de första 1000 posterna.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Bifoga bild`,description:`Attach image button title`},"session.removeImage":{message:`Ta bort bild`,description:`Remove attached image button title`},"session.imageAlt":{message:`Bifogad bild`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Bilden är för stor; håll varje under 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Du kan bifoga upp till {count} bilder.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Standardmodell`,description:`Standardmodell`},"session.cwdDefault":{message:`Standardkatalog`,description:`Standardkatalog`},"session.settings":{message:`Samtalsinställningar`,description:`Inställningar för sessionen`},"session.settingsLocked":{message:`Dessa inställningar är låsta`,description:`Inställningarna är låsta för denna session`},"session.attachFile":{message:`Lägg till fil`,description:`Bifoga fil`},"session.attachmentImageAlt":{message:`Bifogad bild`,description:`Bifogad bild`},"session.removeAttachment":{message:`Ta bort bilaga`,description:`Ta bort bilaga`},"session.uploadingAttachment":{message:`Laddar upp bilaga…`,description:`Laddar upp bilagor…`},"session.attachmentTooLarge":{message:`Filen är för stor, håll varje fil under 50 MB.`,description:`Filen är för stor; håll varje under 50 MB.`},"session.attachmentLimit":{message:`Maximalt {count} filer kan bifogas.`,description:`Du kan bifoga upp till {count} filer.`},"session.attachmentUploadError":{message:`Misslyckades med att ladda upp bilaga.`,description:`Misslyckades med att ladda upp bilaga.`},"notice.slashUnavailable":{message:`/{command} är ett interaktivt kommando och kan inte köras i en fjärrsession.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} är inte tillgängligt för Codex i en fjärrsession.`,description:`Notice shown when a Codex slash command isn't supported remotely`},"notify.enable":{message:`Aktivera aviseringar`,description:`Tooltip on the notification bell when notifications are off`},"notify.disable":{message:`Inaktivera aviseringar`,description:`Tooltip on the notification bell when notifications are on`},"notify.enabled":{message:`Aviseringar aktiverade. Vi meddelar dig när en session behöver godkännande.`,description:`Toast after enabling notifications`},"notify.disabled":{message:`Aviseringar inaktiverade.`,description:`Toast after disabling notifications`},"notify.denied":{message:`Aviseringar är blockerade. Tillåt dem i webbläsarinställningarna för att få godkännandeaviseringar.`,description:`Toast when notification permission is denied`},"notify.unsupported":{message:`Aviseringar stöds inte på den här enheten.`,description:`Toast when notifications are unsupported`},"notify.failed":{message:`Det gick inte att uppdatera aviseringsinställningarna.`,description:`Toast when enabling or disabling notifications errors`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Laitteet`,description:`Coding Bridge -laiteluettelon otsikko`},"nodeList.refresh":{message:`Päivitä`,description:`Päivitä laiteluettelo`},"nodeList.pair":{message:`Yhdistä laite`,description:`Avaa pariliitosvalintaikkuna`},"nodeList.empty":{message:`Ei yhdistettyjä laitteita vielä.`,description:`Tyhjän laiteluettelon viesti`},"nodeList.pairFirst":{message:`Yhdistä ensimmäinen laitteesi`,description:`Tyhjän tilan pariliitospainike`},"nodeList.rename":{message:`Nimeä uudelleen`,description:`Rename a device`},"nodeList.renamePrompt":{message:`Anna tälle laitteelle nimi. Nimi synkronoidaan kaikkiin laitteisiin, joilla olet kirjautuneena.`,description:`Rename device input prompt`},"nodeList.renameEmpty":{message:`Nimi ei saa olla tyhjä.`,description:`Rename device empty-name validation`},"nodeList.renameTooLong":{message:`Nimen enimmäispituus on {max} merkkiä.`,description:`Rename device too-long validation`},"nodeList.renameSuccess":{message:`Laite nimettiin uudelleen.`,description:`Rename device success`},"nodeList.renameFailed":{message:`Laitteen uudelleennimeäminen epäonnistui.`,description:`Rename device failure`},"nodeList.remove":{message:`Poista`,description:`Poista laite`},"nodeList.removeConfirm":{message:`Poistetaanko laite “{name}”? Se täytyy yhdistää uudelleen.`,description:`Laitteen poistamisen vahvistus`},"nodeList.removeSuccess":{message:`Laite poistettu.`,description:`Laitteen poiston ilmoitus`},"nodeList.removeFailed":{message:`Laitteen poistaminen epäonnistui.`,description:`Laitteen poistovirhe-ilmoitus`},"status.online":{message:`Verkossa`,description:`Laitteen verkossa -tila`},"status.offline":{message:`Poissa käytöstä`,description:`Laitteen poissa käytöstä -tila`},"connection.disconnected":{message:`Yhteys katkaistu`,description:`Releyhteys katkaistu`},"connection.connecting":{message:`Yhdistetään…`,description:`Releyhteys muodostuu`},"connection.connected":{message:`Yhdistetty`,description:`Releyhteys muodostettu`},"connection.error":{message:`Yhteysvirhe`,description:`Releyhteyden virhe`},"pair.title":{message:`Yhdistä laite`,description:`Pariliitosvalintaikkunan otsikko`},"pair.intro":{message:`Käynnistä Coding Bridge -agentti tietokoneellasi ja syötä sen pariliitoskoodi tähän hallitaksesi sitä verkosta.`,description:`Pariliitosvalintaikkunan johdanto`},"pair.step1":{message:`Asenna agentti (vaatii Python 3.10+):`,description:`Pariliitosvaihe 1`},"pair.step2":{message:`Käynnistä se ja seuraa ohjeita:`,description:`Pariliitosvaihe 2`},"pair.step3":{message:`Syötä alla näkyvä pariliitoskoodi.`,description:`Pariliitosvaihe 3`},"pair.codePlaceholder":{message:`Pariliitoskoodi`,description:`Pariliitoskoodin syöttökentän paikkamerkki`},"pair.claim":{message:`Yhdistä laite`,description:`Pariliitoksen vahvistuspainike`},"pair.success":{message:`Laite “{name}” yhdistetty.`,description:`Pariliitoksen onnistumisen ilmoitus`},"pair.invalidCode":{message:`Virheellinen tai vanhentunut pariliitoskoodi.`,description:`Virheellisen koodin virhe`},"pair.usedCode":{message:`Tämä pariliitoskoodi on jo käytetty.`,description:`Käytetyn koodin virhe`},"pair.failed":{message:`Laitteen yhdistäminen epäonnistui.`,description:`Pariliitoksen yleinen virhe`},"permission.title":{message:`Lupa vaaditaan`,description:`Lupavalintaikkunan otsikko`},"permission.subtitle":{message:`Agentti haluaa käyttää työkalua. Hyväksy jatkaaksesi.`,description:`Lupavalintaikkunan alaotsikko`},"permission.deny":{message:`Kiellä`,description:`Kiellä työkalun lupa`},"permission.allow":{message:`Salli`,description:`Salli työkalun lupa`},"session.noDevice":{message:`Valitse laite aloittaaksesi koodauksen.`,description:`Ei laitetta valittuna -paikkamerkki`},"session.newSession":{message:`Uusi istunto`,description:`Aloita uusi istunto`},"session.deviceOffline":{message:`Tämä laite on offline-tilassa. Käynnistä Coding Bridge -agentti sillä jatkaaksesi.`,description:`Laitteen offline-varoitus`},"session.nodeId":{message:`Laitetunnus`,description:`Laitteen ID:n diagnostiikkaetiketti`},"session.sessionId":{message:`Istuntotunnus`,description:`Istunnon ID:n diagnostiikkaetiketti`},"session.traceId":{message:`Jäljitystunnus`,description:`Jäljityksen ID:n diagnostiikkaetiketti`},"session.startHint":{message:`Lähetä viesti aloittaaksesi istunnon tällä laitteella.`,description:`Tyhjän transkription vihje`},"session.cwdPlaceholder":{message:`Työhakemisto (valinnainen)`,description:`Työhakemiston syöttökentän paikkamerkki`},"session.modelPlaceholder":{message:`Malli (valinnainen)`,description:`Mallin syöttökentän paikkamerkki`},"session.promptPlaceholder":{message:`Lähetä viesti agentille…`,description:`Kehotteen syöttökentän paikkamerkki`},"session.send":{message:`Lähetä`,description:`Kehotteen lähetyspainike`},"session.voiceInput":{message:`Äänisyöttö`,description:`Aloita äänen muuntaminen tekstiksi`},"session.voiceStop":{message:`Pysäytä äänisyöttö`,description:`Pysäytä äänen muuntaminen tekstiksi`},"session.voiceListening":{message:`Kuunnellaan, voit muokata tekstiä pysäyttämisen jälkeen.`,description:`Äänentunnistuksen käynnissä olevan syötteen ilmoitus`},"session.voiceStopping":{message:`Äänentunnistuksen viimeistely…`,description:`Odotetaan äänentunnistuksen lopullista tulosta`},"session.voicePermissionDenied":{message:`Mikrofonin käyttöoikeus on evätty, salli se järjestelmän tai selaimen asetuksista ja yritä uudelleen.`,description:`Mikrofonin käyttöoikeus on evätty.`},"session.voiceMicrophoneUnavailable":{message:`Mikrofonia ei löytynyt tai sitä ei voi käyttää.`,description:`Mikrofoni ei ole käytettävissä`},"session.voiceNoSpeech":{message:`Ääntä ei havaittu, yritä uudelleen.`,description:`Äänentunnistus ei havainnut puhetta`},"session.voiceNetworkError":{message:`Äänentunnistuspalvelu ei ole tällä hetkellä käytettävissä, tarkista verkko ja yritä uudelleen.`,description:`Äänentunnistuksen verkkovirhe`},"session.voiceError":{message:`Äänisyöttö epäonnistui, yritä uudelleen.`,description:`Äänentunnistuksen yleinen virhe`},"session.retry":{message:`Yritä uudelleen`,description:`Suorita viimeisin kehote uudelleen epäonnistumisen jälkeen`},"session.editPrompt":{message:`Muokkaa`,description:`Muokkaa lähetettyä kehottetta ja lähetä se uutena vuorona`},"session.editingBanner":{message:`Muokkaus — lähettäminen kelaa keskustelun tähän kohtaan.`,description:`Viesti, joka näkyy menneen kehotteen muokkauksen aikana`},"session.editRestoreCode":{message:`Palauta myös koodi`,description:`Valintaruutu tiedostomuutosten palauttamiseksi muokkauksen yhteydessä`},"session.editCancel":{message:`Peruuta`,description:`Peruuta menneen kehotteen muokkaus`},"session.editSubmit":{message:`Päivitä`,description:`Lähetä muokattu kehote (kelaa takaisin ja suorita uudelleen)`},"session.enterHint":{message:`Enter lähettää, Shift+Enter vaihtaa riviä.`,description:`Syöttökentän näppäimistövihje`},"transcript.turnFailed":{message:`Vuoro epäonnistui`,description:`Vuoron tulos: epäonnistui -etiketti`},"transcript.turnDone":{message:`Valmis`,description:`Vuoron tulos: valmis -etiketti`},"transcript.todoProgress":{message:`Valmis {done}/{total}`,description:`Tehtävälistan edistyminen`},"transcript.todoOverflow":{message:`… vielä {count} kohdetta ei näytetä`,description:`Tehtävälistan ylitysviesti`},"transcript.todoCompleted":{message:`Valmis`,description:`Tehtävälista: valmis tila (esteetön lukeminen)`},"transcript.todoInProgress":{message:`Käynnissä`,description:`Tehtävälista: käynnissä oleva tila (esteetön lukeminen)`},"transcript.todoPending":{message:`Odottaa`,description:`Tehtävälista: odottava tila (esteetön lukeminen)`},"history.button":{message:`Historia`,description:`Avaa keskusteluhistoria-alavetovalikko`},"history.title":{message:`Keskusteluhistoria`,description:`Historiavalikon otsikko`},"history.intro":{message:`Aiemmat Claude Code-, Codex- ja GitHub Copilot -istunnot tällä laitteella.`,description:`Historiavalikon johdanto`},"history.refresh":{message:`Päivitä`,description:`Lataa historialistaus uudelleen`},"history.loading":{message:`Ladataan historiaa…`,description:`Historian latausviesti`},"history.empty":{message:`Tältä laitteelta ei löytynyt historiaa.`,description:`Tyhjä historia -viesti`},"history.filterAll":{message:`Kaikki`,description:`Poistaa suodattimen ja näyttää kaikki keskustelut.`},"history.filterEmpty":{message:`Nykyisellä suodatuksella ei ole keskusteluja.`,description:`Ilmoitus, kun suodatuksen tulos on tyhjä.`},"history.messages":{message:`{count} viestiä`,description:`Historiaelimentin viestien lukumäärä`},"history.readonly":{message:`Tämä Codex-keskustelu on vain luettavissa, eikä sitä voi jatkaa. Aloita uusi istunto jatkaaksesi koodausta.`,description:`Vain luku -toiston ilmoitus`},"history.running":{message:`Käynnissä`,description:`Merkitsee historian keskustelun, joka on parhaillaan käynnissä laitteella`},"history.unread":{message:`Lukemattomat`,description:`Historialliset keskustelut, joita käyttäjä ei ole vielä tarkastellut`},"history.resumeHint":{message:`Viestin lähettäminen jatkaa tätä keskustelua laitteella.`,description:`Jatka-syöttökentän vihje`},"history.claudeLabel":{message:`Claude-historia`,description:`Toistettu Claude-istunto -etiketti`},"history.codexLabel":{message:`Codex-historia (vain luku)`,description:`Toistettu Codex-istunto -etiketti`},"session.permissionModeLabel":{message:`Käyttöoikeustila`,description:`Käyttöoikeustilan valitsimen etiketti`},"session.permissionModeDefault":{message:`Oletus (kysy joka kerta)`,description:`Käyttöoikeustila: kysy ennen jokaista työkalun käyttöä`},"session.permissionModeAcceptEdits":{message:`Hyväksy muokkaukset automaattisesti`,description:`Käyttöoikeustila: hyväksy tiedostomuokkaukset automaattisesti`},"session.permissionModePlan":{message:`Suunnittelutila (vain luku)`,description:`Käyttöoikeustila: vain luku -suunnittelu`},"session.permissionModeBypass":{message:`Ohita kaikki käyttöoikeudet`,description:`Käyttöoikeustila: ohita kaikki käyttöoikeuskehotteet`},"session.providerLabel":{message:`Taustajärjestelmä`,description:`Agentin taustajärjestelmän valitsimen etiketti`},"session.providerClaude":{message:`Claude Code`,description:`Taustajärjestelmävaihtoehto: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Taustajärjestelmävaihtoehto: Codex`},"session.providerUnavailable":{message:`(ei asennettu)`,description:`Liite, joka näkyy taustajärjestelmän vieressä, jonka CLI ei ole asennettu laitteeseen`},"session.providerUnavailableHint":{message:`{name} ei ole asennettu tähän laitteeseen.`,description:`Syöttökentän vihje, kun valittu taustajärjestelmä ei ole asennettu laitteeseen`},"session.effortLabel":{message:`Päättelyn taso`,description:`Päättelytason valitsimen etiketti`},"session.effortDefault":{message:`Oletus`,description:`Päättelytaso: taustajärjestelmän oletus`},"session.effortLow":{message:`Matala`,description:`Päättelytaso: matala`},"session.effortMedium":{message:`Keskitaso`,description:`Päättelytaso: keskitaso`},"session.effortHigh":{message:`Korkea`,description:`Päättelytaso: korkea`},"session.effortMax":{message:`Maksimi`,description:`Päättelytaso: maksimi (vain Claude)`},"directory.title":{message:`Valitse työhakemisto`,description:`Työhakemiston valitsimen valintaikkunan otsikko`},"directory.choose":{message:`Käytä tätä hakemistoa`,description:`Painike: valitse nykyinen hakemisto`},"directory.up":{message:`Ylähakemisto`,description:`Painike: siirry ylähakemistoon`},"directory.refresh":{message:`Päivitä`,description:`Painike: lataa nykyinen hakemisto uudelleen`},"directory.pathPlaceholder":{message:`Syötä polku (esim. D:\\) ja paina Enter`,description:`Paikkamerkki muokattavalle hakemistopolun syötteelle`},"directory.go":{message:`Siirry`,description:`Painike: siirry kirjoitettuun hakemistopolkuun`},"directory.loading":{message:`Ladataan…`,description:`Hakemistoluettelon latausvihje`},"directory.empty":{message:`Tämä hakemisto on tyhjä.`,description:`Tyhjä hakemisto -vihje`},"directory.truncated":{message:`Näytetään ensimmäiset 1000 kohdetta.`,description:`Vihje, joka näkyy kun listaus on katkaistu`},"session.attachImage":{message:`Liitä kuva`,description:`Kuvan liittämispainikkeen otsikko`},"session.removeImage":{message:`Poista kuva`,description:`Liitetyn kuvan poistopainikkeen otsikko`},"session.imageAlt":{message:`Liitetty kuva`,description:`Liitetyn kuvan pikkukuvan vaihtoehtoinen teksti`},"session.imageTooLarge":{message:`Kuva on liian suuri; pidä jokainen alle 12 Mt.`,description:`Varoitus, kun kuva ylittää kokorajan`},"session.imageLimit":{message:`Voit liittää enintään {count} kuvaa.`,description:`Varoitus, kun kuvien enimmäismäärä ylittyy`},"session.modelDefault":{message:`Oletusmalli`,description:`Oletusmalli`},"session.cwdDefault":{message:`Oletushakemisto`,description:`Oletushakemisto`},"session.settings":{message:`Istuntoasetukset`,description:`Istuntoasetukset`},"session.settingsLocked":{message:`Asetukset on lukittu tässä istunnossa`,description:`Asetukset on lukittu tässä istunnossa`},"session.attachFile":{message:`Liitä tiedosto`,description:`Liitä tiedosto`},"session.attachmentImageAlt":{message:`Liitetty kuva`,description:`Liitetty kuva`},"session.removeAttachment":{message:`Poista liite`,description:`Poista liite`},"session.uploadingAttachment":{message:`Ladataan liitteitä…`,description:`Ladataan liitteitä…`},"session.attachmentTooLarge":{message:`Tiedosto on liian suuri; pidä jokainen alle 50 Mt.`,description:`Tiedosto on liian suuri; pidä jokainen alle 50 Mt.`},"session.attachmentLimit":{message:`Voit liittää enintään {count} tiedostoa.`,description:`Voit liittää enintään {count} tiedostoa.`},"session.attachmentUploadError":{message:`Liitteen lataaminen epäonnistui.`,description:`Liitteen lataaminen epäonnistui.`},"notice.slashUnavailable":{message:`/{command} on vuorovaikutteinen komento, eikä sitä voi suorittaa etäistunnossa.`,description:`Ilmoitus, kun kauttaviiva-komento ei toimi etäistunnossa`},"notice.slashCodexUnsupported":{message:`/{command} ei ole käytettävissä Codexille etäistunnossa.`,description:`Ilmoitus, kun Codex-kauttaviiva-komento ei ole tuettu etäistunnossa`},"notify.enable":{message:`Ota ilmoitukset käyttöön`,description:`Tooltip ilmoituskellossa, kun ilmoitukset ovat pois käytöstä`},"notify.disable":{message:`Poista ilmoitukset käytöstä`,description:`Tooltip ilmoituskellossa, kun ilmoitukset ovat käytössä`},"notify.enabled":{message:`Ilmoitukset otettu käyttöön. Ilmoitamme, kun istunto tarvitsee hyväksynnän.`,description:`Ilmoitus ilmoitusten käyttöönottamisen jälkeen`},"notify.disabled":{message:`Ilmoitukset poistettu käytöstä.`,description:`Ilmoitus ilmoitusten poistamisen jälkeen`},"notify.denied":{message:`Ilmoitukset on estetty. Salli ne selaimen asetuksissa saadaksesi hyväksyntäilmoituksia.`,description:`Ilmoitus, kun ilmoituslupa on estetty`},"notify.unsupported":{message:`Ilmoituksia ei tueta tällä laitteella.`,description:`Ilmoitus, kun ilmoituksia ei tueta`},"notify.failed":{message:`Ilmoitusasetusten päivittäminen epäonnistui.`,description:`Ilmoitus, kun ilmoitusten käyttöönotto tai poistaminen epäonnistuu`}};export{e as default};
|