@acedatacloud/nexior 3.374.0 → 3.376.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -0
- package/dist/assets/{ApiCodeButton-DBIIyPcm.js → ApiCodeButton-BmGL7WLb.js} +1 -1
- package/dist/assets/{ApiCodeDialog-SgTrP35-.js → ApiCodeDialog-DFFOzY4E.js} +1 -1
- package/dist/assets/{Artifacts-Bv8c6c23.js → Artifacts-CONhfeKL.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-5upmtI3F.js → AskUserQuestionCard-CbSmm2q4.js} +1 -1
- package/dist/assets/{AudioPreview-CO5m-MPN.js → AudioPreview-Cqla7UrY.js} +1 -1
- package/dist/assets/{Auth-C_3Q01T9.js → Auth-CSxupcrQ.js} +1 -1
- package/dist/assets/{Bare-Bgcy9ZBE.js → Bare-BMRnfyRP.js} +1 -1
- package/dist/assets/{BotPlaceholder-D9exsWtJ.js → BotPlaceholder-9ABplrW2.js} +1 -1
- package/dist/assets/{BottomFooter-Cpt55XyN.js → BottomFooter-JOmx_wpS.js} +1 -1
- package/dist/assets/BrowseConnectors-2kG34O4B.css +1 -0
- package/dist/assets/BrowseConnectors-Bbr5Kj5W.js +1 -0
- package/dist/assets/{BrowserPairingDialog-BrWPFDvv.js → BrowserPairingDialog-dhQ5Puzz.js} +1 -1
- package/dist/assets/{Callback-Dxh5oYOa.js → Callback-DUnhly1g.js} +1 -1
- package/dist/assets/{CodeSnippet-BsfF8y-K.js → CodeSnippet-Bqr5hkg1.js} +1 -1
- package/dist/assets/Console-CCLTVIwJ.js +1 -0
- package/dist/assets/{Console-C2aC83jv.css → Console-CLcCfD95.css} +1 -1
- package/dist/assets/{Conversation-jOky6QFU.js → Conversation-5xpf3gWB.js} +1 -1
- package/dist/assets/Conversation-B3BubeUL.css +1 -0
- package/dist/assets/Conversation-Dv7mYo6q.js +2 -0
- package/dist/assets/{CopyToClipboard-CaPuzTeQ.js → CopyToClipboard-F9OE3T2Z.js} +1 -1
- package/dist/assets/Detail-C40gkUeM.js +2 -0
- package/dist/assets/{Detail-_ZtOzPZR.css → Detail-DXWrrQAk.css} +1 -1
- package/dist/assets/Extra-Dm4GnNVY.css +1 -0
- package/dist/assets/Extra-bcivaanH.js +1 -0
- package/dist/assets/{FilePreview-D9sljXpn.js → FilePreview-B1dewPBF.js} +1 -1
- package/dist/assets/{Hailuo-Dqi6oENw.js → Hailuo-CHA8L9rx.js} +1 -1
- package/dist/assets/{History-BnMHhtb9.js → History-Cs6Gyrv4.js} +1 -1
- package/dist/assets/{ImagePreview-DBaF-RWM.js → ImagePreview--p_JZ0xr.js} +1 -1
- package/dist/assets/{ImageWrapper-B7c3P7Rp.js → ImageWrapper-DHJSHW-H.js} +1 -1
- package/dist/assets/{Index-Dq-UvUyY.js → Index-0SA2fnkc.js} +1 -1
- package/dist/assets/Index-4lObNruP.js +1 -0
- package/dist/assets/Index-ACRFpDE2.js +1 -0
- package/dist/assets/{Index-h8LHd7to.js → Index-B4m5BDze.js} +1 -1
- package/dist/assets/Index-B9rU5-sF.js +1 -0
- package/dist/assets/Index-BBfszKPc.js +1 -0
- package/dist/assets/{Index-DHNhF-7Z.js → Index-BHCC0-6P.js} +1 -1
- package/dist/assets/{Index-BfvWsCCs.js → Index-BM89aNyq.js} +2 -2
- package/dist/assets/Index-BNApIffG.js +1 -0
- package/dist/assets/{Index-BRcf8_aI.js → Index-B_NpNmaH.js} +1 -1
- package/dist/assets/{Index-DNEKHbbD2.js → Index-BqAGC5Rj2.js} +1 -1
- package/dist/assets/Index-CHzAC_FS.js +1 -0
- package/dist/assets/Index-CJRtJHKm.js +1 -0
- package/dist/assets/Index-CKiBThH1.js +2 -0
- package/dist/assets/Index-CajK07ZC.js +1 -0
- package/dist/assets/Index-ChReag5b.js +1 -0
- package/dist/assets/Index-CiETYmpj.js +1 -0
- package/dist/assets/Index-CpLf8cLL.js +1 -0
- package/dist/assets/{Index-N-brMCrR.js → Index-CxDv5j0w.js} +1 -1
- package/dist/assets/{Index-Cioeau9t.js → Index-CxvqBAIQ.js} +1 -1
- package/dist/assets/Index-D1dx9abl.js +1 -0
- package/dist/assets/Index-D2jQPgC6.js +1 -0
- package/dist/assets/Index-D9qjFUAO.js +1 -0
- package/dist/assets/{Index-C-MhLOpV.js → Index-DEPcRTj4.js} +1 -1
- package/dist/assets/Index-DGIs2lN_.js +1 -0
- package/dist/assets/Index-DIITaGzK.js +1 -0
- package/dist/assets/Index-DR3wdmmM.js +1 -0
- package/dist/assets/{Index-DyHHY0TK.js → Index-D_diE2-X.js} +1 -1
- package/dist/assets/Index-DcU3474Y.js +1 -0
- package/dist/assets/Index-DkR1Whga.js +1 -0
- package/dist/assets/Index-Dl6O5qBb.css +1 -0
- package/dist/assets/Index-DrKWKgoQ.js +1 -0
- package/dist/assets/Index-GFhxJzuI.css +1 -0
- package/dist/assets/{Index-CgZQ_vHY.js → Index-SQO8Q4eX.js} +2 -2
- package/dist/assets/Index-ahx_aJTN.js +1 -0
- package/dist/assets/Index-iniX1vgd.js +1 -0
- package/dist/assets/Index-lvAfudXC.js +1 -0
- package/dist/assets/Index-zdQqX0_y.js +1 -0
- package/dist/assets/{Invitees-C7Z_tbfl.js → Invitees-ynGrdfse.js} +1 -1
- package/dist/assets/List-Bmx7g-kU.js +1 -0
- package/dist/assets/{List-sKWhZB_b.js → List-D6muqeO7.js} +1 -1
- package/dist/assets/List-DKtx8rIG.css +1 -0
- package/dist/assets/List-D_Hcf35u.js +1 -0
- package/dist/assets/{LocalTools-CURjPTl3.js → LocalTools-BOZRitzG.js} +3 -3
- package/dist/assets/{LocalTools-Co4IuNQp.js → LocalTools-Bn3Q4FKI.js} +1 -1
- package/dist/assets/{Logo-CcnyAHG2.js → Logo-xrycBjKc.js} +1 -1
- package/dist/assets/{Main-Bh0TsiI3.js → Main-CErdFoR6.js} +1 -1
- package/dist/assets/Message-1lJvifod.js +3 -0
- package/dist/assets/{Message-DziQP5Mk.css → Message-CoMyd3uV.css} +1 -1
- package/dist/assets/{Model-BY0CeF_w.js → Model-CtUtUziH.js} +1 -1
- package/dist/assets/Navigator-CmvhccdQ.js +8 -0
- package/dist/assets/Navigator-DBwLtsjs.css +1 -0
- package/dist/assets/{NotFound-DeOf4Lmk.js → NotFound-CUAMEZGA.js} +1 -1
- package/dist/assets/{PageHeader-CoIHTlzp.js → PageHeader-vbkz8Axk.js} +1 -1
- package/dist/assets/Pay-zeZjx-na.js +1 -0
- package/dist/assets/{Player-WwC32zK4.js → Player-D3EJ-1Bv.js} +1 -1
- package/dist/assets/{Poivelle-w3LUq8sQ.js → Poivelle-BrRp4eHO.js} +1 -1
- package/dist/assets/{RealtimeCall-DEptKr-y.js → RealtimeCall-A9YKj5cD.js} +1 -1
- package/dist/assets/{ReportButton-DqBK7S8_.js → ReportButton-BwV2O0dI.js} +1 -1
- package/dist/assets/{ReportDialog-BcyM6Mys.js → ReportDialog-C6qsSbTB.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-D9JSjV3-.js → ScenarioPaymentMode-CWJ4pSfI.js} +1 -1
- package/dist/assets/{ScheduledTasks-CQCV_-0Y.css → ScheduledTasks-DjCjjDTk.css} +1 -1
- package/dist/assets/{ScheduledTasks-DlpEvJc3.js → ScheduledTasks-__703AAY.js} +2 -2
- package/dist/assets/{ServicePricingSummary-C1I-y6dH.js → ServicePricingSummary-DWEWD8YN.js} +1 -1
- package/dist/assets/{ShowcaseGrid-6Ma1uGZt.js → ShowcaseGrid-Bv0Uxdk-.js} +1 -1
- package/dist/assets/{ShowcaseResultTabs-rMhxrzq3.js → ShowcaseResultTabs-B3Ya90Fx.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-DmzZ-uJQ.js → SolanaWalletPickerDialog-BCV8GXI4.js} +1 -1
- package/dist/assets/Status-CZS0I9Kr.js +1 -0
- package/dist/assets/Subscribe-DQV3Lduv.js +1 -0
- package/dist/assets/{TabSwitcher-Jf2B0-vC.js → TabSwitcher-CbU3KULj.js} +1 -1
- package/dist/assets/Tts-CryhqV46.js +1 -0
- package/dist/assets/{VideoPlayer-CC3Fzeqq.js → VideoPlayer-DO6Ho0ys.js} +1 -1
- package/dist/assets/{VideoPreview-gtqNXvtJ.js → VideoPreview-BV2-jKo_.js} +1 -1
- package/dist/assets/WriteSkillDialog-CUXFb2JE.js +1 -0
- package/dist/assets/{airwallexCheckout-CdX6OLbg.js → airwallexCheckout-Y-I31LK-.js} +1 -1
- package/dist/assets/arrow-down-Jv1nmS0w.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-Bm2Z5o2d.js → arrow-down-wide-narrow-C5yHg1rj.js} +1 -1
- package/dist/assets/arrow-left-CVha_e4b.js +1 -0
- package/dist/assets/arrow-right-BeWjPFCG.js +1 -0
- package/dist/assets/arrow-up-Fr_MhjJ1.js +1 -0
- package/dist/assets/authorizeFlow-CbnZNWC8.js +1 -0
- package/dist/assets/{avatar-B1N5e5xG.js → avatar-DNc98gLA.js} +1 -1
- package/dist/assets/{basic-7j1i_FPI.js → basic-BkCL7NJm.js} +1 -1
- package/dist/assets/{book-open-CnBkGve5.js → book-open-BIk4nCjc.js} +1 -1
- package/dist/assets/{box-C0GiZ7-u.js → box-Cfp55_kE.js} +1 -1
- package/dist/assets/{boxes-2cg2oc78.js → boxes-Zv0VU10h.js} +1 -1
- package/dist/assets/{brain-De0zKChZ.js → brain-BQ_CxOGt.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-DXPCYBnP.js → chart-no-axes-combined-Ct33HAkl.js} +1 -1
- package/dist/assets/chat-5TeQeXg6.js +1 -0
- package/dist/assets/chat-AWH1Eq66.js +1 -0
- package/dist/assets/chat-BEbedEUX.js +1 -0
- package/dist/assets/chat-BKEDECw4.js +1 -0
- package/dist/assets/chat-CKgKfR3G.js +1 -0
- package/dist/assets/chat-CqOSpk1j.js +1 -0
- package/dist/assets/chat-D9Ro4GaD.js +1 -0
- package/dist/assets/chat-DIFZYTnO.js +1 -0
- package/dist/assets/chat-DYjIMAVw.js +1 -0
- package/dist/assets/chat-DYmT0Yvc.js +1 -0
- package/dist/assets/chat-Dd6tIvLp.js +1 -0
- package/dist/assets/chat-DjkaNaEt.js +1 -0
- package/dist/assets/chat-ObhnlF43.js +1 -0
- package/dist/assets/check-CeT0V340.js +1 -0
- package/dist/assets/chevron-down-DZkQ0KV3.js +1 -0
- package/dist/assets/chevron-right-CW7MOzUw.js +1 -0
- package/dist/assets/{circle-alert-FynFeKnI.js → circle-alert-BdsN2sA4.js} +1 -1
- package/dist/assets/circle-check-BoXMGozm.js +1 -0
- package/dist/assets/{circle-question-mark-C8xvGTGb.js → circle-question-mark-Dv_3l2fY.js} +1 -1
- package/dist/assets/{clipboard-list-841pTGDa.js → clipboard-list-Cg85aSkn.js} +1 -1
- package/dist/assets/clock-CeXzuE-o.js +1 -0
- package/dist/assets/code-BHnNnq9m.js +1 -0
- package/dist/assets/codingBridge-BWqyDAGr.js +2 -0
- package/dist/assets/codingBridgeNotify-Dsb473Iy.js +2 -0
- package/dist/assets/{coins-DA-dIOC6.js → coins-BMixeCnE.js} +1 -1
- package/dist/assets/{collapse-B_bQM9KN.js → collapse-C8Xc1BYU.js} +1 -1
- package/dist/assets/{common-BT_bYPRo.js → common-BRlXUNLP.js} +1 -1
- package/dist/assets/{common-CzXqxaWK.js → common-B_M3LvGi.js} +1 -1
- package/dist/assets/{common-DlAUvFOw.js → common-C2o8NoAy.js} +1 -1
- package/dist/assets/{common-B8ysR0eN.js → common-C7rflxoL.js} +1 -1
- package/dist/assets/{common-D3S-Fe9q.js → common-CPTNrFOS.js} +1 -1
- package/dist/assets/{common-btt1TfoQ.js → common-CqOkQeeX.js} +1 -1
- package/dist/assets/{common-BT1akxdE.js → common-CtJf9Xwg.js} +1 -1
- package/dist/assets/{common-CQnPjFGi.js → common-DgIwz66M.js} +1 -1
- package/dist/assets/{common-BjZ3lBDW.js → common-DxAXLCCZ.js} +1 -1
- package/dist/assets/{common-BbMy7XrF.js → common-IucWu3x6.js} +1 -1
- package/dist/assets/{common-8wxTe0Dv.js → common-LWAeT3Rn.js} +1 -1
- package/dist/assets/{common-ecYSU2wN.js → common-PEbspY5C.js} +1 -1
- package/dist/assets/{connection-BFgYncYa.js → connection-B1QqETPI.js} +1 -1
- package/dist/assets/{connection-B9hGqjyx.js → connection-BEl-T9I6.js} +1 -1
- package/dist/assets/{connection-CUt6dA4m.js → connection-CECygDsS.js} +1 -1
- package/dist/assets/{connection-CrKDhQ8c.js → connection-CN5jKH-G.js} +1 -1
- package/dist/assets/{connection-BNq1ICE4.js → connection-CyG1JF_E.js} +1 -1
- package/dist/assets/{connection-BjS7a4Ru.js → connection-DD8jE_VX.js} +1 -1
- package/dist/assets/{connection-D6EBupMl.js → connection-DHLh6vVt.js} +1 -1
- package/dist/assets/{connection-B_IB7amI.js → connection-DLjiqFnR.js} +1 -1
- package/dist/assets/{connection-p1SYs1ei.js → connection-DqS-96bn.js} +1 -1
- package/dist/assets/{connection-R_-qUSn6.js → connection-Du9_P8mP.js} +1 -1
- package/dist/assets/{connection-Dq4NLgFQ.js → connection-_vScj6nk.js} +1 -1
- package/dist/assets/{connection-DXRYGR6J.js → connection-keg60Oxk.js} +1 -1
- package/dist/assets/constants-B6THNcD6.js +1 -0
- package/dist/assets/{copy-BNJ4Vvq_.js → copy-CX1u73PQ.js} +1 -1
- package/dist/assets/createTaskActions-CtCifft2.js +1 -0
- package/dist/assets/{date-picker-DRc3s80w.js → date-picker-D5SuN5nl.js} +1 -1
- package/dist/assets/{digitalhuman-DsHsrai7.js → digitalhuman-CWy8UfHU.js} +1 -1
- package/dist/assets/{dollar-sign-B7sFSE65.js → dollar-sign-CMRISqbV.js} +1 -1
- package/dist/assets/{download-CAwranau.js → download-CBl-0pZg.js} +1 -1
- package/dist/assets/{drawer-CkM_NHcO.js → drawer-_SimYt6R.js} +1 -1
- package/dist/assets/{dropdown-BpefDnJp.js → dropdown-TjYtCDWj.js} +1 -1
- package/dist/assets/{dropdown-Dq3sNHZD.js → dropdown-l2T-Bfow.js} +1 -1
- package/dist/assets/{ellipsis-POyVAzgA.js → ellipsis-BAa8M-vL.js} +1 -1
- package/dist/assets/esm-B8o_Y-rl.js +2 -0
- package/dist/assets/esm-CYtW68MZ.js +1 -0
- package/dist/assets/{esm-Bf4QHayu.js → esm-KwmJxhIy.js} +2 -2
- package/dist/assets/{external-link-eI3g6xpp.js → external-link-BBS0m0TT.js} +1 -1
- package/dist/assets/{eye-Ces_jYmy.js → eye-BXRPfFCQ.js} +1 -1
- package/dist/assets/{file-COdWS7Yw.js → file-CIkQv3J1.js} +1 -1
- package/dist/assets/{file-output-Rckcbv_F.js → file-output-C4nJCfE8.js} +1 -1
- package/dist/assets/{file-text-DhO9-O7o.js → file-text-Bgcx_AzZ.js} +1 -1
- package/dist/assets/fish-gdYKe4SP.js +1 -0
- package/dist/assets/{minimax-CauLdfeU.js → flux-D88IaBj0.js} +1 -1
- package/dist/assets/{folder-B4Jjo77l.js → folder-M0N3s8TI.js} +1 -1
- package/dist/assets/gauge-BBEsGLd-.js +1 -0
- package/dist/assets/{generationInput-Df1upTx9.js → generationInput-fG9Q4MrW.js} +1 -1
- package/dist/assets/{globe-CEk5a0cn.js → globe-Dh4Y-dbO.js} +1 -1
- package/dist/assets/{grokvideo-Co5-RZJD.js → grokvideo-DI5sbtDX.js} +1 -1
- package/dist/assets/{hailuo-DMoPPvUl.js → hailuo-DDsbgUfB.js} +1 -1
- package/dist/assets/hash-BJ9pTQTf.js +1 -0
- package/dist/assets/{headphones-DxEzVzix.js → headphones-CQOv9Urq.js} +1 -1
- package/dist/assets/{history-P1COJCLH.js → history-7aOG0Twx.js} +1 -1
- package/dist/assets/{house-qa6WrFu9.js → house-qCSklNGG.js} +1 -1
- package/dist/assets/{i18n-3aZQnVTW.js → i18n-1AQa5zTB.js} +1 -1
- package/dist/assets/{image-DfZ-yD3f.js → image-B2QUypNx.js} +1 -1
- package/dist/assets/{imageRequests-DIYH9CLr.js → imageRequests-DKlC49Qg.js} +1 -1
- package/dist/assets/{index-BQ6W3K7j.css → index-BKJo8KCf.css} +1 -1
- package/dist/assets/index-Chthn5u1.js +572 -0
- package/dist/assets/{index.es-C_Gq4vgy.js → index.es-DpdDH40V.js} +2 -2
- package/dist/assets/{info-xIzYgAiV.js → info-REIlbr1G.js} +1 -1
- package/dist/assets/{input-number-VyPGUhHP.js → input-number-CP6VR6wd.js} +1 -1
- package/dist/assets/{key-round-CL1Zurw8.js → key-round-B-kr92xV.js} +1 -1
- package/dist/assets/{kling-C1-5IiSC.js → kling-z7BuXRxy.js} +1 -1
- package/dist/assets/{languages-CDk9EAaf.js → languages-v-77L0wW.js} +1 -1
- package/dist/assets/{laptop-BlMF8fEG.js → laptop-CPRP3p4w.js} +1 -1
- package/dist/assets/{lightbulb-d6wy4poq.js → lightbulb-B46IGJEU.js} +1 -1
- package/dist/assets/{link-6giGq_cF.js → link-qn8z6KOR.js} +1 -1
- package/dist/assets/loader-circle-B5-_Ddsk.js +1 -0
- package/dist/assets/{lock-cFepzwhs.js → lock-BGg1Rg_6.js} +1 -1
- package/dist/assets/{luma-Eq1wRQnR.js → luma-QfbBXsgO.js} +1 -1
- package/dist/assets/{maestro-0ulY9gMw.js → maestro-DsUiSLq9.js} +1 -1
- package/dist/assets/{maestroLanguages-CczPeCVu.js → maestroLanguages-DNUMZk4N.js} +1 -1
- package/dist/assets/{mail-NnEBpr3-.js → mail-Buw4IBL_.js} +1 -1
- package/dist/assets/merge-BfSAGNo7.js +1 -0
- package/dist/assets/{message-circle-DBJKZmSe.js → message-circle-B5L1vV2s.js} +1 -1
- package/dist/assets/{mic-DPRovWzT.js → mic-CMOEDLJg.js} +1 -1
- package/dist/assets/midjourney-CrQxGEBk.js +1 -0
- package/dist/assets/{flux-DepHkctW.js → minimax-B8eV8Kmp.js} +1 -1
- package/dist/assets/mobileLocalExec-DKPuNmBE.js +2 -0
- package/dist/assets/{models-CSuuDqRA.js → models-Dt5TUDSt.js} +1 -1
- package/dist/assets/{monitor-Cf_suH9d.js → monitor-BK7iTUBc.js} +1 -1
- package/dist/assets/{mouse-pointer-2-CgCiODhx.js → mouse-pointer-2-C9KhX1mu.js} +1 -1
- package/dist/assets/music-2-BM9Fu0Au.js +1 -0
- package/dist/assets/nanobanana-DlElIc7m.js +1 -0
- package/dist/assets/{omni-CauuzHoU.js → omni-D1OBzZoe.js} +1 -1
- package/dist/assets/openaiimage-B2ANWIRA.js +1 -0
- package/dist/assets/{pagination-DuM0KuRQ.js → pagination-BO_5ftTJ.js} +1 -1
- package/dist/assets/pagination-D4Aw0nAJ.js +1 -0
- package/dist/assets/{pagination-SWvC0yg5.js → pagination-DuM5gKc8.js} +1 -1
- package/dist/assets/{palette-DldUt8tv.js → palette-D2umleZ6.js} +1 -1
- package/dist/assets/{paperclip-CWFcTsCu.js → paperclip-kQvC9gkj.js} +1 -1
- package/dist/assets/{pause-CCpGY3qg.js → pause-DXtHMNch.js} +1 -1
- package/dist/assets/{pencil-CviRmSpy.js → pencil-B6_0cPiJ.js} +1 -1
- package/dist/assets/{pika-CGSOn140.js → pika-CLGmAoS8.js} +1 -1
- package/dist/assets/{pixverse-hqijNgdF.js → pixverse-DhGV8oX-.js} +1 -1
- package/dist/assets/play-unJ34aYh.js +1 -0
- package/dist/assets/{plug-CCpoxaDM.js → plug-kkoJNPtP.js} +1 -1
- package/dist/assets/plus-Dk4V5RAn.js +1 -0
- package/dist/assets/{poivelle-BetUJVZU.js → poivelle-C2Ys0mKZ.js} +1 -1
- package/dist/assets/{popover-14jHG21y.js → popover-BDzRlieG.js} +1 -1
- package/dist/assets/producer-Ss2tchtm.js +1 -0
- package/dist/assets/qrart-BzhUWQlT.js +1 -0
- package/dist/assets/qwenimage-DhiM-Dy6.js +1 -0
- package/dist/assets/{realtime-CWG_Ti28.js → realtime-DAfRI7KC.js} +1 -1
- package/dist/assets/{refresh-cw-LcYscKQ-.js → refresh-cw-D6B44uOi.js} +1 -1
- package/dist/assets/rotate-ccw-BYK2Uwwj.js +1 -0
- package/dist/assets/rotate-cw-BtDVlYCq.js +1 -0
- package/dist/assets/{row-D_DEh6Xl.js → row-LIuQCOwQ.js} +1 -1
- package/dist/assets/search-CEBDq3OR.js +1 -0
- package/dist/assets/{seedance-6PiEj-B2.js → seedance-CICg5jVu.js} +1 -1
- package/dist/assets/seedream-B67-IXD0.js +1 -0
- package/dist/assets/{select-CD3MG9sV.js → select-C2FJHM0d.js} +1 -1
- package/dist/assets/{serp-Cq0cLf_x.js → serp-dcfb7kj5.js} +1 -1
- package/dist/assets/{shield-Cm7slfR-.js → shield-CH8McBrA.js} +1 -1
- package/dist/assets/{showcase-DYvH5oMm.js → showcase-Vs_h9p7u.js} +1 -1
- package/dist/assets/showcaseRecreateMixin-CsU1JUeD.js +1 -0
- package/dist/assets/{shuffle-B1KYbijI.js → shuffle-mavNwtGM.js} +1 -1
- package/dist/assets/{siteHome-DDAyaghg.js → siteHome-DzlXtsHy.js} +1 -1
- package/dist/assets/{slider-BIlpcCpb.js → slider-CTiMX-b2.js} +1 -1
- package/dist/assets/{solana-wallets-DR-tBP0Q.js → solana-wallets-9xarVWvA.js} +2 -2
- package/dist/assets/{sora-D3Oa75Xq.js → sora-CGY5lCTg.js} +1 -1
- package/dist/assets/{sparkles-DP6P2HKD.js → sparkles-B24Q65Iu.js} +1 -1
- package/dist/assets/square-CuAnQ3oF.js +1 -0
- package/dist/assets/{store-LrvK8rpV.js → store-DNz45ZwJ.js} +1 -1
- package/dist/assets/{suno-Bp9MX6wd.js → suno-B3L_Ii4e.js} +1 -1
- package/dist/assets/{suno-iPwkmePl.js → suno-B77wv4Zx.js} +1 -1
- package/dist/assets/suno-BiiXIhNE.js +1 -0
- package/dist/assets/suno-BjOB7jBZ.js +7 -0
- package/dist/assets/{suno-yKhzNE_o.js → suno-C5YThmki.js} +1 -1
- package/dist/assets/suno-CjZBVwCS.js +7 -0
- package/dist/assets/{suno-DItEdyJF.js → suno-CoT5EdoS.js} +1 -1
- package/dist/assets/{suno-DnZAtrpi.js → suno-CrMyUx4d.js} +1 -1
- package/dist/assets/suno-D69COSRG.js +7 -0
- package/dist/assets/suno-DosDPlGJ.js +7 -0
- package/dist/assets/suno-V1A1YJ11.js +7 -0
- package/dist/assets/{suno-BWKXteBJ.js → suno-aICQ4uGQ.js} +1 -1
- package/dist/assets/{suno-COJt8sxe.js → suno-zk_Eumor.js} +1 -1
- package/dist/assets/{switch-CPDNjdtX.js → switch-7Pw3B28x.js} +1 -1
- package/dist/assets/{table-CTGYIkVp.js → table-BLyggfjy.js} +1 -1
- package/dist/assets/{tabs-O76shONs.js → tabs-DM6Y93wJ.js} +1 -1
- package/dist/assets/{tag-CrzKKwWK.js → tag-BTGFi7pU.js} +1 -1
- package/dist/assets/taskPolling-82xkKZ6w.js +1 -0
- package/dist/assets/terminal-SNIgwaJk.js +1 -0
- package/dist/assets/{time-picker-CB3JdUZX.js → time-picker-D_EvWGjF.js} +1 -1
- package/dist/assets/{tooltip-BKeGCQnC.js → tooltip-B7b9ZTXG.js} +1 -1
- package/dist/assets/{trash-2-1--IdOz8.js → trash-2-Dp6pN4YF.js} +1 -1
- package/dist/assets/{triangle-alert-CsggA_lm.js → triangle-alert-aAUKg4xX.js} +1 -1
- package/dist/assets/{upload-C1ZLDC6M.js → upload-CfXm8YH5.js} +1 -1
- package/dist/assets/{upload-QoHt30kH.js → upload-DZVFna-K.js} +1 -1
- package/dist/assets/user-DSOiwk3r.js +1 -0
- package/dist/assets/{veo-DgIXEVsh.js → veo-Cale2-5H.js} +1 -1
- package/dist/assets/{video-ByywsO-8.js → video-CZV1ARtT.js} +1 -1
- package/dist/assets/{volume-2-qWcpmyoS.js → volume-2-B6-E4YLY.js} +1 -1
- package/dist/assets/{wallet-BnFgg2rL.js → wallet-DhZS0MOq.js} +1 -1
- package/dist/assets/{wan-CAJwbpzm.js → wan-Cv7-FRxy.js} +1 -1
- package/dist/assets/{wand-sparkles-D1YhC4me.js → wand-sparkles-CJqcxreS.js} +1 -1
- package/dist/assets/web-AaZNv2Rt.js +1 -0
- package/dist/assets/web-BVxN_h2Z.js +1 -0
- package/dist/assets/web-CaWbgwCP.js +1 -0
- package/dist/assets/web-CoOhMnB7.js +1 -0
- package/dist/assets/web-DYsULTTR.js +1 -0
- package/dist/assets/{webextrator-D2P5CJFc.js → webextrator-DKLSMBwu.js} +1 -1
- package/dist/assets/{zap-B41N3VAA.js → zap-BfdthXZg.js} +1 -1
- package/dist/index.html +5 -6
- package/package.json +1 -1
- package/dist/assets/BrowseConnectors-Cfhdu7FB.css +0 -1
- package/dist/assets/BrowseConnectors-DDaCrhbs.js +0 -1
- package/dist/assets/Console-DX8ah6RZ.js +0 -1
- package/dist/assets/Conversation-CGF5Pv35.js +0 -2
- package/dist/assets/Conversation-Chcq_bCw.css +0 -1
- package/dist/assets/Detail-Do_URYhR.js +0 -2
- package/dist/assets/Extra-BALtwRjN.js +0 -1
- package/dist/assets/Extra-fy_WXPf1.css +0 -1
- package/dist/assets/Index-6EQp8Djd.js +0 -1
- package/dist/assets/Index-B_e8X3lR.js +0 -1
- package/dist/assets/Index-BfEjGMYY.js +0 -1
- package/dist/assets/Index-Bn8GR3Dp.js +0 -1
- package/dist/assets/Index-C3Xg5_rD.js +0 -1
- package/dist/assets/Index-C5n7st14.js +0 -1
- package/dist/assets/Index-CBWvzpUv.js +0 -1
- package/dist/assets/Index-CH0Qtl-U.js +0 -1
- package/dist/assets/Index-Cxnk8D6L.js +0 -1
- package/dist/assets/Index-D0VEtNow.js +0 -1
- package/dist/assets/Index-D0dMY9JE.js +0 -1
- package/dist/assets/Index-D2u3DAyP.js +0 -1
- package/dist/assets/Index-D2uwTXnV.js +0 -1
- package/dist/assets/Index-D6RtTR0S.js +0 -1
- package/dist/assets/Index-D8KRaBhU.css +0 -1
- package/dist/assets/Index-DAyToqf0.css +0 -1
- package/dist/assets/Index-DEg9qoqB.js +0 -1
- package/dist/assets/Index-DN1YZ-qD.js +0 -1
- package/dist/assets/Index-DZeE-ePv.js +0 -1
- package/dist/assets/Index-DgOG6dMN.js +0 -1
- package/dist/assets/Index-Dibj94eG.js +0 -1
- package/dist/assets/Index-DuK9WzML.js +0 -1
- package/dist/assets/Index-LRgJ_nsN.js +0 -1
- package/dist/assets/Index-h7_JkwcG.js +0 -1
- package/dist/assets/Index-lqpxMyXe.js +0 -1
- package/dist/assets/Index-o2Kv6S1v.js +0 -1
- package/dist/assets/Index-rnPbAWjw.js +0 -1
- package/dist/assets/List-B7stVodo.css +0 -1
- package/dist/assets/List-D3pfOeks.js +0 -1
- package/dist/assets/List-neAXCyf2.js +0 -1
- package/dist/assets/Message-CkA6luHF.js +0 -3
- package/dist/assets/Navigator-CoyJaNGh.css +0 -1
- package/dist/assets/Navigator-vxqlT7Zw.js +0 -8
- package/dist/assets/Pay-D1qVtYXO.js +0 -1
- package/dist/assets/Status-CkzKt4ib.js +0 -1
- package/dist/assets/Subscribe-BwmBt3UL.js +0 -1
- package/dist/assets/Tts-BC01zHR_.js +0 -1
- package/dist/assets/WriteSkillDialog-DxKxdZbp.js +0 -1
- package/dist/assets/arrow-down-CSGt9t2E.js +0 -1
- package/dist/assets/arrow-left-l3XZii7G.js +0 -1
- package/dist/assets/arrow-right-DldGU1an.js +0 -1
- package/dist/assets/arrow-up-4Sf4V16e.js +0 -1
- package/dist/assets/authorizeFlow-IFKM_0Z8.js +0 -1
- package/dist/assets/chat-4B5e6M7H.js +0 -1
- package/dist/assets/chat-8q4HYSBH.js +0 -1
- package/dist/assets/chat-B3V3PQNf.js +0 -2
- package/dist/assets/chat-B_H4N5wh.js +0 -1
- package/dist/assets/chat-Bi4-iPLs.js +0 -1
- package/dist/assets/chat-Bk_GtTmW.js +0 -1
- package/dist/assets/chat-C2uqNw3P.js +0 -1
- package/dist/assets/chat-CJbcUBPg.js +0 -1
- package/dist/assets/chat-CsiZHLys.js +0 -1
- package/dist/assets/chat-D6FZdAFD.js +0 -1
- package/dist/assets/chat-D_cVYex_.js +0 -1
- package/dist/assets/chat-lBYpL1ru.js +0 -1
- package/dist/assets/chat-woD5EAiM.js +0 -1
- package/dist/assets/check-Cmnz4Bu0.js +0 -1
- package/dist/assets/chevron-down-DHjWJMvN.js +0 -1
- package/dist/assets/chevron-right-hDs_4ftT.js +0 -1
- package/dist/assets/circle-check-CrhnV2f6.js +0 -1
- package/dist/assets/clock-B7yL_XXj.js +0 -1
- package/dist/assets/code-CDH4NELE.js +0 -1
- package/dist/assets/codingBridge-CyaSQuc1.js +0 -2
- package/dist/assets/codingBridgeNotify-CfKf4JbW.js +0 -2
- package/dist/assets/constants-BmcMHgPT.js +0 -1
- package/dist/assets/createTaskActions-DtPQuKJS.js +0 -1
- package/dist/assets/dist-COcOCb7M.js +0 -1
- package/dist/assets/esm-AsjmGJPe.js +0 -1
- package/dist/assets/esm-zWalIFOI.js +0 -2
- package/dist/assets/fish-DDjd2Wg6.js +0 -1
- package/dist/assets/gauge-CCcCam0v.js +0 -1
- package/dist/assets/index-BHXtbt9o.js +0 -572
- package/dist/assets/loader-circle-B3QYalEy.js +0 -1
- package/dist/assets/midjourney-K2rr_-Oi.js +0 -1
- package/dist/assets/mobileLocalExec-mQzutnPF.js +0 -2
- package/dist/assets/music-2-BgZoB-sB.js +0 -1
- package/dist/assets/nanobanana-yHjhfh57.js +0 -1
- package/dist/assets/openaiimage-BR52tx59.js +0 -1
- package/dist/assets/pagination-BeJR0FnO.js +0 -1
- package/dist/assets/play-gSzuLJWl.js +0 -1
- package/dist/assets/plus-CwKarPA6.js +0 -1
- package/dist/assets/producer-FVRoLWlQ.js +0 -1
- package/dist/assets/qrart-DyTDi4GZ.js +0 -1
- package/dist/assets/qwenimage-nE6zZ0LS.js +0 -1
- package/dist/assets/rotate-ccw-Bo7KtpMu.js +0 -1
- package/dist/assets/rotate-cw-CD8xES6w.js +0 -1
- package/dist/assets/search-b_c_47BV.js +0 -1
- package/dist/assets/seedream-yHV_q-Ae.js +0 -1
- package/dist/assets/showcaseRecreateMixin-CT2Cvorb.js +0 -1
- package/dist/assets/square-DuewWOOD.js +0 -1
- package/dist/assets/suno-3FI6Vxoo.js +0 -7
- package/dist/assets/suno-BXaxC5Gi.js +0 -7
- package/dist/assets/suno-Bbfu2k-K.js +0 -7
- package/dist/assets/suno-CLaEQFqS.js +0 -1
- package/dist/assets/suno-DWO2HCYQ.js +0 -7
- package/dist/assets/suno-uSHfzvRK.js +0 -7
- package/dist/assets/taskPolling-Cpolqm-4.js +0 -1
- package/dist/assets/terminal-TymL8Q-5.js +0 -1
- package/dist/assets/user-avGCO_1o.js +0 -1
- package/dist/assets/web-BGewYxtu.js +0 -1
- package/dist/assets/web-BQwKYKS9.js +0 -1
- package/dist/assets/web-BqjUMapP.js +0 -1
- package/dist/assets/web-C4Auz5nG.js +0 -1
- package/dist/assets/web-CyEVFzzo.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{t as p}from"./alert-BprQRUmf.js";import{o as m,v as ee}from"./models-CSuuDqRA.js";import{t as h}from"./card-IQwqnRJR.js";import{n as g,t as _}from"./row-D_DEh6Xl.js";import{a as v,i as y,n as b,r as x,t as S}from"./airwallexCheckout-CdX6OLbg.js";import{t as C}from"./divider-Du_3kymg.js";import{t as w}from"./skeleton-Dj_a_iIP.js";import{t as T}from"./circle-check-CrhnV2f6.js";import{t as E}from"./copy-BNJ4Vvq_.js";import{T as D,b as O,j as k}from"./i18n-3aZQnVTW.js";import{A,B as te,En as j,Ya as M,io as N,no as ne,ti as P,wn as F}from"./index-BHXtbt9o.js";import{t as I}from"./CopyToClipboard-CaPuzTeQ.js";var L=f({name:`PublicWechatPayDialog`,components:{ElDialog:M,ElButton:N,CopyIcon:E,QrCode:te,ElRow:_,ElCol:g,SuccessIcon:T},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],data(){return{copied:!1,copiedTimer:void 0}},computed:{isMobileOutsideWechat(){return x()&&!b()},isMobileInsideWechat(){return x()&&b()},dialogWidth(){return this.isMobileOutsideWechat||this.isMobileInsideWechat?`90%`:`500px`}},unmounted(){this.copiedTimer&&clearTimeout(this.copiedTimer)},methods:{async onCopyLink(){let e=typeof window<`u`?window.location.href:``;if(!e)return;let t=!1;try{t=await j(e,{debug:!1})}catch{t=!1}t?(this.copied=!0,this.copiedTimer&&clearTimeout(this.copiedTimer),this.copiedTimer=window.setTimeout(()=>{this.copied=!1},3e3)):ee.error(String(this.$t(`common.message.copyFailed`)||`Copy failed`))}}}),R={key:0,class:`wechat-pay-mobile text-center py-[20px] px-[10px]`},z={class:`text-[14px] mb-3 leading-relaxed`},B={class:`text-[12px] text-gray-500 mb-4 leading-relaxed`},V={key:1,class:`wechat-pay-longpress text-center py-[20px] px-[10px]`},H={class:`text-[14px] mb-4 leading-relaxed`},U={class:`paycode wechat`},W={class:`help-text block bg-[#00c800] text-white text-[14px] h-[35px] w-[240px] text-center leading-[35px] mt-[10px] mx-auto`};function G(t,s,f,p,m,ee){let h=c(`qr-code`),g=c(`success-icon`),_=c(`copy-icon`),v=c(`el-button`),y=c(`el-col`),b=c(`el-row`),x=c(`el-dialog`);return d(),l(x,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:t.dialogWidth,center:``,onClose:s[0]||=e=>t.$emit(`hide`)},{default:u(()=>[t.isMobileOutsideWechat?(d(),o(`div`,R,[e(`p`,z,r(t.$t(`order.message.wechatPayMobileScanTip`)),1),t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:220,class:`qrcode m-auto mb-3`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0),e(`p`,B,r(t.$t(`order.message.wechatPayMobileHint`)),1),i(v,{size:`default`,round:``,class:`w-[220px]`,"aria-label":t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`),onClick:t.onCopyLink},{default:u(()=>[t.copied?(d(),l(g,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(d(),l(_,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),n(` `+r(t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`)),1)]),_:1},8,[`aria-label`,`onClick`])])):t.isMobileInsideWechat?(d(),o(`div`,V,[e(`p`,H,r(t.$t(`order.message.wechatPayLongPressTip`)),1),t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:240,class:`qrcode mx-auto`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0)])):(d(),l(b,{key:2,class:`paycodes py-[30px] w-[500px] mx-auto`},{default:u(()=>[i(y,{span:12},{default:u(()=>[e(`div`,U,[t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:200,class:`qrcode m-auto w-[200px] h-[200px]`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0),e(`p`,W,r(t.$t(`order.message.wechatPayHelp`)),1)])]),_:1}),i(y,{span:12},{default:u(()=>[...s[1]||=[e(`div`,{class:`help-img`},[e(`img`,{src:`https://midas.gtimg.cn/enterprise/images/ep_sys_wx_tip.jpg`})],-1)]]),_:1})]),_:1}))]),_:1},8,[`model-value`,`title`,`width`])}var K=A(L,[[`render`,G]]),q=f({name:`PublicStripePayDialog`,components:{ElDialog:M},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],watch:{visible:{handler(e){e&&this.order?.pay_url&&window.open(this.order.pay_url,`_blank`)}}}}),J={class:`text-center`};function Y(t,n,i,a,o,s){let f=c(`el-dialog`);return d(),l(f,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``,onClose:n[0]||=e=>t.$emit(`hide`)},{default:u(()=>[e(`p`,J,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var X=A(q,[[`render`,Y]]),Z=f({name:`PublicAlipayPayDialog`,components:{ElDialog:M},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],watch:{visible:{handler(e){e&&this.order?.pay_url&&window.open(this.order.pay_url,`_blank`)}}}}),re={class:`text-center`};function ie(t,n,i,a,o,s){let f=c(`el-dialog`);return d(),l(f,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``,onClose:n[0]||=e=>t.$emit(`hide`)},{default:u(()=>[e(`p`,re,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var ae=A(Z,[[`render`,ie]]),oe=7e3,se=2e3,Q=function(e){return e.WechatPay=`WechatPay`,e.Stripe=`Stripe`,e.AliPay=`AliPay`,e.Card=`Card`,e.Airwallex=`Airwallex`,e}(Q||{}),ce=f({name:`OrderPublicPay`,components:{ElButton:N,ElRow:_,ElCol:g,ElCard:h,ElSkeleton:w,ElDivider:C,ElAlert:p,ElDescriptions:y,ElDescriptionsItem:v,ElTag:ne,PublicWechatPay:K,PublicStripePay:X,PublicAlipayPay:ae,CopyToClipboard:I},data(){return{PayWay:Q,OrderState:m,payWay:`WechatPay`,order:void 0,loading:!1,paying:!1,prepaying:!1}},computed:{id(){return this.$route.params?.id?.toString()??``},showPayment(){return!D()}},watch:{paying(e){e?this.startOrderPolling(se):this.stopOrderPolling()}},created(){this._orderRefreshTimer=void 0},mounted(){this.onFetchData()},beforeUnmount(){this.stopOrderPolling()},methods:{getPriceString:F,payWayLabel(e){return{WechatPay:this.$t(`order.title.wechatPay`),Stripe:this.$t(`order.title.stripe`),AliPay:this.$t(`order.title.aliPay`),Card:this.$t(`order.title.card`),Airwallex:this.$t(`order.title.card`)}[e]||e},onFetchData(){this.id&&(this.loading=!0,P.getPublic(this.id).then(({data:e})=>{this.order=e,e?.pay_way&&e.pay_way in Q&&(this.payWay=e.pay_way),this.loading=!1}).catch(()=>{this.order=void 0,this.loading=!1}))},startOrderPolling(e=0){this.stopOrderPolling();let t=async()=>{try{let{data:e}=await P.getPublic(this.id);if(this.order=e,e?.state===m.PAID||e?.state===m.FINISHED||e?.state===m.FAILED||e?.state===m.EXPIRED){this.paying=!1,this.stopOrderPolling();return}}catch{}this.paying&&(this._orderRefreshTimer=window.setTimeout(t,oe))};this._orderRefreshTimer=window.setTimeout(t,e)},stopOrderPolling(){let e=this._orderRefreshTimer;e&&(clearTimeout(e),this._orderRefreshTimer=void 0)},onRepay(){if(this.order?.pay_way===`Airwallex`){this.onPay();return}this.paying=!0},selectedPayWay(){return this.order?.pay_way===`Airwallex`||this.payWay===`Card`?`Airwallex`:this.payWay},onPay(){if(!this.id)return;this.prepaying=!0;let e=this.selectedPayWay(),t={pay_way:e};e===`Airwallex`&&k()&&(t.payment_contract=`airwallex_payment_intent`),e===`AliPay`&&(t.surface=O()),P.payPublic(this.id,t).then(async({data:t})=>{this.prepaying=!1;let{payment:n,...r}=t;if(r?.id&&(this.order=r,this.payWay=r.pay_way||this.payWay),e===`Airwallex`&&n){this.paying=!0,await S(n);return}this.order&&this.order.price&&this.order.price>0&&(this.paying=!0)}).catch(()=>{this.prepaying=!1,this.paying=!1})}}}),le={class:`title`},ue={key:0,class:`pt-5`},de={key:1,class:`pt-10 text-center`},fe={key:2,class:`order`},pe={key:0,class:`price current unfree`},$={key:1,class:`price free`},me={key:0,class:`payways mb-6`},he={class:`payname`},ge={class:`payname`},_e={class:`payname`},ve={key:1},ye={key:2};function be(f,p,m,ee,h,g){let _=c(`el-col`),v=c(`el-row`),y=c(`el-skeleton`),b=c(`el-alert`),x=c(`copy-to-clipboard`),S=c(`el-descriptions-item`),C=c(`el-tag`),w=c(`el-descriptions`),T=c(`el-divider`),E=c(`el-button`),D=c(`el-card`),O=c(`public-wechat-pay`),k=c(`public-stripe-pay`),A=c(`public-alipay-pay`);return d(),o(s,null,[i(v,{class:`wrapper`},{default:u(()=>[i(_,{span:24},{default:u(()=>[i(v,null,{default:u(()=>[i(_,{span:24},{default:u(()=>[e(`h2`,le,r(f.$t(`order.title.info`)),1)]),_:1})]),_:1}),i(v,{class:`panel`},{default:u(()=>[i(_,{span:24},{default:u(()=>[i(D,{shadow:`hover`},{default:u(()=>[i(v,null,{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[f.loading?(d(),o(`div`,ue,[i(y,{animated:``})])):f.order?(d(),o(`div`,fe,[i(w,{column:1},{default:u(()=>[i(S,{label:f.$t(`order.field.id`)},{default:u(()=>[e(`span`,null,r(f.order.id),1),f.order.id?(d(),l(x,{key:0,content:f.order.id,class:`inline-block`},null,8,[`content`])):a(``,!0)]),_:1},8,[`label`]),i(S,{label:f.$t(`order.field.description`)},{default:u(()=>[n(r(f.order.description),1)]),_:1},8,[`label`]),f.order.pay_way?(d(),l(S,{key:0,label:f.$t(`order.field.payWay`)},{default:u(()=>[i(C,{type:`info`,effect:`dark`,round:``,size:`small`},{default:u(()=>[n(r(f.payWayLabel(f.order.pay_way)),1)]),_:1})]),_:1},8,[`label`])):a(``,!0),i(S,{label:f.$t(`order.field.createdAt`)},{default:u(()=>[n(r(f.$dayjs.format(f.order.created_at||``)),1)]),_:1},8,[`label`]),i(S,{label:f.$t(`order.field.price`)},{default:u(()=>[f.order.price&&f.order.price>0?(d(),o(`span`,pe,r(f.getPriceString({value:f.order.price})),1)):(d(),o(`span`,$,r(f.$t(`order.message.free`)),1))]),_:1},8,[`label`])]),_:1})])):(d(),o(`div`,de,[i(b,{title:f.$t(`order.message.publicPayNotFound`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]))]),_:1})]),_:1}),f.order?.state===f.OrderState.PAID||f.order?.state===f.OrderState.FINISHED?(d(),l(v,{key:0,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.message.paidSuccessfully`),type:`success`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.EXPIRED?(d(),l(v,{key:1,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.message.orderExpired`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.FAILED?(d(),l(v,{key:2,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.state.failed`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.PENDING&&f.showPayment?(d(),l(v,{key:3},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),!f.order.pay_way&&f.order.price&&f.order.price>0?(d(),o(`div`,me,[e(`div`,{class:t({payway:!0,wechatpay:!0,active:f.payWay===f.PayWay.WechatPay}),onClick:p[0]||=e=>f.payWay=f.PayWay.WechatPay},[p[6]||=e(`span`,{class:`payicon wechatpay`},null,-1),e(`span`,he,r(f.$t(`order.title.wechatPay`)),1)],2),e(`div`,{class:t({payway:!0,alipay:!0,active:f.payWay===f.PayWay.AliPay}),onClick:p[1]||=e=>f.payWay=f.PayWay.AliPay},[p[7]||=e(`span`,{class:`payicon alipay`},null,-1),e(`span`,ge,r(f.$t(`order.title.aliPay`)),1)],2),e(`div`,{class:t({payway:!0,creditcard:!0,active:f.payWay===f.PayWay.Card}),onClick:p[2]||=e=>f.payWay=f.PayWay.Card},[p[8]||=e(`span`,{class:`payicon card`,"aria-hidden":`true`},null,-1),e(`span`,_e,r(f.$t(`order.title.card`)),1)],2)])):a(``,!0),f.order.pay_way?(d(),o(`div`,ye,[i(E,{type:`primary`,round:``,size:`large`,class:`btn-repay`,onClick:f.onRepay},{default:u(()=>[n(r(f.$t(`common.button.repay`)),1)]),_:1},8,[`onClick`])])):(d(),o(`div`,ve,[i(E,{loading:f.prepaying,round:``,type:`primary`,size:`large`,class:`btn-pay`,onClick:f.onPay},{default:u(()=>[n(r(f.$t(`common.button.pay`)),1)]),_:1},8,[`loading`,`onClick`])]))]),_:1})]),_:1})):a(``,!0)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),f.order&&f.payWay===f.PayWay.WechatPay?(d(),l(O,{key:0,order:f.order,visible:f.paying,onHide:p[3]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0),f.order&&(f.payWay===f.PayWay.Stripe||f.payWay===f.PayWay.Card)?(d(),l(k,{key:1,order:f.order,visible:f.paying,onHide:p[4]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0),f.order&&f.payWay===f.PayWay.AliPay?(d(),l(A,{key:2,order:f.order,visible:f.paying,onHide:p[5]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0)],64)}var xe=A(ce,[[`render`,be],[`__scopeId`,`data-v-bc6c6766`]]);export{xe as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,K as a,L as o,M as s,N as c,T as l,at as u,j as d,mt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{F as ee}from"./icon-CDmWyIgD.js";import{n as g,t as _}from"./tabs-O76shONs.js";import{a as v,p as y,v as b}from"./models-CSuuDqRA.js";import{n as x,r as S}from"./radio-BNhFzeBO.js";import{t as C}from"./input-number-VyPGUhHP.js";import{t as w}from"./chart-no-axes-combined-DXPCYBnP.js";import{t as T}from"./check-Cmnz4Bu0.js";import{t as E}from"./coins-DA-dIOC6.js";import{t as D}from"./wallet-BnFgg2rL.js";import{O,T as k}from"./i18n-3aZQnVTW.js";import{A,Ai as j,B as M,Di as N,Ei as P,Fi as F,Hi as te,Ii as ne,Li as re,Mi as I,Ni as L,Oi as R,Ot as z,Pi as B,Ri as V,Ti as H,Vi as U,Ya as W,fi as G,io as K,ki as q,lt as J,no as Y,ra as X,ut as ie,wi as ae}from"./index-BHXtbt9o.js";import{t as Z}from"./CopyToClipboard-CaPuzTeQ.js";import{t as oe}from"./SolanaWalletPickerDialog-DmzZ-uJQ.js";var se=h({name:`ApplicationInfo`,components:{AnalyticsIcon:w,ConfirmIcon:T,CreditsIcon:E,ElButton:K,ElIcon:ee,ElTag:Y,CopyToClipboard:Z,WalletIcon:D},props:{application:{type:Object,required:!0},showType:{type:Boolean,default:!1},showId:{type:Boolean,default:!1}},emits:[`buy`,`usage`],computed:{showUsage(){return!this.application?.service||this.application.service.type===v.API},showPayment(){return J(this.application,this.$store.getters.site,{ios:k()})},remainingAmountText(){let e=Number(this.application?.remaining_amount??0);return!Number.isFinite(e)||e<0?`0.00`:e.toFixed(2)}}}),ce={class:`flex flex-col min-w-0`},le={key:0,class:`app-id-row`},ue={class:`icon !mb-0 flex-shrink-0`},de={class:`app-id-line`},fe={class:`app-id-label`},pe={class:`app-id-value`},me={key:1,class:`icon`},he={class:`text-left`},ge={class:`description`},_e={key:0},ve={key:1},ye={class:`value`},be={class:`description2`},xe={key:0},Se={key:1},Ce={class:`actions`};function we(n,a,l,p,h,ee){let g=u(`confirm-icon`),_=u(`el-icon`),v=u(`wallet-icon`),y=u(`copy-to-clipboard`),b=u(`el-tag`),x=u(`analytics-icon`),S=u(`el-button`),C=u(`credits-icon`);return m(),c(`div`,null,[e(`div`,ce,[o(_,{class:`check`},{default:f(()=>[o(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),n.showId?(m(),c(`div`,le,[e(`div`,ue,[o(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,de,[e(`span`,fe,i(n.$t(`application.field.id`))+`:`,1),e(`span`,pe,i(n.application.id),1),n.application.id?(m(),d(y,{key:0,content:n.application.id,class:`copy-small`},null,8,[`content`])):s(``,!0)])])):(m(),c(`div`,me,[o(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})])),e(`div`,he,[e(`p`,ge,[n.application.service?(m(),c(`span`,ve,i(n.$t(`application.title.applicationBalance`,{service:n.application.service?.title})),1)):(m(),c(`span`,_e,i(n.$t(`application.title.globalBalance`)),1)),n.application.role===`grantee`?(m(),d(b,{key:2,class:`shared-badge`,size:`small`,type:`warning`,effect:`dark`,round:``},{default:f(()=>[r(i(n.$t(`application.badge.shared`)),1)]),_:1})):s(``,!0)]),e(`p`,ye,i(n.remainingAmountText)+` `+i(n.$t(`service.unit.`+(n.application?.service?.unit||`credit`)+`s`)),1),e(`p`,be,[n.application.type===`Period`?(m(),c(`span`,xe,i(n.$t(`application.field.expiredAt`))+`: `+i(n.$dayjs.format(n.application.expired_at)),1)):(m(),c(`span`,Se,i(n.$t(`application.message.neverExpire`)),1))])])]),e(`div`,Ce,[n.showUsage?(m(),d(S,{key:0,size:`small`,round:``,onClick:a[0]||=t(e=>n.$emit(`usage`,n.application),[`stop`])},{default:f(()=>[o(x,{class:`mr-1 text-[11px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`application.button.usage`)),1)]),_:1})):s(``,!0),n.showPayment?(m(),d(S,{key:1,type:`primary`,round:``,size:`small`,onClick:a[1]||=t(e=>n.$emit(`buy`,n.application),[`stop`])},{default:f(()=>[o(C,{class:`mr-1 text-[11px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`application.button.buyMore`)),1)]),_:1})):s(``,!0)])])}var Te=A(se,[[`render`,we],[`__scopeId`,`data-v-b768857b`]]);function Q(e,t){let n=e?.response?.data?.detail,r=Array.isArray(n)?n.find(e=>typeof e==`string`):n,i=typeof r==`string`&&r||typeof e?.response?.data?.error?.message==`string`&&e.response.data.error.message||typeof e?.message==`string`&&e.message||t,a=e?.response?.data?.trace_id;return typeof a==`string`&&a?`${i} (${a})`:i}var Ee=h({name:`ContinuousPaymentCard`,components:{ElButton:K,ElInputNumber:C,ElRadioButton:x,ElRadioGroup:S},props:{continuousOnly:{type:Boolean,default:!1}},data(){return{method:this.continuousOnly?`continuous`:`confirm`,dailyLimit:2,validDays:30,busy:!1}},computed:{activeAuthorization(){let e=I();return e?.state===`active`?e:void 0},disabledAuthorization(){let e=I();return e?.state===`disabled`?e:void 0},token(){return this.$store.state.token.access}},watch:{method:{immediate:!0,handler(e){V(e===`continuous`)}},activeAuthorization:{immediate:!0,handler(e){e&&(this.method=`continuous`)}}},methods:{formatAtomicUsdc:G,formatDate(e){return new Date(e).toLocaleDateString()},async onEnable(){let e=this.$wallet;if(this.token){this.busy=!0;try{if(this.disabledAuthorization){await F(this.token),b.success(String(this.$t(`common.x402Scenario.continuousPaymentsEnabled`)));return}await B({token:this.token,walletApi:e,dailyLimitAtomic:String(Math.round(this.dailyLimit*1e6)),expiryTs:Math.floor(Date.now()/1e3)+this.validDays*86400}),b.success(String(this.$t(`common.x402Scenario.continuousPaymentsEnabled`)))}catch(e){b.error(Q(e,String(this.$t(`order.message.x402PaymentFailed`))))}finally{this.busy=!1}}},async onDisable(){if(this.token){this.busy=!0;try{await L(this.token),this.method=`confirm`}finally{this.busy=!1}}},async onRevoke(){let e=this.$wallet;if(this.token){this.busy=!0;try{await re(this.token,e),this.method=`confirm`}catch(e){b.error(Q(e,String(this.$t(`order.message.x402PaymentFailed`))))}finally{this.busy=!1}}}}}),De={class:`continuous-payment`},Oe={class:`description`},ke={class:`details`},Ae={class:`actions`},je={class:`form`};function Me(t,n,a,p,h,ee){let g=u(`el-radio-button`),_=u(`el-radio-group`),v=u(`el-button`),y=u(`el-input-number`);return m(),c(`div`,De,[t.continuousOnly?s(``,!0):(m(),d(_,{key:0,modelValue:t.method,"onUpdate:modelValue":n[0]||=e=>t.method=e,size:`small`},{default:f(()=>[o(g,{value:`confirm`},{default:f(()=>[r(i(t.$t(`common.x402Scenario.payEachTime`)),1)]),_:1}),o(g,{value:`continuous`},{default:f(()=>[r(i(t.$t(`common.x402Scenario.continuousPayments`)),1)]),_:1})]),_:1},8,[`modelValue`])),t.method===`continuous`?(m(),c(l,{key:1},[e(`p`,Oe,i(t.$t(`common.x402Scenario.continuousPaymentsDescription`)),1),t.activeAuthorization?(m(),c(l,{key:0},[e(`div`,ke,[e(`span`,null,i(t.$t(`common.x402Scenario.dailyPaymentLimit`)),1),e(`strong`,null,i(t.formatAtomicUsdc(t.activeAuthorization.daily_limit_atomic))+` USDC`,1),e(`span`,null,i(t.$t(`common.x402Scenario.validUntil`)),1),e(`strong`,null,i(t.formatDate(t.activeAuthorization.expires_at)),1)]),e(`div`,Ae,[o(v,{loading:t.busy,onClick:t.onDisable},{default:f(()=>[r(i(t.$t(`common.x402Scenario.disableContinuousPayments`)),1)]),_:1},8,[`loading`,`onClick`]),o(v,{type:`danger`,plain:``,loading:t.busy,onClick:t.onRevoke},{default:f(()=>[r(i(t.$t(`common.x402Scenario.revokeAuthorization`)),1)]),_:1},8,[`loading`,`onClick`])])],64)):(m(),c(l,{key:1},[e(`div`,je,[e(`label`,null,[e(`span`,null,i(t.$t(`common.x402Scenario.dailyPaymentLimit`)),1),o(y,{modelValue:t.dailyLimit,"onUpdate:modelValue":n[1]||=e=>t.dailyLimit=e,min:.1,max:100,step:.1},null,8,[`modelValue`])]),e(`label`,null,[e(`span`,null,i(t.$t(`common.x402Scenario.validDays`)),1),o(y,{modelValue:t.validDays,"onUpdate:modelValue":n[2]||=e=>t.validDays=e,min:1,max:365},null,8,[`modelValue`])])]),o(v,{type:`primary`,loading:t.busy,onClick:t.onEnable},{default:f(()=>[r(i(t.$t(`common.x402Scenario.enableContinuousPayments`)),1)]),_:1},8,[`loading`,`onClick`])],64))],64)):s(``,!0)])}var Ne=h({name:`ApplicationStatus`,components:{WalletIcon:D,QrCode:M,ElButton:K,ElDialog:W,ElRadioButton:x,ElRadioGroup:S,ElTabPane:_,ElTabs:g,ElTag:Y,ApplicationInfo:Te,ContinuousPaymentCard:A(Ee,[[`render`,Me],[`__scopeId`,`data-v-de58361f`]]),CopyToClipboard:Z,SolanaWalletPickerDialog:oe},props:{application:{type:Object,default:void 0},applications:{type:Array,default:void 0},service:{type:Object,required:!0},scenario:{type:String,default:void 0}},emits:[`select`],data(){return{visible:!1,walletPickerVisible:!1,evmWalletPickerVisible:!1,evmWallets:[],walletConnectVisible:!1,walletConnectUri:void 0,walletConnecting:!1,applicationType:y}},computed:{walletAvailable(){return!!this.scenario&&U(this.scenario).walletAvailable},paymentMode:{get(){return this.scenario?U(this.scenario).mode:`credits`},set(e){this.scenario&&(te(e),e===`wallet`&&j(this.walletRail),e===`wallet`&&this.walletRail===`base`&&!this.evmAddress&&this.openEvmWalletPicker(),e===`wallet`&&this.walletRail===`solana`&&!this.solanaConnected&&(this.walletPickerVisible=!0))}},walletRail:{get(){return H()},set(e){j(e),e===`base`&&!this.evmAddress&&this.openEvmWalletPicker(),e===`solana`&&!this.solanaConnected&&(this.walletPickerVisible=!0)}},evmAddress(){return ae()?.address},shortEvmAddress(){let e=this.evmAddress||``;return e?`${e.slice(0,6)}…${e.slice(-4)}`:``},solanaConnected(){return!!this.$wallet?.connected?.value},solanaAddress(){return this.$wallet?.publicKey?.value?.toBase58?.()},shortSolanaAddress(){let e=this.solanaAddress||``;return e?`${e.slice(0,6)}…${e.slice(-6)}`:``},solanaWallets(){let e=this.$wallet?.wallets?.value||[],t=e=>e===`Installed`?0:e===`Loadable`?1:2;return[...e].sort((e,n)=>t(e.readyState)-t(n.readyState))},mobileDevice(){return/Android|iPhone|iPad|iPod/i.test(navigator.userAgent)},shortWalletConnectUri(){let e=this.walletConnectUri||``;return e.length>32?`${e.slice(0,18)}…${e.slice(-10)}`:e},authenticated(){return!!this.$store.state.token.access},user(){return this.$store.state.user},balanceAmount(){return Number(this.application?.remaining_amount??0)},balanceUnit(){if(this.paymentMode===`wallet`)return this.walletConnected?``:this.$t(`common.x402Scenario.wallet`);let e=`service.unit.${this.application?.service?.unit||`credit`}`+(this.balanceAmount===1?``:`s`);return this.$t(e)},walletConnected(){return this.walletRail===`base`?!!this.evmAddress:this.solanaConnected},balanceText(){if(this.paymentMode===`wallet`)return this.walletRail===`base`?this.shortEvmAddress:this.solanaConnected?this.shortSolanaAddress:``;let e=this.balanceAmount;return Number.isFinite(e)?e>=1e3?Math.round(e).toLocaleString():e>=100?e.toFixed(1):e.toFixed(2):`0`},balanceTitle(){return`${this.balanceText} ${this.balanceUnit}`.trim()}},watch:{visible(e){e&&this.authenticated&&ne(this.$store.state.token.access).catch(()=>void 0)}},methods:{async openEvmWalletPicker(){this.evmWallets=await q(),this.evmWalletPickerVisible=!0},async connectEvmWallet(e){if(!this.walletConnecting){if(e.installUrl&&!e.provider){window.open(e.installUrl,`_blank`,`noopener,noreferrer`);return}this.walletConnecting=!0;try{if(e.kind===`walletconnect`)this.walletConnectUri=void 0,this.walletConnectVisible=!0,await N(e=>{this.walletConnectUri=e}),this.walletConnectVisible=!1;else{if(!e.provider)return;await P(e.provider)}j(`base`),this.evmWalletPickerVisible=!1,X(`base`,`scenario_status`)}catch(e){console.warn(`Base wallet connect failed`,e),b.error(String(this.$t(`coin.message.connectError`)))}finally{this.walletConnecting=!1}}},openWalletConnectUri(){this.walletConnectUri&&(window.location.href=this.walletConnectUri)},async disconnectEvmWallet(){await R()},async connectSolanaWallet(e){let t=this.$wallet,n=e?.adapter?.name;if(!(!t||!n||this.walletConnecting)){this.walletConnecting=!0;try{t.select(n),await a(),await t.connect(),j(`solana`),this.walletPickerVisible=!1,X(`solana`,`scenario_status`)}catch(e){console.warn(`wallet connect failed`,e),b.error(String(this.$t(`coin.message.connectError`)))}finally{this.walletConnecting=!1}}},async disconnectSolanaWallet(){await this.$wallet?.disconnect?.()},onGoUsage(e){let t={name:z,query:{application_id:e.id}};if(O()){this.visible=!1,this.$router.push(t);return}window.open(this.$router.resolve(t).href,`_blank`)},onBuyMore(e){let t=ie(e);if(t){if(O()){this.visible=!1,this.$router.push(t);return}window.open(this.$router.resolve(t).href,`_blank`)}},onSelectApplication(e){this.$emit(`select`,e)}}}),Pe={class:`status`},Fe={key:1},Ie={class:`text-center mb-4`},Le={class:`flex flex-col gap-4 mb-6 overflow-y-auto`},Re={key:2,class:`wallet-mode`},ze={class:`wallet-connected`},Be={class:`wallet-address`},Ve={class:`wallet-connected`},He={class:`wallet-address`},Ue={class:`wallet-hint`},We={class:`wallet-list`},Ge=[`disabled`,`onClick`],Ke=[`src`,`alt`],qe={class:`wallet-list-name`},Je={class:`wallet-list-status`},$={key:0,class:`wallet-hint`},Ye={class:`wallet-connect-panel`},Xe={key:0,class:`wallet-connect-qr`},Ze={key:1,class:`wallet-hint`},Qe={key:2,class:`wallet-connect-actions`},$e={class:`wallet-connect-uri`},et={class:`wallet-hint`},tt=[`title`],nt={class:`entry-amount`},rt={class:`entry-unit`};function it(t,a,h,ee,g,_){let v=u(`el-tab-pane`),y=u(`el-tabs`),b=u(`application-info`),x=u(`el-radio-button`),S=u(`el-radio-group`),C=u(`el-tag`),w=u(`el-button`),T=u(`continuous-payment-card`),E=u(`el-dialog`),D=u(`qr-code`),O=u(`copy-to-clipboard`),k=u(`solana-wallet-picker-dialog`),A=u(`wallet-icon`);return m(),c(`div`,Pe,[o(E,{modelValue:t.visible,"onUpdate:modelValue":a[3]||=e=>t.visible=e,class:`mt-12`,width:`450px`},{default:f(()=>[t.walletAvailable?(m(),d(y,{key:0,modelValue:t.paymentMode,"onUpdate:modelValue":a[0]||=e=>t.paymentMode=e,class:`payment-tabs`},{default:f(()=>[o(v,{label:t.$t(`common.x402Scenario.credits`),name:`credits`},null,8,[`label`]),o(v,{label:t.$t(`common.x402Scenario.wallet`),name:`wallet`},null,8,[`label`])]),_:1},8,[`modelValue`])):s(``,!0),t.paymentMode===`credits`&&t.application?(m(),c(`div`,Fe,[e(`p`,Ie,i(t.$t(`application.message.applicationSelection`)),1),e(`div`,Le,[(m(!0),c(l,null,p(t.applications,(e,r)=>(m(),d(b,{key:r,class:n({item:!0,active:t.application?.id===e.id}),application:e,"show-id":``,onClick:n=>t.onSelectApplication(e),onUsage:n=>t.onGoUsage(e),onBuy:n=>t.onBuyMore(e)},null,8,[`class`,`application`,`onClick`,`onUsage`,`onBuy`]))),128))])])):t.paymentMode===`wallet`?(m(),c(`div`,Re,[o(S,{modelValue:t.walletRail,"onUpdate:modelValue":a[1]||=e=>t.walletRail=e,size:`small`},{default:f(()=>[o(x,{value:`base`},{default:f(()=>[...a[8]||=[r(`Base`,-1)]]),_:1}),o(x,{value:`solana`},{default:f(()=>[...a[9]||=[r(`Solana`,-1)]]),_:1})]),_:1},8,[`modelValue`]),t.walletRail===`base`?(m(),c(l,{key:0},[t.evmAddress?(m(),c(l,{key:0},[e(`div`,ze,[o(C,{type:`success`},{default:f(()=>[r(i(t.$t(`order.message.x402WalletConnected`)),1)]),_:1}),e(`span`,Be,i(t.shortEvmAddress),1)]),o(w,{onClick:t.disconnectEvmWallet},{default:f(()=>[r(i(t.$t(`coin.button.disconnect`)),1)]),_:1},8,[`onClick`])],64)):(m(),d(w,{key:1,type:`primary`,onClick:t.openEvmWalletPicker},{default:f(()=>[r(i(t.$t(`order.message.x402ConnectWallet`)),1)]),_:1},8,[`onClick`]))],64)):(m(),c(l,{key:1},[t.solanaConnected&&t.solanaAddress?(m(),c(l,{key:0},[e(`div`,Ve,[o(C,{type:`success`},{default:f(()=>[r(i(t.$t(`order.message.x402WalletConnected`)),1)]),_:1}),e(`span`,He,i(t.shortSolanaAddress),1)]),o(w,{onClick:t.disconnectSolanaWallet},{default:f(()=>[r(i(t.$t(`coin.button.disconnect`)),1)]),_:1},8,[`onClick`]),t.authenticated?(m(),d(T,{key:0,"continuous-only":t.scenario===`chat`},null,8,[`continuous-only`])):s(``,!0)],64)):(m(),d(w,{key:1,type:`primary`,onClick:a[2]||=e=>t.walletPickerVisible=!0},{default:f(()=>[r(i(t.$t(`order.message.x402ConnectWallet`)),1)]),_:1}))],64)),e(`p`,Ue,i(t.$t(`common.x402Scenario.quoteBeforeSigning`)),1)])):s(``,!0)]),_:1},8,[`modelValue`]),o(E,{modelValue:t.evmWalletPickerVisible,"onUpdate:modelValue":a[4]||=e=>t.evmWalletPickerVisible=e,title:`Base`,width:`420px`},{default:f(()=>[e(`div`,We,[(m(!0),c(l,null,p(t.evmWallets,n=>(m(),c(`button`,{key:n.id,class:`wallet-list-item`,disabled:t.walletConnecting,onClick:e=>t.connectEvmWallet(n)},[n.icon?(m(),c(`img`,{key:0,class:`wallet-list-icon`,src:n.icon,alt:n.name},null,8,Ke)):s(``,!0),e(`span`,qe,i(n.name),1),e(`span`,Je,i(t.$t(n.kind===`walletconnect`?`order.message.x402WalletStatusQr`:n.readyState===`Detected`?`order.message.x402WalletStatusDetected`:`order.message.x402WalletStatusInstall`)),1)],8,Ge))),128)),t.evmWallets.length?s(``,!0):(m(),c(`p`,$,i(t.$t(`order.message.x402NoWalletDesc`)),1))])]),_:1},8,[`modelValue`]),o(E,{modelValue:t.walletConnectVisible,"onUpdate:modelValue":a[5]||=e=>t.walletConnectVisible=e,title:t.$t(`order.message.x402WalletConnectTitle`),width:`420px`},{default:f(()=>[e(`div`,Ye,[t.walletConnectUri?(m(),c(`div`,Xe,[o(D,{value:t.walletConnectUri,size:260,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])])):(m(),c(`p`,Ze,i(t.$t(`order.message.x402WalletConnectPreparing`)),1)),t.walletConnectUri?(m(),c(`div`,Qe,[t.mobileDevice?(m(),d(w,{key:0,type:`primary`,onClick:t.openWalletConnectUri},{default:f(()=>[r(i(t.$t(`order.message.x402WalletConnectOpenWallet`)),1)]),_:1},8,[`onClick`])):s(``,!0),e(`span`,$e,[r(i(t.shortWalletConnectUri)+` `,1),o(O,{content:t.walletConnectUri},null,8,[`content`])])])):s(``,!0),e(`p`,et,i(t.$t(`order.message.x402WalletConnectScanHint`)),1)])]),_:1},8,[`modelValue`,`title`]),o(k,{modelValue:t.walletPickerVisible,"onUpdate:modelValue":a[6]||=e=>t.walletPickerVisible=e,wallets:t.solanaWallets,connecting:t.walletConnecting,onSelect:t.connectSolanaWallet},null,8,[`modelValue`,`wallets`,`connecting`,`onSelect`]),e(`button`,{type:`button`,class:`entry`,title:t.balanceTitle,onClick:a[7]||=e=>t.visible=!0},[o(A,{class:`entry-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,nt,i(t.balanceText),1),e(`span`,rt,i(t.balanceUnit),1)],8,tt)])}var at=A(Ne,[[`render`,it],[`__scopeId`,`data-v-54bcdea3`]]);export{at as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{m,p as h,v as g}from"./models-CSuuDqRA.js";import{t as _}from"./card-IQwqnRJR.js";import{n as v,t as y}from"./row-D_DEh6Xl.js";import{t as b}from"./empty-C5KjRN0h.js";import{t as x}from"./skeleton-Dj_a_iIP.js";import{t as S}from"./check-Cmnz4Bu0.js";import"./constants-BmcMHgPT.js";import{T as C,c as w,h as T,o as E}from"./i18n-3aZQnVTW.js";import{A as D,Ha as O,Xi as k,Xr as A,bt as j,io as M,no as N,ta as P,ti as F,wn as I,wt as L,yt as R}from"./index-BHXtbt9o.js";var z=p({name:`ConsoleSubscriptionBuy`,components:{CloseIcon:O,ConfirmIcon:S,ElSkeleton:x,ElRow:y,ElTag:N,ElCol:v,ElCard:_,ElEmpty:b,ElButton:M},data(){return{application:void 0,application2:void 0,usageApplication:void 0,type:h.PERIOD,services:[],loading:!1,loadFailed:!1,creating:!1,creatingUsageApplication:!1,subscription:void 0}},computed:{site(){return this.$store.getters.site},applicationId(){return this.$route.params?.id?.toString()},showPayment(){return!C()},effectiveMarkupRatio(){return w(this.application2,this.site)},pricingAvailable(){return this.effectiveMarkupRatio!==void 0},subscriptions(){let e=[{name:`WEEK`,label:this.$t(`console.subscription.weekly`),description:this.$t(`console.subscription.weekly.description`),duration:10080*60},{name:`MONTH`,label:this.$t(`console.subscription.monthly`),description:this.$t(`console.subscription.monthly.description`),duration:720*60*60},{name:`YEAR`,tag:this.$t(`console.button.suggested`),label:this.$t(`console.subscription.yearly`),description:this.$t(`console.subscription.yearly.description`),duration:365*24*60*60}];for(let t of e){console.log(`item`,t);let e=this.getPackages(t.duration);console.log(`pkgs`,e),t.available=e.length>0&&this.effectiveMarkupRatio!==void 0,t.available&&(t.price=E(e.reduce((e,t)=>e+t.price,0),this.effectiveMarkupRatio));for(let n of e)t.benefits||=[],t.benefits.push({enabled:!0,content:`${n?.service?.title} - ${n.amount} `+this.$t(`service.unit.`+n?.service?.unit+`s`)});t.benefits?.push({enabled:t.name!==`WEEK`,content:this.$t(`console.message.benefit1`)}),t.benefits?.push({enabled:t.name!==`WEEK`,content:this.$t(`console.message.benefit2`)})}return e},service(){return this.application?.service},serviceIds(){return!this.application||!this.application.service?[]:[this.application.service.id]}},async mounted(){if(T(this.$store.getters.site)){this.$router.replace({name:j});return}await this.onInitialize()},methods:{async onInitialize(){this.loading=!0,this.loadFailed=!1;try{if(await this.onFetchApplication(),this.application?.role===`grantee`){this.$router.replace({name:j});return}await this.onFetchApplication2(),this.onFetchUsageApplication(),await this.onCreateApplications(),this.subscription=this.subscriptions.find(e=>e.available)}catch{this.loadFailed=!0}finally{this.loading=!1}},getPriceString:I,async onBuyExtra(){if(!this.creatingUsageApplication){this.creatingUsageApplication=!0;try{if(!this.usageApplication?.id&&this.service?.id)try{let{data:e}=await k.create({service_id:this.service.id,type:h.USAGE});this.usageApplication=e}catch(e){if(e?.response?.data?.code!==`duplication`){g.error(this.$t(`application.message.createFailed`));return}try{await this.onFetchUsageApplication()}catch{g.error(this.$t(`application.message.fetchFailed`));return}}if(!this.usageApplication?.id){g.error(this.$t(`console.message.applicationNotFound`));return}this.$router.push({name:R,params:{id:this.usageApplication.id}})}finally{this.creatingUsageApplication=!1}}},getPackages(e){let t=[];if(!this.service)return[];let n=[this.service].sort((e,t)=>this.serviceIds.indexOf(e.id)-this.serviceIds.indexOf(t.id));for(let r of n){let n=r.packages?.find(t=>t.type===m.PERIOD&&t.duration===e);n&&t.push({...n,service:r})}return t},async onCreateApplications(){let e=[];if(this.application2||e.push(this.application?.service?.id),e.length>0){for(let t of e)await k.create({service_id:t,type:h.PERIOD});await this.onFetchApplication2()}},onChangeType(){console.log(`onChangeType`,this.type),this.$router.push({name:R,params:this.$route.params})},async onFetchServices(){let{data:e}=await A.getAll({id:this.serviceIds});this.services=e.items,console.debug(`services`,this.services)},async onFetchApplication(){let{data:e}=await k.get(this.applicationId);this.application=e,console.debug(`application`,this.application)},async onFetchApplication2(){let{data:e}=await k.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,service_id:this.serviceIds,type:h.PERIOD});this.application2=e.items?.[0],console.debug(`application2`,this.application2)},async onFetchUsageApplication(){let{data:e}=await k.getAll({limit:1,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,service_id:this.serviceIds,type:h.USAGE});this.usageApplication=e.items?.[0]},onCreateOrder(e){let t=this.getPackages(e.duration);if(!(!this.pricingAvailable||!e.available||t.length===0)){if(this.subscription=e,this.creating=!0,!this.application2||!this.application2.id){g.error(this.$t(`console.message.applicationNotFound`)),this.creating=!1;return}P(`payment_initiated`,{service:this.service?.alias,action:`subscribe`,duration:e.duration}),F.create({application_ids:[this.application2.id],package_ids:t.map(e=>e.id),description:this.service?.title+` - `+e.label}).then(({data:e})=>{this.creating=!1,this.$router.push({name:L,params:{id:e.id}})}).catch(e=>{g.error(this.$t(`order.message.createFailed`)),this.creating=!1,P(`payment_failed`,{service:this.service?.alias,action:`subscribe`,error:e?.response?.data?.error?.message??String(e)})})}}}}),B={class:`title`},V={class:`introduction`},H={key:1,class:`text-center`},U={class:`name`},W={class:`price`},G={key:1,class:`text-[var(--el-text-color-secondary)]`},K={class:`description`},q={class:`benefits`},J={class:`operations`},Y={key:3,class:`extra`};function X(p,m,h,g,_,v){let y=c(`el-col`),b=c(`el-row`),x=c(`el-empty`),S=c(`el-skeleton`),C=c(`el-button`),w=c(`el-tag`),T=c(`confirm-icon`),E=c(`close-icon`),D=c(`el-card`);return f(),l(b,{class:`panel`},{default:u(()=>[i(y,{span:24},{default:u(()=>[i(b,null,{default:u(()=>[i(y,{span:24},{default:u(()=>[e(`h2`,B,r(p.$t(`common.title.buyMore`)),1)]),_:1})]),_:1}),i(b,null,{default:u(()=>[i(y,{span:24},{default:u(()=>[i(D,{shadow:`hover`,class:`card`},{default:u(()=>[i(b,null,{default:u(()=>[p.showPayment?(f(),l(y,{key:1,class:`max-w-4xl mx-auto`},{default:u(()=>[e(`p`,V,r(p.$t(`console.subscription.title`)),1),p.loading?(f(),l(S,{key:0})):p.loadFailed?(f(),o(`div`,H,[i(x,{description:p.$t(`common.message.noData`)},null,8,[`description`]),i(C,{type:`primary`,round:``,onClick:p.onInitialize},{default:u(()=>[n(r(p.$t(`common.button.refresh`)),1)]),_:1},8,[`onClick`])])):(f(),l(b,{key:2,gutter:15,class:`subscriptions`},{default:u(()=>[(f(!0),o(s,null,d(p.subscriptions,(c,m)=>(f(),l(y,{key:m,xs:24,md:24/(p.subscriptions?.length||4)},{default:u(()=>[i(D,{shadow:`hover`,class:t({subscription:!0,active:p.subscription?.name===c.name,disabled:!c.available}),onClick:e=>c.available&&(p.subscription=c)},{default:u(()=>[e(`h4`,U,[n(r(c.label)+` `,1),c.tag?(f(),l(w,{key:0,type:`warning`},{default:u(()=>[n(r(c.tag),1)]),_:2},1024)):a(``,!0)]),e(`h2`,W,[c.price===void 0?(f(),o(`span`,G,r(p.$t(`common.message.noData`)),1)):(f(),o(s,{key:0},[n(r(p.getPriceString({value:c.price})),1)],64))]),e(`p`,K,r(c.description),1),e(`div`,q,[(f(!0),o(s,null,d(c.benefits,(t,n)=>(f(),o(`div`,{key:n,class:`benefit`},[t.enabled?(f(),l(T,{key:0,class:`icon icon-check`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(f(),l(E,{key:1,class:`icon icon-xmark`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,r(t.content),1)]))),128))]),e(`div`,J,[p.showPayment?(f(),l(C,{key:0,class:`btn btn-subscribe`,type:p.subscription?.name===c?.name?`primary`:``,disabled:!c.available,round:``,onClick:e=>p.onCreateOrder(c)},{default:u(()=>[n(r(p.$t(`common.button.buy`)),1)]),_:1},8,[`type`,`disabled`,`onClick`])):a(``,!0)])]),_:2},1032,[`class`,`onClick`])]),_:2},1032,[`md`]))),128))]),_:1})),!p.loading&&!p.loadFailed&&p.showPayment?(f(),o(`div`,Y,[e(`span`,null,r(p.$t(`console.message.doNotWantSubscribe`)),1),i(C,{type:`primary`,class:`btn btn-extra`,round:``,size:`small`,loading:p.creatingUsageApplication,onClick:p.onBuyExtra},{default:u(()=>[n(r(p.$t(`console.message.buyExtra`)),1)]),_:1},8,[`loading`,`onClick`])])):a(``,!0)]),_:1})):(f(),l(y,{key:0,class:`max-w-4xl mx-auto`},{default:u(()=>[i(x,{description:p.$t(`common.message.noData`)},null,8,[`description`])]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}var Z=D(z,[[`render`,X],[`__scopeId`,`data-v-45345ecd`]]);export{Z as default};
|
|
@@ -1 +0,0 @@
|
|
|
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-CD3MG9sV.js";import{t as v}from"./upload-QoHt30kH.js";import{t as y}from"./tooltip-BKeGCQnC.js";import{t as b}from"./alert-BprQRUmf.js";import{h as x,v as S}from"./models-CSuuDqRA.js";import{t as C}from"./slider-BIlpcCpb.js";import{t as w}from"./segmented-D0zHdf9D.js";import{t as T}from"./clock-B7yL_XXj.js";import{i as E,n as D,r as O,s as k,t as A}from"./pagination-BeJR0FnO.js";import{t as ee}from"./info-xIzYgAiV.js";import{t as j}from"./mic-DPRovWzT.js";import{t as M}from"./rotate-ccw-Bo7KtpMu.js";import{t as N}from"./trash-2-1--IdOz8.js";import{t as te}from"./triangle-alert-CsggA_lm.js";import{t as ne}from"./upload-C1ZLDC6M.js";import{t as P}from"./wand-sparkles-D1YhC4me.js";import{_t as re,mt as ie,vt as F}from"./constants-BmcMHgPT.js";import{A as I,Ba as L,Cn as R,Gn as z,O as B,Ua as V,Wa as H,at as U,ca as W,ea as G,fo as K,io as q,it as J,ot as Y}from"./index-BHXtbt9o.js";import{t as ae}from"./CopyToClipboard-CaPuzTeQ.js";import{t as oe}from"./ReportButton-DqBK7S8_.js";import{t as se}from"./ServicePricingSummary-C1I-y6dH.js";import{t as ce}from"./ApiCodeButton-DBIIyPcm.js";import{t as le}from"./BotPlaceholder-D9exsWtJ.js";import{t as ue}from"./taskPollingMixin-CcLxtz8z.js";import{t as de}from"./Hailuo-Dqi6oENw.js";import{t as fe}from"./TabSwitcher-Jf2B0-vC.js";import{t as pe}from"./ShowcaseResultTabs-rMhxrzq3.js";import{t as me}from"./showcaseRecreateMixin-CT2Cvorb.js";var he=V(`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`}]]),ge=m({name:`FishTextInput`,components:{PromptTextarea:E},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 _e(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 ve=I(ge,[[`render`,_e]]),ye=m({name:`FishModelSelector`,components:{ElSelect:g,ElOption:_},computed:{options(){return[{value:re,label:this.$t(`fish.button.modelS21Pro`)},{value:F,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||=ie}}),be={class:`field`},xe={class:`title font-bold`};function Se(t,n,r,o,m,h){let g=l(`el-option`),_=l(`el-select`);return p(),s(`div`,be,[e(`h2`,xe,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 Ce=I(ye,[[`render`,Se],[`__scopeId`,`data-v-78857e08`]]),we=m({name:`FishVoiceOption`,props:{option:{type:Object,required:!0},playing:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:[`preview`]}),Te={class:`voice-option`},Ee=[`aria-label`],De={key:0,class:`spin`,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},Oe={key:1,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},ke={key:2,viewBox:`0 0 24 24`,width:`13`,height:`13`,"aria-hidden":`true`},Ae={key:1,class:`preview placeholder`,"aria-hidden":`true`},je={class:`meta`},Me={class:`label`},Ne={key:0,class:`description`};function Pe(r,a,c,l,u,d){return p(),s(`div`,Te,[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`,De,[...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`,Oe,[...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`,ke,[...a[4]||=[e(`path`,{d:`M8 5v14l11-7z`,fill:`currentColor`},null,-1)]]))],42,Ee)):(p(),s(`span`,Ae,[...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`,je,[e(`span`,Me,i(r.option.label),1),r.option.description?(p(),s(`span`,Ne,i(r.option.description),1)):o(``,!0)])])}var Fe=I(we,[[`render`,Pe],[`__scopeId`,`data-v-c16a6a46`]]),Ie=e=>(e.id||e._id||e.reference_id||``).toString(),X=e=>{let t=Ie(e);return{value:t,label:e.title||t,description:e.description,audio:e.samples?.[0]?.audio}},Le=m({name:`FishVoicePicker`,components:{ElSelect:g,ElOption:_,ElOptionGroup:h,VoiceOption:Fe},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(X).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(X).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 z.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 z.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}}}),Re={class:`field`},ze={class:`title font-bold`};function Be(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`,Re,[e(`h2`,ze,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 Ve=I(Le,[[`render`,Be],[`__scopeId`,`data-v-6183b210`]]),He=50*1024*1024,Ue=m({name:`FishReferenceAudioInput`,components:{ElButton:q,ElInput:K,ElUpload:v,UndoIcon:M,UploadIcon:ne},mixins:[U],props:{modelValue:{type:Object,default:void 0}},emits:[`update:modelValue`],data(){return{fileList:[],uploading:!1}},computed:{value(){return this.modelValue},uploadUrl(){return`${L()}/api/v1/files/`},uploadHeaders(){return{Authorization:`Bearer ${this.$store.state.token?.access}`}}},methods:{onBeforeUpload(e){return/\.(mp3|wav)$/i.test(e.name)?e.size>He?(S.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0):(S.warning(this.$t(`fish.message.instantAudioFormat`)),!1)},onExceed(){S.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,S.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){if(this.uploading=!1,!e?.file_url){this.fileList=[],S.error(this.$t(`fish.message.uploadError`));return}this.fileList=n,this.emitValue(e.file_url,this.value?.text||``)},updateText(e){this.emitValue(this.value?.audio||``,e)},clear(){this.fileList=[],this.$emit(`update:modelValue`,void 0)},emitValue(e,t){this.$emit(`update:modelValue`,{audio:e,text:t})}}}),We={class:`reference-input`},Ge={class:`field-block mb-3`},Ke={class:`flex items-baseline justify-between mb-1`},qe={class:`title font-bold`},Je={class:`hint`},Ye={key:0,class:`audio-actions`},Xe={key:1,class:`mt-2`},Ze=[`src`],Qe={class:`field-block`},$e={class:`title font-bold`},et={class:`hint`};function tt(t,n,c,u,f,m){let h=l(`upload-icon`),g=l(`el-button`),_=l(`el-upload`),v=l(`undo-icon`),y=l(`el-input`);return p(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`h2`,qe,[r(i(t.$t(`fish.name.referenceAudio`))+` `,1),n[1]||=e(`span`,{class:`required`},`*`,-1)])]),e(`p`,Je,i(t.$t(`fish.description.instantReferenceAudio`)),1),t.value?.audio?o(``,!0):(p(),s(`div`,Ye,[a(_,{"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,limit:1,class:`upload-wrapper`,action:t.uploadUrl,accept:`.mp3,.wav,audio/mpeg,audio/wav`,"show-file-list":!1,"on-exceed":t.onExceed,"on-error":t.onUploadError,"on-success":t.onUploadSuccess,"before-upload":t.onBeforeUpload,headers:t.uploadHeaders},{default:d(()=>[a(g,{type:`primary`,plain:``,round:``,loading:t.uploading},{default:d(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.uploadAudio`)),1)]),_:1},8,[`loading`])]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`before-upload`,`headers`])])),t.value?.audio?(p(),s(`div`,Xe,[e(`audio`,{src:t.value.audio,controls:``,preload:`metadata`,class:`w-full`},null,8,Ze),a(g,{link:``,size:`small`,onClick:t.clear},{default:d(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.replaceAudio`)),1)]),_:1},8,[`onClick`])])):o(``,!0)]),e(`div`,Qe,[e(`h2`,$e,[r(i(t.$t(`fish.name.referenceTranscript`))+` `,1),n[2]||=e(`span`,{class:`required`},`*`,-1)]),e(`p`,et,i(t.$t(`fish.description.referenceTranscript`)),1),a(y,{"model-value":t.value?.text||``,type:`textarea`,rows:2,maxlength:`10000`,placeholder:t.$t(`fish.placeholder.referenceTranscript`),"onUpdate:modelValue":t.updateText},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`])])])}var nt=m({name:`FishConfigPanel`,components:{MagicIcon:P,ElButton:q,ElSegmented:w,ElSlider:C,TextInput:ve,ModelSelector:Ce,VoicePicker:Ve,ReferenceAudioInput:I(Ue,[[`render`,tt],[`__scopeId`,`data-v-1039ca6d`]]),ServicePricingSummary:se},emits:[`generate`],computed:{config(){return this.$store.state.fish?.config},consumption(){let e=this.config?.text?.trim()??``;return R({...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;if(typeof e!=`string`||!e.trim())return!1;if(this.voiceMode!==`instant`)return!0;let t=this.instantReference;return!!t?.audio&&!!t.text?.trim()},voiceModeOptions(){return[{label:this.$t(`fish.value.savedVoice`),value:`saved`},{label:this.$t(`fish.value.instantVoice`),value:`instant`}]},voiceMode:{get(){return this.config?.voiceMode??`saved`},set(e){this.$store.commit(`fish/setConfig`,{...this.config,voiceMode:e,reference_id:void 0,references:void 0})}},instantReference:{get(){return this.config?.references?.[0]},set(e){this.$store.commit(`fish/setConfig`,{...this.config,voiceMode:`instant`,reference_id:void 0,references:e?[e]:void 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`)}}}),rt={class:`flex flex-col h-full`},it={class:`flex-1 overflow-y-auto p-5`},at={class:`field mb-4`},ot={class:`title font-bold`},st={class:`field mb-4`},ct={class:`title font-bold`},lt={class:`flex flex-col items-center justify-center px-5 pb-5`};function ut(t,n,o,c,f,m){let h=l(`text-input`),g=l(`model-selector`),_=l(`el-segmented`),v=l(`voice-picker`),y=l(`reference-audio-input`),b=l(`el-slider`),x=l(`service-pricing-summary`),S=l(`magic-icon`),C=l(`el-button`);return p(),s(`div`,rt,[e(`div`,it,[a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),e(`div`,at,[e(`h2`,ot,i(t.$t(`fish.name.voiceSource`)),1),a(_,{modelValue:t.voiceMode,"onUpdate:modelValue":n[0]||=e=>t.voiceMode=e,options:t.voiceModeOptions,class:`value`},null,8,[`modelValue`,`options`])]),t.voiceMode===`saved`?(p(),u(v,{key:0,class:`mb-4`})):(p(),u(y,{key:1,modelValue:t.instantReference,"onUpdate:modelValue":n[1]||=e=>t.instantReference=e,class:`mb-4`},null,8,[`modelValue`])),e(`div`,st,[e(`h2`,ct,i(t.$t(`fish.name.speed`)),1),a(b,{modelValue:t.speed,"onUpdate:modelValue":n[2]||=e=>t.speed=e,min:.5,max:2,step:.1,class:`value`,"show-input":``},null,8,[`modelValue`])])]),e(`div`,lt,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:d(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var dt=I(nt,[[`render`,ut],[`__scopeId`,`data-v-9f895c4e`]]);function ft(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 Z(n.trim())}function Z(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 Z(t.message.trim())}catch{}return e}var pt=m({name:`FishTaskPreview`,components:{DeleteIcon:N,ElTooltip:y,ChannelIcon:k,CpuIcon:he,InfoIcon:ee,MagicIcon:P,MicrophoneIcon:j,TimeIcon:T,WarningIcon:te,CopyToClipboard:ae,ElAlert:b,ElButton:q,ApiCodeButton:ce,ReportButton:oe},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 ft(this.modelValue?.response)}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await H.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}),S.success(this.$t(`common.message.deleteTaskSuccess`))}catch{S.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){window.open(e,`_blank`)}}}),mt={class:`preview`},ht={class:`left`},gt={class:`main`},_t={class:`bot`},vt={class:`datetime`},yt=[`aria-label`],bt={class:`info`},xt={key:0,class:`prompt mt-2`},St={key:0},Ct={key:0,class:`content`},wt=[`src`],Tt={class:`operations mt-2`},Et={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},kt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},At={key:1,class:`content`},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={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`},Pt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Q={key:2,class:`content`},Ft={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function It(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`,mt,[e(`div`,ht,[a(g,{capability:`fish`,part:`avatar`,class:`avatar`})]),e(`div`,gt,[e(`div`,_t,[a(g,{capability:`fish`,part:`name`}),e(`span`,vt,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,yt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,bt,[n.prompt?(p(),s(`p`,xt,[r(i(n.prompt)+` `,1),n.modelValue?.response?o(``,!0):(p(),s(`span`,St,` - (`+i(n.$t(`fish.status.pending`))+`) `,1))])):o(``,!0)]),n.audioUrl?(p(),s(`div`,Ct,[e(`audio`,{src:n.audioUrl,controls:``,preload:`metadata`,class:`w-full mb-3`},null,8,wt),e(`div`,Tt,[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`,Et,[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`,Dt,[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`,Ot,[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`,kt,[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`,At,[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`,jt,[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`,Mt,[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`,Pt,[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`,Q,[a(D,{closable:!1,class:`info`},{default:d(()=>[e(`p`,Ft,[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 Lt=m({name:`FishRecentPanel`,components:{TaskPreview:I(pt,[[`render`,It],[`__scopeId`,`data-v-79dbfe9e`]]),BotPlaceholder:le,NoTasks:O,ScrollList:D},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?.()}}}),Rt={key:0},zt={key:2,class:`w-full h-full flex items-center justify-center`};function Bt(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`,Rt,[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`,zt,[a(v)])):o(``,!0)],64)}var Vt=I(Lt,[[`render`,Bt]]);function $(e,t){let n={text:t,async:!0};return e.voiceMode===`instant`&&e.references?.[0]?n.references=e.references:e.reference_id&&(n.reference_id=e.reference_id),e.format&&(n.format=e.format),e.prosody&&Object.keys(e.prosody).length>0&&(n.prosody=e.prosody),n}var Ht=m({name:`FishTtsIndex`,components:{ConfigPanel:dt,Layout:de,RecentPanel:Vt,ShowcaseResultTabs:pe,TabSwitcher:fe},mixins:[Y,me(`fish`),ue(`fish`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.fish?.status?.getApplications===x.Request},tasksLoading(){return this.$store.state.fish?.status?.getTasks===x.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.onPollTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService(),await this.$store.dispatch(`fish/getVoices`)},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await A({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(!J(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=this.config??{},t=e.text?.trim();if(!t){S.warning(this.$t(`fish.message.textRequired`));return}if(!W())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}let r=e.model||`s2-pro`,i=$(e,t);S.info(this.$t(`fish.message.startingTask`)),G(`fish`,z.generateTts(i,{token:n,model:r})).then(()=>{S.success(this.$t(`fish.message.startTaskSuccess`))}).catch(e=>{B(e,`fish`)||S.error(this.$t(`fish.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}}),Ut={class:`flex flex-col h-full`},Wt={class:`flex-1 min-h-0`};function Gt(t,n,r,i,o,s){let c=l(`tab-switcher`),f=l(`config-panel`),m=l(`recent-panel`),h=l(`showcase-result-tabs`),g=l(`layout`);return p(),u(g,null,{config:d(()=>[e(`div`,Ut,[a(c),e(`div`,Wt,[a(f,{onGenerate:t.onGenerate},null,8,[`onGenerate`])])])]),result:d(()=>[a(h,{service:`fish`},{tasks:d(()=>[a(m,{ref:`recentPanel`,loading:t.loadingMore,onReachTop:t.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var Kt=I(Ht,[[`render`,Gt]]);export{$ as buildFishTtsRequest,Kt as default};
|
|
@@ -1 +0,0 @@
|
|
|
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,ht as u,j as d,mt as f,ot as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-CD3MG9sV.js";import{v as y}from"./models-CSuuDqRA.js";import{t as b}from"./pagination-SWvC0yg5.js";import{t as x}from"./arrow-down-CSGt9t2E.js";import{t as S}from"./arrow-left-l3XZii7G.js";import{t as C}from"./circle-check-CrhnV2f6.js";import{t as w}from"./lock-cFepzwhs.js";import{t as T}from"./plus-CwKarPA6.js";import{t as E}from"./search-b_c_47BV.js";import{S as D,T as O,k,w as A,y as j}from"./i18n-3aZQnVTW.js";import{A as M,Ga as N,Qi as P,Ua as F,Ya as I,Zi as L,fo as R,io as z,za as B}from"./index-BHXtbt9o.js";import{c as V,d as ee,f as te,l as ne,m as H,p as U,u as W}from"./vendor-highlight-Dd94xpKT.js";import{t as G}from"./index.es-C_Gq4vgy.js";import{t as K}from"./VueMarkdown-BgudlQNQ.js";var q=F(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),J=F(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),Y=F(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),X=()=>({baseURL:`${B()}/api/v1`}),Z=new class{key=`skills/installed`;async list(e){return L.get(`/${this.key}/`,{...X(),params:e?{site_id:e}:void 0})}async get(e){return L.get(`/${this.key}/${e}/`,X())}async createMarkdown(e,t){return L.post(`/${this.key}/`,t?{...e,site_id:t}:e,X())}async createTarball(e,t){let n=new FormData;return n.append(`tarball`,e),t&&n.append(`site_id`,t),L.post(`/${this.key}/`,n,{...X(),headers:{"Content-Type":`multipart/form-data`}})}async update(e,t,n){return L.patch(`/${this.key}/${e}/`,t,{...X(),params:n?{site_id:n}:void 0})}async remove(e,t){return L.delete(`/${this.key}/${e}/`,{...X(),params:t?{site_id:t}:void 0})}async enable(e,t){return L.post(`/${this.key}/${e}/enable/`,void 0,{...X(),params:t?{site_id:t}:void 0})}async disable(e,t){return L.post(`/${this.key}/${e}/disable/`,void 0,{...X(),params:t?{site_id:t}:void 0})}async fetchFile(e,t,n){let r=await L.get(`/${this.key}/${e}/files/`,{...X(),params:{path:t,...n?{site_id:n}:{}},responseType:`arraybuffer`}),i=r.headers[`content-type`]||`application/octet-stream`;return{blob:new Blob([r.data],{type:i}),contentType:i}}},Q=new class{key=`skills`;async list(e={}){return P.get(`/${this.key}/`,{...X(),params:e})}async get(e,t){return P.get(`/${this.key}/${e}/`,{...X(),params:t?{site_id:t}:void 0})}async categories(){return P.get(`/${this.key}/categories/`,X())}async install(e,t={}){return L.post(`/${this.key}/${e}/install/`,t,X())}};function re(){let e=new Set;A()&&e.add(`desktop`),O()&&e.add(`ios`),D()&&e.add(`android`),k()&&e.add(`web`);let t=j();if(t===`mac`)e.add(`mac`);else if(t===`windows`)e.add(`windows`);else if(typeof navigator<`u`){let t=navigator.userAgent||``,n=navigator.userAgentData?.platform,r=/macintosh/i.test(t)&&(navigator.maxTouchPoints||0)>1;!O()&&!r&&(n===`macOS`||/mac os x|macintosh/i.test(t))&&e.add(`mac`),(n===`Windows`||/windows nt/i.test(t))&&e.add(`windows`)}return e}var ie=new Set([`mac`,`windows`,`desktop`,`web`,`ios`,`android`]);function ae(e){let t=e.filter(e=>ie.has(e));if(!t.length)return!0;let n=re();return t.some(e=>n.has(e))}H.registerLanguage(`bash`,U),H.registerLanguage(`json`,te),H.registerLanguage(`markdown`,ee),H.registerLanguage(`python`,W),H.registerLanguage(`shell`,ne),H.registerLanguage(`yaml`,V),H.registerAliases([`yml`],{languageName:`yaml`}),H.registerAliases([`py`],{languageName:`python`}),H.registerAliases([`sh`,`zsh`],{languageName:`bash`});var oe=12,se=g({name:`BrowseSkillsDialog`,components:{VueMarkdown:K,ElDialog:I,ElInput:R,ElButton:z,ElPagination:b,ElSelect:_,ElOption:v,FontAwesomeIcon:G,AddIcon:T,BackIcon:S,DownIcon:x,InstallIcon:q,LockIcon:w,SearchIcon:E,SuccessIcon:C},directives:{loading:N},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{loading:!1,installing:!1,items:[],total:0,currentPage:1,searchQuery:``,namespaceFilter:``,sortBy:`popular`,selectedItem:null,searchTimer:null,knownNamespaces:[],publisherByNamespace:{}}},computed:{pageSize(){return oe},namespaceOptions(){let e=new Set(this.knownNamespaces);for(let t of this.items)e.add(t.namespace);return Array.from(e).sort().map(e=>({value:e,label:this.publisherForNamespace(e)}))},detailBody(){return this.selectedItem?this.selectedItem.content.replace(/^---\n[\s\S]*?\n---\n?/,``):``}},methods:{onOpen(){this.selectedItem=null,this.searchQuery=``,this.namespaceFilter=``,this.sortBy=`popular`,this.currentPage=1,this.knownNamespaces=[],this.publisherByNamespace={},this.loadFacets(),this.reload()},openDetail(e){this.selectedItem=e},async loadFacets(){try{let{data:e}=await Q.categories(),t=new Set;for(let n of e.namespaces)t.add(n.namespace);this.knownNamespaces=Array.from(t).sort()}catch(e){console.warn(`failed to load skill catalog facets`,e)}},reloadFromFirstPage(){this.currentPage=1,this.reload()},onPageChange(e){this.currentPage=e,this.reload(),this.$nextTick(()=>{let e=this.$el.querySelector(`.directory-grid-wrapper`);e&&(e.scrollTop=0)})},onSearchInput(){this.searchTimer!==null&&window.clearTimeout(this.searchTimer),this.searchTimer=window.setTimeout(()=>{this.searchTimer=null,this.reloadFromFirstPage()},250)},async reload(){this.loading=!0;try{let{data:e}=await Q.list({q:this.searchQuery.trim()||void 0,namespace:this.namespaceFilter||void 0,sort:this.sortBy,limit:this.pageSize,offset:(this.currentPage-1)*this.pageSize});this.items=e.items,this.total=e.total;for(let t of e.items)t.publisher&&(this.publisherByNamespace[t.namespace]=t.publisher)}catch(e){console.error(e),y.error(this.$t(`skill.directory.loadFailed`))}finally{this.loading=!1}},async onInstall(e){if(!this.installing&&!e.installed){if(!this.canInstallOnSurface(e)){y.warning(this.$t(`skill.directory.surfaceBlocked`,{platforms:this.surfaceLabels(e)}));return}this.installing=!0;try{let{data:t}=await Q.install(e.id,this.siteId?{site_id:this.siteId}:{});y.success(this.$t(`skill.directory.installSuccess`,{name:e.slug})),this.$emit(`installed`,t.id),e.installed=!0,e.install_count+=1}catch(t){let n=this.extractError(t);n.includes(`already exists`)?(e.installed=!0,y.warning(this.$t(`skill.directory.alreadyInstalled`,{name:e.slug}))):y.error(this.$t(`skill.directory.installFailed`,{detail:n}))}finally{this.installing=!1}}},extractError(e){return e?.response?.data?.detail||String(e)||`unknown error`},formatCount(e){return e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)},publisherForNamespace(e){if(this.publisherByNamespace[e])return this.publisherByNamespace[e];let t=this.items.find(t=>t.namespace===e);return t?t.publisher:e},restrictedSurfaces(e){let t=e.frontmatter?.surfaces;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim().toLowerCase()):[]},surfaceLabel(e){let t=`skill.directory.surface.${e}`,n=this.$t(t);return n===t?e:n},surfaceLabels(e){return this.restrictedSurfaces(e).map(e=>this.surfaceLabel(e)).join(` / `)},canInstallOnSurface(e){return ae(this.restrictedSurfaces(e))}}}),ce={class:`directory`},le={class:`directory-main`},ue={class:`directory-header`},de={class:`directory-controls`},fe={class:`directory-grid-wrapper`},pe={key:0,class:`directory-empty`},me={key:1,class:`directory-grid`},he=[`onClick`],ge={class:`directory-card-head`},_e={class:`directory-card-title`},ve=[`title`],ye=[`title`],be=[`aria-label`,`title`,`onClick`],xe=[`title`],Se={class:`directory-card-meta`},Ce={class:`directory-card-publisher`},we={key:0,class:`directory-card-count`},Te=[`title`],Ee={class:`directory-card-desc`},De={key:0,class:`directory-footer`},Oe={class:`directory-detail-head`},ke={class:`directory-detail-actions`},Ae=[`href`],je={class:`directory-detail-body`},Me={class:`directory-detail-title`},Ne={class:`directory-detail-meta`},Pe={key:0},Fe={key:1},Ie=[`title`],Le={class:`directory-detail-desc`};function Re(g,_,v,y,b,x){let S=l(`search-icon`),C=l(`el-input`),w=l(`el-option`),T=l(`el-select`),E=l(`success-icon`),D=l(`lock-icon`),O=l(`add-icon`),k=l(`down-icon`),A=l(`el-pagination`),j=l(`back-icon`),M=l(`font-awesome-icon`),N=l(`el-button`),P=l(`install-icon`),F=l(`vue-markdown`),I=l(`el-dialog`),L=p(`loading`);return h(),d(I,{"append-to-body":``,"model-value":g.modelValue,title:g.$t(`skill.dialog.directoryTitle`),width:`min(960px, 94vw)`,"align-center":``,class:`directory-dialog`,"close-on-click-modal":!g.installing,"show-close":!g.installing,"onUpdate:modelValue":_[5]||=e=>g.$emit(`update:modelValue`,e),onOpen:g.onOpen},{default:f(()=>[e(`div`,ce,[e(`main`,le,[g.selectedItem?(h(),s(c,{key:1},[e(`header`,Oe,[e(`button`,{class:`directory-back-btn`,onClick:_[3]||=e=>g.selectedItem=null},[a(j,{size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.back`)),1)]),e(`div`,ke,[g.selectedItem.source_url?(h(),s(`a`,{key:0,href:g.selectedItem.source_url,target:`_blank`,class:`directory-link`},[a(M,{icon:`fa-brands fa-github`}),r(` `+i(g.$t(`skill.directory.viewSource`)),1)],8,Ae)):o(``,!0),g.selectedItem.installed?(h(),d(N,{key:1,disabled:``,type:`success`,plain:``},{default:f(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.installed`)),1)]),_:1})):g.selectedItem.installable&&!g.canInstallOnSurface(g.selectedItem)?(h(),d(N,{key:2,disabled:``,title:g.$t(`skill.directory.surfaceBlocked`,{platforms:g.surfaceLabels(g.selectedItem)})},{default:f(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.surfaceUnavailable`)),1)]),_:1},8,[`title`])):g.selectedItem.installable?(h(),d(N,{key:3,type:`primary`,loading:g.installing,onClick:_[4]||=e=>g.onInstall(g.selectedItem)},{default:f(()=>[a(P,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.install`)),1)]),_:1},8,[`loading`])):(h(),d(N,{key:4,disabled:``,title:g.selectedItem.license},{default:f(()=>[a(D,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.selectedItem.license||g.$t(`skill.directory.notInstallable`)),1)]),_:1},8,[`title`]))])]),e(`div`,je,[e(`h2`,Me,`/`+i(g.selectedItem.slug),1),e(`div`,Ne,[e(`span`,null,[e(`strong`,null,i(g.$t(`skill.meta.addedBy`))+`:`,1),r(` `+i(g.selectedItem.publisher),1)]),g.selectedItem.license?(h(),s(`span`,Pe,[e(`strong`,null,i(g.$t(`skill.directory.license`))+`:`,1),r(` `+i(g.selectedItem.license),1)])):o(``,!0),g.selectedItem.version?(h(),s(`span`,Fe,`v`+i(g.selectedItem.version),1)):o(``,!0),g.surfaceLabels(g.selectedItem)?(h(),s(`span`,{key:2,class:`directory-detail-surface`,title:g.$t(`skill.directory.surfaceHint`)},i(g.$t(`skill.directory.surfaceOnly`,{platforms:g.surfaceLabels(g.selectedItem)})),9,Ie)):o(``,!0)]),e(`p`,Le,i(g.selectedItem.description),1),a(F,{class:`directory-detail-content`,source:g.detailBody,sanitize:``},null,8,[`source`])])],64)):(h(),s(c,{key:0},[e(`header`,ue,[a(C,{modelValue:g.searchQuery,"onUpdate:modelValue":_[0]||=e=>g.searchQuery=e,class:`directory-search`,size:`default`,clearable:``,placeholder:g.$t(`skill.directory.searchPlaceholder`),onInput:g.onSearchInput},{prefix:f(()=>[a(S,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`,`onInput`]),e(`div`,de,[a(T,{modelValue:g.namespaceFilter,"onUpdate:modelValue":_[1]||=e=>g.namespaceFilter=e,class:`directory-select`,placeholder:g.$t(`skill.directory.allPublishers`),clearable:``,size:`default`,onChange:g.reloadFromFirstPage},{default:f(()=>[(h(!0),s(c,null,m(g.namespaceOptions,e=>(h(),d(w,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),a(T,{modelValue:g.sortBy,"onUpdate:modelValue":_[2]||=e=>g.sortBy=e,class:`directory-select directory-select-sm`,size:`default`,onChange:g.reloadFromFirstPage},{default:f(()=>[a(w,{label:g.$t(`skill.directory.sort.popular`),value:`popular`},null,8,[`label`]),a(w,{label:g.$t(`skill.directory.sort.recent`),value:`recent`},null,8,[`label`]),a(w,{label:g.$t(`skill.directory.sort.name`),value:`name`},null,8,[`label`])]),_:1},8,[`modelValue`,`onChange`])])]),u((h(),s(`div`,fe,[!g.loading&&g.total===0?(h(),s(`p`,pe,i(g.$t(`skill.directory.empty`)),1)):(h(),s(`div`,me,[(h(!0),s(c,null,m(g.items,c=>(h(),s(`article`,{key:c.id,class:n([`directory-card`,{"is-installed":c.installed}]),onClick:e=>g.openDetail(c)},[e(`div`,ge,[e(`span`,_e,`/`+i(c.slug),1),c.installed?(h(),s(`span`,{key:0,class:`directory-card-action is-installed`,title:g.$t(`skill.directory.installed`)},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,ve)):c.installable&&!g.canInstallOnSurface(c)?(h(),s(`span`,{key:1,class:`directory-card-locked`,title:g.$t(`skill.directory.surfaceBlocked`,{platforms:g.surfaceLabels(c)})},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,ye)):c.installable?(h(),s(`button`,{key:2,class:`directory-card-action`,"aria-label":g.$t(`skill.directory.install`),title:g.$t(`skill.directory.install`),onClick:t(e=>g.onInstall(c),[`stop`])},[a(O,{size:16,"aria-hidden":`true`,focusable:`false`})],8,be)):(h(),s(`span`,{key:3,class:`directory-card-locked`,title:c.license},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,xe))]),e(`div`,Se,[e(`span`,Ce,i(c.publisher),1),c.install_count>0?(h(),s(`span`,we,[a(k,{size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.formatCount(c.install_count)),1)])):o(``,!0),g.surfaceLabels(c)?(h(),s(`span`,{key:1,class:`directory-card-surface`,title:g.$t(`skill.directory.surfaceHint`)},i(g.surfaceLabels(c)),9,Te)):o(``,!0)]),e(`p`,Ee,i(c.description),1)],10,he))),128))]))])),[[L,g.loading]]),g.total>g.pageSize?(h(),s(`footer`,De,[a(A,{"current-page":g.currentPage,"page-size":g.pageSize,total:g.total,"pager-count":5,background:``,layout:`prev, pager, next, total`,onCurrentChange:g.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onCurrentChange`])])):o(``,!0)],64))])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`show-close`,`onOpen`])}var ze=M(se,[[`render`,Re],[`__scopeId`,`data-v-f17843cb`]]),Be=10*1024*1024,Ve=/\.(tar\.gz|tgz|tar|zip|md)$/i,$=g({name:`UploadSkillDialog`,components:{ElDialog:I,ElButton:z,AddFileIcon:Y,CloudUploadIcon:J},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{file:null,isDragging:!1,uploading:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.uploading||this.$emit(`update:modelValue`,!1)},reset(){this.file=null,this.isDragging=!1;let e=this.$refs.fileInput;e&&(e.value=``)},humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},onPickFile(){this.uploading||this.$refs.fileInput?.click()},onFilePicked(e){let t=e.target.files?.[0]||null;this.acceptFile(t)},onDrop(e){this.isDragging=!1;let t=e.dataTransfer?.files?.[0]||null;this.acceptFile(t)},acceptFile(e){if(!e){this.file=null;return}if(e.size>Be){y.error(this.$t(`skill.message.fileTooLarge`));return}if(!Ve.test(e.name)){y.error(this.$t(`skill.message.fileTypeWrong`));return}this.file=e},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.file){this.uploading=!0;try{if(/\.md$/i.test(this.file.name)){let e=await this.file.text(),{data:t}=await Z.createMarkdown({content:e},this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,t.id)}else{let{data:e}=await Z.createTarball(this.file,this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id)}this.$emit(`update:modelValue`,!1)}catch(e){y.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.uploading=!1}}}}}),He={key:0,class:`dropzone-hint`},Ue={key:1,class:`dropzone-file`},We={class:`dropzone-file-name`},Ge={class:`dropzone-file-size`},Ke={class:`requirements`},qe={class:`requirements-title`};function Je(o,c,u,p,m,g){let _=l(`add-file-icon`),v=l(`el-button`),y=l(`cloud-upload-icon`),b=l(`el-dialog`);return h(),d(b,{"append-to-body":``,"model-value":o.modelValue,title:o.$t(`skill.dialog.uploadTitle`),width:`min(520px, 94vw)`,"align-center":``,"close-on-click-modal":!o.uploading,"close-on-press-escape":!o.uploading,"show-close":!o.uploading,"onUpdate:modelValue":o.onVisibleChange,onClosed:o.reset},{footer:f(()=>[a(v,{disabled:o.uploading,onClick:o.onClose},{default:f(()=>[r(i(o.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(v,{type:`primary`,loading:o.uploading,disabled:!o.file,onClick:o.onSubmit},{default:f(()=>[a(y,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(o.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:f(()=>[e(`input`,{ref:`fileInput`,type:`file`,accept:`.tar.gz,.tgz,.tar,.zip,.md,application/gzip,application/zip,application/x-tar,text/markdown`,hidden:``,onChange:c[0]||=(...e)=>o.onFilePicked&&o.onFilePicked(...e)},null,544),e(`div`,{class:n([`dropzone`,{"is-dragging":o.isDragging,"has-file":!!o.file}]),onClick:c[1]||=(...e)=>o.onPickFile&&o.onPickFile(...e),onDragover:c[2]||=t(e=>o.isDragging=!0,[`prevent`]),onDragleave:c[3]||=t(e=>o.isDragging=!1,[`prevent`]),onDrop:c[4]||=t((...e)=>o.onDrop&&o.onDrop(...e),[`prevent`])},[a(_,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o.file?(h(),s(`p`,Ue,[e(`span`,We,i(o.file.name),1),e(`span`,Ge,i(o.humanSize(o.file.size)),1)])):(h(),s(`p`,He,i(o.$t(`skill.dialog.uploadDrop`)),1))],34),e(`div`,Ke,[e(`p`,qe,i(o.$t(`skill.dialog.fileRequirements`)),1),e(`ul`,null,[e(`li`,null,i(o.$t(`skill.dialog.requirementMd`)),1),e(`li`,null,i(o.$t(`skill.dialog.requirementArchive`)),1)])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Ye=M($,[[`render`,Je],[`__scopeId`,`data-v-5018f27e`]]),Xe=g({name:`WriteSkillDialog`,components:{ElDialog:I,ElButton:z,ElInput:R,CloudUploadIcon:J},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{content:``,saving:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.saving||this.$emit(`update:modelValue`,!1)},reset(){this.content=``},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.content.trim()){this.saving=!0;try{let{data:e}=await Z.createMarkdown({content:this.content},this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id),this.$emit(`update:modelValue`,!1)}catch(e){y.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.saving=!1}}}}}),Ze={class:`hint`};function Qe(t,n,o,s,c,u){let p=l(`el-input`),m=l(`el-button`),g=l(`cloud-upload-icon`),_=l(`el-dialog`);return h(),d(_,{"append-to-body":``,"model-value":t.modelValue,title:t.$t(`skill.dialog.writeTitle`),width:`min(720px, 94vw)`,"align-center":``,"close-on-click-modal":!t.saving,"close-on-press-escape":!t.saving,"show-close":!t.saving,"onUpdate:modelValue":t.onVisibleChange,onClosed:t.reset},{footer:f(()=>[a(m,{disabled:t.saving,onClick:t.onClose},{default:f(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(m,{type:`primary`,loading:t.saving,disabled:!t.content.trim(),onClick:t.onSubmit},{default:f(()=>[a(g,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:f(()=>[e(`p`,Ze,i(t.$t(`skill.dialog.writeHint`)),1),a(p,{modelValue:t.content,"onUpdate:modelValue":n[0]||=e=>t.content=e,type:`textarea`,rows:18,placeholder:t.$t(`skill.placeholder.content`),spellcheck:`false`,class:`editor`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var $e=M(Xe,[[`render`,Qe],[`__scopeId`,`data-v-a5dcdeb8`]]);export{Z as i,Ye as n,ze as r,$e as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ua as e}from"./index-BHXtbt9o.js";var t=e(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]);export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ua as e}from"./index-BHXtbt9o.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ua as e}from"./index-BHXtbt9o.js";var t=e(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]);export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ua as e}from"./index-BHXtbt9o.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 +0,0 @@
|
|
|
1
|
-
import{O as e,w as t}from"./i18n-3aZQnVTW.js";import{G as n,W as r,j as i,q as a,za as o}from"./index-BHXtbt9o.js";function s(){return new URL(`/connections/popup-return`,o()).toString()}var c=`popup=yes,width=600,height=760,noopener=no,noreferrer=no`;function l(e){let t=typeof e==`string`?e:`about:blank`,n=window.open(t,`acedata-connect`,c);return n?(typeof e!=`string`&&e.then(e=>n.location.replace(e),()=>n.close()),new Promise(e=>{let t=window.setInterval(()=>{n.closed&&(window.clearInterval(t),e())},500)})):null}async function u(e){if(!t())return{returnUrl:e};let n=i();if(!n?.createConnectorCallback)throw Error(`desktop-authorize-unsupported`);let r=await n.createConnectorCallback();return{returnUrl:r.returnUrl,requestId:r.requestId}}async function d(n,r,i){if(t())return m(n,r,i);if(e()){await p(n,r);return}await f(n,r)}async function f(e,t){let i=t||r(e)?n(e,t):e,a=l(i);if(!a){window.location.href=await i;return}await a}async function p(e,t){let r;try{let i=new Promise(e=>{a.addListener(`browserFinished`,()=>e()).then(e=>{r=e})}),o=await n(e,t);await a.open({url:o}),await i}catch(e){console.warn(`in-app browser failed for connector authorize`,e)}finally{await r?.remove()}}async function m(e,t,r){let a=i();if(!a?.openAuthorizeConnector||!a.onConnectorCallback||!r)throw Error(`desktop-authorize-unsupported`);let o=await n(e,t),s,c,l=new Promise((e,t)=>{c=a.onConnectorCallback(t=>{t.requestId===r&&e(t)}),s=window.setTimeout(()=>t(Error(`desktop-authorize-expired`)),600*1e3)});try{return await a.openAuthorizeConnector(o),await l}finally{c?.(),s!==void 0&&window.clearTimeout(s)}}export{u as n,s as r,d as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={"thinking.inProgress":{message:`思考中...`,description:`模型正在生成推理過程時顯示的標籤`},"thinking.done":{message:`思考完成`,description:`模型完成推理後用於摺疊展示推理過程的標籤`},"button.thinkDeeper":{message:`深入思考`,description:`深入思考按鈕`},"button.deepsearch":{message:`深度搜尋`,description:`深度搜尋按鈕`},"button.search":{message:`搜尋`,description:`搜尋按鈕`},"button.edit":{message:`編輯`,description:`編輯傳送的訊息`},"modelGroup.chatgpt":{message:`ChatGPT`,description:`服務的模型名稱,即 GPT`},"modelGroup.chatgptDescription":{message:`OpenAI 開發的 AI 模型`,description:`ChatGPT 模型的描述`},"modelGroup.deepseek":{message:`DeepSeek`,description:`服務的模型名稱,即 DeepSeek`},"modelGroup.deepseekDescription":{message:`深度求索公司開發的 AI 模型`,description:`DeepSeek 模型的描述`},"modelGroup.grok":{message:`Grok`,description:`服務的模型名稱,即 Grok`},"modelGroup.grokDescription":{message:`xAI 公司開發的 AI 模型`,description:`Grok3 模型的描述`},"modelGroup.gemini":{message:`Gemini`,description:`服務的模型名稱,即 Gemini`},"modelGroup.geminiDescription":{message:`Google 開發的 AI 模型`,description:`Gemini 模型組的描述`},"modelGroup.claude":{message:`Claude`,description:`服務的模型名稱,即 Claude`},"modelGroup.claudeDescription":{message:`Anthropic 公司開發的 AI 模型`,description:`Claude 模型組的描述`},"modelGroup.kimi":{message:`Kimi`,description:`服務的模型名稱,即 Kimi`},"modelGroup.kimiDescription":{message:`月之暗面公司開發的 AI 模型`,description:`Kimi 模型組的描述`},"modelGroup.glm":{message:`GLM`,description:`服務的模型名稱,即 GLM`},"modelGroup.glmDescription":{message:`智譜 AI 開發的大語言模型`,description:`GLM 模型組的描述`},"model.astra":{message:`GPT-6 Astra`,description:`服務的模型名稱,即 GPT-6 Astra`},"model.astraDescription":{message:`深度推理旗艦,適合複雜多步驟專案和自主工作流程。`,description:`GPT-6 Astra 模型的描述`},"model.56Sol":{message:`GPT-5.6 Sol`,description:`服務的模型名稱,即 GPT 5.6 Sol`},"model.56SolDescription":{message:`高能力模型,適合高要求的推理、編程和分析任務。`,description:`GPT 5.6 Sol 模型的描述`},"model.56Terra":{message:`GPT-5.6 Terra`,description:`服務的模型名稱,即 GPT 5.6 Terra`},"model.56TerraDescription":{message:`均衡型模型,適合寫作、分析和日常專業工作。`,description:`GPT 5.6 Terra 模型的描述`},"model.56Luna":{message:`GPT-5.6 Luna`,description:`服務的模型名稱,即 GPT 5.6 Luna`},"model.56LunaDescription":{message:`免費低延遲模型,適合快速問答和輕量任務。`,description:`GPT 5.6 Luna 模型的描述`},"model.freeTag":{message:`免費`,description:`模型選擇器中免費模型旁的角標文案`},"model.deepseekChat":{message:`DeepSeek V3`,description:`服務的模型名稱,即 DeepSeek 聊天`},"model.deepseekChatDescription":{message:`通用模型,適合寫作、知識任務和日常輔助。`,description:`DeepSeek 聊天模型的描述`},"model.deepseekReasoner":{message:`DeepSeek R1`,description:`服務的模型名稱,即 DeepSeek 推理`},"model.deepseekReasonerDescription":{message:`專注推理,適合數學、邏輯和分步解決問題。`,description:`DeepSeek 推理模型的描述`},"model.deepseekChat32":{message:`DeepSeek V3.2 實驗版`,description:`服務的模型名稱,即 DeepSeek V3.2 Exp`},"model.deepseekChat32Description":{message:`實驗型通用模型,適合體驗和評估新能力與新行為。`,description:`DeepSeek V3.2 實驗模型的描述`},"model.deepseekV4Flash":{message:`DeepSeek V4 Flash`,description:`服務的模型名稱,即 DeepSeek V4 Flash`},"model.deepseekV4FlashDescription":{message:`快速的 100 萬上下文模型,適合長文件、摘要和高吞吐任務。`,description:`DeepSeek V4 Flash 模型的描述`},"model.grok4":{message:`Grok 4`,description:`服務的模型名稱,即 Grok 4`},"model.grok4Description":{message:`支援視覺理解,適合深入分析、研究和複雜問題。`,description:`Grok 4 模型的描述`},"model.grok3":{message:`Grok 3`,description:`服務的模型名稱`},"model.grok3Description":{message:`通用模型,適合對話、寫作和一般分析。`,description:`Grok 3 模型的描述`},"model.gemini30Pro":{message:`Gemini 3.0 Pro`,description:`服務的模型名稱,即 Gemini 3.0 Pro`},"model.gemini30ProDescription":{message:`多模態 Pro 模型,適合複雜分析、文件和視覺任務。`,description:`Gemini 3.0 Pro 模型的描述`},"model.gemini31Pro":{message:`Gemini 3.1 Pro`,description:`服務的模型名稱,即 Gemini 3.0 Pro`},"model.gemini31ProDescription":{message:`強化推理的 Pro 模型,適合複雜程式設計、分析和多模態工作。`,description:`Gemini 3.0 Pro 模型的描述`},"model.gemini25Pro":{message:`Gemini 2.5 Pro`,description:`服務的模型名稱,即 Gemini 2.5 Pro`},"model.gemini25ProDescription":{message:`成熟的 Pro 模型,適合深度推理、大型檔案和結構化分析。`,description:`Gemini 2.5 Pro 模型的描述`},"model.gemini25Flash":{message:`Gemini 2.5 Flash`,description:`服務的模型名稱,即 Gemini 2.5 Flash`},"model.gemini25FlashDescription":{message:`高效多模態模型,適合快速對話和成本敏感型任務。`,description:`Gemini 2.5 Flash 模型的描述`},"model.gemini36Flash":{message:`Gemini 3.6 Flash`,description:`服務的模型名稱,即 Gemini 3.6 Flash`},"model.gemini36FlashDescription":{message:`快速推理模型,適合視覺理解、工具呼叫和互動式任務。`,description:`Gemini 3.6 Flash 模型的描述`},"model.gemini35Flash":{message:`Gemini 3.5 Flash`,description:`服務的模型名稱,即 Gemini 2.5 Flash`},"model.gemini35FlashDescription":{message:`輕量多模態模型,適合快速擷取、分類和對話。`,description:`Gemini 2.5 Flash 模型的描述`},"model.claudeOpus5":{message:`Claude Opus 5`,description:`服務的模型名稱,即 Claude Opus 5`},"model.claudeOpus5Description":{message:`深度推理模型,適合複雜編程、研究和長時間智能體任務。`,description:`Claude Opus 5 模型的描述`},"model.claudeOpus48":{message:`Claude Opus 4.8`,description:`服務的模型名稱,即 Claude Opus 4.8`},"model.claudeOpus48Description":{message:`高能力模型,適合嚴謹分析、編程和多步驟規劃。`,description:`Claude Opus 4.8 模型的描述`},"model.claudeSonnet46":{message:`Claude Sonnet 4.6`,description:`服務的模型名稱,即 Claude Sonnet 4.6`},"model.claudeSonnet46Description":{message:`均衡型模型,適合編程、文件處理和高頻專業工作。`,description:`Claude Sonnet 4.6 模型的描述`},"model.claudeHaiku45":{message:`Claude Haiku 4.5`,description:`服務的模型名稱,即 Claude Haiku 4.5`},"model.claudeHaiku45Description":{message:`低延遲模型,適合簡潔問答、資訊提取和高並發請求。`,description:`Claude Haiku 4.5 模型的描述`},"model.kimiK3":{message:`Kimi K3`,description:`月之暗面 Kimi K3 旗艦模型名稱`},"model.kimiK3Description":{message:`旗艦推理與視覺模型,適合超長文件和複雜工作流程。`,description:`Kimi K3 模型的描述`},"model.kimiK26":{message:`Kimi K2.6`,description:`Kimi K2.6 模型名稱`},"model.kimiK26Description":{message:`多模態推理模型,適合視覺分析和結構化 K2 任務。`,description:`Kimi K2.6 模型的描述`},"model.kimiK25":{message:`Kimi K2.5`,description:`服務的模型名稱,即 Kimi K2.5`},"model.kimiK25Description":{message:`通用 K2 模型,適合寫作、摘要和日常知識工作。`,description:`Kimi K2.5 模型的描述`},"model.kimiK2Thinking":{message:`Kimi K2 Thinking`,description:`服務的模型名稱,即 Kimi K2 推理`},"model.kimiK2ThinkingDescription":{message:`審慎推理模型,適合數學、邏輯和高難度規劃任務。`,description:`Kimi K2 推理模型的描述`},"model.kimiK2ThinkingTurbo":{message:`Kimi K2 Thinking Turbo`,description:`服務的模型名稱,即 Kimi K2 极速推理`},"model.kimiK2ThinkingTurboDescription":{message:`加速推理模型,兼顧思考深度與更快回應。`,description:`Kimi K2 极速推理模型的描述`},"model.glm51":{message:`GLM 5.1`,description:`服務的模型名稱,即 GLM 5.1`},"model.glm51Description":{message:`通用模型,適合推理、寫作和中文知識工作。`,description:`GLM 5.1 模型的描述`},"model.glm47":{message:`GLM 4.7`,description:`服務的模型名稱,即 GLM 4.7`},"model.glm47Description":{message:`高性價比模型,適合一般分析、草擬和對話任務。`,description:`GLM 4.7 模型的描述`},"message.startNewChat":{message:`開始新對話`,description:`網頁中的訊息,告訴使用者開始新對話`},"message.uploadFile":{message:`上傳檔案`,description:`網頁中的訊息,告訴使用者上傳檔案`},"message.noToken":{message:`請先申請相應服務`,description:`網頁中的訊息,告訴使用者先申請相應服務`},"message.newMessagePlaceholder":{message:`請輸入您的問題...`,description:`網頁中的佔位符,告訴使用者輸入問題`},"message.noInput":{message:`問題不能為空`,description:`網頁中的訊息,告訴使用者問題不能為空`},"message.uploadReferencesExceed":{message:`最多隻能上傳 1 個檔案`,description:`網頁中的訊息,告訴使用者最多隻能上傳 1 個檔案`},"message.uploadReferencesError":{message:`檔案上傳失敗,請稍後重試`,description:`網頁中的訊息,告訴使用者檔案上傳失敗,請稍後重試`},"message.uploadReferencesTooLarge":{message:`文件大小 {size} 超過上限 {max},請壓縮後重試`,description:`網頁中的消息,告訴用戶文件超過上傳大小上限,需要壓縮後重試`},"message.notApplied":{message:`您尚未申請此服務,請先申請`,description:`網頁中的訊息,告訴使用者您尚未申請此服務,請先申請`},"message.tryForFree":{message:`免費試用`,description:`網頁中的訊息,告訴使用者免費試用`},"message.question1":{message:`建立訓練計劃`,description:`開始對話的示例問題,要求使用者編寫一段輸出 Hello World 的 JavaScript 程式碼`},"message.question2":{message:`製作個人網頁`,description:`開始對話的示例問題,要求使用者給 Mike 寫封電子郵件,告訴他我剛搬家`},"message.question3":{message:`設計有趣的程式設計遊戲`,description:`開始對話的示例問題,要求使用者用簡單的語言解釋量子計算的基本原理`},"message.question4":{message:`像當地人一樣體驗首爾`,description:`開始對話的示例問題,要求使用者解釋虛擬現實對藝術創作產生了什麼影響`},"message.question5":{message:`9.8 和 9.11 誰更大?`,description:`開始對話的示例問題,要求比較兩個數字的大小`},"message.question6":{message:`AI 對未來有何影響?`,description:`開始對話的示例問題,AI 對未來有什麼影響?`},"message.question7":{message:`如何提高學習效率?`,description:`開始對話的示例問題,如何提高自己的學習效率?`},"message.question8":{message:`如何提高專注力?`,description:`開始對話的示例問題,如何提高自己的專注力?`},"message.errorApiError":{message:`回答失敗,請稍後重試`,description:`網頁中的訊息,告訴使用者回答失敗,請稍後重試`},"message.errorBadRequest":{message:`請求內容不規範,請重新提問`,description:`網頁中的訊息,告訴使用者請求內容不規範,請重新提問`},"message.errorNoConversation":{message:`對話不存在或已過期,請開始新對話`,description:`網頁中的訊息,告訴使用者對話不存在或已過期,請開始新對話`},"message.errorContentTooLarge":{message:`問題內容過長,請縮短後重試`,description:`網頁中的訊息,告訴使用者問題內容過長,請縮短後重試`},"message.errorTooManyRequests":{message:`操作過於頻繁,請稍後再試`,description:`網頁中的訊息,告訴使用者操作過於頻繁,請稍後再試`},"message.errorBusy":{message:`伺服器繁忙,請稍後重試`,description:`網頁中的訊息,告訴使用者伺服器繁忙,請稍後重試`},"message.errorUsedUp":{message:`您已用完套餐次數,請購買更多次數繼續使用`,description:`網頁中的訊息,告訴使用者您已用完套餐次數,請購買更多次數繼續使用`},"message.errorUnknown":{message:`伺服器發生未知錯誤,請稍後重試或聯絡客服`,description:`網頁中的訊息,告訴使用者伺服器發生未知錯誤,請稍後重試或聯絡客服`},"message.responseInterrupted":{message:`回應已中斷,以上內容可能不完整。`,description:`回應中斷後的部分內容提示`},"message.retry":{message:`重試`,description:`點擊後使用原問題和附件重新請求失敗的回答,不會自動重試`},"message.errorTimeout":{message:`回答問題超時,請稍後重試`,description:`網頁中的訊息,告訴使用者回答問題超時,請稍後重試`},"message.errorNotApplied":{message:`您尚未申請此服務,請先申請再繼續提問`,description:`網頁中的訊息,告訴使用者您尚未申請此服務,請先申請再繼續提問`},"message.confirmDelete":{message:`確認刪除`,description:`網頁中的訊息,告訴使用者確認刪除`},"message.howToUse":{message:`AI 可能會出錯,請檢查重要資訊。`,description:`網頁中的訊息,告訴使用者 AI 可能會出錯,請檢查重要資訊`},"title.chat":{message:`AI 聊天`,description:`網頁的標題,即 AI 聊天`},"title.example":{message:`示例`,description:`網頁的標題,即 示例`},"title.capabilities":{message:`功能`,description:`網頁的標題,即 功能`},"title.limitations":{message:`限制`,description:`網頁中的標題,指出這部分內容是關於服務的技術限制`},"title.complexQuestion":{message:`回答複雜問題`,description:`網頁中的標題,指出這部分內容是關於服務回答複雜問題的能力`},"title.professionalQuestion":{message:`諮詢專業問題`,description:`網頁中的標題,指出這部分內容是關於服務諮詢專業問題的能力`},"title.getTips":{message:`獲取靈感和創意`,description:`網頁中的標題,指出這部分內容是關於服務獲取靈感和創意的能力`},"group.today":{message:`今天`,description:`網頁中的分組名稱,即 今天`},"group.yesterday":{message:`昨天`,description:`網頁中的分組名稱,即 昨天`},"group.thisWeek":{message:`本週`,description:`網頁中的分組名稱,即 本週`},"group.earlier":{message:`更早`,description:`網頁中的分組名稱,即 更早`},"connections.tooltip":{message:`連線管理`,description:`跳轉到 auth.acedata.cloud 連線管理頁的按鈕提示`},"skill.tooltip":{message:`技能管理`,description:`跳轉到 auth.acedata.cloud 技能管理頁的按鈕提示`},"composer.addAction":{message:`新增內容`,description:`輸入框下方加號按鈕的提示,展開後可上傳檔案、開啟技能或連線管理`},"composer.addFiles":{message:`新增照片或檔案`,description:`加號按鈕彈出選單中的項:上傳圖片或檔案`},"composer.skills":{message:`技能`,description:`加號按鈕彈出選單中的項:開啟技能管理`},"composer.connections":{message:`連線`,description:`加號按鈕彈出選單中的項:開啟連線管理`},"agent.title":{message:`桌面代理`,description:`代理管理對話方塊標題`},"agent.tooltip":{message:`桌面代理`,description:`代理按鈕提示`},"agent.connected":{message:`已連線`,description:`代理已連線狀態`},"agent.notConnected":{message:`未連線`,description:`代理未連線狀態`},"agent.description":{message:`連線桌面代理以在 AI 對話中存取本地檔案、執行命令和使用本地 MCP 伺服器。`,description:`代理描述`},"agent.name":{message:`代理名稱`,description:`代理名稱標籤`},"agent.tools":{message:`可用工具`,description:`代理工具數量標籤`},"agent.connectedSince":{message:`連線時間`,description:`代理連線時間標籤`},"agent.connectedHint":{message:`您的桌面代理已連線,可以使用。`,description:`代理已連線提示`},"agent.installLabel":{message:`安裝桌面代理:`,description:`安裝說明標籤`},"agent.runLabel":{message:`執行代理:`,description:`執行說明標籤`},"askUserQuestion.submit":{message:`提交`,description:`ask-user-question 向導最後一題的提交按鈕`},"askUserQuestion.next":{message:`下一題`,description:`ask-user-question 向導前進到下一題`},"askUserQuestion.back":{message:`上一題`,description:`ask-user-question 向導回到上一題`},"askUserQuestion.skipAll":{message:`全部跳過`,description:`跳過整個 ask-user-question 向導,讓模型在沒有答案的情況下繼續`},"askUserQuestion.other":{message:`其他`,description:`偽選項;選中後該題展開自定義文字輸入框`},"askUserQuestion.otherDesc":{message:`輸入你自己的回答`,description:`其他選項下方的輔助說明`},"askUserQuestion.placeholder":{message:`請輸入回答…`,description:`每道題自定義回答輸入框的佔位文案`},"askUserQuestion.multiSelectHint":{message:`可選一項或多項`,description:`支援多選問題時顯示的提示`},"askUserQuestion.collapsedAnswerLabel":{message:`你的回答`,description:`無法從歷史輸出中提取具體答案時的兜底文案`},"consent.title":{message:`需要聯結器授權`,description:`聯結器授權卡片標題`},"consent.matchAny":{message:`選擇其一即可`,description:`標籤:本組聯結器任選其一即可滿足需求`},"consent.matchAll":{message:`全部需要授權`,description:`標籤:本組聯結器全部都需要授權`},"consent.authorize":{message:`去授權`,description:`授權按鈕,點選後會開啟第三方授權頁面`},"consent.skip":{message:`暫不授權`,description:`跳過授權按鈕,跳過後模型將在沒有該聯結器的情況下繼續`},"consent.continue":{message:`繼續`,description:`繼續按鈕,OAuth 回跳後偵測到聯結器已連線時顯示,點選後提交本次授權`},"consent.selectScopes":{message:`選擇 {provider} 授權範圍`,description:`Title of the scope picker dialog opened from the consent card; {provider} is the upstream provider name (e.g. Gmail).`},"consent.selectScopesHint":{message:`選擇您希望授權的許可權範圍。可多選,未選中預設僅授予基礎登入資訊。`,description:`Body copy explaining that the user can opt out of specific scopes; rendered above the checkbox group.`},"consent.installFailed":{message:`授權失敗,請稍後重試。`,description:`Toast shown when the AuthBackend install endpoint returns an error from the consent card.`},"consent.statusConnected":{message:`已連線`,description:`已連線聯結器的狀態徽章`},"consent.statusUnconnected":{message:`未連線`,description:`未連線聯結器的狀態徽章(無授權連結時顯示)`},"consent.resolvedAuthorized":{message:`已授權:{list}`,description:`使用者授權完成後的卡片底部說明,{list} 為已授權聯結器列表`},"consent.resolvedSkipped":{message:`已跳過聯結器授權`,description:`使用者跳過授權後的卡片底部說明`},"browserTool.title":{message:`瀏覽器活動`,description:`BrowserDevice 工具活動的預設標題`},"browserTool.state.starting_session":{message:`正在啟動瀏覽器會話`,description:`顯示正在啟動新的瀏覽器會話`},"browserTool.state.attaching_tab":{message:`正在連接瀏覽器標籤頁`,description:`顯示正在連接到瀏覽器標籤頁的狀態`},"browserTool.state.ready":{message:`瀏覽器已就緒`,description:`顯示瀏覽器已準備好的狀態`},"browserTool.state.device_offline":{message:`瀏覽器裝置已離線`},"browserTool.state.device_busy":{message:`瀏覽器設備正忙`,description:`顯示瀏覽器設備當前忙碌的狀態`},"browserTool.state.authorization_required":{message:`需要在 Studio 中確認授權`,description:`顯示需要在 Studio 確認授權的狀態`},"browserTool.state.executing":{message:`正在瀏覽器中執行`},"browserTool.state.completed":{message:`已完成`},"browserTool.state.stopped":{message:`瀏覽器會話已停止`,description:`顯示瀏覽器會話已經停止的狀態`},"browserTool.state.expired":{message:`瀏覽器請求已過期`},"browserTool.state.debugger_unavailable":{message:`請關閉開發者工具後繼續`,description:`提示用戶關閉開發者工具以繼續操作`},"browserTool.state.unknown_outcome":{message:`執行結果未知,請核實後再重試`,description:`提示用戶執行結果不明,需核實後再試`},"browserTool.state.failed":{message:`瀏覽器操作失敗`,description:`顯示瀏覽器操作未成功的狀態`},"browserTool.stop":{message:`停止`,description:`用於停止當前操作的按鈕`},"browserTool.recovery.open-device-manager":{message:`管理設備`,description:`用於打開設備管理器的選項`},"browserTool.recovery.stop-other-session":{message:`停止其他會話`,description:`用於停止其他正在進行的會話`},"browserTool.recovery.close-devtools":{message:`關閉開發者工具`,description:`用於關閉瀏覽器的開發者工具`},"browserTool.recovery.open-consent-card":{message:`查看授權`,description:`用於查看授權卡片的選項`},"scheduledTasks.navTitle":{message:`定時任務`},"scheduledTasks.tab.tasks":{message:`定時任務`,description:`定時任務頁-任務標籤頁`},"scheduledTasks.tab.runs":{message:`運行記錄`,description:`定時任務頁-全部運行記錄標籤頁`},"scheduledTasks.filterAll":{message:`全部`,description:`運行記錄狀態篩選-全部`},"scheduledTasks.title":{message:`定時任務`},"scheduledTasks.create":{message:`新建`},"scheduledTasks.edit":{message:`編輯任務`},"scheduledTasks.duplicate":{message:`複製任務`,description:`複製任務按鈕,基於已有任務預填新建表單`},"scheduledTasks.empty":{message:`還沒有定時任務,點選「新建」建立一個`},"scheduledTasks.noRuns":{message:`尚未執行`},"scheduledTasks.loadError":{message:`載入失敗`},"scheduledTasks.deleteConfirm":{message:`確認刪除「{name}」?刪除後任務將停止執行。`},"scheduledTasks.triggerNow":{message:`立即觸發`,description:`手動立刻執行一次任務`},"scheduledTasks.triggerSuccess":{message:`已觸發,稍後可在執行記錄中檢視結果。`,description:`手動觸發成功提示`},"scheduledTasks.triggerError":{message:`觸發失敗,請稍後重試。`,description:`手動觸發失敗提示`},"scheduledTasks.viewResult":{message:`檢視結果`},"scheduledTasks.viewRuns":{message:`執行記錄`},"scheduledTasks.noConversation":{message:`無對話記錄`,description:`執行未關聯對話(舊版本執行)`},"scheduledTasks.jitterHint":{message:`±60s 抖動`},"scheduledTasks.runCount":{message:`已執行 {count} 次`},"scheduledTasks.state.enabled":{message:`執行中`},"scheduledTasks.state.disabled":{message:`已暫停`},"scheduledTasks.state.error":{message:`出錯`},"scheduledTasks.run.queued":{message:`排隊`},"scheduledTasks.run.running":{message:`執行中`},"scheduledTasks.run.success":{message:`成功`},"scheduledTasks.run.failed":{message:`失敗`},"scheduledTasks.run.indeterminate":{message:`待確認`,description:`Indeterminate run status (judge could not verify; not a failure)`},"scheduledTasks.run.reason.max_turns":{message:`達到步數上限`},"scheduledTasks.run.reason.max_budget_usd":{message:`達到預算上限`},"scheduledTasks.run.reason.tool_call_loop":{message:`偵測到工具呼叫迴圈`},"scheduledTasks.run.reason.prompt_too_long":{message:`提示詞過長`},"scheduledTasks.run.reason.aborted_streaming":{message:`已中斷`},"scheduledTasks.run.reason.aborted_tools":{message:`已中斷`},"scheduledTasks.run.reason.awaiting_user_input":{message:`等待你的輸入`},"scheduledTasks.run.reason.error":{message:`發生錯誤`},"scheduledTasks.run.reason.unknown":{message:`未知錯誤`},"scheduledTasks.run.reason.balance_insufficient":{message:`餘額不足`},"scheduledTasks.run.reason.billing_gate_failed":{message:`計費授權失敗`},"scheduledTasks.run.reason.unauthorized":{message:`未授權`},"scheduledTasks.run.reason.timeout":{message:`逾時`},"scheduledTasks.run.reason.internal_error":{message:`內部錯誤`},"scheduledTasks.run.needs_user_input":{message:`需要操作`},"scheduledTasks.run.reason.browser_device_offline":{message:`瀏覽器設備已離線`,description:`顯示瀏覽器設備當前離線的狀態`},"scheduledTasks.run.reason.browser_authorization_stale":{message:`瀏覽器授權已變更,請編輯此任務`,description:`提示用戶瀏覽器授權已變更,需要編輯任務`},"scheduledTasks.scheduleType.daily":{message:`每天`},"scheduledTasks.scheduleType.minutely":{message:`每分鐘`},"scheduledTasks.scheduleType.hourly":{message:`每小時`},"scheduledTasks.scheduleType.weekly":{message:`每週`},"scheduledTasks.scheduleType.cron":{message:`Cron 表示式`},"scheduledTasks.scheduleType.interval":{message:`每隔`,description:`每隔固定間隔執行`},"scheduledTasks.form.intervalUnit.minute":{message:`分鐘`,description:`間隔單位:分鐘`},"scheduledTasks.form.intervalUnit.hour":{message:`小時`,description:`間隔單位:小時`},"scheduledTasks.form.intervalUnit.day":{message:`天`,description:`間隔單位:天`},"scheduledTasks.form.hourlyMinute":{message:`觸發分鐘`,description:`每小時第幾分鐘觸發`},"scheduledTasks.form.hourlyMinuteHint":{message:`每小時的第幾分鐘觸發(0–59)`,description:`每小時分鐘說明`},"scheduledTasks.form.intervalHint":{message:`從上次執行起,每隔固定時間執行一次(最短 1 分鐘)`,description:`固定間隔說明`},"scheduledTasks.form.cronHint":{message:`標準 5 段 Cron 運算式:分 時 日 月 週`,description:`Cron 說明`},"scheduledTasks.form.schedulePreview":{message:`執行頻率:{text}`,description:`頻率預覽`},"scheduledTasks.humanize.everyNMinutes":{message:`每 {n} 分鐘`,description:`人類可讀:每 N 分鐘`},"scheduledTasks.humanize.everyNHours":{message:`每 {n} 小時`,description:`人類可讀:每 N 小時`},"scheduledTasks.humanize.everyNDays":{message:`每 {n} 天`,description:`人類可讀:每 N 天`},"scheduledTasks.humanize.hourlyAtMinute":{message:`每小時第 {n} 分鐘`,description:`人類可讀:每小時第 N 分鐘`},"scheduledTasks.humanize.dailyAt":{message:`每天 {time}`,description:`人類可讀:每天某時刻`},"scheduledTasks.humanize.weeklyAt":{message:`每週 {weekday} {time}`,description:`人類可讀:每週某天某時刻`},"scheduledTasks.humanize.cronRaw":{message:`Cron:{cron}`,description:`人類可讀:原始 Cron`},"scheduledTasks.humanize.once":{message:`一次性 {time}`,description:`人類可讀:一次性`},"scheduledTasks.form.name":{message:`任務名稱`},"scheduledTasks.form.namePlaceholder":{message:`例:每日資訊彙總`},"scheduledTasks.form.model":{message:`模型`},"scheduledTasks.form.prompt":{message:`提示詞`},"scheduledTasks.form.promptPlaceholder":{message:`輸入要定時執行的問題或指令,支援 {'{{date}}'}、{'{{run_count}}'}、{'{{last_output}}'} 變數`},"scheduledTasks.form.promptHint":{message:`支援模板變數:{'{{date}}'} 今日日期,{'{{run_count}}'} 第幾次執行,{'{{last_output}}'} 上次結果摘要`},"scheduledTasks.form.schedule":{message:`執行頻率`},"scheduledTasks.form.time":{message:`執行時間`},"scheduledTasks.form.timezone":{message:`時區`},"scheduledTasks.form.timezoneHint":{message:`新任務預設使用目前裝置的時區:{timezone}。儲存後會固定於任務,不會隨裝置位置自動變更。`},"scheduledTasks.form.timezoneInvalid":{message:`請選擇有效的 IANA 時區`},"scheduledTasks.form.weekday":{message:`星期`},"scheduledTasks.form.cron":{message:`Cron 表示式`},"scheduledTasks.form.skills":{message:`授權 Skills`,description:`定時任務無人值守授權 skill 多選`},"scheduledTasks.form.skillsPlaceholder":{message:`選擇允許此任務自動執行的 Skills`,description:`授權 skill 佔位符`},"scheduledTasks.form.skillsHint":{message:`選中的 Skills 可在定時任務後臺執行時跳過人工確認;未選中的 Skills 仍只能預覽或等待確認。`,description:`授權 skill 說明`},"scheduledTasks.form.browserConnection":{message:`瀏覽器連接`,description:`用於設置瀏覽器連接的表單標題`},"scheduledTasks.form.browserEffects":{message:`可能執行以下外部副作用:{effects}`,description:`顯示可能產生的外部副作用`},"scheduledTasks.form.authorizationExpires":{message:`無人值守授權到期時間:{time}`,description:`顯示無人值守授權的到期時間`},"scheduledTasks.form.browserBindingInvalid":{message:`保存前請選擇在線且兼容的瀏覽器連接`,description:`提示用戶選擇有效的瀏覽器連接`},"scheduledTasks.form.connectionAccount":`Account for {connector}`,"scheduledTasks.form.connectionAccountDefault":`Use the default account`,"scheduledTasks.form.accountIsDefault":`default`,"scheduledTasks.form.skillMissing":{message:`未連線`,description:`skill 缺少連線`},"scheduledTasks.form.mcpServers":{message:`授權 MCP`,description:`定時任務無人值守授權 MCP server 多選`},"scheduledTasks.form.mcpServersPlaceholder":{message:`選擇允許此任務自動載入的 MCP Servers`,description:`授權 MCP server 佔位符`},"scheduledTasks.form.mcpServersHint":{message:`選中的 MCP Servers 可在定時任務後臺載入並執行;未選中的 MCP Servers 不會在無人值守模式下載入。`,description:`授權 MCP server 說明`},"scheduledTasks.form.maxTurns":{message:`最大輪次`,description:`Scheduled task per-run agent turn cap`},"scheduledTasks.form.maxTurnsHint":{message:`任務單次執行允許的最大對話輪次(1–50)。上限太低會讓多步驟任務(如需多次執行 Bash、查檔案的技能)在完成前被強制停止、沒有最終結果。預設 50。`,description:`Scheduled task per-run agent turn cap`},"scheduledTasks.form.skillsConfirmTitle":{message:`確認無人值守授權`,description:`授權確認標題`},"scheduledTasks.form.skillsConfirm":{message:`此任務將允許 {count} 個 Skill 在後臺執行時跳過人工確認:{skills}。這些 Skill 可能會傳送訊息、發布內容或寫入外部服務,請確認。`,description:`授權確認正文`},"scheduledTasks.form.skillNotActiveTitle":{message:`需要先繫結技能`,description:`Dialog title shown when a scheduled-task authorized skill/MCP is not yet bound for the user.`},"scheduledTasks.form.skillNotActiveMessage":{message:`技能「{name}」尚未在你的帳戶中繫結或啟用。若不先繫結,定時任務在後臺自動執行時可能無法使用它。建議先前往繫結後再儲存,或點選下方按鈕仍要繼續儲存。`,description:`Warning body; {name} is the skill/MCP name. Explains it is not bound and offers to save anyway.`},"scheduledTasks.form.skillNotActiveForce":{message:`仍要繼續儲存`,description:`Confirm button that saves the scheduled task anyway, bypassing the binding check (force).`},"scheduledTasks.form.required":{message:`請填寫任務名稱和提示詞`},"artifacts.navTitle":{message:`產出`,description:`側邊欄產出入口`},"artifacts.title":{message:`我的產出`,description:`產出頁面標題`},"artifacts.summaryTotal":{message:`本期共產出 {count} 項`,description:`產出彙總總數`},"artifacts.filterAll":{message:`全部`,description:`產出型別篩選-全部`},"artifacts.empty":{message:`還沒有任何產出。讓 AI 幫你發文章、生成圖片或傳送郵件後,產出會自動出現在這裡。`,description:`產出為空提示`},"artifacts.loadError":{message:`載入產出失敗`,description:`載入產出錯誤提示`},"artifacts.actionError":{message:`操作失敗,請重試`,description:`產出操作錯誤提示`},"artifacts.open":{message:`開啟`,description:`開啟產出原連結按鈕`},"artifacts.hide":{message:`隱藏`,description:`隱藏產出按鈕`},"artifacts.unhide":{message:`取消隱藏`,description:`恢復被隱藏 Artifact 的按鈕`},"artifacts.showHidden":{message:`顯示已隱藏`,description:`篩選欄中顯示已隱藏 Artifacts 的開關`},"artifacts.hiddenBadge":{message:`已隱藏`,description:`標記 Artifact 已被隱藏的徽章`},"artifacts.delete":{message:`刪除`,description:`刪除產出按鈕`},"artifacts.deleteConfirm":{message:`確定要永久刪除這條產出記錄嗎?`,description:`刪除產出確認提示`},"artifacts.loadMore":{message:`載入更多`,description:`載入更多產出按鈕`},"artifacts.sourceAuto":{message:`自動捕獲`,description:`自動捕獲來源標記`},"artifacts.kind.article":{message:`文章`,description:`產出型別-文章`},"artifacts.kind.image":{message:`圖片`,description:`產出型別-圖片`},"artifacts.kind.video":{message:`影片`,description:`產出型別-影片`},"artifacts.kind.audio":{message:`音訊`,description:`產出型別-音訊`},"artifacts.kind.document":{message:`文件`,description:`產出型別-檔案`},"artifacts.kind.email":{message:`郵件`,description:`產出型別-郵件`},"artifacts.kind.message":{message:`訊息`,description:`產出型別-訊息`},"artifacts.kind.dataset":{message:`資料`,description:`產出型別-資料`},"artifacts.kind.link":{message:`連結`,description:`產出型別-連結`},"artifacts.kind.other":{message:`其他`,description:`產出型別-其他`},"share.menu":{message:`分享`,description:`側邊欄/工具欄中開啟分享對話方塊的選單項`},"share.dialogTitle":{message:`分享對話`,description:`分享對話方塊的標題`},"share.description":{message:`任何拿到連結的人都可以檢視此對話,但無法繼續聊天。`,description:`解釋對話被分享後會發生什麼`},"share.createLink":{message:`建立分享連結`,description:`為對話建立公開分享連結的按鈕`},"share.copy":{message:`複製連結`,description:`把分享連結複製到剪貼簿的按鈕`},"share.copied":{message:`已複製`,description:`複製成功後短暫出現在按鈕上的提示`},"share.disable":{message:`停用連結`,description:`撤銷分享連結,讓該 URL 失效的按鈕`},"share.disabled":{message:`分享連結已停用。`,description:`分享連結被停用後的提示`},"share.needLogin":{message:`請先登入,然後再分享此對話。`,description:`未登入訪客嘗試分享對話時的提示`},"share.noConversation":{message:`請先開啟一個對話,再進行分享。`,description:`沒有活躍對話時點選分享按鈕的提示`},"share.createFailed":{message:`建立分享連結失敗,請稍後再試。`,description:`建立分享連結失敗的錯誤提示`},"share.disableFailed":{message:`停用分享連結失敗,請稍後再試。`,description:`停用分享連結失敗的錯誤提示`},"share.startYourOwn":{message:`去開啟我自己的對話`,description:`分享公開頁面上的行動號召,把匿名訪客引導到應用首頁`},"share.unavailableTitle":{message:`此分享對話不可用。`,description:`分享連結失效或無效時分享公開頁面的標題`},"share.unavailableHint":{message:`對方可能已經停用了連結,或者 URL 有誤。`,description:`分享連結失效或無效時的提示`},"share.viewOnly":{message:`只讀分享對話`,description:`分享公開頁面上表明對話只讀的標籤`},"share.untitled":{message:`未命名對話`,description:`分享對話沒有標題時使用的佔位文案`},"share.footerNote":{message:`您正在檢視一段分享的對話。點選上方即可自己與 AI 對話。`,description:`分享公開頁面對話下方的說明`},"scheduledTasks.run.reason.goal_not_achieved":{message:`未達成目標`,description:`顯示任務未達成預期目標的狀態`},"scheduledTasks.run.reason.outcome_unknown":{message:`結果待確認`,description:`表示任務的執行結果尚未確定。`},"scheduledTasks.run.reason.run_abandoned":{message:`執行狀態未知`},"actions.rename":{message:`重命名`,description:`會話操作菜單中的重命名菜單項`},"actions.renameTitle":{message:`重命名會話`,description:`重命名會話對話框的標題`},"actions.renameEmpty":{message:`請輸入名稱`,description:`重命名時名稱為空的提示`},"actions.renameSuccess":{message:`已重命名`,description:`重命名會話成功的提示`},"actions.renameFailed":{message:`重命名失敗,請稍後重試`,description:`重命名會話失敗的提示`},"actions.deleteConfirm":{message:`確認刪除該會話?刪除後不可恢復。`,description:`刪除會話前的確認說明`},"actions.deleteSuccess":{message:`已刪除`,description:`刪除會話成功的提示`},"actions.deleteFailed":{message:`刪除失敗,請稍後重試`,description:`刪除會話失敗的提示`},"actions.tokenMissing":{message:`Token 不存在,請重新登入`,description:`會話操作時缺少憑證的錯誤提示`},"actions.conversationMissing":{message:`會話不存在`,description:`會話操作時目標會話不存在的錯誤提示`},"scheduledTasks.form.execution":{message:`運行位置`,description:`選擇任務在雲端還是本機運行`},"scheduledTasks.execution.cloud":{message:`雲端`,description:`雲端運行模式`},"scheduledTasks.execution.local":{message:`這台設備`,description:`本機運行模式`},"scheduledTasks.execution.localNamed":{message:`這台設備({device})`,description:`本機運行模式,帶設備名`},"scheduledTasks.form.executionCloudHint":{message:`由平台按時觸發,關掉電腦也會照常運行。`,description:`雲端模式說明`},"scheduledTasks.form.executionLocalHint":{message:`由這台設備按時觸發,可以讀寫本機文件、跑本機命令。設備關機或退出應用時不會運行,錯過的次數只做記錄,不會補跑。`,description:`本機模式說明`},"scheduledTasks.form.executionMobileUnsupported":{message:`手機端暫不支持本機運行`,description:`移動端不支持本地執行的原因`},"scheduledTasks.form.executionWebUnsupported":{message:`本機運行需要桌面版應用`,description:`網頁端不支持本地執行的原因`},"scheduledTasks.form.executionDeviceUnavailable":{message:`無法獲取本機信息,請重啟應用後重試`,description:`桌面端設備信息不可用`},"scheduledTasks.form.localTools":{message:`本機工具授權`,description:`本地工具授權字段`},"scheduledTasks.form.localToolsPlaceholder":{message:`選擇允許這個任務使用的本機工具`,description:`本地工具選擇佔位符`},"scheduledTasks.form.localToolsHint":{message:`無人值守運行時不會彈出授權確認,只有在這裡勾選的工具才可用。`,description:`本地工具授權說明`},"scheduledTasks.run.skipped":{message:`已跳過`,description:`運行狀態:設備當時不在線,未運行`},"workingDir.choose":{message:`選擇工作目錄`,description:`桌面端聊天輸入框上方按鈕:選擇 AI 操作的項目文件夾;未選擇前無法發送消息`},"workingDir.switchHint":{message:`點擊切換工作目錄`,description:`已選工作目錄時,路徑膠囊的懸浮提示`},"scheduledTasks.triggerLocalUnavailable":{message:`這是本機任務,只能在綁定的那台設備的桌面版裡手動運行`,description:`本機任務在非綁定設備上無法手動觸發`},"scheduledTasks.triggerWrongDevice":{message:`這個任務綁定在另一台設備上`,description:`本機任務不屬於當前設備`},"scheduledTasks.triggerSignedOut":{message:`本機調度未登入,請重新登入後重試`,description:`daemon 未持有憑據`},"scheduledTasks.triggerAlreadyRunning":{message:`這個任務正在運行中`,description:`任務已在執行`},"actionConfirmation.confirm":{message:`確認`,description:`執行前確認卡片的確認按鈕`},"actionConfirmation.cancel":{message:`取消`,description:`執行前確認卡片的取消按鈕`},"actionConfirmation.resolvedConfirmed":{message:`已確認,正在執行`,description:`執行前確認卡片:用戶已確認,後續動作正在執行`},"actionConfirmation.resolvedCancelled":{message:`已取消`,description:`執行前確認卡片:用戶取消後的折疊提示`},"actionConfirmation.mediaLoading":{message:`正在加載媒體預覽…`,description:`執行前確認卡片:媒體加載狀態`},"actionConfirmation.mediaUnavailable":{message:`無法在此處播放預覽`,description:`執行前確認卡片:媒體播放失敗標題`},"actionConfirmation.mediaUnavailableHint":{message:`媒體鏈接可能已過期,或當前瀏覽器不支持該格式。發布前請先打開原文件確認。`,description:`執行前確認卡片:媒體播放失敗說明`},"actionConfirmation.openMedia":{message:`打開原文件`,description:`執行前確認卡片:打開媒體鏈接`},"actionConfirmation.tiktok.reviewBadge":{message:`發布前確認`,description:`TikTok 發布確認卡片狀態標籤`},"actionConfirmation.tiktok.publishTitle":{message:`發佈到 TikTok`,description:`TikTok 發佈確認卡片標題`},"actionConfirmation.tiktok.publishSummary":{message:`確認後將把此影片發佈到你的 TikTok 帳號。`,description:`TikTok 發佈確認卡片摘要`},"actionConfirmation.tiktok.publishButton":{message:`發佈`,description:`TikTok 發佈確認卡片的提交按鈕`},"actionConfirmation.tiktok.postingTo":{message:`發布至`,description:`TikTok 發布確認:帳號標籤`},"actionConfirmation.tiktok.connected":{message:`已連接`,description:`TikTok 發布確認:帳號連接狀態`},"actionConfirmation.tiktok.unknownAccount":{message:`帳號信息不可用`,description:`TikTok 發布確認:缺少帳號暱稱時的佔位文案`},"actionConfirmation.tiktok.detailsUnavailable":{message:`發布設置尚未準備好`,description:`TikTok 發布確認:創作者信息缺失標題`},"actionConfirmation.tiktok.detailsUnavailableHint":{message:`未能讀取該帳號支持的可見範圍。請取消並讓助手重新獲取 TikTok 發布設置。`,description:`TikTok 發布確認:創作者信息缺失說明`},"actionConfirmation.tiktok.videoTooLongTitle":{message:`影片時長不符合帳號限制`,description:`TikTok 發布確認:影片超長標題`},"actionConfirmation.tiktok.postDetails":{message:`發布內容`,description:`TikTok 發布確認:內容設置分組標題`},"actionConfirmation.tiktok.requiredNote":{message:`* 必填`,description:`TikTok 發布確認:必填說明`},"actionConfirmation.tiktok.caption":{message:`文案`,description:`TikTok 發布確認:文案輸入框標籤`},"actionConfirmation.tiktok.captionPlaceholder":{message:`填寫文案,支援話題標籤與提及好友`,description:`TikTok publish confirmation: caption placeholder`},"actionConfirmation.tiktok.privacy":{message:`誰可以看`,description:`TikTok 發布確認:可見範圍下拉標籤`},"actionConfirmation.tiktok.privacyPlaceholder":{message:`請選擇…`,description:`TikTok 發布確認:可見範圍占位符,按 TikTok 要求不能有默認值`},"actionConfirmation.tiktok.noPrivacyOptions":{message:`未獲取到可用的可見範圍,暫不能發布`,description:`TikTok 發布確認:可見範圍為空`},"actionConfirmation.tiktok.privacyPublic":{message:`所有人`,description:`TikTok 可見範圍:公開`},"actionConfirmation.tiktok.privacyFriends":{message:`互相關注的朋友`,description:`TikTok 可見範圍:互關好友`},"actionConfirmation.tiktok.privacyFollowers":{message:`我的粉絲`,description:`TikTok 可見範圍:粉絲可見`},"actionConfirmation.tiktok.privacySelf":{message:`僅自己`,description:`TikTok 可見範圍:僅自己可見`},"actionConfirmation.tiktok.interactions":{message:`允許互動`,description:`TikTok 發布確認:互動開關分組標籤`},"actionConfirmation.tiktok.interactionsHint":{message:`僅可開啟該帳號當前允許的互動方式;默認全部關閉。`,description:`TikTok 發布確認:互動開關說明`},"actionConfirmation.tiktok.disabledByAccount":{message:`此帳號已關閉:{list}`,description:`TikTok 發布確認:帳號禁用的互動能力`},"actionConfirmation.tiktok.allowComment":{message:`評論`,description:`TikTok 互動開關:允許評論`},"actionConfirmation.tiktok.allowDuet":{message:`合拍`,description:`TikTok 互動開關:允許合拍`},"actionConfirmation.tiktok.allowStitch":{message:`拼接`,description:`TikTok 互動開關:允許拼接`},"actionConfirmation.tiktok.disclosure":{message:`內容披露`,description:`TikTok 發布確認:商業內容分組標題`},"actionConfirmation.tiktok.commercial":{message:`這是商業內容`,description:`TikTok 發布確認:商業內容披露開關`},"actionConfirmation.tiktok.commercialHint":{message:`如果內容推廣品牌、產品或服務,請按實際情況披露。`,description:`TikTok 發布確認:商業內容披露說明`},"actionConfirmation.tiktok.yourBrand":{message:`你的品牌`,description:`TikTok 商業內容:推廣自有業務`},"actionConfirmation.tiktok.yourBrandHint":{message:`推廣您本人或您經營的業務`,description:`TikTok 商業內容:推廣自有業務說明`},"actionConfirmation.tiktok.brandedContent":{message:`品牌內容`,description:`TikTok 商業內容:付費合作`},"actionConfirmation.tiktok.brandedContentHint":{message:`因付款、贈品或其他利益而推廣第三方`,description:`TikTok 商業內容:付費合作說明`},"actionConfirmation.tiktok.labelPromotional":{message:`視頻將被標記為「推廣內容」`,description:`TikTok 商業內容:選擇你的品牌後的標記提示`},"actionConfirmation.tiktok.labelPaidPartnership":{message:`視頻將被標記為「付費合作」`,description:`TikTok 商業內容:選擇品牌內容後的標記提示`},"actionConfirmation.tiktok.brandedNotPrivate":{message:`品牌內容的可見範圍不能設為「僅自己」`,description:`TikTok 發布確認:品牌內容與僅自己可見互斥的提示`},"actionConfirmation.tiktok.tooLong":{message:`視頻超過該帳號的時長上限({max} 秒)`,description:`TikTok 發布確認:視頻超長錯誤`},"actionConfirmation.tiktok.beforePublishing":{message:`發布前請確認`,description:`TikTok 發布確認:政策說明標題`},"actionConfirmation.tiktok.policyIntro":{message:`點擊“發布”即表示您確認擁有內容與音樂的使用權,並同意 TikTok 的音樂使用條款。`,description:`TikTok 發布確認:普通內容政策說明`},"actionConfirmation.tiktok.policyIntroBranded":{message:`點擊“發布”即表示您確認披露信息準確,並同意 TikTok 的品牌內容政策與音樂使用條款。`,description:`TikTok 發布確認:品牌內容政策說明`},"actionConfirmation.tiktok.musicUsageLink":{message:`查看《音樂使用確認》`,description:`TikTok 發布確認:音樂使用確認鏈接`},"actionConfirmation.tiktok.brandedPolicyLink":{message:`查看《品牌內容政策》`,description:`TikTok 發布確認:品牌內容政策鏈接`},"actionConfirmation.tiktok.fixDetailsFirst":{message:`發布信息不完整,請取消後重新生成確認卡`,description:`TikTok 發布確認:詳情缺失時的按鈕禁用原因`},"actionConfirmation.tiktok.useShorterVideo":{message:`請換用符合該帳號時長限制的影片`,description:`TikTok 發布確認:影片超長時的按鈕禁用原因`},"actionConfirmation.tiktok.selectPrivacyFirst":{message:`請選擇誰可以看此視頻`,description:`TikTok 發布確認:未選可見範圍時的按鈕禁用原因`},"actionConfirmation.tiktok.selectDisclosureType":{message:`請選擇商業內容類型`,description:`TikTok 發布確認:未選商業披露類型時的按鈕禁用原因`},"scheduledTemplates.title":{message:`自動化模板`,description:`排程任務模板中心的文字`},"scheduledTemplates.createFromTemplate":{message:`從模板新建`,description:`排程任務模板中心的文字`},"scheduledTemplates.createCustom":{message:`自訂創建`,description:`排程任務模板中心的文字`},"scheduledTemplates.emptyTitle":{message:`讓 AI 按時替你完成工作`,description:`排程任務模板中心的文字`},"scheduledTemplates.emptyDescription":{message:`選擇一個官方模板並連接所需帳號。任務創建後可在卡片上立即運行。`,description:`排程任務模板的創建和啟用指導`},"scheduledTemplates.browse":{message:`瀏覽模板`,description:`排程任務模板中心的文字`},"scheduledTemplates.step.choose":{message:`選擇模板`,description:`排程任務模板中心的文字`},"scheduledTemplates.step.configure":{message:`簡單配置`,description:`排程任務模板中心的文字`},"scheduledTemplates.step.connect":{message:`連接帳號`,description:`排程任務模板中心的文字`},"scheduledTemplates.search":{message:`搜索模板`,description:`排程任務模板中心的文字`},"scheduledTemplates.featured":{message:`推薦`,description:`排程任務模板中心的文字`},"scheduledTemplates.ready":{message:`可立即使用`,description:`排程任務模板中心的文字`},"scheduledTemplates.missingCount":{message:`需要連接 {count} 項`,description:`排程任務模板中心的文字`},"scheduledTemplates.schedule":{message:`執行時間`,description:`排程任務模板中心的文字`},"scheduledTemplates.connectionTitle":{message:`準備所需連接`,description:`排程任務模板中心的文字`},"scheduledTemplates.noConnections":{message:`無需連接其他帳號`,description:`排程任務模板中心的文字`},"scheduledTemplates.connected":{message:`已連接`,description:`排程任務模板中心的文字`},"scheduledTemplates.notConnected":{message:`尚未連接`,description:`排程任務模板中心的文字`},"scheduledTemplates.chooseAccount":{message:`選擇帳號`,description:`排程任務模板中心的文字`},"scheduledTemplates.connect":{message:`去連接`,description:`排程任務模板中心的文字`},"scheduledTemplates.create":{message:`創建任務`,description:`排程任務模板的創建和啟用指導`},"scheduledTemplates.createFailed":{message:`任務創建失敗,請檢查配置或連接`,description:`排程任務模板的創建和啟用指導`},"scheduledTemplates.createdPreviewOnly":{message:`任務已創建並保持關閉。你可以直接啟用,也可以先立即運行檢查結果。`,description:`創建僅預覽排程任務後的指導`},"scheduledTemplates.createdControlledDelivery":{message:`任務已創建並保持關閉。請先立即運行,成功生成所需草稿後再啟用。`,description:`創建受控交付排程任務後的指導`},"scheduledTemplates.enableFailed":{message:`暫時無法啟用。請檢查任務配置和帳號連接;需要受控驗證的模板還須先完成試運行。`,description:`排程任務模板啟用失敗`},"scheduledTemplates.loadError":{message:`模板加載失敗,請稍後重試`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.all":{message:`全部`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.marketing":{message:`行銷增長`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.content":{message:`內容創作`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.productivity":{message:`工作效率`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.research":{message:`情報與研究`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.development":{message:`開發與運維`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.personal":{message:`個人助理`,description:`排程任務模板中心的文字`},"scheduledTemplates.category.sales":{message:`銷售與潛在客戶`,description:`排程任務範本中心文案`},"scheduledTemplates.category.customer":{message:`客戶營運`,description:`排程任務範本中心文案`},"scheduledTemplates.previous":{message:`上一步`,description:`排程模板向導的導航和連接指導`},"scheduledTemplates.next":{message:`下一步`,description:`排程模板向導的導航和連接指導`},"scheduledTemplates.connectionDescription":{message:`我們只會使用此模板需要的連接;已連接的帳號會自動重用。`,description:`排程模板向導的導航和連接指導`},"scheduledTemplates.noConnectionsHint":{message:`此模板只使用內置能力,可以直接創建任務。`,description:`排程任務模板的創建和啟用指導`},"scheduledTemplates.connectionMissingHint":{message:`完成連接後即可繼續。`,description:`排程模板向導的導航和連接指導`},"scheduledTemplates.connectionBoundHint":{message:`這個任務會固定使用你選擇的帳號。`,description:`排程模板向導的導航和連接指導`},"scheduledTemplates.connectionMcpHint":{message:`通過已授權的 MCP 連接運行,無需額外綁定帳號。`,description:`排程模板向導的導航和連接指導`},"model.deepseekV4Pro":{message:`DeepSeek V4 Pro`,description:`服務的模型名稱,即 DeepSeek V4 Pro`},"model.deepseekV4ProDescription":{message:`高效能的 100 萬上下文模型,適合高要求推理和長文件分析。`,description:`DeepSeek V4 Pro 模型的描述`},"model.gpt6Sol":{message:`GPT-6 Sol`,description:``},"model.gpt6SolDescription":{message:`高效能推理模型,適合複雜程式設計、分析和長上下文任務。`,description:``},"model.gpt6Luna":{message:`GPT-6 Luna`,description:``},"model.gpt6LunaDescription":{message:`高效能模型,適合快速對話、日常程式設計和批次任務。`,description:``},"model.grok47":{message:`Grok 4.7`,description:``},"model.grok47Description":{message:`旗艦推理模型,適合視覺理解、工具呼叫和多步驟研究。`,description:``},"model.gemini38Flash":{message:`Gemini 3.8 Flash`,description:``},"model.gemini38FlashDescription":{message:`快速多模態模型,適合長上下文、影像理解和工具呼叫。`,description:``},"scheduledTasks.state.authorizationExpired":{message:`授權已過期,任務已自動暫停`,description:`無人值守授權到期時顯示的任務狀態`},"scheduledTasks.run.reason.authorization_expired":{message:`無人值守授權已過期`,description:`排程任務授權已過期`},"scheduledTasks.run.reason.ACCOUNT_MISMATCH_SAFE_STOP":{message:`連線帳號不相符,未執行任何操作`,description:`綁定帳號身分不符時的安全跳過`},"scheduledTasks.run.reason.WECHAT_NOT_LOGGED_IN":{message:`微信未登入,未傳送訊息`,description:`個人微信離線時的安全跳過`},"scheduledTasks.run.reason.SOURCE_UNAVAILABLE_NO_PUBLISH":{message:`無法取得來源內容,未發布`,description:`無法載入必要來源內容時的安全跳過`},"scheduledTasks.run.reason.NO_ELIGIBLE_VIDEO":{message:`沒有符合條件的待發布影片`,description:`沒有可發布影片時的安全跳過`},"actionConfirmation.tiktok.music":{message:`發布即表示您同意 TikTok 的《音樂使用確認》`,description:`TikTok 發布確認:音樂使用聲明`},"actionConfirmation.tiktok.musicBranded":{message:`發布即表示您同意 TikTok 的《品牌內容政策》和《音樂使用確認》`,description:`TikTok 發布確認:勾選品牌內容後的聲明`},"model.claudeOpus55":{message:`Claude Opus 5.5`,description:`Name of the Claude Opus 5.5 model`},"model.claudeOpus55Description":{message:`面向複雜智能體任務的旗艦 Claude 模型`,description:`Claude Opus 5.5 模型描述`},"earlyAccess.badge":{message:`ACE 優先體驗`,description:`ACE 持幣者優先體驗模型標記`},"earlyAccess.locked":{message:`Tier 1+`,description:`Locked ACE holder tier badge`},"earlyAccess.config_unavailable":{message:`正在確認模型資格,請稍後重試。`,description:`無法確認模型資格時的提示`},"earlyAccess.holder_required":{message:`該模型優先向已驗證的 ACE Tier 1+ 持幣者開放。`,description:`未達到持幣等級提示`}};export{e as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={"thinking.inProgress":{message:`Denken...`,description:`Label, das angezeigt wird, während das Modell den Inferenzprozess generiert`},"thinking.done":{message:`Inferenzprozess`,description:`Label zur Anzeige des Inferenzprozesses nach Abschluss des Modells`},"button.thinkDeeper":{message:`Tiefer denken`,description:`Button für tiefes Denken`},"button.deepsearch":{message:`Tiefensuche`,description:`Button für Tiefensuche`},"button.search":{message:`Suchen`,description:`Button zum Suchen`},"button.edit":{message:`Nachricht bearbeiten`,description:`Nachricht, die gesendet wurde, bearbeiten`},"modelGroup.chatgpt":{message:`ChatGPT`,description:`Name des Modells des Dienstes, d.h. GPT`},"modelGroup.chatgptDescription":{message:`AI-Modell entwickelt von OpenAI`,description:`Beschreibung des ChatGPT-Modells`},"modelGroup.deepseek":{message:`DeepSeek`,description:`Name des Modells des Dienstes, d.h. DeepSeek`},"modelGroup.deepseekDescription":{message:`AI-Modell entwickelt von DeepSeek`,description:`Beschreibung des DeepSeek-Modells`},"modelGroup.grok":{message:`Grok`,description:`Name des Modells des Dienstes, d.h. Grok`},"modelGroup.grokDescription":{message:`AI-Modell entwickelt von xAI`,description:`Beschreibung des Grok3-Modells`},"modelGroup.gemini":{message:`Gemini`,description:`Name des Modells des Dienstes, d.h. Gemini`},"modelGroup.geminiDescription":{message:`AI-Modell entwickelt von Google`,description:`Beschreibung der Gemini-Modellgruppe`},"modelGroup.claude":{message:`Claude`,description:`Name des Modells des Dienstes, d.h. Claude`},"modelGroup.claudeDescription":{message:`AI-Modell entwickelt von Anthropic`,description:`Beschreibung der Claude-Modellgruppe`},"modelGroup.kimi":{message:`Kimi`,description:`Name des Modells des Dienstes, d.h. Kimi`},"modelGroup.kimiDescription":{message:`AI-Modell entwickelt von Dark Side of the Moon`,description:`Beschreibung der Kimi-Modellgruppe`},"modelGroup.glm":{message:`GLM`,description:`Name des Modells des Dienstes, d.h. GLM`},"modelGroup.glmDescription":{message:`Großes Sprachmodell entwickelt von Zhiyu AI`,description:`Beschreibung der GLM-Modellgruppe`},"model.astra":{message:`GPT-6 Astra`,description:`Name des Servicemodells: GPT-6 Astra`},"model.astraDescription":{message:`Spitzenmodell für tiefgehendes Schlussfolgern, geeignet für komplexe mehrstufige Projekte und autonome Workflows.`,description:`Beschreibung des Modells GPT-6 Astra`},"model.56Sol":{message:`GPT-5.6 Sol`,description:`Name des Servicemodells: GPT-5.6 Sol`},"model.56SolDescription":{message:`Leistungsstarkes Modell, geeignet für anspruchsvolles Schlussfolgern, Programmieren und Analysieren.`,description:`Beschreibung des Modells GPT-5.6 Sol`},"model.56Terra":{message:`GPT-5.6 Terra`,description:`Name des Servicemodells: GPT-5.6 Terra`},"model.56TerraDescription":{message:`Ausgewogenes Modell, geeignet für Schreiben, Analysen und tägliche professionelle Aufgaben.`,description:`Beschreibung des Modells GPT-5.6 Terra`},"model.56Luna":{message:`GPT-5.6 Luna`,description:`Name des Servicemodells: GPT-5.6 Luna`},"model.56LunaDescription":{message:`Kostenloses Modell mit niedriger Latenz, geeignet für schnelle Fragen und leichte Aufgaben.`,description:`Beschreibung des Modells GPT-5.6 Luna`},"model.freeTag":{message:`Kostenlos`,description:`Badge, das neben kostenlosen Modellen im Modellauswahlmenü angezeigt wird`},"model.deepseekChat":{message:`DeepSeek V3`,description:`Name des Servicemodells: DeepSeek Chat`},"model.deepseekChatDescription":{message:`Allzweckmodell, geeignet für Schreiben, Wissensaufgaben und alltägliche Unterstützung.`,description:`Beschreibung des DeepSeek-Chat-Modells`},"model.deepseekReasoner":{message:`DeepSeek R1`,description:`Name des Servicemodells: DeepSeek Reasoner`},"model.deepseekReasonerDescription":{message:`Auf Schlussfolgern spezialisiert, geeignet für Mathematik, Logik und schrittweise Problemlösung.`,description:`Beschreibung des DeepSeek-Reasoner-Modells`},"model.deepseekChat32":{message:`DeepSeek V3.2 Experimentell`,description:`Name des Servicemodells: DeepSeek V3.2 Exp`},"model.deepseekChat32Description":{message:`Experimentelles Allzweckmodell, geeignet zum Ausprobieren und Bewerten neuer Fähigkeiten und Verhaltensweisen.`,description:`Beschreibung des experimentellen Modells DeepSeek V3.2`},"model.deepseekV4Flash":{message:`DeepSeek V4 Flash`,description:`Name des Servicemodells: DeepSeek V4 Flash`},"model.deepseekV4FlashDescription":{message:`Schnelles Modell mit 1 Million Tokens Kontext, geeignet für lange Dokumente, Zusammenfassungen und Aufgaben mit hohem Durchsatz.`,description:`Beschreibung des Modells DeepSeek V4 Flash`},"model.grok4":{message:`Grok 4`,description:`Name des Servicemodells: Grok 4`},"model.grok4Description":{message:`Unterstützt visuelles Verständnis und eignet sich für eingehende Analysen, Recherchen und komplexe Fragen.`,description:`Beschreibung des Grok-4-Modells`},"model.grok3":{message:`Grok 3`,description:`Modellname des Dienstes`},"model.grok3Description":{message:`Universell einsetzbares Modell, geeignet für Dialoge, Schreiben und allgemeine Analysen.`,description:`Beschreibung des Grok3-Modells`},"model.gemini30Pro":{message:`Gemini 3.0 Pro`,description:`Modellname des Dienstes: Gemini 3.0 Pro`},"model.gemini30ProDescription":{message:`Multimodales Pro-Modell, geeignet für komplexe Analysen, Dokumente und visuelle Aufgaben.`,description:`Beschreibung des Gemini 3.0 Pro-Modells`},"model.gemini31Pro":{message:`Gemini 3.1 Pro`,description:`Modellname des Dienstes: Gemini 3.0 Pro`},"model.gemini31ProDescription":{message:`Pro-Modell mit verbesserter Schlussfolgerungsfähigkeit, geeignet für komplexe Programmierung, Analysen und multimodale Aufgaben.`,description:`Beschreibung des Gemini 3.0 Pro-Modells`},"model.gemini25Pro":{message:`Gemini 2.5 Pro`,description:`Modellname des Dienstes: Gemini 2.5 Pro`},"model.gemini25ProDescription":{message:`Ausgereiftes Pro-Modell, geeignet für tiefgehende Schlussfolgerungen, große Dateien und strukturierte Analysen.`,description:`Beschreibung des Gemini 2.5 Pro-Modells`},"model.gemini25Flash":{message:`Gemini 2.5 Flash`,description:`Modellname des Dienstes: Gemini 2.5 Flash`},"model.gemini25FlashDescription":{message:`Effizientes multimodales Modell, geeignet für schnelle Dialoge und kostenbewusste Aufgaben.`,description:`Beschreibung des Gemini 2.5 Flash-Modells`},"model.gemini36Flash":{message:`Gemini 3.6 Flash`,description:`Modellname des Dienstes: Gemini 3.6 Flash`},"model.gemini36FlashDescription":{message:`Schnelles Schlussfolgerungsmodell, geeignet für visuelles Verständnis, Tool-Aufrufe und interaktive Aufgaben.`,description:`Beschreibung des Gemini 3.6 Flash-Modells`},"model.gemini35Flash":{message:`Gemini 3.5 Flash`,description:`Modellname des Dienstes: Gemini 2.5 Flash`},"model.gemini35FlashDescription":{message:`Leichtgewichtiges multimodales Modell, geeignet für schnelle Extraktion, Klassifizierung und Dialoge.`,description:`Beschreibung des Gemini 2.5 Flash-Modells`},"model.claudeOpus5":{message:`Claude Opus 5`,description:`Name des Servicemodells: Claude Opus 5`},"model.claudeOpus5Description":{message:`Modell für tiefgehendes Schlussfolgern, geeignet für komplexe Programmierung, Forschung und lang laufende Agentenaufgaben.`,description:`Beschreibung des Modells Claude Opus 5`},"model.claudeOpus48":{message:`Claude Opus 4.8`,description:`Name des Servicemodells: Claude Opus 4.8`},"model.claudeOpus48Description":{message:`Leistungsstarkes Modell, geeignet für gründliche Analysen, Programmierung und mehrstufige Planung.`,description:`Beschreibung des Modells Claude Opus 4.8`},"model.claudeSonnet46":{message:`Claude Sonnet 4.6`,description:`Name des Servicemodells: Claude Sonnet 4.6`},"model.claudeSonnet46Description":{message:`Ausgewogenes Modell, geeignet für Programmierung, Dokumentenverarbeitung und häufige professionelle Aufgaben.`,description:`Beschreibung des Modells Claude Sonnet 4.6`},"model.claudeHaiku45":{message:`Claude Haiku 4.5`,description:`Name des Servicemodells: Claude Haiku 4.5`},"model.claudeHaiku45Description":{message:`Modell mit niedriger Latenz, geeignet für kurze Fragen, Informationsextraktion und Anfragen mit hohem Durchsatz.`,description:`Beschreibung des Modells Claude Haiku 4.5`},"model.kimiK3":{message:`Kimi K3`,description:`Name des Kimi-K3-Flaggschiffmodells von Moonshot AI`},"model.kimiK3Description":{message:`Flaggschiffmodell für Schlussfolgerungen und visuelle Verarbeitung, geeignet für sehr lange Dokumente und komplexe Workflows.`,description:`Beschreibung des Kimi-K3-Modells`},"model.kimiK26":{message:`Kimi K2.6`,description:`Name des Kimi-K2.6-Modells`},"model.kimiK26Description":{message:`Multimodales Schlussfolgerungsmodell, geeignet für visuelle Analysen und strukturierte K2-Aufgaben.`,description:`Beschreibung des Kimi-K2.6-Modells`},"model.kimiK25":{message:`Kimi K2.5`,description:`Name des Servicemodells: Kimi K2.5`},"model.kimiK25Description":{message:`Universelles K2-Modell, geeignet für Schreiben, Zusammenfassungen und alltägliche Wissensarbeit.`,description:`Beschreibung des Kimi-K2.5-Modells`},"model.kimiK2Thinking":{message:`Kimi K2 Thinking`,description:`Name des Servicemodells: Kimi K2 Thinking`},"model.kimiK2ThinkingDescription":{message:`Sorgfältiges Schlussfolgerungsmodell, geeignet für Mathematik, Logik und anspruchsvolle Planungsaufgaben.`,description:`Beschreibung des Kimi-K2-Thinking-Modells`},"model.kimiK2ThinkingTurbo":{message:`Kimi K2 Thinking Turbo`,description:`Name des Servicemodells: Kimi K2 Thinking Turbo`},"model.kimiK2ThinkingTurboDescription":{message:`Beschleunigtes Schlussfolgerungsmodell mit ausgewogener Denktiefe und schnellerer Reaktion.`,description:`Beschreibung des Kimi-K2-Thinking-Turbo-Modells`},"model.glm51":{message:`GLM 5.1`,description:`Modellname des Dienstes: GLM 5.1`},"model.glm51Description":{message:`Universell einsetzbares Modell, geeignet für Schlussfolgerungen, Schreiben und wissensintensive Aufgaben auf Chinesisch.`,description:`Beschreibung des GLM 5.1-Modells`},"model.glm47":{message:`GLM 4.7`,description:`Modellname des Dienstes: GLM 4.7`},"model.glm47Description":{message:`Preis-Leistungs-starkes Modell, geeignet für allgemeine Analysen, Entwürfe und Dialogaufgaben.`,description:`Beschreibung des GLM 4.7-Modells`},"message.startNewChat":{message:`Neuen Chat starten`,description:`Nachricht auf der Webseite, die den Benutzer auffordert, einen neuen Chat zu starten`},"message.uploadFile":{message:`Datei hochladen`,description:`Nachricht auf der Webseite, die den Benutzer auffordert, eine Datei hochzuladen`},"message.noToken":{message:`Bitte beantragen Sie den entsprechenden Dienst`,description:`Nachricht auf der Webseite, die den Benutzer auffordert, den entsprechenden Dienst zu beantragen`},"message.newMessagePlaceholder":{message:`Bitte geben Sie Ihre Frage ein...`,description:`Platzhalter auf der Webseite, der den Benutzer auffordert, eine Frage einzugeben`},"message.noInput":{message:`Die Frage darf nicht leer sein`,description:`Nachricht auf der Webseite, die den Benutzer darauf hinweist, dass die Frage nicht leer sein darf`},"message.uploadReferencesExceed":{message:`Maximal 1 Datei kann hochgeladen werden`,description:`Nachricht auf der Webseite, die den Benutzer darauf hinweist, dass maximal 1 Datei hochgeladen werden kann`},"message.uploadReferencesError":{message:`Datei-Upload fehlgeschlagen, bitte später erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer darüber informiert, dass der Datei-Upload fehlgeschlagen ist, bitte später erneut versuchen`},"message.uploadReferencesTooLarge":{message:`Dateigröße {size} überschreitet das Limit {max}, bitte komprimieren und erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass die Datei die maximale Uploadgröße überschreitet und komprimiert werden muss, um es erneut zu versuchen.`},"message.notApplied":{message:`Sie haben diesen Dienst noch nicht beantragt, bitte beantragen Sie ihn zuerst`,description:`Nachricht auf der Webseite, die den Benutzer darauf hinweist, dass er diesen Dienst noch nicht beantragt hat`},"message.tryForFree":{message:`Kostenlose Testversion`,description:`Nachricht auf der Webseite, die den Benutzer über die kostenlose Testversion informiert`},"message.question1":{message:`Trainingsplan erstellen`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, einen JavaScript-Code zu schreiben, der 'Hello World' ausgibt`},"message.question2":{message:`Persönliche Webseite erstellen`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, Mike eine E-Mail zu schreiben und ihm mitzuteilen, dass er gerade umgezogen ist`},"message.question3":{message:`Interessante Programmier-Spiele entwerfen`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, die Grundlagen der Quantencomputing in einfacher Sprache zu erklären`},"message.question4":{message:`Seoul wie ein Einheimischer erleben`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, zu erklären, welchen Einfluss virtuelle Realität auf die Kunstproduktion hat`},"message.question5":{message:`Wer ist größer, 9.8 oder 9.11?`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, zwei Zahlen zu vergleichen`},"message.question6":{message:`Welchen Einfluss hat KI auf die Zukunft?`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, über den Einfluss von KI auf die Zukunft zu sprechen`},"message.question7":{message:`Wie kann ich meine Lernfähigkeit verbessern?`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, darüber zu sprechen, wie er seine Lernfähigkeit verbessern kann`},"message.question8":{message:`Wie kann ich meine Konzentration steigern?`,description:`Beispielhafte Frage zum Start des Chats, die den Benutzer auffordert, darüber zu sprechen, wie er seine Konzentration steigern kann`},"message.errorApiError":{message:`Antwort fehlgeschlagen, bitte später erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer darüber informiert, dass die Antwort fehlgeschlagen ist, bitte später erneut versuchen`},"message.errorBadRequest":{message:`Anfrageinhalt ist nicht korrekt, bitte erneut fragen`,description:`Nachricht auf der Webseite, die den Benutzer darauf hinweist, dass der Anfrageinhalt nicht korrekt ist`},"message.errorNoConversation":{message:`Unterhaltung existiert nicht oder ist abgelaufen, bitte starten Sie einen neuen Chat`,description:`Nachricht auf der Webseite, die den Benutzer darüber informiert, dass die Unterhaltung nicht existiert oder abgelaufen ist`},"message.errorContentTooLarge":{message:`Frageinhalt ist zu lang, bitte kürzen und erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer darauf hinweist, dass der Frageinhalt zu lang ist`},"message.errorTooManyRequests":{message:`Ihre Anfragen sind zu häufig, bitte versuchen Sie es später erneut`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass seine Anfragen zu häufig sind und er es später erneut versuchen soll`},"message.errorBusy":{message:`Server beschäftigt, bitte später erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass der Server beschäftigt ist, bitte später erneut versuchen`},"message.errorUsedUp":{message:`Sie haben Ihr Kontingent aufgebraucht, bitte kaufen Sie mehr, um fortzufahren`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass er sein Kontingent aufgebraucht hat, bitte kaufen Sie mehr, um fortzufahren`},"message.errorUnknown":{message:`Unbekannter Serverfehler, bitte später erneut versuchen oder den Kundenservice kontaktieren`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass ein unbekannter Serverfehler aufgetreten ist, bitte später erneut versuchen oder den Kundenservice kontaktieren`},"message.responseInterrupted":{message:`Die Antwort wurde unterbrochen. Die obige Teilantwort ist möglicherweise unvollständig.`,description:`Hinweis auf eine unterbrochene Teilantwort`},"message.retry":{message:`Erneut versuchen`,description:`Nach dem Klicken wird die fehlgeschlagene Antwort mit der ursprünglichen Frage und den Anhängen erneut angefordert; es erfolgt kein automatischer Wiederholungsversuch`},"message.errorTimeout":{message:`Antwortzeitüberschreitung, bitte später erneut versuchen`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass die Antwortzeit überschritten wurde, bitte später erneut versuchen`},"message.errorNotApplied":{message:`Sie haben diesen Dienst noch nicht beantragt, bitte beantragen Sie ihn zuerst, bevor Sie fortfahren`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass er diesen Dienst noch nicht beantragt hat, bitte beantragen Sie ihn zuerst, bevor Sie fortfahren`},"message.confirmDelete":{message:`Löschen bestätigen`,description:`Nachricht auf der Webseite, die den Benutzer auffordert, das Löschen zu bestätigen`},"message.howToUse":{message:`KI kann Fehler machen, bitte überprüfen Sie wichtige Informationen.`,description:`Nachricht auf der Webseite, die den Benutzer informiert, dass die KI Fehler machen kann, bitte überprüfen Sie wichtige Informationen`},"title.chat":{message:`KI-Chat`,description:`Titel der Webseite, d.h. KI-Chat`},"title.example":{message:`Beispiel`,description:`Titel der Webseite, d.h. Beispiel`},"title.capabilities":{message:`Funktionen`,description:`Titel der Webseite, d.h. Funktionen`},"title.limitations":{message:`Einschränkungen`,description:`Titel auf der Webseite, der darauf hinweist, dass dieser Abschnitt technische Einschränkungen des Dienstes behandelt`},"title.complexQuestion":{message:`Komplexe Fragen beantworten`,description:`Titel auf der Webseite, der darauf hinweist, dass dieser Abschnitt die Fähigkeit des Dienstes behandelt, komplexe Fragen zu beantworten`},"title.professionalQuestion":{message:`Fachliche Fragen konsultieren`,description:`Titel auf der Webseite, der darauf hinweist, dass dieser Abschnitt die Fähigkeit des Dienstes behandelt, fachliche Fragen zu konsultieren`},"title.getTips":{message:`Inspiration und Ideen erhalten`,description:`Titel auf der Webseite, der darauf hinweist, dass dieser Abschnitt die Fähigkeit des Dienstes behandelt, Inspiration und Ideen zu erhalten`},"group.today":{message:`Heute`,description:`Name der Gruppierung auf der Webseite, d.h. Heute`},"group.yesterday":{message:`Gestern`,description:`Name der Gruppierung auf der Webseite, d.h. Gestern`},"group.thisWeek":{message:`Diese Woche`,description:`Name der Gruppierung auf der Webseite, d.h. Diese Woche`},"group.earlier":{message:`Früher`,description:`Name der Gruppierung auf der Webseite, d.h. Früher`},"connections.tooltip":{message:`Verbindungsverwaltung`,description:`Tooltip für den Button, der zur Verbindungsverwaltungsseite von auth.acedata.cloud führt`},"skill.tooltip":{message:`Fähigkeitenverwaltung`,description:`Tooltip für den Button, der zur Fähigkeitenverwaltungsseite von auth.acedata.cloud führt`},"composer.addAction":{message:`Inhalt hinzufügen`,description:`Tooltip für die Plus-Schaltfläche unter dem Eingabefeld, die das Hochladen von Dateien, das Öffnen von Fähigkeiten oder die Verbindungsverwaltung ermöglicht`},"composer.addFiles":{message:`Fotos oder Dateien hinzufügen`,description:`Eintrag im Popup-Menü der Plus-Schaltfläche: Bilder oder Dateien hochladen`},"composer.skills":{message:`Fähigkeiten`,description:`Eintrag im Popup-Menü der Plus-Schaltfläche: Fähigkeitenverwaltung öffnen`},"composer.connections":{message:`Verbindungen`,description:`Eintrag im Popup-Menü der Plus-Schaltfläche: Verbindungsverwaltung öffnen`},"agent.title":{message:`Desktop-Agent`,description:`Titel des Dialogfelds zur Agentenverwaltung`},"agent.tooltip":{message:`Desktop-Agent`,description:`Tooltip für die Agentenschaltfläche`},"agent.connected":{message:`Verbunden`,description:`Status des verbundenen Agenten`},"agent.notConnected":{message:`Nicht verbunden`,description:`Status des nicht verbundenen Agenten`},"agent.description":{message:`Verbinden Sie den Desktop-Agenten, um auf lokale Dateien zuzugreifen, Befehle auszuführen und den lokalen MCP-Server in AI-Gesprächen zu verwenden.`,description:`Beschreibung des Agenten`},"agent.name":{message:`Agentenname`,description:`Label für den Agentennamen`},"agent.tools":{message:`Verfügbare Werkzeuge`,description:`Label für die Anzahl der Agentenwerkzeuge`},"agent.connectedSince":{message:`Verbindungszeit`,description:`Label für die Verbindungszeit des Agenten`},"agent.connectedHint":{message:`Ihr Desktop-Agent ist verbunden und einsatzbereit.`,description:`Hinweis, dass der Agent verbunden ist`},"agent.installLabel":{message:`Desktop-Agent installieren:`,description:`Installationsanweisungen Label`},"agent.runLabel":{message:`Agent ausführen:`,description:`Label für die Ausführungsanweisung`},"askUserQuestion.submit":{message:`Einreichen`,description:`Schaltfläche zum Einreichen der letzten Frage im ask-user-question-Assistenten`},"askUserQuestion.next":{message:`Nächste Frage`,description:`Fortschritt zur nächsten Frage im ask-user-question-Assistenten`},"askUserQuestion.back":{message:`Vorherige Frage`,description:`Zurück zur vorherigen Frage im ask-user-question-Assistenten`},"askUserQuestion.skipAll":{message:`Alle überspringen`,description:`Überspringt den gesamten ask-user-question-Assistenten, damit das Modell ohne Antworten fortfahren kann`},"askUserQuestion.other":{message:`Sonstiges`,description:`Pseudowahl; bei Auswahl wird ein benutzerdefiniertes Texteingabefeld angezeigt`},"askUserQuestion.otherDesc":{message:`Gib deine eigene Antwort ein`,description:`Hilfsbeschreibung unter der Option 'Sonstiges'`},"askUserQuestion.placeholder":{message:`Bitte Antwort eingeben…`,description:`Platzhaltertext für das benutzerdefinierte Antwortfeld jeder Frage`},"askUserQuestion.multiSelectHint":{message:`Wählen Sie eine oder mehrere Optionen`,description:`Hinweis, der angezeigt wird, wenn mehrere Auswahlmöglichkeiten unterstützt werden`},"askUserQuestion.collapsedAnswerLabel":{message:`Ihre Antwort`,description:`Fallback-Text, wenn keine spezifische Antwort aus der Historie extrahiert werden kann`},"consent.title":{message:`Connector-Autorisierung erforderlich`,description:`Titel der Autorisierungskarte für Connectoren`},"consent.matchAny":{message:`Wählen Sie einen aus`,description:`Label: Jeder beliebige Connector in dieser Gruppe kann die Anforderungen erfüllen`},"consent.matchAll":{message:`Alle benötigen eine Autorisierung`,description:`Label: Alle Connectoren in dieser Gruppe benötigen eine Autorisierung`},"consent.authorize":{message:`Autorisieren`,description:`Autorisierungsbutton, der nach dem Klicken die Drittanbieter-Autorisierungsseite öffnet`},"consent.skip":{message:`Vorübergehend nicht autorisieren`,description:`Button zum Überspringen der Autorisierung, nach dem Überspringen wird das Modell ohne diesen Connector fortgesetzt`},"consent.continue":{message:`Fortfahren`,description:`Schaltfläche „Fortfahren“ erscheint, sobald nach der OAuth-Rückkehr erkannt wird, dass der Connector verbunden ist; ein Klick reicht die Autorisierung ein.`},"consent.selectScopes":{message:`Wählen Sie die Berechtigungen von {provider}`,description:`Title of the scope picker dialog opened from the consent card; {provider} is the upstream provider name (e.g. Gmail).`},"consent.selectScopesHint":{message:`Wählen Sie die Berechtigungen aus, die Sie autorisieren möchten. Mehrfachauswahl möglich, nicht ausgewählte Berechtigungen gewähren standardmäßig nur grundlegende Anmeldeinformationen.`,description:`Body copy explaining that the user can opt out of specific scopes; rendered above the checkbox group.`},"consent.installFailed":{message:`Autorisierung fehlgeschlagen. Bitte versuchen Sie es erneut.`,description:`Toast shown when the AuthBackend install endpoint returns an error from the consent card.`},"consent.statusConnected":{message:`Verbunden`,description:`Statussymbol für verbundene Connectoren`},"consent.statusUnconnected":{message:`Nicht verbunden`,description:`Statussymbol für nicht verbundene Connectoren (wird angezeigt, wenn kein Autorisierungslink vorhanden ist)`},"consent.resolvedAuthorized":{message:`Autorisierte: {list}`,description:`Hinweis am unteren Rand der Karte nach der Autorisierung des Benutzers, {list} ist die Liste der autorisierten Connectoren`},"consent.resolvedSkipped":{message:`Connector-Autorisierung übersprungen`,description:`Hinweis am unteren Rand der Karte, nachdem der Benutzer die Autorisierung übersprungen hat`},"browserTool.title":{message:`Browseraktivität`,description:`Standardtitel für die Aktivitäten des BrowserDevice-Tools`},"browserTool.state.starting_session":{message:`Browser-Sitzung wird gestartet`,description:``},"browserTool.state.attaching_tab":{message:`Browser-Tab wird verbunden`,description:``},"browserTool.state.ready":{message:`Browser ist bereit`,description:``},"browserTool.state.device_offline":{message:`Browsergerät ist offline`,description:`Das ausgewählte Browsergerät ist nicht online`},"browserTool.state.device_busy":{message:`Browsergerät ist beschäftigt`,description:``},"browserTool.state.authorization_required":{message:`Bestätigung der Berechtigung im Studio erforderlich`,description:``},"browserTool.state.executing":{message:`Wird im Browser ausgeführt`,description:`Das Browsergerät führt das Tool aus`},"browserTool.state.completed":{message:`Abgeschlossen`,description:`Browser-Tool wurde erfolgreich ausgeführt`},"browserTool.state.stopped":{message:`Browser-Sitzung gestoppt`,description:``},"browserTool.state.expired":{message:`Browseranfrage ist abgelaufen`,description:`Die Ausführungsanfrage des Browser-Tools ist abgelaufen`},"browserTool.state.debugger_unavailable":{message:`Bitte schließen Sie die Entwicklertools, um fortzufahren`,description:``},"browserTool.state.unknown_outcome":{message:`Ausführungsergebnis unbekannt, bitte überprüfen und erneut versuchen`,description:``},"browserTool.state.failed":{message:`Browseraktion fehlgeschlagen`,description:``},"browserTool.stop":{message:`Stoppen`,description:``},"browserTool.recovery.open-device-manager":{message:`Geräte verwalten`,description:``},"browserTool.recovery.stop-other-session":{message:`Andere Sitzung stoppen`,description:``},"browserTool.recovery.close-devtools":{message:`Entwicklertools schließen`,description:``},"browserTool.recovery.open-consent-card":{message:`Berechtigung anzeigen`,description:``},"scheduledTasks.navTitle":{message:`Geplante Aufgaben`,description:`Eingang zu den geplanten Aufgaben in der Seitenleiste`},"scheduledTasks.tab.tasks":{message:`Geplante Aufgaben`,description:`Seite für geplante Aufgaben - Registerkarte für Aufgaben`},"scheduledTasks.tab.runs":{message:`Ausführungsprotokolle`,description:`Seite für geplante Aufgaben - Registerkarte für alle Ausführungsprotokolle`},"scheduledTasks.filterAll":{message:`Alle`,description:`Filter für den Status der Ausführungsprotokolle - Alle`},"scheduledTasks.title":{message:`Geplante Aufgaben`,description:`Titel der Seite.`},"scheduledTasks.create":{message:`Neu erstellen`,description:`Schaltfläche zum Erstellen eines Zeitplans`},"scheduledTasks.edit":{message:`Aufgabe bearbeiten`,description:`Titel des Bearbeitungsdialogs`},"scheduledTasks.duplicate":{message:`Aufgabe kopieren`,description:`Schaltfläche zum Kopieren einer Aufgabe, um ein neues Formular basierend auf einer vorhandenen Aufgabe vorzufüllen`},"scheduledTasks.empty":{message:`Es gibt noch keine geplanten Aufgaben, klicken Sie auf „Neu erstellen“, um eine zu erstellen`,description:`Hinweis für den leeren Zustand`},"scheduledTasks.noRuns":{message:`Noch nicht ausgeführt`,description:`Keine Ausführungshistorie`},"scheduledTasks.loadError":{message:`Laden fehlgeschlagen`,description:`Fehlermeldung beim Laden`},"scheduledTasks.deleteConfirm":{message:`Bestätigen Sie die Löschung von „{name}“? Nach der Löschung wird die Aufgabe gestoppt.`,description:`Bestätigung zur Löschung`},"scheduledTasks.triggerNow":{message:`Jetzt auslösen`,description:`Manuelle sofortige Ausführung der Aufgabe.`},"scheduledTasks.triggerSuccess":{message:`Ausgelöst, Ergebnisse können später in den Ausführungsprotokollen eingesehen werden.`,description:`Hinweis, dass die manuelle Auslösung erfolgreich war.`},"scheduledTasks.triggerError":{message:`Auslösung fehlgeschlagen, bitte später erneut versuchen.`,description:`Hinweis, dass die manuelle Auslösung fehlgeschlagen ist.`},"scheduledTasks.viewResult":{message:`Ergebnis anzeigen`,description:`Leitet zur Ergebnisansicht weiter.`},"scheduledTasks.viewRuns":{message:`Ausführungsprotokolle`,description:`Anzeigen der Ausführungshistorie am unteren Ende der Karte.`},"scheduledTasks.noConversation":{message:`Keine Gesprächsaufzeichnung`,description:`Läuft ohne zugeordnetes Gespräch (ältere Version läuft)`},"scheduledTasks.jitterHint":{message:`±60s Schwankung`,description:`Erläuterung zur Schwankung der Ausführungszeit`},"scheduledTasks.runCount":{message:`Bereits {count} Mal ausgeführt`,description:`Die Anzahl der Male, die die Aufgabe ausgeführt wurde.`},"scheduledTasks.state.enabled":{message:`Wird ausgeführt`,description:`Status, dass die Aufgabe aktiviert ist.`},"scheduledTasks.state.disabled":{message:`Pausiert`,description:`Status, dass die Aufgabe deaktiviert ist.`},"scheduledTasks.state.error":{message:`Fehler`,description:`Status, dass ein Fehler aufgetreten ist.`},"scheduledTasks.run.queued":{message:`In der Warteschlange`,description:`Status in der Warteschlange`},"scheduledTasks.run.running":{message:`Wird ausgeführt`,description:`Status, dass die Aufgabe gerade läuft.`},"scheduledTasks.run.success":{message:`Erfolgreich`,description:`Status, dass die Aufgabe erfolgreich abgeschlossen wurde.`},"scheduledTasks.run.failed":{message:`Fehlgeschlagen`,description:`Status fehlgeschlagen`},"scheduledTasks.run.indeterminate":{message:`Unbestätigt`,description:`Indeterminate run status (judge could not verify; not a failure)`},"scheduledTasks.run.reason.max_turns":{message:`Schrittlimit erreicht`},"scheduledTasks.run.reason.max_budget_usd":{message:`Budgetlimit erreicht`},"scheduledTasks.run.reason.tool_call_loop":{message:`Tool-Aufruf-Schleife erkannt`},"scheduledTasks.run.reason.prompt_too_long":{message:`Prompt zu lang`},"scheduledTasks.run.reason.aborted_streaming":{message:`Unterbrochen`},"scheduledTasks.run.reason.aborted_tools":{message:`Unterbrochen`},"scheduledTasks.run.reason.awaiting_user_input":{message:`Warten auf Ihre Eingabe`},"scheduledTasks.run.reason.error":{message:`Fehler`},"scheduledTasks.run.reason.unknown":{message:`Unbekannter Fehler`},"scheduledTasks.run.reason.balance_insufficient":{message:`Unzureichendes Guthaben`},"scheduledTasks.run.reason.billing_gate_failed":{message:`Autorisierung der Abrechnung fehlgeschlagen`},"scheduledTasks.run.reason.unauthorized":{message:`Nicht autorisiert`},"scheduledTasks.run.reason.timeout":{message:`Zeitüberschreitung`},"scheduledTasks.run.reason.internal_error":{message:`Interner Fehler`},"scheduledTasks.run.needs_user_input":{message:`Benötigt Eingabe`,description:`Status, der Benutzeraktionen erfordert`},"scheduledTasks.run.reason.browser_device_offline":{message:`Browser-Gerät ist offline`,description:`Das Gerät, auf dem der Browser läuft, ist nicht verbunden.`},"scheduledTasks.run.reason.browser_authorization_stale":{message:`Browserautorisierung wurde geändert, bitte bearbeiten Sie diese Aufgabe`,description:``},"scheduledTasks.scheduleType.daily":{message:`Täglich`,description:`Die Aufgabe wird täglich ausgeführt.`},"scheduledTasks.scheduleType.minutely":{message:`Jede Minute`},"scheduledTasks.scheduleType.hourly":{message:`Stündlich`,description:`Die Aufgabe wird stündlich ausgeführt.`},"scheduledTasks.scheduleType.weekly":{message:`Wöchentlich`,description:`Die Aufgabe wird wöchentlich ausgeführt.`},"scheduledTasks.scheduleType.cron":{message:`Cron-Ausdruck`,description:`Benutzerdefinierter Cron-Zeitplan.`},"scheduledTasks.scheduleType.interval":{message:`Alle`,description:`Die Aufgabe wird in festen Intervallen ausgeführt.`},"scheduledTasks.form.intervalUnit.minute":{message:`Minute`,description:`Intervall-Einheit: Minute`},"scheduledTasks.form.intervalUnit.hour":{message:`Stunde`,description:`Intervall-Einheit: Stunde`},"scheduledTasks.form.intervalUnit.day":{message:`Tag`,description:`Intervall-Einheit: Tag`},"scheduledTasks.form.hourlyMinute":{message:`Auslösende Minute`,description:`Minute, in der die Aufgabe jede Stunde ausgelöst wird`},"scheduledTasks.form.hourlyMinuteHint":{message:`Minute, in der die Aufgabe jede Stunde ausgelöst wird (0–59)`,description:`Erklärung zur Stundenminute`},"scheduledTasks.form.intervalHint":{message:`Führt alle festen Zeitintervalle nach der letzten Ausführung aus (mindestens 1 Minute)`,description:`Erklärung zu festen Intervallen`},"scheduledTasks.form.cronHint":{message:`Standard 5-teiliger Cron-Ausdruck: Minute Stunde Tag Monat Wochentag`,description:`Erklärung zu Cron`},"scheduledTasks.form.schedulePreview":{message:`Ausführungsfrequenz: {text}`,description:`Vorschau der Frequenz`},"scheduledTasks.humanize.everyNMinutes":{message:`Alle {n} Minuten`,description:`Für Menschen lesbar: Alle N Minuten`},"scheduledTasks.humanize.everyNHours":{message:`Alle {n} Stunden`,description:`Für Menschen lesbar: Alle N Stunden`},"scheduledTasks.humanize.everyNDays":{message:`Alle {n} Tage`,description:`Für Menschen lesbar: Alle N Tage`},"scheduledTasks.humanize.hourlyAtMinute":{message:`Jede Stunde zur {n}. Minute`,description:`Für Menschen lesbar: Jede Stunde zur N. Minute`},"scheduledTasks.humanize.dailyAt":{message:`Täglich um {time}`,description:`Für Menschen lesbar: Täglich zu einem bestimmten Zeitpunkt`},"scheduledTasks.humanize.weeklyAt":{message:`Wöchentlich am {weekday} um {time}`,description:`Für Menschen lesbar: Wöchentlich an einem bestimmten Tag zu einem bestimmten Zeitpunkt`},"scheduledTasks.humanize.cronRaw":{message:`Cron: {cron}`,description:`Menschenlesbar: Roh-Cron`},"scheduledTasks.humanize.once":{message:`Einmalig um {time}`,description:`Für Menschen lesbar: Einmalig`},"scheduledTasks.form.name":{message:`Aufgabenname`,description:`Namensfeld`},"scheduledTasks.form.namePlaceholder":{message:`z.B.: Tägliche Informationszusammenfassung`,description:`Platzhalter für den Namen`},"scheduledTasks.form.model":{message:`Modell`,description:`Modellauswahl`},"scheduledTasks.form.prompt":{message:`Eingabeaufforderung`,description:`Feld für die Eingabeaufforderung`},"scheduledTasks.form.promptPlaceholder":{message:`Geben Sie die Fragen oder Anweisungen ein, die zeitgesteuert ausgeführt werden sollen, unterstützt {'{{date}}'}, {'{{run_count}}'}, {'{{last_output}}'} Variablen`,description:`Platzhalter für Eingabeaufforderungen`},"scheduledTasks.form.promptHint":{message:`Unterstützt Platzhalter: {'{{date}}'} aktuelles Datum, {'{{run_count}}'} Anzahl der Ausführungen, {'{{last_output}}'} Zusammenfassung des letzten Ergebnisses`,description:`Erklärung zur Eingabeaufforderung`},"scheduledTasks.form.schedule":{message:`Ausführungsfrequenz`,description:`Auswahl der Frequenz`},"scheduledTasks.form.time":{message:`Ausführungszeit`,description:`Zeitfeld`},"scheduledTasks.form.timezone":{message:`Zeitzone`},"scheduledTasks.form.timezoneHint":{message:`Neue Aufgaben verwenden standardmäßig die Zeitzone dieses Geräts: {timezone}. Nach dem Speichern bleibt sie für die Aufgabe fest.`},"scheduledTasks.form.timezoneInvalid":{message:`Wähle eine gültige IANA-Zeitzone aus`},"scheduledTasks.form.weekday":{message:`Wochentag`,description:`Wochentagsfeld`},"scheduledTasks.form.cron":{message:`Cron-Ausdruck`,description:`Feld für den Cron-Ausdruck`},"scheduledTasks.form.skills":{message:`Erlaubte Skills`,description:`Mehrfachauswahl für unbeaufsichtigte Autorisierung von Skills bei geplanten Aufgaben`},"scheduledTasks.form.skillsPlaceholder":{message:`Wählen Sie die Skills aus, die dieser Aufgabe die automatische Ausführung erlauben`,description:`Platzhalter für die Autorisierung von Skills`},"scheduledTasks.form.skillsHint":{message:`Die ausgewählten Skills können im Hintergrund der geplanten Aufgabe ohne manuelle Bestätigung ausgeführt werden; nicht ausgewählte Skills können weiterhin nur in der Vorschau angezeigt oder auf Bestätigung warten.`,description:`Erläuterung zur Autorisierung von Skills`},"scheduledTasks.form.browserConnection":{message:`Browserverbindung`,description:``},"scheduledTasks.form.browserEffects":{message:`Es können folgende externe Nebenwirkungen auftreten: {effects}`,description:``},"scheduledTasks.form.authorizationExpires":{message:`Unbeaufsichtigte Autorisierung läuft ab: {time}`,description:``},"scheduledTasks.form.browserBindingInvalid":{message:`Bitte wählen Sie vor dem Speichern eine online und kompatible Browserverbindung`,description:``},"scheduledTasks.form.connectionAccount":`Account for {connector}`,"scheduledTasks.form.connectionAccountDefault":`Use the default account`,"scheduledTasks.form.accountIsDefault":`default`,"scheduledTasks.form.skillMissing":{message:`Nicht verbunden`,description:`Skill fehlt die Verbindung`},"scheduledTasks.form.mcpServers":{message:`MCP autorisieren`,description:`Unbeaufsichtigte Autorisierung von MCP-Servern für geplante Aufgaben, Mehrfachauswahl möglich.`},"scheduledTasks.form.mcpServersPlaceholder":{message:`Wählen Sie die MCP-Server aus, die diese Aufgabe automatisch laden dürfen`,description:`Platzhalter für die Autorisierung von MCP-Servern.`},"scheduledTasks.form.mcpServersHint":{message:`Die ausgewählten MCP-Server können im Hintergrund der geplanten Aufgaben geladen und ausgeführt werden; nicht ausgewählte MCP-Server werden im unbeaufsichtigten Modus nicht geladen.`,description:`Erläuterung zur Autorisierung von MCP-Servern.`},"scheduledTasks.form.maxTurns":{message:`Maximale Runden`,description:`Scheduled task per-run agent turn cap`},"scheduledTasks.form.maxTurnsHint":{message:`Maximale Agenten-Runden pro Lauf (1–50). Ein zu niedriges Limit stoppt mehrstufige Aufgaben (z. B. Skills mit mehreren Bash-/Doku-Schritten) vorzeitig ab, ohne Endergebnis. Standard 50.`,description:`Scheduled task per-run agent turn cap`},"scheduledTasks.form.skillsConfirmTitle":{message:`Bestätigung der unbeaufsichtigten Autorisierung`,description:`Titel der Bestätigung der Autorisierung`},"scheduledTasks.form.skillsConfirm":{message:`Diese Aufgabe erlaubt {count} Skills, im Hintergrund ohne manuelle Bestätigung auszuführen: {skills}. Diese Skills können Nachrichten senden, Inhalte veröffentlichen oder in externe Dienste schreiben, bitte bestätigen Sie.`,description:`Text zur Bestätigung der Autorisierung`},"scheduledTasks.form.skillNotActiveTitle":{message:`Fähigkeit muss zuerst gebunden werden`,description:`Dialogtitel, der angezeigt wird, wenn eine autorisierte Fähigkeit/MCP für die geplante Aufgabe noch nicht für den Benutzer gebunden ist.`},"scheduledTasks.form.skillNotActiveMessage":{message:`Die Fähigkeit „{name}“ ist noch nicht mit Ihrem Konto verbunden oder aktiviert. Wenn Sie sie nicht zuerst binden, kann die geplante Aufgabe im Hintergrund möglicherweise nicht darauf zugreifen. Es wird empfohlen, zuerst zu binden und dann zu speichern, oder klicken Sie auf die Schaltfläche unten, um trotzdem zu speichern.`,description:`Warnungstext; {name} ist der Name der Fähigkeit/MCP. Erklärt, dass es nicht gebunden ist und bietet an, trotzdem zu speichern.`},"scheduledTasks.form.skillNotActiveForce":{message:`Trotzdem speichern`,description:`Bestätigungsbutton, der die geplante Aufgabe trotzdem speichert und die Bindungsprüfung umgeht (zwanghaft).`},"scheduledTasks.form.required":{message:`Bitte füllen Sie den Aufgabennamen und die Eingabeaufforderung aus`,description:`Validierung für Pflichtfelder`},"artifacts.navTitle":{message:`Ausgaben`,description:`Navigationsüberschrift für Ausgaben im Seitenmenü`},"artifacts.title":{message:`Meine Ausgaben`,description:`Titel der Ausgabenseite`},"artifacts.summaryTotal":{message:`In dieser Ausgabe wurden insgesamt {count} erstellt`,description:`Zusammenfassung der Gesamtanzahl der Ausgaben`},"artifacts.filterAll":{message:`Alle`,description:`Filter für alle Ausgabetypen`},"artifacts.empty":{message:`Es gibt noch keine Ausgaben. Lassen Sie die KI Artikel verfassen, Bilder generieren oder E-Mails senden, dann erscheinen die Ausgaben hier automatisch.`,description:`Hinweis, dass keine Ausgaben vorhanden sind`},"artifacts.loadError":{message:`Laden der Ausgaben fehlgeschlagen`,description:`Hinweis auf einen Fehler beim Laden der Ausgaben`},"artifacts.actionError":{message:`Aktion fehlgeschlagen, bitte erneut versuchen`,description:`Hinweis auf einen Fehler bei der Ausführung der Aktion`},"artifacts.open":{message:`Öffnen`,description:`Button zum Öffnen des Originallinks der Ausgabe`},"artifacts.hide":{message:`Ausblenden`,description:`Button zum Ausblenden von Ausgaben`},"artifacts.unhide":{message:`Wiederherstellen`,description:`Taste zum Wiederherstellen eines versteckten Artifacts`},"artifacts.showHidden":{message:`Versteckte anzeigen`,description:`Schalter zum Anzeigen versteckter Artifacts in der Filterleiste`},"artifacts.hiddenBadge":{message:`Versteckt`,description:`Badge, das anzeigt, dass das Artifact versteckt wurde`},"artifacts.delete":{message:`Löschen`,description:`Button zum Löschen von Ausgaben`},"artifacts.deleteConfirm":{message:`Möchten Sie diesen Ausgabepost wirklich dauerhaft löschen?`,description:`Bestätigungsaufforderung zum Löschen einer Ausgabe`},"artifacts.loadMore":{message:`Mehr laden`,description:`Button zum Laden weiterer Ausgaben`},"artifacts.sourceAuto":{message:`Automatische Erfassung`,description:`Kennzeichnung der Quelle für die automatische Erfassung`},"artifacts.kind.article":{message:`Artikel`,description:`Ausgabetyp - Artikel`},"artifacts.kind.image":{message:`Bild`,description:`Ausgabetyp - Bild`},"artifacts.kind.video":{message:`Video`,description:`Ausgabetyp - Video`},"artifacts.kind.audio":{message:`Audio`,description:`Ausgabetyp - Audio`},"artifacts.kind.document":{message:`Dokument`,description:`Ausgabetyp - Dokument`},"artifacts.kind.email":{message:`E-Mail`,description:`Ausgabetyp - E-Mail`},"artifacts.kind.message":{message:`Nachricht`,description:`Ausgabetyp - Nachricht`},"artifacts.kind.dataset":{message:`Daten`,description:`Ausgabetyp - Daten`},"artifacts.kind.link":{message:`Link`,description:`Ausgabetyp - Link`},"artifacts.kind.other":{message:`Sonstiges`,description:`Ausgabetyp - Sonstiges`},"share.menu":{message:`Teilen`,description:`Menüpunkt zum Öffnen des Dialogfensters zum Teilen in der Seitenleiste/Werkzeugleiste`},"share.dialogTitle":{message:`Gespräch teilen`,description:`Titel des Dialogfensters zum Teilen von Gesprächen`},"share.description":{message:`Jeder, der den Link hat, kann dieses Gespräch einsehen, aber nicht weiter chatten.`,description:`Erklärung, was passiert, wenn das Gespräch geteilt wird`},"share.createLink":{message:`Freigabelink erstellen`,description:`Button zum Erstellen eines öffentlichen Freigabelinks für das Gespräch`},"share.copy":{message:`Link kopieren`,description:`Button zum Kopieren des Freigabelinks in die Zwischenablage`},"share.copied":{message:`Kopiert`,description:`Kurze Meldung, die nach erfolgreichem Kopieren auf dem Button erscheint`},"share.disable":{message:`Link deaktivieren`,description:`Button zum Widerrufen des Freigabelinks und Ungültigmachen der URL`},"share.disabled":{message:`Freigabelink wurde deaktiviert.`,description:`Hinweis, nachdem der Freigabelink deaktiviert wurde`},"share.needLogin":{message:`Bitte zuerst einloggen und dann dieses Gespräch teilen.`,description:`Hinweis für nicht eingeloggte Besucher, die versuchen, ein Gespräch zu teilen`},"share.noConversation":{message:`Bitte öffnen Sie zuerst ein Gespräch, bevor Sie teilen.`,description:`Hinweis, wenn der Teilen-Button ohne aktives Gespräch geklickt wird`},"share.createFailed":{message:`Erstellen des Freigabelinks fehlgeschlagen, bitte später erneut versuchen.`,description:`Fehlermeldung, wenn das Erstellen des Freigabelinks fehlschlägt`},"share.disableFailed":{message:`Deaktivieren des Freigabelinks fehlgeschlagen, bitte später erneut versuchen.`,description:`Fehlermeldung, wenn das Deaktivieren des Freigabelinks fehlschlägt`},"share.startYourOwn":{message:`Mein eigenes Gespräch starten`,description:`Handlungsaufforderung auf der öffentlichen Seite, um anonyme Besucher zur App-Startseite zu leiten`},"share.unavailableTitle":{message:`Dieses geteilte Gespräch ist nicht verfügbar.`,description:`Titel der öffentlichen Seite, wenn der Freigabelink ungültig oder nicht verfügbar ist`},"share.unavailableHint":{message:`Der Link wurde möglicherweise deaktiviert oder die URL ist ungültig.`,description:`Hinweis, wenn der Freigabelink ungültig oder nicht verfügbar ist`},"share.viewOnly":{message:`Nur-Lese-Freigabe des Gesprächs`,description:`Label auf der öffentlichen Seite, das anzeigt, dass das Gespräch nur lesbar ist`},"share.untitled":{message:`Unbenanntes Gespräch`,description:`Platzhaltertext für ein freigegebenes Gespräch ohne Titel`},"share.footerNote":{message:`Sie sehen ein freigegebenes Gespräch. Klicken Sie oben, um selbst mit der KI zu chatten.`,description:`Hinweis unter dem freigegebenen Gespräch auf der öffentlichen Seite`},"scheduledTasks.run.reason.goal_not_achieved":{message:`Ziel nicht erreicht`,description:`Das festgelegte Ziel wurde nicht erfüllt.`},"scheduledTasks.run.reason.outcome_unknown":{message:`Ergebnis unbekannt`,description:`Das Ergebnis der Aufgabe muss noch bestätigt werden.`},"scheduledTasks.run.reason.run_abandoned":{message:`Ausführungsstatus unbekannt`},"actions.rename":{message:`Umbenennen`,description:`Menüeintrag zum Umbenennen im Gesprächsaktionsmenü`},"actions.renameTitle":{message:`Gespräch umbenennen`,description:`Titel des Dialogfelds zum Umbenennen des Gesprächs`},"actions.renameEmpty":{message:`Bitte Namen eingeben`,description:`Hinweis, wenn der Name beim Umbenennen leer ist`},"actions.renameSuccess":{message:`Umbenannt`,description:`Hinweis, wenn das Gespräch erfolgreich umbenannt wurde`},"actions.renameFailed":{message:`Umbenennung fehlgeschlagen, bitte versuchen Sie es später erneut`,description:`Hinweis, wenn die Umbenennung des Gesprächs fehlgeschlagen ist`},"actions.deleteConfirm":{message:`Bestätigen Sie die Löschung dieses Gesprächs? Nach der Löschung kann es nicht wiederhergestellt werden.`,description:`Bestätigungsnachricht vor der Löschung eines Gesprächs`},"actions.deleteSuccess":{message:`Gelöscht`,description:`Hinweis, wenn das Gespräch erfolgreich gelöscht wurde`},"actions.deleteFailed":{message:`Löschung fehlgeschlagen, bitte versuchen Sie es später erneut`,description:`Hinweis, wenn die Löschung des Gesprächs fehlgeschlagen ist`},"actions.tokenMissing":{message:`Token existiert nicht, bitte melden Sie sich erneut an`,description:`Fehlermeldung, wenn bei der Gesprächsaktion das Token fehlt`},"actions.conversationMissing":{message:`Gespräch existiert nicht`,description:`Fehlermeldung, wenn das Zielgespräch bei der Gesprächsaktion nicht vorhanden ist`},"scheduledTasks.form.execution":{message:`Ausführungsort`,description:`Wählen Sie, ob die Aufgabe in der Cloud oder lokal ausgeführt werden soll`},"scheduledTasks.execution.cloud":{message:`Cloud`,description:`Cloud-Betriebsmodus`},"scheduledTasks.execution.local":{message:`Dieses Gerät`,description:`Lokaler Betriebsmodus`},"scheduledTasks.execution.localNamed":{message:`Dieses Gerät ({device})`,description:`Lokaler Betriebsmodus mit Gerätenamen`},"scheduledTasks.form.executionCloudHint":{message:`Wird planmäßig von der Plattform ausgelöst, läuft auch wenn der Computer ausgeschaltet ist.`,description:`Erklärung zum Cloud-Modus`},"scheduledTasks.form.executionLocalHint":{message:`Wird planmäßig von diesem Gerät ausgelöst, kann lokale Dateien lesen und schreiben sowie lokale Befehle ausführen. Bei ausgeschaltetem Gerät oder Beenden der Anwendung wird nicht ausgeführt, versäumte Ausführungen werden nur protokolliert und nicht nachgeholt.`,description:`Erklärung zum lokalen Modus`},"scheduledTasks.form.executionMobileUnsupported":{message:`Die mobile Version unterstützt derzeit keine lokale Ausführung`,description:`Grund, warum die mobile Version lokale Ausführung nicht unterstützt`},"scheduledTasks.form.executionWebUnsupported":{message:`Lokale Ausführung erfordert die Desktop-Anwendung`,description:`Grund, warum die Webversion lokale Ausführung nicht unterstützt`},"scheduledTasks.form.executionDeviceUnavailable":{message:`Kann keine lokalen Informationen abrufen, bitte starten Sie die Anwendung neu und versuchen Sie es erneut`,description:`Geräteinformationen auf dem Desktop sind nicht verfügbar`},"scheduledTasks.form.localTools":{message:`Lokale Tool-Berechtigung`,description:`Feld für lokale Tool-Berechtigungen`},"scheduledTasks.form.localToolsPlaceholder":{message:`Wählen Sie die lokalen Tools, die für diese Aufgabe verwendet werden dürfen`,description:`Platzhalter für die Auswahl lokaler Tools`},"scheduledTasks.form.localToolsHint":{message:`Bei unbetreutem Betrieb wird keine Berechtigungsbestätigung angezeigt, nur die hier ausgewählten Tools sind verfügbar.`,description:`Erklärung zur lokalen Tool-Berechtigung`},"scheduledTasks.run.skipped":{message:`Übersprungen`,description:`Ausführungsstatus: Gerät war zu diesem Zeitpunkt nicht online, wurde nicht ausgeführt`},"workingDir.choose":{message:`Arbeitsverzeichnis auswählen`,description:`Schaltfläche über dem Eingabefeld im Desktop-Chat: Wählen Sie den Projektordner für die AI-Operation; Nachrichten können nicht gesendet werden, bevor nichts ausgewählt ist.`},"workingDir.switchHint":{message:`Klicken Sie, um das Arbeitsverzeichnis zu wechseln`,description:`Schwebender Hinweis auf das Pfadkapsel, wenn ein Arbeitsverzeichnis ausgewählt ist.`},"scheduledTasks.triggerLocalUnavailable":{message:`Dies ist eine lokale Aufgabe, die nur manuell auf der gebundenen Desktop-Version ausgeführt werden kann`,description:`Lokale Aufgaben können auf nicht gebundenen Geräten nicht manuell ausgelöst werden`},"scheduledTasks.triggerWrongDevice":{message:`Diese Aufgabe ist an ein anderes Gerät gebunden`,description:`Lokale Aufgabe gehört nicht zum aktuellen Gerät`},"scheduledTasks.triggerSignedOut":{message:`Lokale Planung nicht angemeldet, bitte erneut anmelden und es erneut versuchen`,description:`Daemon hat keine Anmeldeinformationen`},"scheduledTasks.triggerAlreadyRunning":{message:`Diese Aufgabe wird bereits ausgeführt`,description:`Aufgabe wird bereits ausgeführt`},"actionConfirmation.confirm":{message:`Bestätigen`,description:`Bestätigungsfeld für das Bestätigen einer Aktion`},"actionConfirmation.cancel":{message:`Abbrechen`,description:`Bestätigungsfeld für das Abbrechen einer Aktion`},"actionConfirmation.resolvedConfirmed":{message:`Bestätigt, wird ausgeführt`,description:`Bestätigungsnachricht vor der Ausführung: Der Benutzer hat bestätigt, die nachfolgenden Aktionen werden ausgeführt.`},"actionConfirmation.resolvedCancelled":{message:`Abgebrochen`,description:`Hinweis nach Abbruch der Aktion durch den Benutzer im Bestätigungsfeld`},"actionConfirmation.mediaLoading":{message:`Lade Medienvorschau…`,description:`Bestätigungs-Karte vor der Ausführung: Status des Medienladens`},"actionConfirmation.mediaUnavailable":{message:`Vorschau kann hier nicht abgespielt werden`,description:`Bestätigungs-Karte vor der Ausführung: Titel für fehlgeschlagenes Medienabspielen`},"actionConfirmation.mediaUnavailableHint":{message:`Der Medienlink könnte abgelaufen sein oder der aktuelle Browser unterstützt dieses Format nicht. Bitte öffnen Sie die Originaldatei zur Bestätigung vor der Veröffentlichung.`,description:`Bestätigungs-Karte vor der Ausführung: Erklärung für fehlgeschlagenes Medienabspielen`},"actionConfirmation.openMedia":{message:`Originaldatei öffnen`,description:`Bestätigungs-Karte vor der Ausführung: Medienlink öffnen`},"actionConfirmation.tiktok.reviewBadge":{message:`Bestätigung vor der Veröffentlichung`,description:`TikTok Veröffentlichungsbestätigung: Statuslabel der Karte`},"actionConfirmation.tiktok.publishTitle":{message:`Auf TikTok veröffentlichen`,description:`Titel der TikTok Veröffentlichungsbestätigung`},"actionConfirmation.tiktok.publishSummary":{message:`Nach Bestätigung wird dieses Video auf deinem TikTok-Konto veröffentlicht.`,description:`Zusammenfassung der TikTok Veröffentlichungsbestätigung`},"actionConfirmation.tiktok.publishButton":{message:`Veröffentlichen`,description:`Schaltfläche zum Bestätigen der Veröffentlichung auf TikTok`},"actionConfirmation.tiktok.postingTo":{message:`Veröffentlichen an`,description:`Bestätigungsfeld für TikTok: Kontolabel`},"actionConfirmation.tiktok.connected":{message:`Verbunden`,description:`TikTok Veröffentlichungsbestätigung: Status der Kontoverbindung`},"actionConfirmation.tiktok.unknownAccount":{message:`Kontoinformationen nicht verfügbar`,description:`TikTok Veröffentlichungsbestätigung: Platzhaltertext bei fehlendem Kontonamen`},"actionConfirmation.tiktok.detailsUnavailable":{message:`Veröffentlichungseinstellungen sind noch nicht bereit`,description:`TikTok Veröffentlichungsbestätigung: Titel für fehlende Creator-Informationen`},"actionConfirmation.tiktok.detailsUnavailableHint":{message:`Die unterstützten Sichtbarkeitsbereiche des Kontos konnten nicht abgerufen werden. Bitte brechen Sie ab und lassen Sie den Assistenten die TikTok Veröffentlichungseinstellungen erneut abrufen.`,description:`TikTok Veröffentlichungsbestätigung: Erklärung für fehlende Creator-Informationen`},"actionConfirmation.tiktok.videoTooLongTitle":{message:`Videolänge entspricht nicht den Kontobeschränkungen`,description:`TikTok Veröffentlichungsbestätigung: Titel für zu langes Video`},"actionConfirmation.tiktok.postDetails":{message:`Veröffentlichungsinhalt`,description:`TikTok Veröffentlichungsbestätigung: Titel für die Inhaltseinstellungen`},"actionConfirmation.tiktok.requiredNote":{message:`* Pflichtfeld`,description:`TikTok Veröffentlichungsbestätigung: Erklärung für Pflichtfelder`},"actionConfirmation.tiktok.caption":{message:`Bildunterschrift`,description:`Bestätigungsfeld für TikTok: Beschriftung Eingabefeld`},"actionConfirmation.tiktok.captionPlaceholder":{message:`Bildunterschrift schreiben – Hashtags und Erwähnungen werden unterstützt`,description:`TikTok publish confirmation: caption placeholder`},"actionConfirmation.tiktok.privacy":{message:`Wer kann sehen`,description:`Bestätigungsfeld für TikTok: Dropdown-Label für Sichtbarkeit`},"actionConfirmation.tiktok.privacyPlaceholder":{message:`Bitte auswählen…`,description:`Bestätigungsfeld für TikTok: Platzhalter für Sichtbarkeit, darf laut TikTok keine Standardwerte haben`},"actionConfirmation.tiktok.noPrivacyOptions":{message:`Es konnten keine verfügbaren Sichtbarkeitsbereiche abgerufen werden, Veröffentlichung ist derzeit nicht möglich`,description:`TikTok Veröffentlichungsbestätigung: Sichtbarkeitsbereich ist leer`},"actionConfirmation.tiktok.privacyPublic":{message:`Alle`,description:`Sichtbarkeit bei TikTok: Öffentlich`},"actionConfirmation.tiktok.privacyFriends":{message:`Freunde, die sich gegenseitig folgen`,description:`Sichtbarkeit bei TikTok: Sichtbar für gegenseitige Freunde`},"actionConfirmation.tiktok.privacyFollowers":{message:`Meine Follower`,description:`Sichtbarkeit bei TikTok: Sichtbar für Follower`},"actionConfirmation.tiktok.privacySelf":{message:`Nur ich`,description:`Sichtbarkeit bei TikTok: Nur für mich sichtbar`},"actionConfirmation.tiktok.interactions":{message:`Interaktionen erlauben`,description:`Bestätigungsfeld für TikTok: Gruppierungslabel für Interaktionsschalter`},"actionConfirmation.tiktok.interactionsHint":{message:`Nur die derzeit erlaubten Interaktionsmöglichkeiten dieses Kontos können aktiviert werden; standardmäßig sind alle deaktiviert.`,description:`TikTok Veröffentlichungsbestätigung: Erklärung zu den Interaktionsschaltern`},"actionConfirmation.tiktok.disabledByAccount":{message:`Dieses Konto ist deaktiviert: {list}`,description:`TikTok Veröffentlichungsbestätigung: Interaktionsfähigkeiten des deaktivierten Kontos`},"actionConfirmation.tiktok.allowComment":{message:`Kommentare`,description:`TikTok Interaktionsschalter: Kommentare erlauben`},"actionConfirmation.tiktok.allowDuet":{message:`Duett`,description:`TikTok Interaktionsschalter: Duette erlauben`},"actionConfirmation.tiktok.allowStitch":{message:`Zusammenfügen`,description:`TikTok Interaktionsschalter: Stitch erlauben`},"actionConfirmation.tiktok.disclosure":{message:`Inhalte offenlegen`,description:`TikTok Veröffentlichungsbestätigung: Titel für kommerzielle Inhalte`},"actionConfirmation.tiktok.commercial":{message:`Dies ist kommerzieller Inhalt`,description:`Bestätigungsfeld für TikTok: Offenlegungsschalter für kommerziellen Inhalt`},"actionConfirmation.tiktok.commercialHint":{message:`Bitte legen Sie offen, wenn Inhalte eine Marke, ein Produkt oder eine Dienstleistung fördern.`,description:`TikTok Veröffentlichungsbestätigung: Erklärung zur Offenlegung kommerzieller Inhalte`},"actionConfirmation.tiktok.yourBrand":{message:`Ihre Marke`,description:`TikTok Geschäftsinhalte: Förderung des eigenen Unternehmens`},"actionConfirmation.tiktok.yourBrandHint":{message:`Bewerben Sie sich selbst oder Ihr Unternehmen`,description:`TikTok Geschäftsinhalte: Erklärung zur Bewerbung des eigenen Unternehmens`},"actionConfirmation.tiktok.brandedContent":{message:`Markeninhalt`,description:`TikTok kommerzieller Inhalt: bezahlte Partnerschaft`},"actionConfirmation.tiktok.brandedContentHint":{message:`Förderung Dritter aufgrund von Zahlungen, Geschenken oder anderen Vorteilen`,description:`TikTok kommerzielle Inhalte: Beschreibung für bezahlte Kooperation`},"actionConfirmation.tiktok.labelPromotional":{message:`Video wird als „Werbeinhalte“ gekennzeichnet`,description:`TikTok kommerzieller Inhalt: Hinweis nach Auswahl Ihrer Marke`},"actionConfirmation.tiktok.labelPaidPartnership":{message:`Video wird als „bezahlte Partnerschaft“ gekennzeichnet`,description:`TikTok kommerzieller Inhalt: Hinweis nach Auswahl von Markeninhalt`},"actionConfirmation.tiktok.brandedNotPrivate":{message:`Die Sichtbarkeit von Markeninhalten kann nicht auf „Nur ich“ gesetzt werden`,description:`Bestätigungsfeld für TikTok: Hinweis, dass Markeninhalte und „Nur ich“ sich gegenseitig ausschließen`},"actionConfirmation.tiktok.tooLong":{message:`Video überschreitet die maximale Dauer dieses Kontos ({max} Sekunden)`,description:`Bestätigungsfeld für TikTok: Fehler bei zu langem Video`},"actionConfirmation.tiktok.beforePublishing":{message:`Bitte bestätigen Sie vor der Veröffentlichung`,description:`TikTok Veröffentlichungsbestätigung: Titel der Richtlinienbeschreibung`},"actionConfirmation.tiktok.policyIntro":{message:`Durch Klicken auf „Veröffentlichen“ bestätigen Sie, dass Sie die Nutzungsrechte an den Inhalten und der Musik besitzen und den Nutzungsbedingungen von TikTok zustimmen.`,description:`TikTok Veröffentlichungsbestätigung: Erklärung zu den allgemeinen Inhaltsrichtlinien`},"actionConfirmation.tiktok.policyIntroBranded":{message:`Durch Klicken auf „Veröffentlichen“ bestätigen Sie, dass die Offenlegungsinformationen korrekt sind und Sie den Richtlinien für Markeninhalte und den Nutzungsbedingungen von TikTok zustimmen.`,description:`TikTok Veröffentlichungsbestätigung: Erklärung zu den Richtlinien für Markeninhalte`},"actionConfirmation.tiktok.musicUsageLink":{message:`Musiknutzungsbestätigung ansehen`,description:`TikTok Veröffentlichungsbestätigung: Link zur Musiknutzungsbestätigung`},"actionConfirmation.tiktok.brandedPolicyLink":{message:`Markeninhalt-Richtlinien ansehen`,description:`TikTok Veröffentlichungsbestätigung: Link zu den Markeninhalt-Richtlinien`},"actionConfirmation.tiktok.fixDetailsFirst":{message:`Veröffentlichungsinformationen unvollständig, bitte abbrechen und die Bestätigungskarte neu generieren`,description:`TikTok Veröffentlichungsbestätigung: Grund für die Deaktivierung des Buttons bei fehlenden Details`},"actionConfirmation.tiktok.useShorterVideo":{message:`Bitte verwenden Sie ein Video, das den Zeitbeschränkungen dieses Kontos entspricht`,description:`TikTok Veröffentlichungsbestätigung: Grund für die Deaktivierung des Buttons bei zu langen Videos`},"actionConfirmation.tiktok.selectPrivacyFirst":{message:`Bitte wählen Sie, wer dieses Video sehen kann`,description:`TikTok Veröffentlichungsbestätigung: Grund für die Deaktivierung des Buttons bei nicht ausgewähltem Sichtbarkeitsbereich`},"actionConfirmation.tiktok.selectDisclosureType":{message:`Bitte wählen Sie den Typ des kommerziellen Inhalts`,description:`TikTok Veröffentlichungsbestätigung: Grund für die Deaktivierung des Buttons bei nicht ausgewähltem Offenlegungstyp`},"scheduledTemplates.title":{message:`Automatisierungsvorlagen`,description:`Kopie des Zentrums für geplante Aufgaben-Vorlagen`},"scheduledTemplates.createFromTemplate":{message:`Aus Vorlage neu erstellen`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.createCustom":{message:`Benutzerdefiniert erstellen`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.emptyTitle":{message:`Lassen Sie die KI pünktlich Ihre Arbeit erledigen`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.emptyDescription":{message:`Wählen Sie eine offizielle Vorlage aus und verbinden Sie das erforderliche Konto. Nach der Erstellung der Aufgabe kann diese sofort auf der Karte ausgeführt werden.`,description:`Anleitung zur Erstellung und Aktivierung von geplanten Aufgaben-Vorlagen`},"scheduledTemplates.browse":{message:`Vorlagen durchsuchen`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.step.choose":{message:`Vorlage auswählen`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.step.configure":{message:`Einfache Konfiguration`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.step.connect":{message:`Konto verbinden`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.search":{message:`Vorlagen suchen`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.featured":{message:`Empfohlen`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.ready":{message:`Sofort einsatzbereit`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.missingCount":{message:`Es müssen {count} Elemente verbunden werden`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.schedule":{message:`Ausführungszeit`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.connectionTitle":{message:`Benötigte Verbindungen vorbereiten`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.noConnections":{message:`Es sind keine weiteren Konten erforderlich`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.connected":{message:`Verbunden`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.notConnected":{message:`Noch nicht verbunden`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.chooseAccount":{message:`Konto auswählen`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.connect":{message:`Verbinden`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.create":{message:`Aufgabe erstellen`,description:`Anleitung zur Erstellung und Aktivierung von geplanten Aufgaben-Vorlagen`},"scheduledTemplates.createFailed":{message:`Aufgabe konnte nicht erstellt werden, bitte überprüfen Sie die Konfiguration oder Verbindung`,description:`Anleitung zur Erstellung und Aktivierung von geplanten Aufgaben-Vorlagen`},"scheduledTemplates.createdPreviewOnly":{message:`Aufgabe wurde erstellt und bleibt deaktiviert. Sie können sie direkt aktivieren oder zuerst sofort ausführen, um die Ergebnisse zu überprüfen.`,description:`Anleitung nach der Erstellung einer geplanten Aufgabe nur für Vorschau`},"scheduledTemplates.createdControlledDelivery":{message:`Aufgabe wurde erstellt und bleibt deaktiviert. Bitte zuerst sofort ausführen, bevor Sie aktivieren, nachdem der erforderliche Entwurf erfolgreich generiert wurde.`,description:`Anleitung nach der Erstellung einer geplanten Aufgabe für kontrollierte Lieferung`},"scheduledTemplates.enableFailed":{message:`Kann vorübergehend nicht aktiviert werden. Bitte überprüfen Sie die Aufgaben-Konfiguration und die Kontoverbindung; Vorlagen, die einer kontrollierten Validierung bedürfen, müssen zuerst einen Testlauf abschließen.`,description:`Fehler bei der Aktivierung der geplanten Aufgaben-Vorlage`},"scheduledTemplates.loadError":{message:`Vorlagen konnten nicht geladen werden, bitte später erneut versuchen`,description:`Kopie des Zentrums für geplante Aufgabenvorlagen`},"scheduledTemplates.category.all":{message:`Alle`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.marketing":{message:`Marketingwachstum`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.content":{message:`Inhaltserstellung`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.productivity":{message:`Arbeitsproduktivität`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.research":{message:`Intelligenz und Forschung`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.development":{message:`Entwicklung und Betrieb`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.personal":{message:`Persönlicher Assistent`,description:`Kopie des Vorlagenzentrums für geplante Aufgaben`},"scheduledTemplates.category.sales":{message:`Vertrieb und Leads`,description:`Text für das Vorlagenzentrum für geplante Aufgaben`},"scheduledTemplates.category.customer":{message:`Kundenmanagement`,description:`Text für das Vorlagenzentrum für geplante Aufgaben`},"scheduledTemplates.previous":{message:`Vorheriger Schritt`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"scheduledTemplates.next":{message:`Nächster Schritt`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"scheduledTemplates.connectionDescription":{message:`Wir verwenden nur die Verbindungen, die für diese Vorlage benötigt werden; verbundene Konten werden automatisch wiederverwendet.`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"scheduledTemplates.noConnectionsHint":{message:`Diese Vorlage nutzt nur integrierte Funktionen und kann direkt erstellt werden.`,description:`Anleitung zur Erstellung und Aktivierung von geplanten Aufgaben-Vorlagen`},"scheduledTemplates.connectionMissingHint":{message:`Fahre fort, nachdem die Verbindung hergestellt wurde.`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"scheduledTemplates.connectionBoundHint":{message:`Diese Aufgabe verwendet das von dir gewählte Konto fest.`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"scheduledTemplates.connectionMcpHint":{message:`Führe über die autorisierte MCP-Verbindung aus, ohne zusätzliches Konto zu binden.`,description:`Navigation und Verbindungsanleitung für den geplanten Vorlagenassistenten`},"model.deepseekV4Pro":{message:`DeepSeek V4 Pro`,description:`Name des Servicemodells: DeepSeek V4 Pro`},"model.deepseekV4ProDescription":{message:`Hochleistungsmodell mit 1 Million Kontext, geeignet für anspruchsvolle Schlussfolgerungen und die Analyse langer Dokumente.`,description:`Beschreibung des DeepSeek V4 Pro-Modells`},"model.gpt6Sol":{message:`GPT-6 Sol`,description:``},"model.gpt6SolDescription":{message:`Hochleistungsmodell für Schlussfolgerungen, geeignet für komplexe Programmierung, Analysen und Aufgaben mit langem Kontext.`,description:``},"model.gpt6Luna":{message:`GPT-6 Luna`,description:``},"model.gpt6LunaDescription":{message:`Effizientes Modell, geeignet für schnelle Dialoge, alltägliche Programmierung und Batch-Aufgaben.`,description:``},"model.grok47":{message:`Grok 4.7`,description:``},"model.grok47Description":{message:`Flaggschiffmodell für Schlussfolgerungen, geeignet für visuelles Verständnis, Tool-Aufrufe und mehrstufige Recherche.`,description:``},"model.gemini38Flash":{message:`Gemini 3.8 Flash`,description:``},"model.gemini38FlashDescription":{message:`Schnelles multimodales Modell, geeignet für lange Kontexte, Bildverständnis und Tool-Aufrufe.`,description:``},"scheduledTasks.state.authorizationExpired":{message:`Autorisierung abgelaufen, Aufgabe wurde automatisch pausiert`,description:`Angezeigter Aufgabenstatus, wenn die Autorisierung für den unbeaufsichtigten Betrieb abläuft`},"scheduledTasks.run.reason.authorization_expired":{message:`Die Autorisierung für die geplante Aufgabe ist abgelaufen`,description:`Die Autorisierung für die geplante Aufgabe ist abgelaufen`},"scheduledTasks.run.reason.ACCOUNT_MISMATCH_SAFE_STOP":{message:`Das verbundene Konto stimmt nicht überein, keine Aktion ausgeführt`,description:`Sicherheitsüberspringen bei nicht übereinstimmender Identität des verknüpften Kontos`},"scheduledTasks.run.reason.WECHAT_NOT_LOGGED_IN":{message:`WeChat ist nicht angemeldet, keine Nachricht gesendet`,description:`Sicherheitsüberspringen, wenn das persönliche WeChat-Konto offline ist`},"scheduledTasks.run.reason.SOURCE_UNAVAILABLE_NO_PUBLISH":{message:`Quellinhalt konnte nicht abgerufen werden, nichts veröffentlicht`,description:`Sicherheitsüberspringen, wenn der erforderliche Quellinhalt nicht geladen werden kann`},"scheduledTasks.run.reason.NO_ELIGIBLE_VIDEO":{message:`Keine geeigneten Videos zur Veröffentlichung`,description:`Sicherheitsüberspringen, wenn keine veröffentlichbaren Videos vorhanden sind`},"actionConfirmation.tiktok.music":{message:`Mit der Veröffentlichung stimmen Sie der TikTok „Musiknutzungsbestätigung“ zu`,description:`Bestätigungsfeld für TikTok: Erklärung zur Musiknutzung`},"actionConfirmation.tiktok.musicBranded":{message:`Mit der Veröffentlichung stimmen Sie der TikTok „Richtlinie für Markeninhalte“ und der „Musiknutzungsbestätigung“ zu`,description:`Bestätigungsfeld für TikTok: Erklärung nach Auswahl von Markeninhalt`},"model.claudeOpus55":{message:`Claude Opus 5.5`,description:`Name of the Claude Opus 5.5 model`},"model.claudeOpus55Description":{message:`Das führende Claude-Modell für komplexe Agentenaufgaben`,description:`Beschreibung des Claude-Opus-5.5-Modells`},"earlyAccess.badge":{message:`ACE – bevorzugter Zugang`,description:`Kennzeichnung für bevorzugten Modellzugang für ACE-Token-Inhaber`},"earlyAccess.locked":{message:`Tier 1+`,description:`Locked ACE holder tier badge`},"earlyAccess.config_unavailable":{message:`Die Modellberechtigung wird überprüft. Bitte versuchen Sie es später erneut.`,description:`Hinweis, wenn die Modellberechtigung nicht bestätigt werden kann`},"earlyAccess.holder_required":{message:`Dieses Modell ist zunächst für verifizierte ACE-Token-Inhaber ab Tier 1 verfügbar.`,description:`Hinweis für eine nicht ausreichende Token-Stufe`}};export{e as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/constants-BmcMHgPT.js","assets/rolldown-runtime--c01j_DQ.js","assets/i18n-3aZQnVTW.js","assets/preload-helper-zJ_50EbN.js","assets/vendor-chart-Dw-P17PN.js","assets/vendor-axios-Ck2ffRoh.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{h as e}from"./models-CSuuDqRA.js";import{ra as t,ya as n}from"./constants-BmcMHgPT.js";import{t as r}from"./preload-helper-zJ_50EbN.js";import{Ra as i,Rn as a,Wn as o,Xi as s,Xr as c,Yr as l,ji as u}from"./index-BHXtbt9o.js";var d={namespaced:!0,state:i,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},setModelAccess:(e,t)=>{e.modelAccess=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,i()),e.memoryEnabled=t,e.workingDirectory=n}},actions:{resetAll:({commit:e})=>{e(`resetAll`)},createCredential:async({commit:e,state:t})=>{let n=t.application;if(console.debug(`prepare to create credential for application for chat`,n),!n){console.error(`Application not found`);return}console.debug(`creating create credential for application for chat`,n);let{data:r}=await l.create({application_id:n?.id,host:window.location.origin});return console.debug(`created credential success`,r),e(`setCredential`,r),console.debug(`end createCredential`),r},refreshModelAccess:async({commit:e,rootState:n})=>{if(!n.token?.access)return e(`setModelAccess`,{}),{};try{let{CHAT_MODELS:n}=await r(async()=>{let{CHAT_MODELS:e}=await import(`./constants-BmcMHgPT.js`).then(e=>e.t);return{CHAT_MODELS:e}},__vite__mapDeps([0,1,2,3,4,5])),i=Object.fromEntries(n.filter(e=>e.enabled!==!1).map(e=>[e.name,{action:`chat`,model:e.name}])),{data:a}=await o.evaluate(t,i);return e(`setModelAccess`,a.results||{}),a.results||{}}catch(t){return console.warn(`model access eligibility unavailable`,t),e(`setModelAccess`,{}),{}}},setModel:async({commit:e},t)=>{e(`setModel`,t)},setModelGroup:async({commit:e},t)=>{e(`setModelGroup`,t)},getService:async({commit:t,state:r})=>{r.status.getService=e.Request;try{let{data:i}=await c.get(n);return r.status.getService=e.Success,t(`setService`,i),i}catch{r.status.getService=e.Error,t(`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:t,state:r,rootState:i})=>{if(console.debug(`start to get applications for chat`),!i?.token?.access)return r.status.getApplications=e.Success,t(`setApplications`,[]),t(`setApplication`,void 0),t(`setCredential`,void 0),[];r.status.getApplications=e.Request;try{let{data:i}=await s.getAll({user_id:`me`,service_id:n,affiliation:[`owner`,`granted`]});return console.debug(`get applications success for chat`,i),r.status.getApplications=e.Success,t(`setApplications`,i.items),console.debug(`set applications for chat`,i.items),i.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 u.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 u.getConversation(n,{token:r}),o=t.conversations||[],s=o.findIndex(e=>e.id===n),c=s>-1?{...o[s],...i}:i;if(s>-1){let t=[...o];t[s]=a(c),e(`setConversations`,t)}return c}catch(e){console.error(`getConversation failed`,n,e);return}}}};export{d as chat,d as default};
|